• Philip Langdale's avatar
    mmc: Add support for SDHC cards · fba68bd2
    Philip Langdale authored
    Thanks to the generous donation of an SDHC card by John Gilmore, and
    the surprisingly enlightened decision by the SD Card Association to
    publish useful specs, I've been able to bash out support for SDHC. The
    changes are not too profound:
    
    i) Add a card flag indicating the card uses block level addressing and
    check it in the block driver. As we never took advantage of byte-level
    addressing, this simply involves skipping the block -> byte
    translation when sending commands.
    
    ii) The layout of the CSD is changed - a set of fields are discarded
    to make space for a larger C_SIZE. We did not reference any of the
    discarded fields except those related to the C_SIZE.
    
    iii) Read and write timeouts are fixed values and not calculated from
    CSD values.
    
    iv) Before invoking SEND_APP_OP_COND, we must invoke the new
    SEND_IF_COND to inform the card we support SDHC.
    Signed-off-by: default avatarPhilipl Langdale <philipl@overt.org>
    Signed-off-by: default avatarPierre Ossman <drzeus@drzeus.cx>
    fba68bd2
mmc_block.c 14 KB