From: Richard Purdie Add MMC/SD write protection switch handling for the Corgi platform Signed-off-by: Richard Purdie Signed-off-by: Andrew Morton --- arch/arm/mach-pxa/corgi.c | 6 ++++++ 1 files changed, 6 insertions(+) diff -puN arch/arm/mach-pxa/corgi.c~corgi-add-mmc-sd-write-protection-switch-handling arch/arm/mach-pxa/corgi.c --- devel/arch/arm/mach-pxa/corgi.c~corgi-add-mmc-sd-write-protection-switch-handling 2005-08-05 00:53:40.000000000 -0700 +++ devel-akpm/arch/arm/mach-pxa/corgi.c 2005-08-05 00:53:40.000000000 -0700 @@ -181,6 +181,11 @@ static void corgi_mci_setpower(struct de } } +static int corgi_mci_get_ro(struct device *dev) +{ + return GPLR(CORGI_GPIO_nSD_WP) & GPIO_bit(CORGI_GPIO_nSD_WP); +} + static void corgi_mci_exit(struct device *dev, void *data) { free_irq(CORGI_IRQ_GPIO_nSD_DETECT, data); @@ -190,6 +195,7 @@ static void corgi_mci_exit(struct device static struct pxamci_platform_data corgi_mci_platform_data = { .ocr_mask = MMC_VDD_32_33|MMC_VDD_33_34, .init = corgi_mci_init, + .get_ro = corgi_mci_get_ro, .setpower = corgi_mci_setpower, .exit = corgi_mci_exit, }; _