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

This function clears all write-protected blocks on the device containing the address text_offset. Some boards use multiple chips to form one single logical device. In this situation, each chip will have f3s_v2unlockall() invoked on it separately.

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

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).
Unrecoverable I/O error (e.g. block no longer usable).
Invalid command error.
Flash memory access out of range (via service->page function).
Flash no longer accessible (e.g. flash removed).
Critical error; shut down the flash driver.
Note: We currently don't support user-customized flash services, nor do we supply detailed descriptions of the flash services implementation.