09 May, 2012

2 commits


13 Mar, 2012

1 commit

  • gen_atmel_mci works on AVR32 as well, so no need to use the legacy
    mmc driver. This also has the nice side effect of being able to use
    SDHC cards an those boards.

    Signed-off-by: Sven Schnelle
    Signed-off-by: Andreas Bießmann

    Sven Schnelle
     

16 Feb, 2012

1 commit


09 Jan, 2012

2 commits

  • Check for card detect each time an MMC/SD device is initialized. If card
    detection is not implemented, this code behaves as before and continues
    assuming a card is present. If no card is detected, has_init is reset
    for the MMC/SD device (to force initialization next time) and an error
    is returned.

    Signed-off-by: Thierry Reding
    Tested-by: Jason Liu

    Thierry Reding
     
  • The new API no longer uses the extra cd parameter that was used to store
    the card presence state. Instead, this information is returned via the
    function's return value. board_mmc_getcd() returns -1 to indicate that
    no card-detection mechanism is implemented; 0 indicates that no card is
    present and 1 is returned if it was detected that a card is present.

    The rationale for this change can be found in the following email
    thread:

    http://lists.denx.de/pipermail/u-boot/2011-November/110180.html

    In summary, the old API was not consistent with the rest of the MMC API
    which always passes a struct mmc as the first parameter. Furthermore the
    cd parameter was used to mean "card absence" in some implementations and
    "card presence" in others.

    Signed-off-by: Thierry Reding
    Tested-by: Jason Liu

    Thierry Reding
     

03 Nov, 2011

1 commit


16 Jul, 2011

2 commits

  • This patch provides handling of the two way handshake when SEND_OP_COND
    (CMD1) is send to mmc card. It is necessary to inform eMMC card if the
    host can work with high capacity cards (Jedec JESD84-A441, point 7.4.3).

    The extra flag MMC_MODE_HC (high capacity) is added to indicate if the
    host is capable of handling the high capacity eMMC cards.

    Since this change is added to the generic mmc framework, then it requires
    other boards to indicate if their mmc controllers can handle high capacity
    cards. As it is now - the old behaviour of the framework is preserved.

    Signed-off-by: Lukasz Majewski
    Signed-off-by: Andy Fleming

    Łukasz Majewski
     
  • Erase is a very basic function since the begin of sd specification is
    announced. Although we could write a bulk of full 0xff memory to the
    range to take place of erase, it is more convenient and safe to
    implement the erase function itself.

    Signed-off-by: Lei Wen
    Signed-off-by: Andy Fleming
    Acked-by: Mike Frysinger

    Lei Wen
     

19 May, 2011

3 commits

  • For emmc, it may have up to 7 partitions: two boot partitions, one
    user partition, one RPMB partition and four general purpose partitions.
    (Refer to JESD84-A44.pdf/page 154)

    As bootloader may need to read out or reflashing images on those

    different partitions, it is better to enable the partition switch with
    console command support.

    Also for partition would be restore to user partition(part 0) when CMD0
    is used, so change mmc_init routine to perform normal initialization
    only once for each slot, unless use the rescan command to force init
    again.

    Signed-off-by: Lei Wen
    Acked-by: Andy Fleming

    Lei Wen
     
  • mmc command applied device, like ide and usb...

    Signed-off-by: Lei Wen
    Acked-by: Andy Fleming

    Lei Wen
     
  • A "send status" command is added with the commit "mmc: checking
    status after commands with R1b response". But the status register
    returned from send status command of SPI protocol is different from
    that of MMC/SD protocol. We do a simple test and generate a response
    in stead of full bit-by-bit translation.

    Signed-off-by: Thomas Chou

    Thomas Chou
     

29 Apr, 2011

2 commits


13 Apr, 2011

3 commits

  • The first SEND_OP_COND (CMD1) command added is used to ask card capabilities.
    After it an AND operation is done between card capabilities and host
    capabilities (at the moment only for the voltage field).
    Finally the correct value is sent to the MMC, waiting that the card
    exits from busy state.

    Signed-off-by: Raffaele Recalcati
    Signed-off-by: Andy Fleming

    Raffaele Recalcati
     
  • It is recommended to check card status after these kind of commands.
    This is done using CMD13 (SEND_STATUS) JEDEC command until
    the card is ready.
    In case of error the card status field is displayed.

    Signed-off-by: Raffaele Recalcati
    Signed-off-by: Andy Fleming

    Raffaele Recalcati
     
  • 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
     

02 Feb, 2011

1 commit

  • Added support for MMC/SD cards for Davinci. This feature is enabled by
    CONFIG_DAVINCI_MMC and is dependant on CONFIG_MMC and CONFIG_GENERIC_MMC
    options. This is tested on DM355 and DM365 EVMs with both the available mmc
    controllers.

    Signed-off-by: Alagu Sankar
    Signed-off-by: Sandeep Paulraj

    Sandeep Paulraj
     

19 Dec, 2010

1 commit

  • After booting the u-boot, and first using some SD card (such as Sandisk 2G SD
    card), because the field 'clock' of struct mmc is zero, this will cause
    the read transfer is always active and SDHC DATA line is always active,
    therefore, driver can't handle the next command.

    Therefore, we use mmc_set_clock to setup both the data structure and HW
    to the initial clock speed of 400000Hz.

    Signed-off-by: Jerry Huang
    Tested-by: Stefano Babic
    Signed-off-by: Kumar Gala

    Jerry Huang
     

03 Sep, 2010

1 commit


06 Jul, 2010

1 commit


08 Mar, 2010

1 commit

  • Most controllers can check if there is a card in the slot.
    However, they require pins that could be not available because
    required by other functions and the detection of a card must
    be performed in another way. This patch adds a weak function
    that a board can implement to add its internal custom way
    to check the presence of a MMC/SD card.

    Signed-off-by: Stefano Babic

    Stefano Babic
     

24 Aug, 2009

1 commit


03 Jun, 2009

1 commit

  • The mmc code defines the response as an array of chars. However, it
    access the response bytes both as (i) an array of four uints (with
    casts) and (ii) as individual chars. The former case is used more
    often, including by the driver when it assigns the response.

    The char-wise accesses are broken on little endian systems because they
    assume that the bytes in the uints are in big endian byte order.

    This patch fixes this by changing the response to be an array of four
    uints and replacing the char-wise accesses with equivalent uint-wise
    accesses.

    Signed-off-by: Rabin Vincent

    Rabin Vincent
     

17 Feb, 2009

4 commits

  • Here's a new framework (based roughly off the linux one) for managing
    MMC controllers. It handles all of the standard SD/MMC transactions,
    leaving the host drivers to implement only what is necessary to
    deal with their specific hardware.

    This also hooks the infrastructure into the PowerPC board code
    (similar to how the ethernet infrastructure now hooks in)

    Some of this code was contributed by Dave Liu

    Signed-off-by: Andy Fleming

    Andy Fleming
     
  • The current MMC infrastructure relies on the existence of an
    arch-specific header file. This isn't necessary, and a couple
    drivers were forced to implement dummy files to meet this requirement.
    Instead, we move the stuff in those header files into a more appropriate
    place, and eliminate the stubs and the #include of asm/arch/mmc.h

    Signed-off-by: Andy Fleming

    Andy Fleming
     
  • This is to get it out of the way of incoming MMC framework

    Signed-off-by: Andy Fleming

    Andy Fleming
     
  • MMC cards are not memory, so we stop treating them that way.

    Signed-off-by: Andy Fleming

    Andy Fleming
     

29 Jun, 2008

1 commit

  • This moves the MMC and SD Card command definitions from
    include/asm/arch/mmc.h into include/mmc.h. These definitions are
    given by the MMC and SD Card standards, not by any particular
    architecture.

    There's a lot more room for consolidation in the MMC drivers which
    I'm hoping to get done eventually, but this patch is a start.

    Compile-tested for all avr32 boards as well as lpc2292sodimm and
    lubbock. This should cover all three mmc drivers in the tree.

    Signed-off-by: Haavard Skinnemoen

    Haavard Skinnemoen
     

16 Jun, 2003

1 commit

  • * Patches by Kyle Harris, 13 Mar 2003:
    - Add FAT partition support
    - Add command support for FAT
    - Add command support for MMC
    ----
    - Add Intel PXA support for video
    - Add Intel PXA support for MMC
    ----
    - Enable MMC and FAT for lubbock board
    - Other misc changes for lubbock board

    wdenk