aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/devices.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2010-08-16 13:42:58 -0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2010-08-16 13:42:58 -0400
commite4862f2f6f5653dfb67f3ba2b6f0bc74516ed51a (patch)
tree1db5a0540a4eecfad9b7daee476b985e82ddc810 /arch/arm/mach-omap2/devices.c
parentec62dbd7eb8e3dddb221da89ecbcea0fc3dee8c1 (diff)
parentb2c1e07b81a126e5846dfc3d36f559d861df59f4 (diff)
Merge branch 'for-2.6.36' into for-2.6.37
Fairly simple conflicts, the most serious ones are the i.MX ones which I suspect now need another rename. Conflicts: arch/arm/mach-mx2/clock_imx27.c arch/arm/mach-mx2/devices.c arch/arm/mach-omap2/board-rx51-peripherals.c arch/arm/mach-omap2/board-zoom2.c sound/soc/fsl/mpc5200_dma.c sound/soc/fsl/mpc5200_dma.h sound/soc/fsl/mpc8610_hpcd.c sound/soc/pxa/spitz.c
Diffstat (limited to 'arch/arm/mach-omap2/devices.c')
-rw-r--r--arch/arm/mach-omap2/devices.c88
1 files changed, 17 insertions, 71 deletions
diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c
index f9a5961d23a7..08e1ad5adb14 100644
--- a/arch/arm/mach-omap2/devices.c
+++ b/arch/arm/mach-omap2/devices.c
@@ -25,7 +25,6 @@
25#include <plat/control.h> 25#include <plat/control.h>
26#include <plat/tc.h> 26#include <plat/tc.h>
27#include <plat/board.h> 27#include <plat/board.h>
28#include <plat/mux.h>
29#include <mach/gpio.h> 28#include <mach/gpio.h>
30#include <plat/mmc.h> 29#include <plat/mmc.h>
31#include <plat/dma.h> 30#include <plat/dma.h>
@@ -154,10 +153,12 @@ static struct resource omap2_mbox_resources[] = {
154 { 153 {
155 .start = INT_24XX_MAIL_U0_MPU, 154 .start = INT_24XX_MAIL_U0_MPU,
156 .flags = IORESOURCE_IRQ, 155 .flags = IORESOURCE_IRQ,
156 .name = "dsp",
157 }, 157 },
158 { 158 {
159 .start = INT_24XX_MAIL_U3_MPU, 159 .start = INT_24XX_MAIL_U3_MPU,
160 .flags = IORESOURCE_IRQ, 160 .flags = IORESOURCE_IRQ,
161 .name = "iva",
161 }, 162 },
162}; 163};
163static int omap2_mbox_resources_sz = ARRAY_SIZE(omap2_mbox_resources); 164static int omap2_mbox_resources_sz = ARRAY_SIZE(omap2_mbox_resources);
@@ -176,6 +177,7 @@ static struct resource omap3_mbox_resources[] = {
176 { 177 {
177 .start = INT_24XX_MAIL_U0_MPU, 178 .start = INT_24XX_MAIL_U0_MPU,
178 .flags = IORESOURCE_IRQ, 179 .flags = IORESOURCE_IRQ,
180 .name = "dsp",
179 }, 181 },
180}; 182};
181static int omap3_mbox_resources_sz = ARRAY_SIZE(omap3_mbox_resources); 183static int omap3_mbox_resources_sz = ARRAY_SIZE(omap3_mbox_resources);
@@ -197,6 +199,7 @@ static struct resource omap4_mbox_resources[] = {
197 { 199 {
198 .start = OMAP44XX_IRQ_MAIL_U0, 200 .start = OMAP44XX_IRQ_MAIL_U0,
199 .flags = IORESOURCE_IRQ, 201 .flags = IORESOURCE_IRQ,
202 .name = "mbox",
200 }, 203 },
201}; 204};
202static int omap4_mbox_resources_sz = ARRAY_SIZE(omap4_mbox_resources); 205static int omap4_mbox_resources_sz = ARRAY_SIZE(omap4_mbox_resources);
@@ -206,7 +209,7 @@ static int omap4_mbox_resources_sz = ARRAY_SIZE(omap4_mbox_resources);
206#endif 209#endif
207 210
208static struct platform_device mbox_device = { 211static struct platform_device mbox_device = {
209 .name = "omap2-mailbox", 212 .name = "omap-mailbox",
210 .id = -1, 213 .id = -1,
211}; 214};
212 215
@@ -231,64 +234,7 @@ static inline void omap_init_mbox(void)
231static inline void omap_init_mbox(void) { } 234static inline void omap_init_mbox(void) { }
232#endif /* CONFIG_OMAP_MBOX_FWK */ 235#endif /* CONFIG_OMAP_MBOX_FWK */
233 236
234#if defined(CONFIG_OMAP_STI)
235
236#if defined(CONFIG_ARCH_OMAP2)
237
238#define OMAP2_STI_BASE 0x48068000
239#define OMAP2_STI_CHANNEL_BASE 0x54000000
240#define OMAP2_STI_IRQ 4
241
242static struct resource sti_resources[] = {
243 {
244 .start = OMAP2_STI_BASE,
245 .end = OMAP2_STI_BASE + 0x7ff,
246 .flags = IORESOURCE_MEM,
247 },
248 {
249 .start = OMAP2_STI_CHANNEL_BASE,
250 .end = OMAP2_STI_CHANNEL_BASE + SZ_64K - 1,
251 .flags = IORESOURCE_MEM,
252 },
253 {
254 .start = OMAP2_STI_IRQ,
255 .flags = IORESOURCE_IRQ,
256 }
257};
258#elif defined(CONFIG_ARCH_OMAP3)
259
260#define OMAP3_SDTI_BASE 0x54500000
261#define OMAP3_SDTI_CHANNEL_BASE 0x54600000
262
263static struct resource sti_resources[] = {
264 {
265 .start = OMAP3_SDTI_BASE,
266 .end = OMAP3_SDTI_BASE + 0xFFF,
267 .flags = IORESOURCE_MEM,
268 },
269 {
270 .start = OMAP3_SDTI_CHANNEL_BASE,
271 .end = OMAP3_SDTI_CHANNEL_BASE + SZ_1M - 1,
272 .flags = IORESOURCE_MEM,
273 }
274};
275
276#endif
277
278static struct platform_device sti_device = {
279 .name = "sti",
280 .id = -1,
281 .num_resources = ARRAY_SIZE(sti_resources),
282 .resource = sti_resources,
283};
284
285static inline void omap_init_sti(void)
286{
287 platform_device_register(&sti_device);
288}
289#else
290static inline void omap_init_sti(void) {} 237static inline void omap_init_sti(void) {}
291#endif
292 238
293#if defined(CONFIG_SND_SOC) || defined(CONFIG_SND_SOC_MODULE) 239#if defined(CONFIG_SND_SOC) || defined(CONFIG_SND_SOC_MODULE)
294 240
@@ -710,19 +656,19 @@ static inline void omap2_mmc_mux(struct omap_mmc_platform_data *mmc_controller,
710 OMAP_PIN_INPUT_PULLUP); 656 OMAP_PIN_INPUT_PULLUP);
711 657
712 if (cpu_is_omap2420() && controller_nr == 0) { 658 if (cpu_is_omap2420() && controller_nr == 0) {
713 omap_cfg_reg(H18_24XX_MMC_CMD); 659 omap_mux_init_signal("sdmmc_cmd", 0);
714 omap_cfg_reg(H15_24XX_MMC_CLKI); 660 omap_mux_init_signal("sdmmc_clki", 0);
715 omap_cfg_reg(G19_24XX_MMC_CLKO); 661 omap_mux_init_signal("sdmmc_clko", 0);
716 omap_cfg_reg(F20_24XX_MMC_DAT0); 662 omap_mux_init_signal("sdmmc_dat0", 0);
717 omap_cfg_reg(F19_24XX_MMC_DAT_DIR0); 663 omap_mux_init_signal("sdmmc_dat_dir0", 0);
718 omap_cfg_reg(G18_24XX_MMC_CMD_DIR); 664 omap_mux_init_signal("sdmmc_cmd_dir", 0);
719 if (mmc_controller->slots[0].wires == 4) { 665 if (mmc_controller->slots[0].wires == 4) {
720 omap_cfg_reg(H14_24XX_MMC_DAT1); 666 omap_mux_init_signal("sdmmc_dat1", 0);
721 omap_cfg_reg(E19_24XX_MMC_DAT2); 667 omap_mux_init_signal("sdmmc_dat2", 0);
722 omap_cfg_reg(D19_24XX_MMC_DAT3); 668 omap_mux_init_signal("sdmmc_dat3", 0);
723 omap_cfg_reg(E20_24XX_MMC_DAT_DIR1); 669 omap_mux_init_signal("sdmmc_dat_dir1", 0);
724 omap_cfg_reg(F18_24XX_MMC_DAT_DIR2); 670 omap_mux_init_signal("sdmmc_dat_dir2", 0);
725 omap_cfg_reg(E18_24XX_MMC_DAT_DIR3); 671 omap_mux_init_signal("sdmmc_dat_dir3", 0);
726 } 672 }
727 673
728 /* 674 /*