Skip to content

[RFC] [proposal] mmc: add types + traits for SD/MMC peripherals #661

Description

@rmsyn

SD/MMC Trait

This RFC proposal is to add a set of traits for abstracting common functionality for handling SD/MMC peripherals.

Why

Currently, drivers based on embedded-hal that implement the SD/MMC protocol, like embedded-sdmmc-rs, are based on the Spi traits.

However, traits that are more generally abstract over SD/MMC functionality will allow for a wider range of driver implementations.

For example, drivers for SD/SDIO/MMC peripherals, in various modes and specification versions.

Reference Implementation Requirements

This tracking issue is accompanied with a reference implementation to add the traits to embedded-hal:

  • sdmmc: add HAL traits for SD/MMC peripherals
    • SD/SDIO intialization
      • variants for SPI quirks
    • MMC initialization
      • variants for SPI quirks
    • Sending commands to the device
    • Reading responses from the device
    • Data transfers (read/write)
    • Separate, related async implementation (?)
    • Delay/wait functionality
    • Tuning
    • Interrupt configuration + handling
    • FIFO configuration + handling
    • DMA configuration + handling

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions