The MCUXpresso SDK provides drivers to access the Secure Digital Card ,Embedded MultiMedia Card and sdio card based on the SDHC/USDHC/SDIF driver. 
|  | 
| 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_operation_voltage_t { kCARD_OperationVoltageNone = 0U,
 kCARD_OperationVoltage330V = 1U,
 kCARD_OperationVoltage300V = 2U,
 kCARD_OperationVoltage180V = 3U
 }
 | 
|  | card operation voltage  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_data_bus_width_t { kSD_DataBusWidth1Bit = 0U,
 kSD_DataBusWidth4Bit = 1U
 }
 | 
|  | SD card bus width.  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
 }
 | 
|  | 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
 }
 | 
|  | 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 << 3U,
 kMMC_BootModeSDRWithHighSpeedTiming = 1U << 3U,
 kMMC_BootModeDDRTiming = 2U << 3U
 }
 | 
|  | 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 { kMMC_BootModeNormal = 0U,
 kMMC_BootModeAlternative = 1U
 }
 | 
|  | MMC card boot mode.  More... 
 | 
|  |