From: Pierre Ossman Date: Wed, 13 Jun 2007 17:06:03 +0000 (+0200) Subject: mmc: get back read-only switch function X-Git-Tag: v2.6.22-rc5~42 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c3bff2ec10b8bf2f53c954e370f9bdae93064472;p=linux-2.6 mmc: get back read-only switch function Somehow the code to read the read-only switch of SD cards got lost in the reorganisation. Signed-off-by: Pierre Ossman --- diff --git a/drivers/mmc/core/sd.c b/drivers/mmc/core/sd.c index 41bfb5dfe6..918477c490 100644 --- a/drivers/mmc/core/sd.c +++ b/drivers/mmc/core/sd.c @@ -427,6 +427,21 @@ static int mmc_sd_init_card(struct mmc_host *host, u32 ocr, mmc_set_bus_width(host, MMC_BUS_WIDTH_4); } + /* + * Check if read-only switch is active. + */ + if (!oldcard) { + if (!host->ops->get_ro) { + printk(KERN_WARNING "%s: host does not " + "support reading read-only " + "switch. assuming write-enable.\n", + mmc_hostname(host)); + } else { + if (host->ops->get_ro(host)) + mmc_card_set_readonly(card); + } + } + if (!oldcard) host->card = card;