The sdmmc common function and definition.
|
enum | _sdmmc_status {
kStatus_SDMMC_NotSupportYet = MAKE_STATUS(kStatusGroup_SDMMC, 0U),
kStatus_SDMMC_TransferFailed = MAKE_STATUS(kStatusGroup_SDMMC, 1U),
kStatus_SDMMC_SetCardBlockSizeFailed = MAKE_STATUS(kStatusGroup_SDMMC, 2U),
kStatus_SDMMC_HostNotSupport = MAKE_STATUS(kStatusGroup_SDMMC, 3U),
kStatus_SDMMC_CardNotSupport = MAKE_STATUS(kStatusGroup_SDMMC, 4U),
kStatus_SDMMC_AllSendCidFailed = MAKE_STATUS(kStatusGroup_SDMMC, 5U),
kStatus_SDMMC_SendRelativeAddressFailed = MAKE_STATUS(kStatusGroup_SDMMC, 6U),
kStatus_SDMMC_SendCsdFailed = MAKE_STATUS(kStatusGroup_SDMMC, 7U),
kStatus_SDMMC_SelectCardFailed = MAKE_STATUS(kStatusGroup_SDMMC, 8U),
kStatus_SDMMC_SendScrFailed = MAKE_STATUS(kStatusGroup_SDMMC, 9U),
kStatus_SDMMC_SetDataBusWidthFailed = MAKE_STATUS(kStatusGroup_SDMMC, 10U),
kStatus_SDMMC_GoIdleFailed = MAKE_STATUS(kStatusGroup_SDMMC, 11U),
kStatus_SDMMC_HandShakeOperationConditionFailed,
kStatus_SDMMC_SendApplicationCommandFailed,
kStatus_SDMMC_SwitchFailed = MAKE_STATUS(kStatusGroup_SDMMC, 14U),
kStatus_SDMMC_StopTransmissionFailed = MAKE_STATUS(kStatusGroup_SDMMC, 15U),
kStatus_SDMMC_WaitWriteCompleteFailed = MAKE_STATUS(kStatusGroup_SDMMC, 16U),
kStatus_SDMMC_SetBlockCountFailed = MAKE_STATUS(kStatusGroup_SDMMC, 17U),
kStatus_SDMMC_SetRelativeAddressFailed = MAKE_STATUS(kStatusGroup_SDMMC, 18U),
kStatus_SDMMC_SwitchBusTimingFailed = MAKE_STATUS(kStatusGroup_SDMMC, 19U),
kStatus_SDMMC_SendExtendedCsdFailed = MAKE_STATUS(kStatusGroup_SDMMC, 20U),
kStatus_SDMMC_ConfigureBootFailed = MAKE_STATUS(kStatusGroup_SDMMC, 21U),
kStatus_SDMMC_ConfigureExtendedCsdFailed = MAKE_STATUS(kStatusGroup_SDMMC, 22U),
kStatus_SDMMC_EnableHighCapacityEraseFailed,
kStatus_SDMMC_SendTestPatternFailed = MAKE_STATUS(kStatusGroup_SDMMC, 24U),
kStatus_SDMMC_ReceiveTestPatternFailed = MAKE_STATUS(kStatusGroup_SDMMC, 25U),
kStatus_SDMMC_SDIO_ResponseError = MAKE_STATUS(kStatusGroup_SDMMC, 26U),
kStatus_SDMMC_SDIO_InvalidArgument,
kStatus_SDMMC_SDIO_SendOperationConditionFail,
kStatus_SDMMC_InvalidVoltage = MAKE_STATUS(kStatusGroup_SDMMC, 29U),
kStatus_SDMMC_SDIO_SwitchHighSpeedFail = MAKE_STATUS(kStatusGroup_SDMMC, 30U),
kStatus_SDMMC_SDIO_ReadCISFail = MAKE_STATUS(kStatusGroup_SDMMC, 31U),
kStatus_SDMMC_SDIO_InvalidCard = MAKE_STATUS(kStatusGroup_SDMMC, 32U),
kStatus_SDMMC_TuningFail = MAKE_STATUS(kStatusGroup_SDMMC, 33U),
kStatus_SDMMC_SwitchVoltageFail = MAKE_STATUS(kStatusGroup_SDMMC, 34U),
kStatus_SDMMC_SwitchVoltage18VFail33VSuccess = MAKE_STATUS(kStatusGroup_SDMMC, 35U),
kStatus_SDMMC_ReTuningRequest = MAKE_STATUS(kStatusGroup_SDMMC, 36U),
kStatus_SDMMC_SetDriverStrengthFail = MAKE_STATUS(kStatusGroup_SDMMC, 37U),
kStatus_SDMMC_SetPowerClassFail = MAKE_STATUS(kStatusGroup_SDMMC, 38U),
kStatus_SDMMC_HostNotReady = MAKE_STATUS(kStatusGroup_SDMMC, 39U),
kStatus_SDMMC_CardDetectFailed = MAKE_STATUS(kStatusGroup_SDMMC, 40U),
kStatus_SDMMC_AuSizeNotSetProperly = MAKE_STATUS(kStatusGroup_SDMMC, 41U)
} |
| SD/MMC card API's running status. More...
|
|
enum | _sdmmc_signal_line {
kSDMMC_SignalLineCmd = 1U,
kSDMMC_SignalLineData0 = 2U,
kSDMMC_SignalLineData1 = 4U,
kSDMMC_SignalLineData2 = 8U,
kSDMMC_SignalLineData3 = 16U,
kSDMMC_SignalLineData4 = 32U,
kSDMMC_SignalLineData5 = 64U,
kSDMMC_SignalLineData6 = 128U,
kSDMMC_SignalLineData7 = 256U
} |
| sdmmc signal line More...
|
|
enum | sdmmc_operation_voltage_t {
kSDMMC_OperationVoltageNone = 0U,
kSDMMC_OperationVoltage330V = 1U,
kSDMMC_OperationVoltage300V = 2U,
kSDMMC_OperationVoltage180V = 3U
} |
| card operation voltage More...
|
|
enum | _sdmmc_bus_width {
kSDMMC_BusWdith1Bit = 0U,
kSDMMC_BusWdith4Bit = 1U,
kSDMMC_BusWdith8Bit = 2U
} |
| card bus width More...
|
|
enum | _sdmmc_capability_flag { kSDMMC_Support8BitWidth = 1U
} |
| sdmmc capability flag More...
|
|
enum | sd_detect_card_type_t {
kSD_DetectCardByGpioCD,
kSD_DetectCardByHostCD,
kSD_DetectCardByHostDATA3
} |
| sd card detect type More...
|
|
enum | _sd_card_cd_status {
kSD_Inserted = 1U,
kSD_Removed = 0U
} |
| @ brief SD card detect status More...
|
|
enum | sd_io_voltage_ctrl_type_t {
kSD_IOVoltageCtrlNotSupport = 0U,
kSD_IOVoltageCtrlByHost = 1U,
kSD_IOVoltageCtrlByGpio = 2U
} |
| io voltage control type More...
|
|
enum | _sdmmc_r1_card_status_flag {
kSDMMC_R1OutOfRangeFlag = 31,
kSDMMC_R1AddressErrorFlag = 30,
kSDMMC_R1BlockLengthErrorFlag = 29,
kSDMMC_R1EraseSequenceErrorFlag = 28,
kSDMMC_R1EraseParameterErrorFlag = 27,
kSDMMC_R1WriteProtectViolationFlag = 26,
kSDMMC_R1CardIsLockedFlag = 25,
kSDMMC_R1LockUnlockFailedFlag = 24,
kSDMMC_R1CommandCrcErrorFlag = 23,
kSDMMC_R1IllegalCommandFlag = 22,
kSDMMC_R1CardEccFailedFlag = 21,
kSDMMC_R1CardControllerErrorFlag = 20,
kSDMMC_R1ErrorFlag = 19,
kSDMMC_R1CidCsdOverwriteFlag = 16,
kSDMMC_R1WriteProtectEraseSkipFlag = 15,
kSDMMC_R1CardEccDisabledFlag = 14,
kSDMMC_R1EraseResetFlag = 13,
kSDMMC_R1ReadyForDataFlag = 8,
kSDMMC_R1SwitchErrorFlag = 7,
kSDMMC_R1ApplicationCommandFlag = 5,
kSDMMC_R1AuthenticationSequenceErrorFlag = 3
} |
| Card status bit in R1. More...
|
|
enum | sdmmc_r1_current_state_t {
kSDMMC_R1StateIdle = 0U,
kSDMMC_R1StateReady = 1U,
kSDMMC_R1StateIdentify = 2U,
kSDMMC_R1StateStandby = 3U,
kSDMMC_R1StateTransfer = 4U,
kSDMMC_R1StateSendData = 5U,
kSDMMC_R1StateReceiveData = 6U,
kSDMMC_R1StateProgram = 7U,
kSDMMC_R1StateDisconnect = 8U
} |
| CURRENT_STATE filed in R1. More...
|
|
enum | _sdspi_r1_error_status_flag {
kSDSPI_R1InIdleStateFlag = (1U << 0U),
kSDSPI_R1EraseResetFlag = (1U << 1U),
kSDSPI_R1IllegalCommandFlag = (1U << 2U),
kSDSPI_R1CommandCrcErrorFlag = (1U << 3U),
kSDSPI_R1EraseSequenceErrorFlag = (1U << 4U),
kSDSPI_R1AddressErrorFlag = (1U << 5U),
kSDSPI_R1ParameterErrorFlag = (1U << 6U)
} |
| Error bit in SPI mode R1. More...
|
|
enum | _sdspi_r2_error_status_flag {
kSDSPI_R2CardLockedFlag = (1U << 0U),
kSDSPI_R2WriteProtectEraseSkip = (1U << 1U),
kSDSPI_R2LockUnlockFailed = (1U << 1U),
kSDSPI_R2ErrorFlag = (1U << 2U),
kSDSPI_R2CardControllerErrorFlag = (1U << 3U),
kSDSPI_R2CardEccFailedFlag = (1U << 4U),
kSDSPI_R2WriteProtectViolationFlag = (1U << 5U),
kSDSPI_R2EraseParameterErrorFlag = (1U << 6U),
kSDSPI_R2OutOfRangeFlag = (1U << 7U),
kSDSPI_R2CsdOverwriteFlag = (1U << 7U)
} |
| Error bit in SPI mode R2. More...
|
|
enum | _sdspi_data_error_token {
kSDSPI_DataErrorTokenError = (1U << 0U),
kSDSPI_DataErrorTokenCardControllerError = (1U << 1U),
kSDSPI_DataErrorTokenCardEccFailed = (1U << 2U),
kSDSPI_DataErrorTokenOutOfRange = (1U << 3U)
} |
| Data Error Token mask bit. More...
|
|
enum | sdspi_data_token_t {
kSDSPI_DataTokenBlockRead = 0xFEU,
kSDSPI_DataTokenSingleBlockWrite = 0xFEU,
kSDSPI_DataTokenMultipleBlockWrite = 0xFCU,
kSDSPI_DataTokenStopTransfer = 0xFDU
} |
| Data Token. More...
|
|
enum | sdspi_data_response_token_t {
kSDSPI_DataResponseTokenAccepted = 0x05U,
kSDSPI_DataResponseTokenCrcError = 0x0BU,
kSDSPI_DataResponseTokenWriteError = 0x0DU
} |
| Data Response Token. More...
|
|
enum | sd_command_t {
kSD_SendRelativeAddress = 3U,
kSD_Switch = 6U,
kSD_SendInterfaceCondition = 8U,
kSD_VoltageSwitch = 11U,
kSD_SpeedClassControl = 20U,
kSD_EraseWriteBlockStart = 32U,
kSD_EraseWriteBlockEnd = 33U,
kSD_SendTuningBlock = 19U
} |
| SD card individual commands. More...
|
|
enum | sdspi_command_t { kSDSPI_CommandCrc = 59U
} |
| SDSPI individual commands. More...
|
|
enum | sd_application_command_t {
kSD_ApplicationSetBusWdith = 6U,
kSD_ApplicationStatus = 13U,
kSD_ApplicationSendNumberWriteBlocks = 22U,
kSD_ApplicationSetWriteBlockEraseCount = 23U,
kSD_ApplicationSendOperationCondition = 41U,
kSD_ApplicationSetClearCardDetect = 42U,
kSD_ApplicationSendScr = 51U
} |
| SD card individual application commands. More...
|
|
enum | _sdmmc_command_class {
kSDMMC_CommandClassBasic = (1U << 0U),
kSDMMC_CommandClassBlockRead = (1U << 2U),
kSDMMC_CommandClassBlockWrite = (1U << 4U),
kSDMMC_CommandClassErase = (1U << 5U),
kSDMMC_CommandClassWriteProtect = (1U << 6U),
kSDMMC_CommandClassLockCard = (1U << 7U),
kSDMMC_CommandClassApplicationSpecific = (1U << 8U),
kSDMMC_CommandClassInputOutputMode = (1U << 9U),
kSDMMC_CommandClassSwitch = (1U << 10U)
} |
| SD card command class. More...
|
|
enum | _sd_ocr_flag {
kSD_OcrPowerUpBusyFlag = 31,
kSD_OcrHostCapacitySupportFlag = 30,
kSD_OcrCardCapacitySupportFlag = kSD_OcrHostCapacitySupportFlag,
kSD_OcrSwitch18RequestFlag = 24,
kSD_OcrSwitch18AcceptFlag = kSD_OcrSwitch18RequestFlag,
kSD_OcrVdd27_28Flag = 15,
kSD_OcrVdd28_29Flag = 16,
kSD_OcrVdd29_30Flag = 17,
kSD_OcrVdd30_31Flag = 18,
kSD_OcrVdd31_32Flag = 19,
kSD_OcrVdd32_33Flag = 20,
kSD_OcrVdd33_34Flag = 21,
kSD_OcrVdd34_35Flag = 22,
kSD_OcrVdd35_36Flag = 23
} |
| OCR register in SD card. More...
|
|
enum | _sd_specification_version {
kSD_SpecificationVersion1_0 = (1U << 0U),
kSD_SpecificationVersion1_1 = (1U << 1U),
kSD_SpecificationVersion2_0 = (1U << 2U),
kSD_SpecificationVersion3_0 = (1U << 3U)
} |
| SD card specification version number. More...
|
|
enum | sd_switch_mode_t {
kSD_SwitchCheck = 0U,
kSD_SwitchSet = 1U
} |
| SD card switch mode. More...
|
|
enum | _sd_csd_flag {
kSD_CsdReadBlockPartialFlag = (1U << 0U),
kSD_CsdWriteBlockMisalignFlag = (1U << 1U),
kSD_CsdReadBlockMisalignFlag = (1U << 2U),
kSD_CsdDsrImplementedFlag = (1U << 3U),
kSD_CsdEraseBlockEnabledFlag = (1U << 4U),
kSD_CsdWriteProtectGroupEnabledFlag = (1U << 5U),
kSD_CsdWriteBlockPartialFlag = (1U << 6U),
kSD_CsdFileFormatGroupFlag = (1U << 7U),
kSD_CsdCopyFlag = (1U << 8U),
kSD_CsdPermanentWriteProtectFlag = (1U << 9U),
kSD_CsdTemporaryWriteProtectFlag = (1U << 10U)
} |
| SD card CSD register flags. More...
|
|
enum | _sd_scr_flag {
kSD_ScrDataStatusAfterErase = (1U << 0U),
kSD_ScrSdSpecification3 = (1U << 1U)
} |
| SD card SCR register flags. More...
|
|
enum | _sd_timing_function {
kSD_FunctionSDR12Deafult = 0U,
kSD_FunctionSDR25HighSpeed = 1U,
kSD_FunctionSDR50 = 2U,
kSD_FunctionSDR104 = 3U,
kSD_FunctionDDR50 = 4U
} |
| SD timing function number. More...
|
|
enum | _sd_group_num {
kSD_GroupTimingMode = 0U,
kSD_GroupCommandSystem = 1U,
kSD_GroupDriverStrength = 2U,
kSD_GroupCurrentLimit = 3U
} |
| SD group number. More...
|
|
enum | sd_timing_mode_t {
kSD_TimingSDR12DefaultMode = 0U,
kSD_TimingSDR25HighSpeedMode = 1U,
kSD_TimingSDR50Mode = 2U,
kSD_TimingSDR104Mode = 3U,
kSD_TimingDDR50Mode = 4U
} |
| SD card timing mode flags. More...
|
|
enum | sd_driver_strength_t {
kSD_DriverStrengthTypeB = 0U,
kSD_DriverStrengthTypeA = 1U,
kSD_DriverStrengthTypeC = 2U,
kSD_DriverStrengthTypeD = 3U
} |
| SD card driver strength. More...
|
|
enum | sd_max_current_t {
kSD_CurrentLimit200MA = 0U,
kSD_CurrentLimit400MA = 1U,
kSD_CurrentLimit600MA = 2U,
kSD_CurrentLimit800MA = 3U
} |
| SD card current limit. More...
|
|
enum | sdmmc_command_t {
kSDMMC_GoIdleState = 0U,
kSDMMC_AllSendCid = 2U,
kSDMMC_SetDsr = 4U,
kSDMMC_SelectCard = 7U,
kSDMMC_SendCsd = 9U,
kSDMMC_SendCid = 10U,
kSDMMC_StopTransmission = 12U,
kSDMMC_SendStatus = 13U,
kSDMMC_GoInactiveState = 15U,
kSDMMC_SetBlockLength = 16U,
kSDMMC_ReadSingleBlock = 17U,
kSDMMC_ReadMultipleBlock = 18U,
kSDMMC_SetBlockCount = 23U,
kSDMMC_WriteSingleBlock = 24U,
kSDMMC_WriteMultipleBlock = 25U,
kSDMMC_ProgramCsd = 27U,
kSDMMC_SetWriteProtect = 28U,
kSDMMC_ClearWriteProtect = 29U,
kSDMMC_SendWriteProtect = 30U,
kSDMMC_Erase = 38U,
kSDMMC_LockUnlock = 42U,
kSDMMC_ApplicationCommand = 55U,
kSDMMC_GeneralCommand = 56U,
kSDMMC_ReadOcr = 58U
} |
| SD/MMC card common commands. More...
|
|
enum | _sdio_cccr_reg {
kSDIO_RegCCCRSdioVer = 0x00U,
kSDIO_RegSDVersion = 0x01U,
kSDIO_RegIOEnable = 0x02U,
kSDIO_RegIOReady = 0x03U,
kSDIO_RegIOIntEnable = 0x04U,
kSDIO_RegIOIntPending = 0x05U,
kSDIO_RegIOAbort = 0x06U,
kSDIO_RegBusInterface = 0x07U,
kSDIO_RegCardCapability = 0x08U,
kSDIO_RegCommonCISPointer = 0x09U,
kSDIO_RegBusSuspend = 0x0C,
kSDIO_RegFunctionSelect = 0x0DU,
kSDIO_RegExecutionFlag = 0x0EU,
kSDIO_RegReadyFlag = 0x0FU,
kSDIO_RegFN0BlockSizeLow = 0x10U,
kSDIO_RegFN0BlockSizeHigh = 0x11U,
kSDIO_RegPowerControl = 0x12U,
kSDIO_RegBusSpeed = 0x13U,
kSDIO_RegUHSITimingSupport = 0x14U,
kSDIO_RegDriverStrength = 0x15U,
kSDIO_RegInterruptExtension = 0x16U
} |
| sdio card cccr register addr More...
|
|
enum | sdio_command_t {
kSDIO_SendRelativeAddress = 3U,
kSDIO_SendOperationCondition = 5U,
kSDIO_SendInterfaceCondition = 8U,
kSDIO_RWIODirect = 52U,
kSDIO_RWIOExtended = 53U
} |
| sdio card individual commands More...
|
|
enum | sdio_func_num_t {
kSDIO_FunctionNum0,
kSDIO_FunctionNum1,
kSDIO_FunctionNum2,
kSDIO_FunctionNum3,
kSDIO_FunctionNum4,
kSDIO_FunctionNum5,
kSDIO_FunctionNum6,
kSDIO_FunctionNum7,
kSDIO_FunctionMemory
} |
| sdio card individual commands More...
|
|
enum | _sdio_status_flag {
kSDIO_StatusCmdCRCError = 0x8000U,
kSDIO_StatusIllegalCmd = 0x4000U,
kSDIO_StatusR6Error = 0x2000U,
kSDIO_StatusError = 0x0800U,
kSDIO_StatusFunctionNumError = 0x0200U,
kSDIO_StatusOutofRange = 0x0100U
} |
| sdio command response flag More...
|
|
enum | _sdio_ocr_flag {
kSDIO_OcrPowerUpBusyFlag = 31,
kSDIO_OcrIONumber = 28,
kSDIO_OcrMemPresent = 27,
kSDIO_OcrVdd20_21Flag = 8,
kSDIO_OcrVdd21_22Flag = 9,
kSDIO_OcrVdd22_23Flag = 10,
kSDIO_OcrVdd23_24Flag = 11,
kSDIO_OcrVdd24_25Flag = 12,
kSDIO_OcrVdd25_26Flag = 13,
kSDIO_OcrVdd26_27Flag = 14,
kSDIO_OcrVdd27_28Flag = 15,
kSDIO_OcrVdd28_29Flag = 16,
kSDIO_OcrVdd29_30Flag = 17,
kSDIO_OcrVdd30_31Flag = 18,
kSDIO_OcrVdd31_32Flag = 19,
kSDIO_OcrVdd32_33Flag = 20,
kSDIO_OcrVdd33_34Flag = 21,
kSDIO_OcrVdd34_35Flag = 22,
kSDIO_OcrVdd35_36Flag = 23
} |
| sdio operation condition flag More...
|
|
enum | _sdio_capability_flag {
kSDIO_CCCRSupportDirectCmdDuringDataTrans = (1U << 0U),
kSDIO_CCCRSupportMultiBlock = (1U << 1U),
kSDIO_CCCRSupportReadWait = (1U << 2U),
kSDIO_CCCRSupportSuspendResume = (1U << 3U),
kSDIO_CCCRSupportIntDuring4BitDataTrans = (1U << 4U),
kSDIO_CCCRSupportLowSpeed1Bit = (1U << 6U),
kSDIO_CCCRSupportLowSpeed4Bit = (1U << 7U),
kSDIO_CCCRSupportMasterPowerControl = (1U << 8U),
kSDIO_CCCRSupportHighSpeed = (1U << 9U),
kSDIO_CCCRSupportContinuousSPIInt = (1U << 10U)
} |
| sdio capability flag More...
|
|
enum | _sdio_fbr_flag {
kSDIO_FBRSupportCSA = (1U << 0U),
kSDIO_FBRSupportPowerSelection = (1U << 1U)
} |
| sdio fbr flag More...
|
|
enum | sdio_bus_width_t {
kSDIO_DataBus1Bit = 0x00U,
kSDIO_DataBus4Bit = 0X02U,
kSDIO_DataBus8Bit = 0X03U
} |
| sdio bus width More...
|
|
enum | mmc_command_t {
kMMC_SendOperationCondition = 1U,
kMMC_SetRelativeAddress = 3U,
kMMC_SleepAwake = 5U,
kMMC_Switch = 6U,
kMMC_SendExtendedCsd = 8U,
kMMC_ReadDataUntilStop = 11U,
kMMC_BusTestRead = 14U,
kMMC_SendingBusTest = 19U,
kMMC_WriteDataUntilStop = 20U,
kMMC_SendTuningBlock = 21U,
kMMC_ProgramCid = 26U,
kMMC_EraseGroupStart = 35U,
kMMC_EraseGroupEnd = 36U,
kMMC_FastInputOutput = 39U,
kMMC_GoInterruptState = 40U
} |
| MMC card individual commands. More...
|
|
enum | mmc_classified_voltage_t {
kMMC_ClassifiedVoltageHigh = 0U,
kMMC_ClassifiedVoltageDual = 1U
} |
| MMC card classified as voltage range. More...
|
|
enum | mmc_classified_density_t { kMMC_ClassifiedDensityWithin2GB = 0U
} |
| MMC card classified as density level. More...
|
|
enum | mmc_access_mode_t {
kMMC_AccessModeByte = 0U,
kMMC_AccessModeSector = 2U
} |
| MMC card access mode(Access mode in OCR). More...
|
|
enum | mmc_voltage_window_t {
kMMC_VoltageWindowNone = 0U,
kMMC_VoltageWindow120 = 0x01U,
kMMC_VoltageWindow170to195 = 0x02U,
kMMC_VoltageWindows270to360 = 0x1FFU
} |
| MMC card voltage window(VDD voltage window in OCR). More...
|
|
enum | mmc_csd_structure_version_t {
kMMC_CsdStrucureVersion10 = 0U,
kMMC_CsdStrucureVersion11 = 1U,
kMMC_CsdStrucureVersion12 = 2U,
kMMC_CsdStrucureVersionInExtcsd = 3U
} |
| CSD structure version(CSD_STRUCTURE in CSD). More...
|
|
enum | mmc_specification_version_t {
kMMC_SpecificationVersion0 = 0U,
kMMC_SpecificationVersion1 = 1U,
kMMC_SpecificationVersion2 = 2U,
kMMC_SpecificationVersion3 = 3U,
kMMC_SpecificationVersion4 = 4U
} |
| MMC card specification version(SPEC_VERS in CSD). More...
|
|
enum | _mmc_extended_csd_revision {
kMMC_ExtendedCsdRevision10 = 0U,
kMMC_ExtendedCsdRevision11 = 1U,
kMMC_ExtendedCsdRevision12 = 2U,
kMMC_ExtendedCsdRevision13 = 3U,
kMMC_ExtendedCsdRevision14 = 4U,
kMMC_ExtendedCsdRevision15 = 5U,
kMMC_ExtendedCsdRevision16 = 6U,
kMMC_ExtendedCsdRevision17 = 7U
} |
| MMC card Extended CSD fix version(EXT_CSD_REV in Extended CSD) More...
|
|
enum | mmc_command_set_t {
kMMC_CommandSetStandard = 0U,
kMMC_CommandSet1 = 1U,
kMMC_CommandSet2 = 2U,
kMMC_CommandSet3 = 3U,
kMMC_CommandSet4 = 4U
} |
| MMC card command set(COMMAND_SET in Extended CSD) More...
|
|
enum | _mmc_support_boot_mode {
kMMC_SupportAlternateBoot = 1U,
kMMC_SupportDDRBoot = 2U,
kMMC_SupportHighSpeedBoot = 4U
} |
| boot support(BOOT_INFO in Extended CSD) More...
|
|
enum | mmc_high_speed_timing_t {
kMMC_HighSpeedTimingNone = 0U,
kMMC_HighSpeedTiming = 1U,
kMMC_HighSpeed200Timing = 2U,
kMMC_HighSpeed400Timing = 3U,
kMMC_EnhanceHighSpeed400Timing = 4U
} |
| MMC card high-speed timing(HS_TIMING in Extended CSD) More...
|
|
enum | mmc_data_bus_width_t {
kMMC_DataBusWidth1bit = 0U,
kMMC_DataBusWidth4bit = 1U,
kMMC_DataBusWidth8bit = 2U,
kMMC_DataBusWidth4bitDDR = 5U,
kMMC_DataBusWidth8bitDDR = 6U,
kMMC_DataBusWidth8bitDDRSTROBE = 0x86U
} |
| MMC card data bus width(BUS_WIDTH in Extended CSD) More...
|
|
enum | mmc_boot_partition_enable_t {
kMMC_BootPartitionEnableNot = 0U,
kMMC_BootPartitionEnablePartition1 = 1U,
kMMC_BootPartitionEnablePartition2 = 2U,
kMMC_BootPartitionEnableUserAera = 7U
} |
| MMC card boot partition enabled(BOOT_PARTITION_ENABLE in Extended CSD) More...
|
|
enum | mmc_boot_timing_mode_t {
kMMC_BootModeSDRWithDefaultTiming = 0U,
kMMC_BootModeSDRWithHighSpeedTiming = 1U,
kMMC_BootModeDDRTiming = 2U
} |
| boot mode configuration Note: HS200 & HS400 is not support during BOOT operation. More...
|
|
enum | mmc_boot_partition_wp_t {
kMMC_BootPartitionWPDisable = 0x50U,
kMMC_BootPartitionPwrWPToBothPartition,
kMMC_BootPartitionPermWPToBothPartition = 0x04U,
kMMC_BootPartitionPwrWPToPartition1 = (1U << 7U) | 1U,
kMMC_BootPartitionPwrWPToPartition2 = (1U << 7U) | 3U,
kMMC_BootPartitionPermWPToPartition1,
kMMC_BootPartitionPermWPToPartition2,
kMMC_BootPartitionPermWPToPartition1PwrWPToPartition2,
kMMC_BootPartitionPermWPToPartition2PwrWPToPartition1
} |
| MMC card boot partition write protect configurations All the bits in BOOT_WP register, except the two R/W bits B_PERM_WP_DIS and B_PERM_WP_EN, shall only be written once per power cycle.The protection mdde intended for both boot areas will be set with a single write. More...
|
|
enum | _mmc_boot_partition_wp_status {
kMMC_BootPartitionNotProtected = 0U,
kMMC_BootPartitionPwrProtected = 1U,
kMMC_BootPartitionPermProtected = 2U
} |
| MMC card boot partition write protect status. More...
|
|
enum | mmc_access_partition_t {
kMMC_AccessPartitionUserAera = 0U,
kMMC_AccessPartitionBoot1 = 1U,
kMMC_AccessPartitionBoot2 = 2U,
kMMC_AccessRPMB = 3U,
kMMC_AccessGeneralPurposePartition1 = 4U,
kMMC_AccessGeneralPurposePartition2 = 5U,
kMMC_AccessGeneralPurposePartition3 = 6U,
kMMC_AccessGeneralPurposePartition4 = 7U
} |
| MMC card partition to be accessed(BOOT_PARTITION_ACCESS in Extended CSD) More...
|
|
enum | _mmc_csd_flag {
kMMC_CsdReadBlockPartialFlag = (1U << 0U),
kMMC_CsdWriteBlockMisalignFlag = (1U << 1U),
kMMC_CsdReadBlockMisalignFlag = (1U << 2U),
kMMC_CsdDsrImplementedFlag = (1U << 3U),
kMMC_CsdWriteProtectGroupEnabledFlag = (1U << 4U),
kMMC_CsdWriteBlockPartialFlag = (1U << 5U),
kMMC_ContentProtectApplicationFlag = (1U << 6U),
kMMC_CsdFileFormatGroupFlag = (1U << 7U),
kMMC_CsdCopyFlag = (1U << 8U),
kMMC_CsdPermanentWriteProtectFlag = (1U << 9U),
kMMC_CsdTemporaryWriteProtectFlag = (1U << 10U)
} |
| MMC card CSD register flags. More...
|
|
enum | mmc_extended_csd_access_mode_t {
kMMC_ExtendedCsdAccessModeCommandSet = 0U,
kMMC_ExtendedCsdAccessModeSetBits = 1U,
kMMC_ExtendedCsdAccessModeClearBits = 2U,
kMMC_ExtendedCsdAccessModeWriteBits = 3U
} |
| Extended CSD register access mode(Access mode in CMD6). More...
|
|
enum | mmc_extended_csd_index_t {
kMMC_ExtendedCsdIndexBootPartitionWP = 173U,
kMMC_ExtendedCsdIndexEraseGroupDefinition = 175U,
kMMC_ExtendedCsdIndexBootBusConditions = 177U,
kMMC_ExtendedCsdIndexBootConfigWP = 178U,
kMMC_ExtendedCsdIndexPartitionConfig = 179U,
kMMC_ExtendedCsdIndexBusWidth = 183U,
kMMC_ExtendedCsdIndexHighSpeedTiming = 185U,
kMMC_ExtendedCsdIndexPowerClass = 187U,
kMMC_ExtendedCsdIndexCommandSet = 191U
} |
| EXT CSD byte index. More...
|
|
enum | _mmc_driver_strength {
kMMC_DriverStrength0 = 0U,
kMMC_DriverStrength1 = 1U,
kMMC_DriverStrength2 = 2U,
kMMC_DriverStrength3 = 3U,
kMMC_DriverStrength4 = 4U
} |
| mmc driver strength More...
|
|
enum | mmc_extended_csd_flags_t {
kMMC_ExtCsdExtPartitionSupport = (1 << 0U),
kMMC_ExtCsdEnhancePartitionSupport = (1 << 1U),
kMMC_ExtCsdPartitioningSupport = (1 << 2U),
kMMC_ExtCsdPrgCIDCSDInDDRModeSupport = (1 << 3U),
kMMC_ExtCsdBKOpsSupport = (1 << 4U),
kMMC_ExtCsdDataTagSupport = (1 << 5U),
kMMC_ExtCsdModeOperationCodeSupport = (1 << 6U)
} |
| mmc extended csd flags More...
|
|
enum | mmc_boot_mode_t {
kMMC_BootModeNormal = 0U,
kMMC_BootModeAlternative = 1U
} |
| MMC card boot mode. More...
|
|