Skip to contentSkip to conversation

omap3isp: Fix compilation error in ispreg.h

PATCH Superseded Ido Yariv 4 participants 17 messages Sep 21, 2012 – Oct 12, 2012

Subsystems (6)
lore
Share & tools
lore

Ido Yariv

author
#0 lore raw

PATCH 1/3 omap3isp: Fix compilation error in ispreg.h

Commit c49f34bc ("ARM: OMAP2+ Move SoC specific headers to be local to mach-omap2") moved omap34xx.h to mach-omap2. This broke omap3isp, as it includes omap34xx.h.

Instead of moving omap34xx to platform_data, simply add the two definitions the driver needs and remove the include altogether.

---
 drivers/media/platform/omap3isp/ispreg.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
drivers/media/platform/omap3isp/ispreg.h +3 -3
index 084ea77..e2c57f3 100644
@@ -27,13 +27,13 @@
 #ifndef OMAP3_ISP_REG_H
 #define OMAP3_ISP_REG_H
 
-#include <plat/omap34xx.h>
-
-
 #define CM_CAM_MCLK_HZ			172800000	/* Hz */
 
 /* ISP Submodules offset */
 
+#define L4_34XX_BASE			0x48000000
+#define OMAP3430_ISP_BASE		(L4_34XX_BASE + 0xBC000)
+
 #define OMAP3ISP_REG_BASE		OMAP3430_ISP_BASE
 #define OMAP3ISP_REG(offset)		(OMAP3ISP_REG_BASE + (offset))
 
Signature · 1 line
1.7.11.4
author
#1 lore raw

PATCH 2/3 iommu/omap: Merge iommu2.h into iommu.h

Since iommu is not currently supported on OMAP1, merge plat/iommu2.h into iommu.h so only one file would have to move to platform_data/ as part of the single zImage effort.

---
 arch/arm/plat-omap/include/plat/iommu.h  | 88 +++++++++++++++++++++++++++--
 arch/arm/plat-omap/include/plat/iommu2.h | 96 --------------------------------
 2 files changed, 83 insertions(+), 101 deletions(-)
 delete mode 100644 arch/arm/plat-omap/include/plat/iommu2.h
arch/arm/plat-omap/include/plat/iommu.h +83 -5
index 88be3e6..42f64e7 100644
@@ -13,6 +13,12 @@
 #ifndef __MACH_IOMMU_H
 #define __MACH_IOMMU_H
 
+#include <linux/io.h>
+
+#if defined(CONFIG_ARCH_OMAP1)
+#error "iommu for this processor not implemented yet"
+#endif
+
 struct iotlb_entry {
 	u32 da;
 	u32 pa;
@@ -144,11 +150,70 @@ static inline struct omap_iommu *dev_to_omap_iommu(struct device *dev)
 #define OMAP_IOMMU_ERR_TBLWALK_FAULT	(1 << 3)
 #define OMAP_IOMMU_ERR_MULTIHIT_FAULT	(1 << 4)
 
-#if defined(CONFIG_ARCH_OMAP1)
-#error "iommu for this processor not implemented yet"
-#else
-#include <plat/iommu2.h>
-#endif
+/*
+ * MMU Register offsets
+ */
+#define MMU_REVISION		0x00
+#define MMU_SYSCONFIG		0x10
+#define MMU_SYSSTATUS		0x14
+#define MMU_IRQSTATUS		0x18
+#define MMU_IRQENABLE		0x1c
+#define MMU_WALKING_ST		0x40
+#define MMU_CNTL		0x44
+#define MMU_FAULT_AD		0x48
+#define MMU_TTB			0x4c
+#define MMU_LOCK		0x50
+#define MMU_LD_TLB		0x54
+#define MMU_CAM			0x58
+#define MMU_RAM			0x5c
+#define MMU_GFLUSH		0x60
+#define MMU_FLUSH_ENTRY		0x64
+#define MMU_READ_CAM		0x68
+#define MMU_READ_RAM		0x6c
+#define MMU_EMU_FAULT_AD	0x70
+
+#define MMU_REG_SIZE		256
+
+/*
+ * MMU Register bit definitions
+ */
+#define MMU_LOCK_BASE_SHIFT	10
+#define MMU_LOCK_BASE_MASK	(0x1f << MMU_LOCK_BASE_SHIFT)
+#define MMU_LOCK_BASE(x)	\
+	((x & MMU_LOCK_BASE_MASK) >> MMU_LOCK_BASE_SHIFT)
+
+#define MMU_LOCK_VICT_SHIFT	4
+#define MMU_LOCK_VICT_MASK	(0x1f << MMU_LOCK_VICT_SHIFT)
+#define MMU_LOCK_VICT(x)	\
+	((x & MMU_LOCK_VICT_MASK) >> MMU_LOCK_VICT_SHIFT)
+
+#define MMU_CAM_VATAG_SHIFT	12
+#define MMU_CAM_VATAG_MASK \
+	((~0UL >> MMU_CAM_VATAG_SHIFT) << MMU_CAM_VATAG_SHIFT)
+#define MMU_CAM_P		(1 << 3)
+#define MMU_CAM_V		(1 << 2)
+#define MMU_CAM_PGSZ_MASK	3
+#define MMU_CAM_PGSZ_1M		(0 << 0)
+#define MMU_CAM_PGSZ_64K	(1 << 0)
+#define MMU_CAM_PGSZ_4K		(2 << 0)
+#define MMU_CAM_PGSZ_16M	(3 << 0)
+
+#define MMU_RAM_PADDR_SHIFT	12
+#define MMU_RAM_PADDR_MASK \
+	((~0UL >> MMU_RAM_PADDR_SHIFT) << MMU_RAM_PADDR_SHIFT)
+#define MMU_RAM_ENDIAN_SHIFT	9
+#define MMU_RAM_ENDIAN_MASK	(1 << MMU_RAM_ENDIAN_SHIFT)
+#define MMU_RAM_ENDIAN_BIG	(1 << MMU_RAM_ENDIAN_SHIFT)
+#define MMU_RAM_ENDIAN_LITTLE	(0 << MMU_RAM_ENDIAN_SHIFT)
+#define MMU_RAM_ELSZ_SHIFT	7
+#define MMU_RAM_ELSZ_MASK	(3 << MMU_RAM_ELSZ_SHIFT)
+#define MMU_RAM_ELSZ_8		(0 << MMU_RAM_ELSZ_SHIFT)
+#define MMU_RAM_ELSZ_16		(1 << MMU_RAM_ELSZ_SHIFT)
+#define MMU_RAM_ELSZ_32		(2 << MMU_RAM_ELSZ_SHIFT)
+#define MMU_RAM_ELSZ_NONE	(3 << MMU_RAM_ELSZ_SHIFT)
+#define MMU_RAM_MIXED_SHIFT	6
+#define MMU_RAM_MIXED_MASK	(1 << MMU_RAM_MIXED_SHIFT)
+#define MMU_RAM_MIXED		MMU_RAM_MIXED_MASK
 
 /*
  * utilities for super page(16MB, 1MB, 64KB and 4KB)
@@ -203,4 +268,17 @@ omap_iommu_dump_ctx(struct omap_iommu *obj, char *buf, ssize_t len);
 extern size_t
 omap_dump_tlb_entries(struct omap_iommu *obj, char *buf, ssize_t len);
 
+/*
+ * register accessors
+ */
+static inline u32 iommu_read_reg(struct omap_iommu *obj, size_t offs)
+{
+	return __raw_readl(obj->regbase + offs);
+}
+
+static inline void iommu_write_reg(struct omap_iommu *obj, u32 val, size_t offs)
+{
+	__raw_writel(val, obj->regbase + offs);
+}
+
 #endif /* __MACH_IOMMU_H */
arch/arm/plat-omap/include/plat/iommu2.h deleted +0 -96

96 lines not on this page · raw message

Signature · 1 line
1.7.11.4
maintainer
#2 lore raw

PATCH 2/3 iommu/omap: Merge iommu2.h into iommu.h

Hi Ido,

Quoted 3 lines · Ido Yariv

Since iommu is not currently supported on OMAP1, merge plat/iommu2.h into iommu.h so only one file would have to move to platform_data/ as part of the single zImage effort.

Looks like you need patch 2.5/3 in this series too that makes some of the things defined in iommu.h local.

We should only have platform data in include/linux/platform_data, so things that are private to drivers should be defined in the driver, and things that are private to arch/arm/mach-omap2 should defined locally there.

Based on a quick grepping of files, looks like these should be defined in omap-iommu.c driver and not in the platform_data header:

struct iotlb_lock
struct iotlb_lock
dev_to_omap_iommu
various register defines
omap_iommu_arch_version
omap_iotlb_cr_to_e
omap_iopgtable_store_entry
omap_iommu_save_ctx
omap_iommu_restore_ctx
omap_foreach_iommu_device
omap_iommu_dump_ctx
omap_dump_tlb_entries

Regards,

Tony

maintainer
#3 lore raw

PATCH 2/3 iommu/omap: Merge iommu2.h into iommu.h

Quoted 18 lines · Tony Lindgren

Hi Ido,

Quoted 3 lines · Ido Yariv

Since iommu is not currently supported on OMAP1, merge plat/iommu2.h into iommu.h so only one file would have to move to platform_data/ as part of the single zImage effort.

Looks like you need patch 2.5/3 in this series too that makes some of the things defined in iommu.h local.

We should only have platform data in include/linux/platform_data, so things that are private to drivers should be defined in the driver, and things that are private to arch/arm/mach-omap2 should defined locally there.

Based on a quick grepping of files, looks like these should be defined in omap-iommu.c driver and not in the platform_data header:

Quoted 12 lines

struct iotlb_lock
struct iotlb_lock
dev_to_omap_iommu
various register defines
omap_iommu_arch_version
omap_iotlb_cr_to_e
omap_iopgtable_store_entry
omap_iommu_save_ctx
omap_iommu_restore_ctx
omap_foreach_iommu_device
omap_iommu_dump_ctx
omap_dump_tlb_entries

And looks like while at it, you can also move plat/iopgtable.h and put it in some drivers/iommu/*.h file that's shared by omap-iommu*.c and omap-iovmm.c drivers ;)

Quoted 7 lines

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html

author
#4 lore raw

PATCH 2/3 iommu/omap: Merge iommu2.h into iommu.h

Quoted 32 lines · Tony Lindgren
Quoted 18 lines · Tony Lindgren

Hi Ido,

Quoted 3 lines · Ido Yariv

Since iommu is not currently supported on OMAP1, merge plat/iommu2.h into iommu.h so only one file would have to move to platform_data/ as part of the single zImage effort.

Looks like you need patch 2.5/3 in this series too that makes some of the things defined in iommu.h local.

We should only have platform data in include/linux/platform_data, so things that are private to drivers should be defined in the driver, and things that are private to arch/arm/mach-omap2 should defined locally there.

Based on a quick grepping of files, looks like these should be defined in omap-iommu.c driver and not in the platform_data header:

Quoted 12 lines

struct iotlb_lock
struct iotlb_lock
dev_to_omap_iommu
various register defines
omap_iommu_arch_version
omap_iotlb_cr_to_e
omap_iopgtable_store_entry
omap_iommu_save_ctx
omap_iommu_restore_ctx
omap_foreach_iommu_device
omap_iommu_dump_ctx
omap_dump_tlb_entries

Quoted 3 lines

And looks like while at it, you can also move plat/iopgtable.h and put it in some drivers/iommu/*.h file that's shared by omap-iommu*.c and omap-iovmm.c drivers ;)

Sure thing, I'll post a v2 shortly.

Thanks,
Ido.

author
#5 lore raw

PATCH v2 1/5 omap3isp: Fix compilation error in ispreg.h

In reply to Tony Lindgren

Commit c49f34bc ("ARM: OMAP2+ Move SoC specific headers to be local to mach-omap2") moved omap34xx.h to mach-omap2. This broke omap3isp, as it includes omap34xx.h.

Instead of moving omap34xx to platform_data, simply add the two definitions the driver needs and remove the include altogether.

---
 drivers/media/platform/omap3isp/ispreg.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
drivers/media/platform/omap3isp/ispreg.h +3 -3
index 084ea77..e2c57f3 100644
@@ -27,13 +27,13 @@
 #ifndef OMAP3_ISP_REG_H
 #define OMAP3_ISP_REG_H
 
-#include <plat/omap34xx.h>
-
-
 #define CM_CAM_MCLK_HZ			172800000	/* Hz */
 
 /* ISP Submodules offset */
 
+#define L4_34XX_BASE			0x48000000
+#define OMAP3430_ISP_BASE		(L4_34XX_BASE + 0xBC000)
+
 #define OMAP3ISP_REG_BASE		OMAP3430_ISP_BASE
 #define OMAP3ISP_REG(offset)		(OMAP3ISP_REG_BASE + (offset))
 
Signature · 1 line
1.7.11.4
author
#6 lore raw

PATCH v2 2/5 iommu/omap: Merge iommu2.h into iommu.h

Since iommu is not supported on OMAP1 and will not likely to ever be supported, merge plat/iommu2.h into iommu.h so only one file would have to move to platform_data/ as part of the single zImage effort.

---
 arch/arm/plat-omap/include/plat/iommu.h  | 88 +++++++++++++++++++++++++++--
 arch/arm/plat-omap/include/plat/iommu2.h | 96 --------------------------------
 2 files changed, 83 insertions(+), 101 deletions(-)
 delete mode 100644 arch/arm/plat-omap/include/plat/iommu2.h
arch/arm/plat-omap/include/plat/iommu.h +83 -5
index 68b5f03..7e8c7b6 100644
@@ -13,6 +13,12 @@
 #ifndef __MACH_IOMMU_H
 #define __MACH_IOMMU_H
 
+#include <linux/io.h>
+
+#if defined(CONFIG_ARCH_OMAP1)
+#error "iommu for this processor not implemented yet"
+#endif
+
 struct iotlb_entry {
 	u32 da;
 	u32 pa;
@@ -159,11 +165,70 @@ static inline struct omap_iommu *dev_to_omap_iommu(struct device *dev)
 #define OMAP_IOMMU_ERR_TBLWALK_FAULT	(1 << 3)
 #define OMAP_IOMMU_ERR_MULTIHIT_FAULT	(1 << 4)
 
-#if defined(CONFIG_ARCH_OMAP1)
-#error "iommu for this processor not implemented yet"
-#else
-#include <plat/iommu2.h>
-#endif
+/*
+ * MMU Register offsets
+ */
+#define MMU_REVISION		0x00
+#define MMU_SYSCONFIG		0x10
+#define MMU_SYSSTATUS		0x14
+#define MMU_IRQSTATUS		0x18
+#define MMU_IRQENABLE		0x1c
+#define MMU_WALKING_ST		0x40
+#define MMU_CNTL		0x44
+#define MMU_FAULT_AD		0x48
+#define MMU_TTB			0x4c
+#define MMU_LOCK		0x50
+#define MMU_LD_TLB		0x54
+#define MMU_CAM			0x58
+#define MMU_RAM			0x5c
+#define MMU_GFLUSH		0x60
+#define MMU_FLUSH_ENTRY		0x64
+#define MMU_READ_CAM		0x68
+#define MMU_READ_RAM		0x6c
+#define MMU_EMU_FAULT_AD	0x70
+
+#define MMU_REG_SIZE		256
+
+/*
+ * MMU Register bit definitions
+ */
+#define MMU_LOCK_BASE_SHIFT	10
+#define MMU_LOCK_BASE_MASK	(0x1f << MMU_LOCK_BASE_SHIFT)
+#define MMU_LOCK_BASE(x)	\
+	((x & MMU_LOCK_BASE_MASK) >> MMU_LOCK_BASE_SHIFT)
+
+#define MMU_LOCK_VICT_SHIFT	4
+#define MMU_LOCK_VICT_MASK	(0x1f << MMU_LOCK_VICT_SHIFT)
+#define MMU_LOCK_VICT(x)	\
+	((x & MMU_LOCK_VICT_MASK) >> MMU_LOCK_VICT_SHIFT)
+
+#define MMU_CAM_VATAG_SHIFT	12
+#define MMU_CAM_VATAG_MASK \
+	((~0UL >> MMU_CAM_VATAG_SHIFT) << MMU_CAM_VATAG_SHIFT)
+#define MMU_CAM_P		(1 << 3)
+#define MMU_CAM_V		(1 << 2)
+#define MMU_CAM_PGSZ_MASK	3
+#define MMU_CAM_PGSZ_1M		(0 << 0)
+#define MMU_CAM_PGSZ_64K	(1 << 0)
+#define MMU_CAM_PGSZ_4K		(2 << 0)
+#define MMU_CAM_PGSZ_16M	(3 << 0)
+
+#define MMU_RAM_PADDR_SHIFT	12
+#define MMU_RAM_PADDR_MASK \
+	((~0UL >> MMU_RAM_PADDR_SHIFT) << MMU_RAM_PADDR_SHIFT)
+#define MMU_RAM_ENDIAN_SHIFT	9
+#define MMU_RAM_ENDIAN_MASK	(1 << MMU_RAM_ENDIAN_SHIFT)
+#define MMU_RAM_ENDIAN_BIG	(1 << MMU_RAM_ENDIAN_SHIFT)
+#define MMU_RAM_ENDIAN_LITTLE	(0 << MMU_RAM_ENDIAN_SHIFT)
+#define MMU_RAM_ELSZ_SHIFT	7
+#define MMU_RAM_ELSZ_MASK	(3 << MMU_RAM_ELSZ_SHIFT)
+#define MMU_RAM_ELSZ_8		(0 << MMU_RAM_ELSZ_SHIFT)
+#define MMU_RAM_ELSZ_16		(1 << MMU_RAM_ELSZ_SHIFT)
+#define MMU_RAM_ELSZ_32		(2 << MMU_RAM_ELSZ_SHIFT)
+#define MMU_RAM_ELSZ_NONE	(3 << MMU_RAM_ELSZ_SHIFT)
+#define MMU_RAM_MIXED_SHIFT	6
+#define MMU_RAM_MIXED_MASK	(1 << MMU_RAM_MIXED_SHIFT)
+#define MMU_RAM_MIXED		MMU_RAM_MIXED_MASK
 
 /*
  * utilities for super page(16MB, 1MB, 64KB and 4KB)
@@ -218,4 +283,17 @@ omap_iommu_dump_ctx(struct omap_iommu *obj, char *buf, ssize_t len);
 extern size_t
 omap_dump_tlb_entries(struct omap_iommu *obj, char *buf, ssize_t len);
 
+/*
+ * register accessors
+ */
+static inline u32 iommu_read_reg(struct omap_iommu *obj, size_t offs)
+{
+	return __raw_readl(obj->regbase + offs);
+}
+
+static inline void iommu_write_reg(struct omap_iommu *obj, u32 val, size_t offs)
+{
+	__raw_writel(val, obj->regbase + offs);
+}
+
 #endif /* __MACH_IOMMU_H */
arch/arm/plat-omap/include/plat/iommu2.h deleted +0 -96

96 lines not on this page · raw message

Signature · 1 line
1.7.11.4
maintainer
#7 lore raw

PATCH v2 2/5 iommu/omap: Merge iommu2.h into iommu.h

Quoted 3 lines · Ido Yariv

Since iommu is not supported on OMAP1 and will not likely to ever be supported, merge plat/iommu2.h into iommu.h so only one file would have to move to platform_data/ as part of the single zImage effort.

Thanks I'll be applying patches 2 - 5 once we have -rc1 available.

Regards,

Tony

author
#8 lore raw

PATCH v2 3/5 iommu/omap: Make some definitions local

In reply to Ido Yariv

Move some of the definitions in plat/iommu.h that can be made local to either drivers/iommu or arch/arm/mach-omap2. This minimizes the number of global definitions once plat/iommu.h moves to platform_data/ as part of the single zImage effort.

---
 arch/arm/mach-omap2/iommu2.c            |  6 ++++
 arch/arm/plat-omap/include/plat/iommu.h | 55 ------------------------------
 drivers/iommu/omap-iommu-debug.c        |  2 ++
 drivers/iommu/omap-iommu.c              |  2 ++
 drivers/iommu/omap-iommu.h              | 59 +++++++++++++++++++++++++++++++++
 drivers/iommu/omap-iovmm.c              |  2 ++
 6 files changed, 71 insertions(+), 55 deletions(-)
 create mode 100644 drivers/iommu/omap-iommu.h
arch/arm/mach-omap2/iommu2.c +6 -0
index eefc379..c986880 100644
@@ -65,6 +65,12 @@
 	 ((pgsz) == MMU_CAM_PGSZ_64K) ? 0xffff0000 :	\
 	 ((pgsz) == MMU_CAM_PGSZ_4K)  ? 0xfffff000 : 0)
 
+/* IOMMU errors */
+#define OMAP_IOMMU_ERR_TLB_MISS		(1 << 0)
+#define OMAP_IOMMU_ERR_TRANS_FAULT	(1 << 1)
+#define OMAP_IOMMU_ERR_EMU_MISS		(1 << 2)
+#define OMAP_IOMMU_ERR_TBLWALK_FAULT	(1 << 3)
+#define OMAP_IOMMU_ERR_MULTIHIT_FAULT	(1 << 4)
 
 static void __iommu_set_twl(struct omap_iommu *obj, bool on)
 {
arch/arm/plat-omap/include/plat/iommu.h +0 -55

85 lines not on this page · raw message

drivers/iommu/omap-iommu-debug.c +2 -0
index f55fc5d..a0b0309 100644
@@ -24,6 +24,8 @@
 
 #include <plat/iopgtable.h>
 
+#include "omap-iommu.h"
+
 #define MAXCOLUMN 100 /* for short messages */
 
 static DEFINE_MUTEX(iommu_debug_lock);
drivers/iommu/omap-iommu.c +2 -0
index d0b1234..80844b3 100644
@@ -28,6 +28,8 @@
 
 #include <plat/iopgtable.h>
 
+#include "omap-iommu.h"
+
 #define for_each_iotlb_cr(obj, n, __i, cr)				\
 	for (__i = 0;							\
 	     (__i < (n)) && (cr = __iotlb_read_cr((obj), __i), true);	\
drivers/iommu/omap-iommu.h new file +59 -0

59 lines not on this page · raw message

drivers/iommu/omap-iovmm.c +2 -0
index 2e10c3e..b362fb5 100644
@@ -26,6 +26,8 @@
 
 #include <plat/iopgtable.h>
 
+#include "omap-iommu.h"
+
 static struct kmem_cache *iovm_area_cachep;
 
 /* return the offset of the first scatterlist entry in a sg table */
Signature · 1 line
1.7.11.4
author
#9 lore raw

PATCH v2 4/5 arm: omap: Move iommu/iovmm headers to platform_data

In reply to Ido Yariv

Move iommu/iovmm headers from plat/ to platform_data/ as part of the single zImage work.

---
 arch/arm/mach-omap2/devices.c                                       | 2 +-
 arch/arm/mach-omap2/iommu2.c                                        | 2 +-
 arch/arm/mach-omap2/omap-iommu.c                                    | 2 +-
 arch/arm/mach-omap2/omap_hwmod_3xxx_data.c                          | 2 +-
 arch/arm/mach-omap2/omap_hwmod_44xx_data.c                          | 2 +-
 drivers/iommu/omap-iommu-debug.c                                    | 4 ++--
 drivers/iommu/omap-iommu.c                                          | 2 +-
 drivers/iommu/omap-iovmm.c                                          | 4 ++--
 drivers/media/platform/omap3isp/isp.h                               | 5 +++--
 drivers/media/platform/omap3isp/ispvideo.c                          | 6 ++++--
 .../plat/iommu.h => include/linux/platform_data/iommu-omap.h        | 0
 .../plat/iovmm.h => include/linux/platform_data/iovmm-omap.h        | 0
 12 files changed, 17 insertions(+), 14 deletions(-)
 rename arch/arm/plat-omap/include/plat/iommu.h => include/linux/platform_data/iommu-omap.h (100%)
 rename arch/arm/plat-omap/include/plat/iovmm.h => include/linux/platform_data/iovmm-omap.h (100%)
arch/arm/mach-omap2/devices.c +1 -1
index c8c2117..6cd0c2a 100644
@@ -126,7 +126,7 @@ static struct platform_device omap2cam_device = {
 
 #if defined(CONFIG_IOMMU_API)
 
-#include <plat/iommu.h>
+#include <linux/platform_data/iommu-omap.h>
 
 static struct resource omap3isp_resources[] = {
 	{
arch/arm/mach-omap2/iommu2.c +1 -1
index c986880..82f9174 100644
@@ -18,7 +18,7 @@
 #include <linux/slab.h>
 #include <linux/stringify.h>
 
-#include <plat/iommu.h>
+#include <linux/platform_data/iommu-omap.h>
 
 /*
  * omap2 architecture specific register bit definitions
arch/arm/mach-omap2/omap-iommu.c +1 -1
index df298d4..a6a4ff8 100644
@@ -13,7 +13,7 @@
 #include <linux/module.h>
 #include <linux/platform_device.h>
 
-#include <plat/iommu.h>
+#include <linux/platform_data/iommu-omap.h>
 
 #include "soc.h"
 #include "common.h"
arch/arm/mach-omap2/omap_hwmod_3xxx_data.c +1 -1
index 2857772..35ebf14 100644
@@ -26,8 +26,8 @@
 #include <plat/mmc.h>
 #include <linux/platform_data/asoc-ti-mcbsp.h>
 #include <linux/platform_data/spi-omap2-mcspi.h>
+#include <linux/platform_data/iommu-omap.h>
 #include <plat/dmtimer.h>
-#include <plat/iommu.h>
 
 #include "am35xx.h"
 
arch/arm/mach-omap2/omap_hwmod_44xx_data.c +1 -1
index 652d028..5850b3e 100644
@@ -27,10 +27,10 @@
 #include <plat/dma.h>
 #include <linux/platform_data/spi-omap2-mcspi.h>
 #include <linux/platform_data/asoc-ti-mcbsp.h>
+#include <linux/platform_data/iommu-omap.h>
 #include <plat/mmc.h>
 #include <plat/dmtimer.h>
 #include <plat/common.h>
-#include <plat/iommu.h>
 
 #include "omap_hwmod_common_data.h"
 #include "cm1_44xx.h"
drivers/iommu/omap-iommu-debug.c +2 -2
index a0b0309..8c1e30b 100644
@@ -19,8 +19,8 @@
 #include <linux/platform_device.h>
 #include <linux/debugfs.h>
 
-#include <plat/iommu.h>
-#include <plat/iovmm.h>
+#include <linux/platform_data/iommu-omap.h>
+#include <linux/platform_data/iovmm-omap.h>
 
 #include <plat/iopgtable.h>
 
drivers/iommu/omap-iommu.c +1 -1
index 80844b3..6100334 100644
@@ -24,7 +24,7 @@
 
 #include <asm/cacheflush.h>
 
-#include <plat/iommu.h>
+#include <linux/platform_data/iommu-omap.h>
 
 #include <plat/iopgtable.h>
 
drivers/iommu/omap-iovmm.c +2 -2
index b362fb5..b5ac2cd 100644
@@ -21,8 +21,8 @@
 #include <asm/cacheflush.h>
 #include <asm/mach/map.h>
 
-#include <plat/iommu.h>
-#include <plat/iovmm.h>
+#include <linux/platform_data/iommu-omap.h>
+#include <linux/platform_data/iovmm-omap.h>
 
 #include <plat/iopgtable.h>
 
drivers/media/platform/omap3isp/isp.h +3 -2
index 8be7487..62c76f9 100644
@@ -34,8 +34,9 @@
 #include <linux/platform_device.h>
 #include <linux/wait.h>
 #include <linux/iommu.h>
-#include <plat/iommu.h>
-#include <plat/iovmm.h>
+
+#include <linux/platform_data/iommu-omap.h>
+#include <linux/platform_data/iovmm-omap.h>
 
 #include "ispstat.h"
 #include "ispccdc.h"
drivers/media/platform/omap3isp/ispvideo.c +4 -2
index 3a5085e..1093f07 100644
@@ -34,8 +34,10 @@
 #include <linux/vmalloc.h>
 #include <media/v4l2-dev.h>
 #include <media/v4l2-ioctl.h>
-#include <plat/iommu.h>
-#include <plat/iovmm.h>
+
+#include <linux/platform_data/iommu-omap.h>
+#include <linux/platform_data/iovmm-omap.h>
+
 #include <plat/omap-pm.h>
 
 #include "ispvideo.h"
include/linux/platform_data/iommu-omap.h renamed from arch/arm/plat-omap/include/plat/iommu.h +0 -0
similarity index 100%
rename from arch/arm/plat-omap/include/plat/iommu.h
rename to include/linux/platform_data/iommu-omap.h
include/linux/platform_data/iovmm-omap.h renamed from arch/arm/plat-omap/include/plat/iovmm.h +0 -0
similarity index 100%
rename from arch/arm/plat-omap/include/plat/iovmm.h
rename to include/linux/platform_data/iovmm-omap.h
Signature · 1 line
1.7.11.4
author
#10 lore raw

PATCH v2 5/5 arm: omap: Move iopgtable header to drivers/iommu/

In reply to Ido Yariv

The iopgtable header file is only used by the iommu & iovmm drivers, so move it to drivers/iommu/, as part of the single zImage effort.

---
 drivers/iommu/omap-iommu-debug.c                                       | 3 +--
 drivers/iommu/omap-iommu.c                                             | 3 +--
 .../include/plat/iopgtable.h => drivers/iommu/omap-iopgtable.h         | 0
 drivers/iommu/omap-iovmm.c                                             | 3 +--
 4 files changed, 3 insertions(+), 6 deletions(-)
 rename arch/arm/plat-omap/include/plat/iopgtable.h => drivers/iommu/omap-iopgtable.h (100%)
drivers/iommu/omap-iommu-debug.c +1 -2
index 8c1e30b..84dbfd2 100644
@@ -22,8 +22,7 @@
 #include <linux/platform_data/iommu-omap.h>
 #include <linux/platform_data/iovmm-omap.h>
 
-#include <plat/iopgtable.h>
-
+#include "omap-iopgtable.h"
 #include "omap-iommu.h"
 
 #define MAXCOLUMN 100 /* for short messages */
drivers/iommu/omap-iommu.c +1 -2
index 6100334..1ca33b0 100644
@@ -26,8 +26,7 @@
 
 #include <linux/platform_data/iommu-omap.h>
 
-#include <plat/iopgtable.h>
-
+#include "omap-iopgtable.h"
 #include "omap-iommu.h"
 
 #define for_each_iotlb_cr(obj, n, __i, cr)				\
drivers/iommu/omap-iopgtable.h renamed from arch/arm/plat-omap/include/plat/iopgtable.h +0 -0
similarity index 100%
rename from arch/arm/plat-omap/include/plat/iopgtable.h
rename to drivers/iommu/omap-iopgtable.h
drivers/iommu/omap-iovmm.c +1 -2
index b5ac2cd..2820e3a 100644
@@ -24,8 +24,7 @@
 #include <linux/platform_data/iommu-omap.h>
 #include <linux/platform_data/iovmm-omap.h>
 
-#include <plat/iopgtable.h>
-
+#include "omap-iopgtable.h"
 #include "omap-iommu.h"
 
 static struct kmem_cache *iovm_area_cachep;
Signature · 1 line
1.7.11.4
maintainer
#11 lore raw

PATCH v2 1/5 omap3isp: Fix compilation error in ispreg.h

In reply to Ido Yariv
Quoted 8 lines · Ido Yariv

Commit c49f34bc ("ARM: OMAP2+ Move SoC specific headers to be local to mach-omap2") moved omap34xx.h to mach-omap2. This broke omap3isp, as it includes omap34xx.h.

Instead of moving omap34xx to platform_data, simply add the two definitions the driver needs and remove the include altogether.

I'm assuming that Mauro picks this one up, sorry
for breaking it.

Quoted 32 lines
---
 drivers/media/platform/omap3isp/ispreg.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
drivers/media/platform/omap3isp/ispreg.h +3 -3
index 084ea77..e2c57f3 100644
@@ -27,13 +27,13 @@
 #ifndef OMAP3_ISP_REG_H
 #define OMAP3_ISP_REG_H
 
-#include <plat/omap34xx.h>
-
-
 #define CM_CAM_MCLK_HZ			172800000	/* Hz */
 
 /* ISP Submodules offset */
 
+#define L4_34XX_BASE			0x48000000
+#define OMAP3430_ISP_BASE		(L4_34XX_BASE + 0xBC000)
+
 #define OMAP3ISP_REG_BASE		OMAP3430_ISP_BASE
 #define OMAP3ISP_REG(offset)		(OMAP3ISP_REG_BASE + (offset))
 
Signature · 6 lines
1.7.11.4

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
#12 lore raw

PATCH v2 1/5 omap3isp: Fix compilation error in ispreg.h

Em Tue, 2 Oct 2012 09:31:58 -0700
Tony Lindgren <[email protected]> escreveu:

Quoted 5 lines · Ido Yariv
Quoted 4 lines

Commit c49f34bc ("ARM: OMAP2+ Move SoC specific headers to be local to mach-omap2") moved omap34xx.h to mach-omap2. This broke omap3isp, as it includes omap34xx.h.

Quoted 7 lines
Quoted 4 lines

Instead of moving omap34xx to platform_data, simply add the two definitions the driver needs and remove the include altogether.

I'm assuming that Mauro picks this one up, sorry
for breaking it.

Picked, thanks.

With regards to the other patches in this series, IMHO, it makes more sense to go through arm omap tree, so, for the patches on this series that touch at drivers/media/platform/*:

Quoted 31 lines
Quoted 28 lines
---
 drivers/media/platform/omap3isp/ispreg.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
drivers/media/platform/omap3isp/ispreg.h +3 -3
index 084ea77..e2c57f3 100644
@@ -27,13 +27,13 @@
 #ifndef OMAP3_ISP_REG_H
 #define OMAP3_ISP_REG_H
 
-#include <plat/omap34xx.h>
-
-
 #define CM_CAM_MCLK_HZ			172800000	/* Hz */
 
 /* ISP Submodules offset */
 
+#define L4_34XX_BASE			0x48000000
+#define OMAP3430_ISP_BASE		(L4_34XX_BASE + 0xBC000)
+
 #define OMAP3ISP_REG_BASE		OMAP3430_ISP_BASE
 #define OMAP3ISP_REG(offset)		(OMAP3ISP_REG_BASE + (offset))
 
Signature · 1 line
1.7.11.4
Quoted 8 lines
Quoted 4 lines

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html

Cheers,
Mauro

maintainer
#13 lore raw

PATCH v2 1/5 omap3isp: Fix compilation error in ispreg.h

Quoted 16 lines · Mauro Carvalho Chehab

Em Tue, 2 Oct 2012 09:31:58 -0700
Tony Lindgren <[email protected]> escreveu:

Quoted 5 lines · Ido Yariv
Quoted 4 lines

Commit c49f34bc ("ARM: OMAP2+ Move SoC specific headers to be local to mach-omap2") moved omap34xx.h to mach-omap2. This broke omap3isp, as it includes omap34xx.h.

Quoted 7 lines
Quoted 4 lines

Instead of moving omap34xx to platform_data, simply add the two definitions the driver needs and remove the include altogether.

I'm assuming that Mauro picks this one up, sorry
for breaking it.

Quoted 7 lines

Picked, thanks.

With regards to the other patches in this series, IMHO, it makes more sense to go through arm omap tree, so, for the patches on this series that touch at drivers/media/platform/*:

Thanks yeah it's best that I pick up the rest. I can setup a minimal branch that can also be pulled into iommu branch after -rc1.

Regards,

Tony

#14 lore raw

PATCH v2 1/5 omap3isp: Fix compilation error in ispreg.h

In reply to Mauro Carvalho Chehab

Hi Mauro,

Quoted 45 lines · On Sunday 07 October 2012 10:17:18 Mauro Carvalho Chehab wrote:

Em Tue, 2 Oct 2012 09:31:58 -0700 Tony Lindgren escreveu:

Quoted 5 lines · Ido Yariv
Quoted 4 lines

Commit c49f34bc ("ARM: OMAP2+ Move SoC specific headers to be local to mach-omap2") moved omap34xx.h to mach-omap2. This broke omap3isp, as it includes omap34xx.h.

Quoted 7 lines
Quoted 4 lines

Instead of moving omap34xx to platform_data, simply add the two definitions the driver needs and remove the include altogether.

I'm assuming that Mauro picks this one up, sorry
for breaking it.

Picked, thanks.

With regards to the other patches in this series, IMHO, it makes more sense to go through arm omap tree, so, for the patches on this series that touch at drivers/media/platform/*:

Quoted 23 lines
Quoted 21 lines

---

 drivers/media/platform/omap3isp/ispreg.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
(quoted diff) +0 -0

b/drivers/media/platform/omap3isp/ispreg.h index 084ea77..e2c57f3 100644

drivers/media/platform/omap3isp/ispreg.h +0 -3
@@ -27,13 +27,13 @@
 
 #ifndef OMAP3_ISP_REG_H
 #define OMAP3_ISP_REG_H
 
-#include <plat/omap34xx.h>
-
-
 
 #define CM_CAM_MCLK_HZ			172800000	/* Hz */
 
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
drivers/media/platform/omap3isp/ispreg.h +3 -0
 /* ISP Submodules offset */
 
+#define L4_34XX_BASE			0x48000000
+#define OMAP3430_ISP_BASE		(L4_34XX_BASE + 0xBC000)
+
 

#define OMAP3ISP_REG_BASE OMAP3430_ISP_BASE
#define OMAP3ISP_REG(offset) (OMAP3ISP_REG_BASE + (offset))

I'll send a follow-up patch that removes all those definitions as they're actually not needed.

Signature · 3 lines
Regards,

Laurent Pinchart
author
#15 lore raw

PATCH 3/3 arm: omap: Move iommu/iovmm headers to platform_data

In reply to Ido Yariv

Move iommu/iovmm headers from plat/ to platform_data/ as part of the single zImage work.

---
 arch/arm/mach-omap2/devices.c                                       | 2 +-
 arch/arm/mach-omap2/iommu2.c                                        | 2 +-
 arch/arm/mach-omap2/omap-iommu.c                                    | 2 +-
 drivers/iommu/omap-iommu-debug.c                                    | 4 ++--
 drivers/iommu/omap-iommu.c                                          | 2 +-
 drivers/iommu/omap-iovmm.c                                          | 4 ++--
 drivers/media/platform/omap3isp/isp.h                               | 5 +++--
 drivers/media/platform/omap3isp/ispvideo.c                          | 6 ++++--
 .../plat/iommu.h => include/linux/platform_data/iommu-omap.h        | 0
 .../plat/iovmm.h => include/linux/platform_data/iovmm-omap.h        | 0
 10 files changed, 15 insertions(+), 12 deletions(-)
 rename arch/arm/plat-omap/include/plat/iommu.h => include/linux/platform_data/iommu-omap.h (100%)
 rename arch/arm/plat-omap/include/plat/iovmm.h => include/linux/platform_data/iovmm-omap.h (100%)
arch/arm/mach-omap2/devices.c +1 -1
index 1bb2e92..5bde5c2 100644
@@ -126,7 +126,7 @@ static struct platform_device omap2cam_device = {
 
 #if defined(CONFIG_IOMMU_API)
 
-#include <plat/iommu.h>
+#include <linux/platform_data/iommu-omap.h>
 
 static struct resource omap3isp_resources[] = {
 	{
arch/arm/mach-omap2/iommu2.c +1 -1
index eefc379..cab7acc 100644
@@ -18,7 +18,7 @@
 #include <linux/slab.h>
 #include <linux/stringify.h>
 
-#include <plat/iommu.h>
+#include <linux/platform_data/iommu-omap.h>
 
 /*
  * omap2 architecture specific register bit definitions
arch/arm/mach-omap2/omap-iommu.c +1 -1
index df298d4..a6a4ff8 100644
@@ -13,7 +13,7 @@
 #include <linux/module.h>
 #include <linux/platform_device.h>
 
-#include <plat/iommu.h>
+#include <linux/platform_data/iommu-omap.h>
 
 #include "soc.h"
 #include "common.h"
drivers/iommu/omap-iommu-debug.c +2 -2
index f55fc5d..e6ee7c2 100644
@@ -19,8 +19,8 @@
 #include <linux/platform_device.h>
 #include <linux/debugfs.h>
 
-#include <plat/iommu.h>
-#include <plat/iovmm.h>
+#include <linux/platform_data/iommu-omap.h>
+#include <linux/platform_data/iovmm-omap.h>
 
 #include <plat/iopgtable.h>
 
drivers/iommu/omap-iommu.c +1 -1
index d0b1234..298ca19 100644
@@ -24,7 +24,7 @@
 
 #include <asm/cacheflush.h>
 
-#include <plat/iommu.h>
+#include <linux/platform_data/iommu-omap.h>
 
 #include <plat/iopgtable.h>
 
drivers/iommu/omap-iovmm.c +2 -2
index 2e10c3e..ade7c6c 100644
@@ -21,8 +21,8 @@
 #include <asm/cacheflush.h>
 #include <asm/mach/map.h>
 
-#include <plat/iommu.h>
-#include <plat/iovmm.h>
+#include <linux/platform_data/iommu-omap.h>
+#include <linux/platform_data/iovmm-omap.h>
 
 #include <plat/iopgtable.h>
 
drivers/media/platform/omap3isp/isp.h +3 -2
index 8be7487..62c76f9 100644
@@ -34,8 +34,9 @@
 #include <linux/platform_device.h>
 #include <linux/wait.h>
 #include <linux/iommu.h>
-#include <plat/iommu.h>
-#include <plat/iovmm.h>
+
+#include <linux/platform_data/iommu-omap.h>
+#include <linux/platform_data/iovmm-omap.h>
 
 #include "ispstat.h"
 #include "ispccdc.h"
drivers/media/platform/omap3isp/ispvideo.c +4 -2
index 3a5085e..1093f07 100644
@@ -34,8 +34,10 @@
 #include <linux/vmalloc.h>
 #include <media/v4l2-dev.h>
 #include <media/v4l2-ioctl.h>
-#include <plat/iommu.h>
-#include <plat/iovmm.h>
+
+#include <linux/platform_data/iommu-omap.h>
+#include <linux/platform_data/iovmm-omap.h>
+
 #include <plat/omap-pm.h>
 
 #include "ispvideo.h"
include/linux/platform_data/iommu-omap.h renamed from arch/arm/plat-omap/include/plat/iommu.h +0 -0
similarity index 100%
rename from arch/arm/plat-omap/include/plat/iommu.h
rename to include/linux/platform_data/iommu-omap.h
include/linux/platform_data/iovmm-omap.h renamed from arch/arm/plat-omap/include/plat/iovmm.h +0 -0
similarity index 100%
rename from arch/arm/plat-omap/include/plat/iovmm.h
rename to include/linux/platform_data/iovmm-omap.h
Signature · 1 line
1.7.11.4
#16 lore raw

PATCH 3/3 arm: omap: Move iommu/iovmm headers to platform_data

Em Fri, 21 Sep 2012 01:14:08 -0400
Ido Yariv <[email protected]> escreveu:

Quoted 12 lines

Move iommu/iovmm headers from plat/ to platform_data/ as part of the single zImage work.

---
 arch/arm/mach-omap2/devices.c                                       | 2 +-
 arch/arm/mach-omap2/iommu2.c                                        | 2 +-
 arch/arm/mach-omap2/omap-iommu.c                                    | 2 +-
 drivers/iommu/omap-iommu-debug.c                                    | 4 ++--
 drivers/iommu/omap-iommu.c                                          | 2 +-
 drivers/iommu/omap-iovmm.c                                          | 4 ++--
Quoted 2 lines
 drivers/media/platform/omap3isp/isp.h                               | 5 +++--
 drivers/media/platform/omap3isp/ispvideo.c                          | 6 ++++--

include/linux/platform_data/iovmm-omap.h

Quoted 129 lines
 .../plat/iommu.h => include/linux/platform_data/iommu-omap.h        | 0
 .../plat/iovmm.h => include/linux/platform_data/iovmm-omap.h        | 0
 10 files changed, 15 insertions(+), 12 deletions(-)
 rename arch/arm/plat-omap/include/plat/iommu.h => include/linux/platform_data/iommu-omap.h (100%)
 rename arch/arm/plat-omap/include/plat/iovmm.h => include/linux/platform_data/iovmm-omap.h (100%)
arch/arm/mach-omap2/devices.c +1 -1
index 1bb2e92..5bde5c2 100644
@@ -126,7 +126,7 @@ static struct platform_device omap2cam_device = {
 
 #if defined(CONFIG_IOMMU_API)
 
-#include <plat/iommu.h>
+#include <linux/platform_data/iommu-omap.h>
 
 static struct resource omap3isp_resources[] = {
 	{
arch/arm/mach-omap2/iommu2.c +1 -1
index eefc379..cab7acc 100644
@@ -18,7 +18,7 @@
 #include <linux/slab.h>
 #include <linux/stringify.h>
 
-#include <plat/iommu.h>
+#include <linux/platform_data/iommu-omap.h>
 
 /*
  * omap2 architecture specific register bit definitions
arch/arm/mach-omap2/omap-iommu.c +1 -1
index df298d4..a6a4ff8 100644
@@ -13,7 +13,7 @@
 #include <linux/module.h>
 #include <linux/platform_device.h>
 
-#include <plat/iommu.h>
+#include <linux/platform_data/iommu-omap.h>
 
 #include "soc.h"
 #include "common.h"
drivers/iommu/omap-iommu-debug.c +2 -2
index f55fc5d..e6ee7c2 100644
@@ -19,8 +19,8 @@
 #include <linux/platform_device.h>
 #include <linux/debugfs.h>
 
-#include <plat/iommu.h>
-#include <plat/iovmm.h>
+#include <linux/platform_data/iommu-omap.h>
+#include <linux/platform_data/iovmm-omap.h>
 
 #include <plat/iopgtable.h>
 
drivers/iommu/omap-iommu.c +1 -1
index d0b1234..298ca19 100644
@@ -24,7 +24,7 @@
 
 #include <asm/cacheflush.h>
 
-#include <plat/iommu.h>
+#include <linux/platform_data/iommu-omap.h>
 
 #include <plat/iopgtable.h>
 
drivers/iommu/omap-iovmm.c +2 -2
index 2e10c3e..ade7c6c 100644
@@ -21,8 +21,8 @@
 #include <asm/cacheflush.h>
 #include <asm/mach/map.h>
 
-#include <plat/iommu.h>
-#include <plat/iovmm.h>
+#include <linux/platform_data/iommu-omap.h>
+#include <linux/platform_data/iovmm-omap.h>
 
 #include <plat/iopgtable.h>
 
drivers/media/platform/omap3isp/isp.h +3 -2
index 8be7487..62c76f9 100644
@@ -34,8 +34,9 @@
 #include <linux/platform_device.h>
 #include <linux/wait.h>
 #include <linux/iommu.h>
-#include <plat/iommu.h>
-#include <plat/iovmm.h>
+
+#include <linux/platform_data/iommu-omap.h>
+#include <linux/platform_data/iovmm-omap.h>
 
 #include "ispstat.h"
 #include "ispccdc.h"
drivers/media/platform/omap3isp/ispvideo.c +4 -2
index 3a5085e..1093f07 100644
@@ -34,8 +34,10 @@
 #include <linux/vmalloc.h>
 #include <media/v4l2-dev.h>
 #include <media/v4l2-ioctl.h>
-#include <plat/iommu.h>
-#include <plat/iovmm.h>
+
+#include <linux/platform_data/iommu-omap.h>
+#include <linux/platform_data/iovmm-omap.h>
+
 #include <plat/omap-pm.h>
 
 #include "ispvideo.h"
include/linux/platform_data/iommu-omap.h renamed from arch/arm/plat-omap/include/plat/iommu.h +0 -0
similarity index 100%
rename from arch/arm/plat-omap/include/plat/iommu.h
rename to include/linux/platform_data/iommu-omap.h
include/linux/platform_data/iovmm-omap.h renamed from arch/arm/plat-omap/include/plat/iovmm.h +0 -0
similarity index 100%
rename from arch/arm/plat-omap/include/plat/iovmm.h
rename to include/linux/platform_data/iovmm-omap.h

Cheers,
Mauro