A BSP is required so that the SD/MMC cardmode driver will work on a particular system. The functions shown in the table below must be implemented. Pleaser refer to section C-5 “SDSD/MMC Cardmode BSP” BSP for the details about implementing your own BSP.
Panel | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Table 14-3 SD/MMC cardmode BSP functions
The Open()
/Close()
functions are called upon open/close or medium change; these calls are always matched. The status and information functions (GetBlkCntMax()
, GetBusWidthMax()
, SetBusWidth()
, SetClkFreq()
, SetTimeoutData()
, SetTimeoutResp()
) help configure the new card upon insertion. Lock()
and Unlock()
surround all card accesses.
The remaining functions (CmdStart()
, CmdWaitEnd()
, CmdDataRd()
, CmdDataWr()
) constitute the command execution state machine (see Figure 14 - 9Command execution). A return error from one of the functions will abort the state machine, so the requisite considerations, such as preparing for the next command or preventing further interrupts, must be first handled.
Panel |
---|