]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - arch/arm/mach-msm/devices-msm7x00.c
Merge tag 'v2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[mv-sheeva.git] / arch / arm / mach-msm / devices-msm7x00.c
index 4e8c0bcdc92df35e45853d7ae08748f4d8895ede..fb548a8a21dbb907aa04b9bc7b4e4a78b58d47f6 100644 (file)
@@ -347,6 +347,73 @@ int __init msm_add_sdcc(unsigned int controller,
        return platform_device_register(pdev);
 }
 
+static struct resource resources_mddi0[] = {
+       {
+               .start  = MSM_PMDH_PHYS,
+               .end    = MSM_PMDH_PHYS + MSM_PMDH_SIZE - 1,
+               .flags  = IORESOURCE_MEM,
+       },
+       {
+               .start  = INT_MDDI_PRI,
+               .end    = INT_MDDI_PRI,
+               .flags  = IORESOURCE_IRQ,
+       },
+};
+
+static struct resource resources_mddi1[] = {
+       {
+               .start  = MSM_EMDH_PHYS,
+               .end    = MSM_EMDH_PHYS + MSM_EMDH_SIZE - 1,
+               .flags  = IORESOURCE_MEM,
+       },
+       {
+               .start  = INT_MDDI_EXT,
+               .end    = INT_MDDI_EXT,
+               .flags  = IORESOURCE_IRQ,
+       },
+};
+
+struct platform_device msm_device_mddi0 = {
+       .name = "msm_mddi",
+       .id = 0,
+       .num_resources = ARRAY_SIZE(resources_mddi0),
+       .resource = resources_mddi0,
+       .dev = {
+               .coherent_dma_mask      = 0xffffffff,
+       },
+};
+
+struct platform_device msm_device_mddi1 = {
+       .name = "msm_mddi",
+       .id = 1,
+       .num_resources = ARRAY_SIZE(resources_mddi1),
+       .resource = resources_mddi1,
+       .dev = {
+               .coherent_dma_mask      = 0xffffffff,
+       },
+};
+
+static struct resource resources_mdp[] = {
+       {
+               .start  = MSM_MDP_PHYS,
+               .end    = MSM_MDP_PHYS + MSM_MDP_SIZE - 1,
+               .name   = "mdp",
+               .flags  = IORESOURCE_MEM
+       },
+       {
+               .start  = INT_MDP,
+               .end    = INT_MDP,
+               .flags  = IORESOURCE_IRQ,
+       },
+};
+
+struct platform_device msm_device_mdp = {
+       .name = "msm_mdp",
+       .id = 0,
+       .num_resources = ARRAY_SIZE(resources_mdp),
+       .resource = resources_mdp,
+};
+
 struct clk msm_clocks_7x01a[] = {
        CLK_PCOM("adm_clk",     ADM_CLK,        NULL, 0),
        CLK_PCOM("adsp_clk",    ADSP_CLK,       NULL, 0),
@@ -364,7 +431,7 @@ struct clk msm_clocks_7x01a[] = {
        CLK_PCOM("mdp_clk",     MDP_CLK,        NULL, OFF),
        CLK_PCOM("pbus_clk",    PBUS_CLK,       NULL, 0),
        CLK_PCOM("pcm_clk",     PCM_CLK,        NULL, 0),
-       CLK_PCOM("pmdh_clk",    PMDH_CLK,       NULL, OFF ),
+       CLK_PCOM("mddi_clk",    PMDH_CLK,       NULL, OFF | CLK_MINMAX),
        CLK_PCOM("sdac_clk",    SDAC_CLK,       NULL, OFF),
        CLK_PCOM("sdc_clk",     SDC1_CLK,       &msm_device_sdc1.dev, OFF),
        CLK_PCOM("sdc_pclk",    SDC1_P_CLK,     &msm_device_sdc1.dev, OFF),