ARM: n30: Add support for power on/off on Acer n30 / Acer n35 MMC card reader
authorPinkava J <Jiri.Pinkava@vscht.cz>
Thu, 6 May 2010 13:23:24 +0000 (15:23 +0200)
committerBen Dooks <ben-linux@fluff.org>
Fri, 7 May 2010 00:41:33 +0000 (09:41 +0900)
Signed-off-by: Jiri Pinkava <jiri.pinkava@vscht.cz>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
arch/arm/mach-s3c2410/mach-n30.c

index 81973aa8194b3b8bef15517f43b6b09f7ba72143..f25275ef8bc8e452d6d8562b621b8e20eca28096 100644 (file)
@@ -352,10 +352,25 @@ static struct s3c2410fb_mach_info n30_fb_info __initdata = {
        .lpcsel         = 0x06,
 };
 
+static void n30_sdi_set_power(unsigned char power_mode, unsigned short vdd)
+{
+       switch (power_mode) {
+       case MMC_POWER_ON:
+       case MMC_POWER_UP:
+               s3c2410_gpio_setpin(S3C2410_GPG(4), 1);
+               break;
+       case MMC_POWER_OFF:
+       default:
+               s3c2410_gpio_setpin(S3C2410_GPG(4), 0);
+               break;
+       }
+}
+
 static struct s3c24xx_mci_pdata n30_mci_cfg __initdata = {
        .gpio_detect    = S3C2410_GPF(1),
        .gpio_wprotect  = S3C2410_GPG(10),
        .ocr_avail      = MMC_VDD_32_33,
+       .set_power      = n30_sdi_set_power,
 };
 
 static struct platform_device *n30_devices[] __initdata = {