f3s_v2unlock()

int f3s_v2unlock (f3s_dbase_t *dbase,
                  f3s_access_t *access,
                  uint32_t flags,
                  uint32_t text_offset);

This function clears write-protection of the block containing the address text_offset (if supported). If the block is already unlocked, it does nothing. Note that some devices do not support unlocking of arbitrary blocks. Instead all blocks must be unlocked at the same time. In this case, use f3s_v2unlockall() instead.

On success, it should return EOK. If an error occurs, it should return one of the following:

EIO
Recoverable I/O error (e.g. failed due to low power or unlock failed, but corruption is localized and block will be usable after an erase).
EFAULT
Unrecoverable I/O error (e.g. block no longer usable).
EINVAL
Invalid command error.
ERANGE
Flash memory access out of range (via service->page function).
ENODEV
Flash no longer accessible (e.g. flash removed).
ESHUTDOWN
Critical error; shut down the flash driver.