lkml.org 
[lkml]   [2011]   [Mar]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[39/44] mmc: sdio: remember new card RCA when redetecting card
    2.6.32-longterm review patch.  If anyone has any objections, please let us know.

    ------------------

    From: Stefan Nilsson XK <stefan.xk.nilsson@stericsson.com>

    commit 0aab3995485b8a994bf29a995a008c9ea4a28054 upstream.

    During redetection of a SDIO card, a request for a new card RCA
    was submitted to the card, but was then overwritten by the old RCA.
    This caused the card to be deselected instead of selected when using
    the incorrect RCA. This bug's been present since the "oldcard"
    handling was introduced in 2.6.32.

    Signed-off-by: Stefan Nilsson XK <stefan.xk.nilsson@stericsson.com>
    Reviewed-by: Ulf Hansson <ulf.hansson@stericsson.com>
    Reviewed-by: Pawel Wieczorkiewicz <pawel.wieczorkiewicz@stericsson.com>
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Signed-off-by: Chris Ball <cjb@laptop.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

    ---
    drivers/mmc/core/sdio.c | 8 ++++++++
    1 file changed, 8 insertions(+)

    --- a/drivers/mmc/core/sdio.c
    +++ b/drivers/mmc/core/sdio.c
    @@ -267,6 +267,14 @@ static int mmc_sdio_init_card(struct mmc
    if (err)
    goto remove;

    + /*
    + * Update oldcard with the new RCA received from the SDIO
    + * device -- we're doing this so that it's updated in the
    + * "card" struct when oldcard overwrites that later.
    + */
    + if (oldcard)
    + oldcard->rca = card->rca;
    +
    mmc_set_bus_mode(host, MMC_BUSMODE_PUSHPULL);
    }




    \
     
     \ /
      Last update: 2011-03-22 00:57    [W:0.046 / U:89.692 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site