Hi, On Tue, Mar 01 2011, Linus Walleij wrote: > From: Stefan Nilsson XK <stefan.xk.nilsson@xxxxxxxxxxxxxx> > > 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. Nico, would you mind taking a look at this, please? Assigning to a member of oldcard because we know it's later going to be copied into card seems a little ugly to me (at least without a comment explaining that); I'm wondering if you'd suggest something else here. And, just to check we're all on the same page, this would be a regression introduced back at 2.6.32 when the "oldcard" handling was first merged, so it should be sent up with a stable tag. (I'm not yet sure whether I want to send this to mainline during the last week of a release and without any previous testing, given that the bug is more than a year old already. Let's see what Nico says.) Thanks. > Signed-off-by: Stefan Nilsson XK <stefan.xk.nilsson@xxxxxxxxxxxxxx> > Reviewed-by: Ulf Hansson <ulf.hansson@xxxxxxxxxxxxxx> > Reviewed-by: Pawel Wieczorkiewicz <pawel.wieczorkiewicz@xxxxxxxxxxxxxx> > Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx> > --- > drivers/mmc/core/sdio.c | 7 +++++++ > 1 files changed, 7 insertions(+), 0 deletions(-) > > diff --git a/drivers/mmc/core/sdio.c b/drivers/mmc/core/sdio.c > index 617e9ad..30d065d 100644 > --- a/drivers/mmc/core/sdio.c > +++ b/drivers/mmc/core/sdio.c > @@ -395,6 +395,13 @@ static int mmc_sdio_init_card(struct mmc_host *host, u32 ocr, > if (err) > goto remove; > > + /* > + * Update oldcard with the new RCA received from the > + * SDIO device. > + */ > + if (oldcard) > + oldcard->rca = card->rca; > + > mmc_set_bus_mode(host, MMC_BUSMODE_PUSHPULL); > } -- Chris Ball <cjb@xxxxxxxxxx> One Laptop Per Child -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html