24 Mar, 2014

1 commit

  • The way that struct mmc was implemented was a bit of a mess;
    configuration and internal state all jumbled up in a single structure.

    On top of that the way initialization is done with mmc_register leads
    to a lot of duplicated code in drivers.

    Typically the initialization got something like this in every driver.

    struct mmc *mmc = malloc(sizeof(struct mmc));
    memset(mmc, 0, sizeof(struct mmc);
    /* fill in fields of mmc struct */
    /* store private data pointer */
    mmc_register(mmc);

    By using the new mmc_create call one just passes an mmc config struct
    and an optional private data pointer like this:

    struct mmc = mmc_create(&cfg, priv);

    All in tree drivers have been updated to the new form, and expect
    mmc_register to go away before long.

    Changes since v1:

    * Use calloc instead of manually calling memset.
    * Mark mmc_register as deprecated.

    Signed-off-by: Pantelis Antoniou

    Pantelis Antoniou
     

07 Mar, 2012

1 commit


29 Apr, 2011

1 commit


13 Apr, 2011

1 commit

  • This patch supports mmc/sd card with spi interface. It is based on
    the generic mmc framework. It works with SDHC and supports multi
    blocks read/write.

    The crc checksum on data packet is enabled with the def,

    There is a subcomamnd "mmc_spi" to setup spi bus and cs at run time.

    Signed-off-by: Thomas Chou
    Signed-off-by: Andy Fleming

    Thomas Chou