|
@@ -136,9 +136,10 @@ static inline void omap_init_camera(void)
|
|
|
|
|
|
#if defined(CONFIG_OMAP_MBOX_FWK) || defined(CONFIG_OMAP_MBOX_FWK_MODULE)
|
|
|
|
|
|
-#define MBOX_REG_SIZE 0x120
|
|
|
+#define MBOX_REG_SIZE 0x120
|
|
|
|
|
|
-static struct resource omap2_mbox_resources[] = {
|
|
|
+#ifdef CONFIG_ARCH_OMAP2
|
|
|
+static struct resource omap_mbox_resources[] = {
|
|
|
{
|
|
|
.start = OMAP24XX_MAILBOX_BASE,
|
|
|
.end = OMAP24XX_MAILBOX_BASE + MBOX_REG_SIZE - 1,
|
|
@@ -153,8 +154,10 @@ static struct resource omap2_mbox_resources[] = {
|
|
|
.flags = IORESOURCE_IRQ,
|
|
|
},
|
|
|
};
|
|
|
+#endif
|
|
|
|
|
|
-static struct resource omap3_mbox_resources[] = {
|
|
|
+#ifdef CONFIG_ARCH_OMAP3
|
|
|
+static struct resource omap_mbox_resources[] = {
|
|
|
{
|
|
|
.start = OMAP34XX_MAILBOX_BASE,
|
|
|
.end = OMAP34XX_MAILBOX_BASE + MBOX_REG_SIZE - 1,
|
|
@@ -165,6 +168,24 @@ static struct resource omap3_mbox_resources[] = {
|
|
|
.flags = IORESOURCE_IRQ,
|
|
|
},
|
|
|
};
|
|
|
+#endif
|
|
|
+
|
|
|
+#ifdef CONFIG_ARCH_OMAP4
|
|
|
+
|
|
|
+#define OMAP4_MBOX_REG_SIZE 0x130
|
|
|
+static struct resource omap_mbox_resources[] = {
|
|
|
+ {
|
|
|
+ .start = OMAP44XX_MAILBOX_BASE,
|
|
|
+ .end = OMAP44XX_MAILBOX_BASE +
|
|
|
+ OMAP4_MBOX_REG_SIZE - 1,
|
|
|
+ .flags = IORESOURCE_MEM,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ .start = INT_44XX_MAIL_U0_MPU,
|
|
|
+ .flags = IORESOURCE_IRQ,
|
|
|
+ },
|
|
|
+};
|
|
|
+#endif
|
|
|
|
|
|
static struct platform_device mbox_device = {
|
|
|
.name = "omap2-mailbox",
|
|
@@ -173,12 +194,9 @@ static struct platform_device mbox_device = {
|
|
|
|
|
|
static inline void omap_init_mbox(void)
|
|
|
{
|
|
|
- if (cpu_is_omap2420()) {
|
|
|
- mbox_device.num_resources = ARRAY_SIZE(omap2_mbox_resources);
|
|
|
- mbox_device.resource = omap2_mbox_resources;
|
|
|
- } else if (cpu_is_omap3430()) {
|
|
|
- mbox_device.num_resources = ARRAY_SIZE(omap3_mbox_resources);
|
|
|
- mbox_device.resource = omap3_mbox_resources;
|
|
|
+ if (cpu_is_omap2420() || cpu_is_omap3430() || cpu_is_omap44xx()) {
|
|
|
+ mbox_device.num_resources = ARRAY_SIZE(omap_mbox_resources);
|
|
|
+ mbox_device.resource = omap_mbox_resources;
|
|
|
} else {
|
|
|
pr_err("%s: platform not supported\n", __func__);
|
|
|
return;
|