Hardware flash write protection¶
The hardware flash write protection driver (fprotect
) can be used to protect flash areas from writing.
The driver uses a hardware peripheral (BPROT, ACL, or SPU, depending on the chip model) to protect the area.
The protection is irreversible until a reset occurs.
The following example shows how to protect PM_B0_SIZE
bytes of the flash area starting from PM_B0_ADDRESS
:
int err = fprotect_area(PM_B0_ADDRESS, PM_B0_SIZE);
API documentation¶
include/fprotect.h
lib/fprotect/
-
group
fprotect
API for write protection of flash areas using Hardware peripheral.
Functions
-
int
fprotect_area
(uint32_t start, size_t length)¶ Protect flash area against writes.
- Parameters
[in] start
: Start of range to protect.[in] length
: Length in bytes of range to protect.
- Return Value
0
: On success.-EINVAL
: If any of the argument are incorrect.-ENOSPC
: If function is called too many times. Applies to devices where there is a limited number of configuration registers which are used for all address ranges.
-
int