AM62Ax MCU+ SDK  10.01.00
MMCSD

Attention
Please note that this driver is supported only on DM R5(WKUP R5) as part SBL examples. It is not supported on MCU-R5.

Multi-Media Card Secure Digital (MMCSD) peripheral is a driver which provides an interface with storage devices which follows MMC/SD/SDIO protocol. The driver supports single bit, four bit and eight bit data lines to communicate with the connected media.

The MMCSD controller provides accessibility to external MMC/SD/SDIO devices using a programmed IO method or DMA data transfer method. There are two MMCSD modules inside the SOC - MMCSD0 and MMCSD1.

Features Supported

  • Integrated DMA Controller supporting SD Advanced DMA - SDMA, ADMA2 and ADMA3
  • 64-bit data, address width System Bus Interface
  • MMCSD0 supports eMMC 5.1, and also backward compatible withe earlier eMMC standards
  • MMCSD1 supports SD card HC 4.10 and SD Physical Layer v3.01, SDIO v3.00

SysConfig Features

Note
It is strongly recommend to use SysConfig where it is available instead of using direct SW API calls. This will help simplify the SW application and also catch common mistakes early in the development cycle.

Features not Supported

  • MMCSD0 does not support SD card, SDIO and voltages 3.3V, 3.0V, 1.2V and HS400 DDR
  • MMCSD1 does not support MMC card, UHS-II SD card and SDR104

Example Usage

Include the below file to access the APIs

#include <stdio.h>
#include <drivers/mmcsd.h>

Instance Open Example

MMCSD_Params mmcsdParams;
MMCSD_Params_init(&mmcsdParams);
gMmcsdHandle = MMCSD_open(0, &mmcsdParams);
DebugP_assert(gMmcsdHandle != NULL);

Instance Close Example

MMCSD_close(gMmcsdHandle);

API

APIs for MMCSD

MMCSD_open
MMCSD_Handle MMCSD_open(uint32_t index, const MMCSD_Params *openParams)
This function opens a given MMCSD peripheral.
MMCSD_Params
MMCSD instance attributes - used during init time.
Definition: mmcsd/v0/mmcsd.h:200
MMCSD_Params_init
void MMCSD_Params_init(MMCSD_Params *mmcsdParams)
Initialize data structure with defaults.
mmcsd.h
MMCSD_close
void MMCSD_close(MMCSD_Handle handle)
Function to close a MMCSD peripheral specified by the MMCSD handle.
DebugP_assert
#define DebugP_assert(expression)
Function to call for assert check.
Definition: DebugP.h:175