Synergy Software Package User's Manual

Interface for accessing SD, eMMC, and SDIO devices. More...

Data Structures

struct  sdmmc_hw_t
 
struct  sdmmc_info_t
 
struct  sdmmc_callback_args_t
 
struct  sdmmc_cfg_t
 
struct  sdmmc_api_t
 
struct  sdmmc_instance_t
 

Typedefs

typedef void sdmmc_ctrl_t
 

Enumerations

enum  sdmmc_ready_status_t { SDMMC_STATUS_CARD_NOT_READY = 0x00, SDMMC_STATUS_CARD_READY }
 
enum  sdmmc_card_type_t { SDMMC_CARD_TYPE_MMC, SDMMC_CARD_TYPE_SD }
 
enum  sdmmc_media_type_t { SDMMC_MEDIA_TYPE_EMBEDDED, SDMMC_MEDIA_TYPE_CARD }
 
enum  sdmmc_bus_width_t { SDMMC_BUS_WIDTH_1_BIT = 1, SDMMC_BUS_WIDTH_4_BITS = 4, SDMMC_BUS_WIDTH_8_BITS = 8 }
 
enum  sdmmc_io_transfer_mode_t { SDMMC_IO_MODE_TRANSFER_BYTE = 0, SDMMC_IO_MODE_TRANSFER_BLOCK }
 
enum  sdmmc_io_address_mode_t { SDMMC_IO_ADDRESS_MODE_FIXED = 0, SDMMC_IO_ADDRESS_MODE_INCREMENT }
 
enum  sdmmc_io_write_mode_t { SDMMC_IO_WRITE_MODE_NO_READ = 0, SDMMC_IO_WRITE_READ_AFTER_WRITE }
 
enum  sdmmc_event_t {
  SDMMC_EVENT_CARD_REMOVED = 0x01, SDMMC_EVENT_CARD_INSERTED = 0x02, SDMMC_EVENT_ACCESS = 0x04, SDMMC_EVENT_SDIO = 0x08,
  SDMMC_EVENT_TRANSFER_COMPLETE = 0x10, SDMMC_EVENT_TRANSFER_ERROR = 0x20, SDMMC_EVENT_NONE = 0x00
}
 

Detailed Description

Interface for accessing SD, eMMC, and SDIO devices.

Summary

The r_sdmmc interface provides standard SD and eMMC media functionality. A complete file system can be implemented with FileX, sf_el_fx, sf_block_media_sdmmc and r_sdmmc modules. This driver also supports SDIO. The SD/MMC interface is implemented by:

Related SSP architecture topics:

SD/MMC description: SD/MMC Driver and SDIO Driver

Typedef Documentation

◆ sdmmc_ctrl_t

typedef void sdmmc_ctrl_t

SD/MMC control block. Allocate an instance specific control block to pass into the SD/MMC API calls.

Implemented as

Enumeration Type Documentation

◆ sdmmc_bus_width_t

SD/MMC data bus is 1, 4 or 8 bits wide.

Enumerator
SDMMC_BUS_WIDTH_1_BIT 

Data bus is 1 bit wide.

SDMMC_BUS_WIDTH_4_BITS 

Data bus is 4 bits wide.

SDMMC_BUS_WIDTH_8_BITS 

Data bus is 8 bits wide.

◆ sdmmc_card_type_t

SD/MMC media uses SD protocol or MMC protocol.

Enumerator
SDMMC_CARD_TYPE_MMC 

The media is an eMMC device.

SDMMC_CARD_TYPE_SD 

The media is an SD card.

◆ sdmmc_event_t

Events that can trigger a callback function

Enumerator
SDMMC_EVENT_CARD_REMOVED 

Card removed event.

SDMMC_EVENT_CARD_INSERTED 

Card inserted event.

SDMMC_EVENT_ACCESS 

Access event.

SDMMC_EVENT_SDIO 

IO event.

SDMMC_EVENT_TRANSFER_COMPLETE 

Read or write complete.

SDMMC_EVENT_TRANSFER_ERROR 

Read or write failed.

SDMMC_EVENT_NONE 

No event.

◆ sdmmc_io_address_mode_t

SDIO address mode, configurable in SDIO read/write extended commands.

Enumerator
SDMMC_IO_ADDRESS_MODE_FIXED 

Write all data to the same address.

SDMMC_IO_ADDRESS_MODE_INCREMENT 

Increment destination address after each write.

◆ sdmmc_io_transfer_mode_t

SDIO transfer mode, configurable in SDIO read/write extended commands.

Enumerator
SDMMC_IO_MODE_TRANSFER_BYTE 

SDIO byte transfer mode.

SDMMC_IO_MODE_TRANSFER_BLOCK 

SDIO block transfer mode.

◆ sdmmc_io_write_mode_t

Controls the RAW (read after write) flag of CMD52. Used to read back the status after writing a control register.

Enumerator
SDMMC_IO_WRITE_MODE_NO_READ 

Write only (do not read back)

SDMMC_IO_WRITE_READ_AFTER_WRITE 

Read back the register after write.

◆ sdmmc_media_type_t

SD/MMC media is embedded or it can be inserted and removed.

Enumerator
SDMMC_MEDIA_TYPE_EMBEDDED 

The media is an embedded card, or eMMC device.

SDMMC_MEDIA_TYPE_CARD 

The media is an pluggable card.

◆ sdmmc_ready_status_t

SD/MMC status

Enumerator
SDMMC_STATUS_CARD_NOT_READY 

SD card or eMMC device has not been initialized.

SDMMC_STATUS_CARD_READY 

SD card or eMMC device has been initialized and is ready to access.