1.1.14.2.1 How the Library Works
The SST26 driver library is a single-client, single-instance based driver interface.
Abstraction Model
The SST26 driver interface provides read, write and Erase functions that abstract out the internal workings of the SST26 driver and the underlying QSPI/SQI/SPI protocol.
The client can be:
-
Application - Directly access the SST26 Flash using the APIs provided by the SST26 Driver library
-
Memory Driver - Application can run a file system on the SST26 Flash by connecting it to the Memory Driver which can further be connected to the File System Service
Working Flow
-
The SST26 Driver performs initialization and puts the driver to ready state. This status of the driver can be checked using
DRV_SST26_Status(). -
The SST26 driver library performs set of Flash operations during
DRV_SST26_Open(). If any of the below Flash operations fails, an invalid Handle will be returned. DRV_SST26_Open() can be repeatedly called until it returns a valid handle.-
Resets the Flash
-
Configures the Flash device to QUAD IO mode if underlying peripheral library is running in QSPI/SQI mode
-
Unlocks the Flash if it has been opened in Write mode
-
-
When the client requests for device geometry, it queries for the JEDEC-ID and populates the geometry table DRV_SST26_GEOMETRY appropriately.
-
The driver does not support queuing of more than one requests. The application must check and ensure that any previous request is completed before submitting a new one. This can be done by polling the status of data transfer using
DRV_SST26_TransferStatusGet().
