1.1.8.4.1 DRV_SFDP_Initialize Function

1.1.8.4.1 C

SYS_MODULE_OBJ DRV_SFDP_Initialize
(
    const SYS_MODULE_INDEX drvIndex,
    const SYS_MODULE_INIT *const init
);

1.1.8.4.1 Summary

Initializes the SFDP Driver.

1.1.8.4.1 Description

This routine initializes the SFDP driver making it ready for client to use.

1.1.8.4.1 Precondition

None.

1.1.8.4.1 Parameters

ParametersDescription
drvIndexIdentifier for the instance to be initialized
initPointer to a data structure containing any data necessary to initialize the driver

1.1.8.4.1 Returns

If successful, returns a valid driver instance object. Otherwise, it returns SYS_MODULE_OBJ_INVALID.

1.1.8.4.1 Example

// This code snippet shows an example of initializing the SFDP Driver
// with SFDP flash device attached.

SYS_MODULE_OBJ objectHandle;

const DRV_SFDP_PLIB_INTERFACE drvSFDPPlibAPI = {
    .CommandWrite = QSPI_CommandWrite,
    .RegisterRead = QSPI_RegisterRead,
    .RegisterWrite = QSPI_RegisterWrite,
    .MemoryRead = QSPI_MemoryRead,
    .MemoryWrite = QSPI_MemoryWrite
};

const DRV_SFDP_INIT drvSFDPInitData =
{
    .sfdpPlib = &drvSFDPPlibAPI,
};

objectHandle = DRV_SFDP_Initialize((SYS_MODULE_INDEX)DRV_SFDP_INDEX, (SYS_MODULE_INIT *)&drvSFDPInitData);

if (SYS_MODULE_OBJ_INVALID == objectHandle)
{
    // Handle error
}

1.1.8.4.1 Remarks

This routine must be called before any other SFDP driver routine is called. This routine should only be called once during system initialization.