]> bbs.cooldavid.org Git - net-next-2.6.git/commitdiff
[ARM] msm: common: Add SDC device runtime registration
authorSan Mehat <san@google.com>
Tue, 11 Nov 2008 00:30:27 +0000 (16:30 -0800)
committerDaniel Walker <dwalker@codeaurora.org>
Wed, 12 May 2010 16:14:48 +0000 (09:14 -0700)
Signed-off-by: San Mehat <san@google.com>
Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
arch/arm/mach-msm/devices.c

index 31b6b30e98bf1099d6f65b5e5453faa9be82fc50..39bc474455c3d6ed09d42926e28385a21f4aac6e 100644 (file)
@@ -24,6 +24,8 @@
 #include <linux/mtd/nand.h>
 #include <linux/mtd/partitions.h>
 
+#include <mach/mmc.h>
+
 static struct resource resources_uart1[] = {
        {
                .start  = INT_UART1,
@@ -266,3 +268,23 @@ struct platform_device msm_device_sdc4 = {
                .coherent_dma_mask      = 0xffffffff,
        },
 };
+
+static struct platform_device *msm_sdcc_devices[] __initdata = {
+       &msm_device_sdc1,
+       &msm_device_sdc2,
+       &msm_device_sdc3,
+       &msm_device_sdc4,
+};
+
+int __init msm_add_sdcc(unsigned int controller, struct mmc_platform_data *plat)
+{
+       struct platform_device  *pdev;
+
+       if (controller < 1 || controller > 4)
+               return -EINVAL;
+
+       pdev = msm_sdcc_devices[controller-1];
+       pdev->dev.platform_data = plat;
+       return platform_device_register(pdev);
+}
+