154 lines
5.1 KiB
Diff
154 lines
5.1 KiB
Diff
From 742cc1e62f0d04333c51630f3020da000aeb6de1 Mon Sep 17 00:00:00 2001
|
|
From: Sakari Ailus <sakari.ailus@maxwell.research.nokia.com>
|
|
Date: Mon, 2 Mar 2009 19:36:26 +0200
|
|
Subject: [PATCH] omap3: Add base address definitions and resources for OMAP 3 ISP
|
|
|
|
This replaces earlier patch from Sergio Aguirre titled "[REVIEW PATCH 03/14]
|
|
OMAP34XX: CAM: Resources fixes".
|
|
|
|
Signed-off-by: Sakari Ailus <sakari.ailus@maxwell.research.nokia.com>
|
|
---
|
|
arch/arm/mach-omap2/devices.c | 66 ++++++++++++++++++++++++---
|
|
arch/arm/plat-omap/include/mach/omap34xx.h | 28 +++++++++++-
|
|
2 files changed, 85 insertions(+), 9 deletions(-)
|
|
|
|
diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c
|
|
index dad4528..2568b0c 100644
|
|
--- a/arch/arm/mach-omap2/devices.c
|
|
+++ b/arch/arm/mach-omap2/devices.c
|
|
@@ -56,10 +56,60 @@ static inline void omap_init_camera(void)
|
|
|
|
#elif defined(CONFIG_VIDEO_OMAP3) || defined(CONFIG_VIDEO_OMAP3_MODULE)
|
|
|
|
-static struct resource cam_resources[] = {
|
|
+static struct resource omap3isp_resources[] = {
|
|
+ {
|
|
+ .start = OMAP3430_ISP_BASE,
|
|
+ .end = OMAP3430_ISP_END,
|
|
+ .flags = IORESOURCE_MEM,
|
|
+ },
|
|
+ {
|
|
+ .start = OMAP3430_ISP_CBUFF_BASE,
|
|
+ .end = OMAP3430_ISP_CBUFF_END,
|
|
+ .flags = IORESOURCE_MEM,
|
|
+ },
|
|
+ {
|
|
+ .start = OMAP3430_ISP_CCP2_BASE,
|
|
+ .end = OMAP3430_ISP_CCP2_END,
|
|
+ .flags = IORESOURCE_MEM,
|
|
+ },
|
|
{
|
|
- .start = OMAP34XX_CAMERA_BASE,
|
|
- .end = OMAP34XX_CAMERA_BASE + 0x1B70,
|
|
+ .start = OMAP3430_ISP_CCDC_BASE,
|
|
+ .end = OMAP3430_ISP_CCDC_END,
|
|
+ .flags = IORESOURCE_MEM,
|
|
+ },
|
|
+ {
|
|
+ .start = OMAP3430_ISP_HIST_BASE,
|
|
+ .end = OMAP3430_ISP_HIST_END,
|
|
+ .flags = IORESOURCE_MEM,
|
|
+ },
|
|
+ {
|
|
+ .start = OMAP3430_ISP_H3A_BASE,
|
|
+ .end = OMAP3430_ISP_H3A_END,
|
|
+ .flags = IORESOURCE_MEM,
|
|
+ },
|
|
+ {
|
|
+ .start = OMAP3430_ISP_PREV_BASE,
|
|
+ .end = OMAP3430_ISP_PREV_END,
|
|
+ .flags = IORESOURCE_MEM,
|
|
+ },
|
|
+ {
|
|
+ .start = OMAP3430_ISP_RESZ_BASE,
|
|
+ .end = OMAP3430_ISP_RESZ_END,
|
|
+ .flags = IORESOURCE_MEM,
|
|
+ },
|
|
+ {
|
|
+ .start = OMAP3430_ISP_SBL_BASE,
|
|
+ .end = OMAP3430_ISP_SBL_END,
|
|
+ .flags = IORESOURCE_MEM,
|
|
+ },
|
|
+ {
|
|
+ .start = OMAP3430_ISP_CSI2A_BASE,
|
|
+ .end = OMAP3430_ISP_CSI2A_END,
|
|
+ .flags = IORESOURCE_MEM,
|
|
+ },
|
|
+ {
|
|
+ .start = OMAP3430_ISP_CSI2PHY_BASE,
|
|
+ .end = OMAP3430_ISP_CSI2PHY_END,
|
|
.flags = IORESOURCE_MEM,
|
|
},
|
|
{
|
|
@@ -68,16 +118,16 @@ static struct resource cam_resources[] = {
|
|
}
|
|
};
|
|
|
|
-static struct platform_device omap_cam_device = {
|
|
- .name = "omap34xxcam",
|
|
+static struct platform_device omap3isp_device = {
|
|
+ .name = "omap3isp",
|
|
.id = -1,
|
|
- .num_resources = ARRAY_SIZE(cam_resources),
|
|
- .resource = cam_resources,
|
|
+ .num_resources = ARRAY_SIZE(omap3isp_resources),
|
|
+ .resource = omap3isp_resources,
|
|
};
|
|
|
|
static inline void omap_init_camera(void)
|
|
{
|
|
- platform_device_register(&omap_cam_device);
|
|
+ platform_device_register(&omap3isp_device);
|
|
}
|
|
#else
|
|
static inline void omap_init_camera(void)
|
|
diff --git a/arch/arm/plat-omap/include/mach/omap34xx.h b/arch/arm/plat-omap/include/mach/omap34xx.h
|
|
index 27a1e45..3bfbdf7 100644
|
|
--- a/arch/arm/plat-omap/include/mach/omap34xx.h
|
|
+++ b/arch/arm/plat-omap/include/mach/omap34xx.h
|
|
@@ -49,6 +49,33 @@
|
|
#define OMAP343X_CTRL_BASE OMAP343X_SCM_BASE
|
|
|
|
#define OMAP34XX_IC_BASE 0x48200000
|
|
+
|
|
+#define OMAP3430_ISP_BASE (L4_34XX_BASE + 0xBC000)
|
|
+#define OMAP3430_ISP_CBUFF_BASE (OMAP3430_ISP_BASE + 0x0100)
|
|
+#define OMAP3430_ISP_CCP2_BASE (OMAP3430_ISP_BASE + 0x0400)
|
|
+#define OMAP3430_ISP_CCDC_BASE (OMAP3430_ISP_BASE + 0x0600)
|
|
+#define OMAP3430_ISP_HIST_BASE (OMAP3430_ISP_BASE + 0x0A00)
|
|
+#define OMAP3430_ISP_H3A_BASE (OMAP3430_ISP_BASE + 0x0C00)
|
|
+#define OMAP3430_ISP_PREV_BASE (OMAP3430_ISP_BASE + 0x0E00)
|
|
+#define OMAP3430_ISP_RESZ_BASE (OMAP3430_ISP_BASE + 0x1000)
|
|
+#define OMAP3430_ISP_SBL_BASE (OMAP3430_ISP_BASE + 0x1200)
|
|
+#define OMAP3430_ISP_MMU_BASE (OMAP3430_ISP_BASE + 0x1400)
|
|
+#define OMAP3430_ISP_CSI2A_BASE (OMAP3430_ISP_BASE + 0x1800)
|
|
+#define OMAP3430_ISP_CSI2PHY_BASE (OMAP3430_ISP_BASE + 0x1970)
|
|
+
|
|
+#define OMAP3430_ISP_END (OMAP3430_ISP_BASE + 0x06F)
|
|
+#define OMAP3430_ISP_CBUFF_END (OMAP3430_ISP_CBUFF_BASE + 0x077)
|
|
+#define OMAP3430_ISP_CCP2_END (OMAP3430_ISP_CCP2_BASE + 0x1EF)
|
|
+#define OMAP3430_ISP_CCDC_END (OMAP3430_ISP_CCDC_BASE + 0x0A7)
|
|
+#define OMAP3430_ISP_HIST_END (OMAP3430_ISP_HIST_BASE + 0x047)
|
|
+#define OMAP3430_ISP_H3A_END (OMAP3430_ISP_H3A_BASE + 0x05F)
|
|
+#define OMAP3430_ISP_PREV_END (OMAP3430_ISP_PREV_BASE + 0x09F)
|
|
+#define OMAP3430_ISP_RESZ_END (OMAP3430_ISP_RESZ_BASE + 0x0AB)
|
|
+#define OMAP3430_ISP_SBL_END (OMAP3430_ISP_SBL_BASE + 0x0FB)
|
|
+#define OMAP3430_ISP_MMU_END (OMAP3430_ISP_MMU_BASE + 0x06F)
|
|
+#define OMAP3430_ISP_CSI2A_END (OMAP3430_ISP_CSI2A_BASE + 0x16F)
|
|
+#define OMAP3430_ISP_CSI2PHY_END (OMAP3430_ISP_CSI2PHY_BASE + 0x007)
|
|
+
|
|
#define OMAP34XX_IVA_INTC_BASE 0x40000000
|
|
#define OMAP34XX_HSUSB_OTG_BASE (L4_34XX_BASE + 0xAB000)
|
|
#define OMAP34XX_HSUSB_HOST_BASE (L4_34XX_BASE + 0x64000)
|
|
@@ -56,7 +83,6 @@
|
|
#define OMAP34XX_SR1_BASE 0x480C9000
|
|
#define OMAP34XX_SR2_BASE 0x480CB000
|
|
|
|
-#define OMAP34XX_CAMERA_BASE (L4_34XX_BASE + 0xBC000)
|
|
#define OMAP34XX_MAILBOX_BASE (L4_34XX_BASE + 0x94000)
|
|
|
|
|
|
--
|
|
1.5.6.5
|
|
|