diff options
| author | Olof Johansson <olof@lixom.net> | 2012-12-01 00:38:59 -0500 |
|---|---|---|
| committer | Olof Johansson <olof@lixom.net> | 2012-12-01 00:38:59 -0500 |
| commit | 794b175fc0c0c4844dbb7b137a73bbfd01f6c608 (patch) | |
| tree | 69b9394b5b09118f9877cd02838a7cd2d7c4f63c | |
| parent | 4fabb6332a2b747c7f6783f146a8fb3d2f88d91c (diff) | |
| parent | 2ab7c84815cffd5fe4946a472fc67fefa8ac3c29 (diff) | |
Merge tag 'omap-for-v3.8/cleanup-headers-iommu-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/cleanup
From Tony Lindgren:
Move most of remaining omap iommu code to drivers/iommu.
This is needed for the multiplatform kernels as the plat
and mach headers cannot be included.
These changes were agreed to be merged via the arm-soc
tree by Joerg and Ohad as these will cause some merge
conflicts with the other related clean-up branches.
So omap-for-v3.8/cleanup-headers-iommu should be added
as one of the depends branches for arm-soc.
* tag 'omap-for-v3.8/cleanup-headers-iommu-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: OMAP2+: Move iommu/iovmm headers to platform_data
ARM: OMAP2+: Make some definitions local
ARM: OMAP2+: Move iommu2 to drivers/iommu/omap-iommu2.c
ARM: OMAP2+: Move plat/iovmm.h to include/linux/omap-iommu.h
ARM: OMAP2+: Move iopgtable header to drivers/iommu/
ARM: OMAP: Merge iommu2.h into iommu.h
Conflicts due to surrounding changes fixed up in:
arch/arm/mach-omap2/omap_hwmod_44xx_data.c
drivers/media/platform/omap3isp/ispvideo.c
Signed-off-by: Olof Johansson <olof@lixom.net>
21 files changed, 280 insertions, 289 deletions
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile index dd76ff77760b..11c57af01a88 100644 --- a/arch/arm/mach-omap2/Makefile +++ b/arch/arm/mach-omap2/Makefile | |||
| @@ -202,8 +202,6 @@ obj-$(CONFIG_HW_PERF_EVENTS) += pmu.o | |||
| 202 | obj-$(CONFIG_OMAP_MBOX_FWK) += mailbox_mach.o | 202 | obj-$(CONFIG_OMAP_MBOX_FWK) += mailbox_mach.o |
| 203 | mailbox_mach-objs := mailbox.o | 203 | mailbox_mach-objs := mailbox.o |
| 204 | 204 | ||
| 205 | obj-$(CONFIG_OMAP_IOMMU) += iommu2.o | ||
| 206 | |||
| 207 | iommu-$(CONFIG_OMAP_IOMMU) := omap-iommu.o | 205 | iommu-$(CONFIG_OMAP_IOMMU) := omap-iommu.o |
| 208 | obj-y += $(iommu-m) $(iommu-y) | 206 | obj-y += $(iommu-m) $(iommu-y) |
| 209 | 207 | ||
diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c index d2215e9873a5..3cff7dc514df 100644 --- a/arch/arm/mach-omap2/devices.c +++ b/arch/arm/mach-omap2/devices.c | |||
| @@ -129,7 +129,7 @@ static struct platform_device omap2cam_device = { | |||
| 129 | 129 | ||
| 130 | #if defined(CONFIG_IOMMU_API) | 130 | #if defined(CONFIG_IOMMU_API) |
| 131 | 131 | ||
| 132 | #include <plat/iommu.h> | 132 | #include <linux/platform_data/iommu-omap.h> |
| 133 | 133 | ||
| 134 | static struct resource omap3isp_resources[] = { | 134 | static struct resource omap3isp_resources[] = { |
| 135 | { | 135 | { |
diff --git a/arch/arm/mach-omap2/omap-iommu.c b/arch/arm/mach-omap2/omap-iommu.c index df298d46707c..a6a4ff8744b7 100644 --- a/arch/arm/mach-omap2/omap-iommu.c +++ b/arch/arm/mach-omap2/omap-iommu.c | |||
| @@ -13,7 +13,7 @@ | |||
| 13 | #include <linux/module.h> | 13 | #include <linux/module.h> |
| 14 | #include <linux/platform_device.h> | 14 | #include <linux/platform_device.h> |
| 15 | 15 | ||
| 16 | #include <plat/iommu.h> | 16 | #include <linux/platform_data/iommu-omap.h> |
| 17 | 17 | ||
| 18 | #include "soc.h" | 18 | #include "soc.h" |
| 19 | #include "common.h" | 19 | #include "common.h" |
diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c index addc1c24ca2e..7f73f2132acc 100644 --- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | |||
| @@ -24,8 +24,8 @@ | |||
| 24 | #include "l4_3xxx.h" | 24 | #include "l4_3xxx.h" |
| 25 | #include <linux/platform_data/asoc-ti-mcbsp.h> | 25 | #include <linux/platform_data/asoc-ti-mcbsp.h> |
| 26 | #include <linux/platform_data/spi-omap2-mcspi.h> | 26 | #include <linux/platform_data/spi-omap2-mcspi.h> |
| 27 | #include <linux/platform_data/iommu-omap.h> | ||
| 27 | #include <plat/dmtimer.h> | 28 | #include <plat/dmtimer.h> |
| 28 | #include <plat/iommu.h> | ||
| 29 | 29 | ||
| 30 | #include "am35xx.h" | 30 | #include "am35xx.h" |
| 31 | 31 | ||
diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c index f5b55a78a5f0..26f8e9f18190 100644 --- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c | |||
| @@ -28,8 +28,8 @@ | |||
| 28 | #include <linux/platform_data/omap_ocp2scp.h> | 28 | #include <linux/platform_data/omap_ocp2scp.h> |
| 29 | #include <linux/platform_data/spi-omap2-mcspi.h> | 29 | #include <linux/platform_data/spi-omap2-mcspi.h> |
| 30 | #include <linux/platform_data/asoc-ti-mcbsp.h> | 30 | #include <linux/platform_data/asoc-ti-mcbsp.h> |
| 31 | #include <linux/platform_data/iommu-omap.h> | ||
| 31 | #include <plat/dmtimer.h> | 32 | #include <plat/dmtimer.h> |
| 32 | #include <plat/iommu.h> | ||
| 33 | 33 | ||
| 34 | #include "omap_hwmod.h" | 34 | #include "omap_hwmod.h" |
| 35 | #include "omap_hwmod_common_data.h" | 35 | #include "omap_hwmod_common_data.h" |
diff --git a/arch/arm/plat-omap/include/plat/iommu2.h b/arch/arm/plat-omap/include/plat/iommu2.h deleted file mode 100644 index d4116b595e40..000000000000 --- a/arch/arm/plat-omap/include/plat/iommu2.h +++ /dev/null | |||
| @@ -1,96 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * omap iommu: omap2 architecture specific definitions | ||
| 3 | * | ||
| 4 | * Copyright (C) 2008-2009 Nokia Corporation | ||
| 5 | * | ||
| 6 | * Written by Hiroshi DOYU <Hiroshi.DOYU@nokia.com> | ||
| 7 | * | ||
| 8 | * This program is free software; you can redistribute it and/or modify | ||
| 9 | * it under the terms of the GNU General Public License version 2 as | ||
| 10 | * published by the Free Software Foundation. | ||
| 11 | */ | ||
| 12 | |||
| 13 | #ifndef __MACH_IOMMU2_H | ||
| 14 | #define __MACH_IOMMU2_H | ||
| 15 | |||
| 16 | #include <linux/io.h> | ||
| 17 | |||
| 18 | /* | ||
| 19 | * MMU Register offsets | ||
| 20 | */ | ||
| 21 | #define MMU_REVISION 0x00 | ||
| 22 | #define MMU_SYSCONFIG 0x10 | ||
| 23 | #define MMU_SYSSTATUS 0x14 | ||
| 24 | #define MMU_IRQSTATUS 0x18 | ||
| 25 | #define MMU_IRQENABLE 0x1c | ||
| 26 | #define MMU_WALKING_ST 0x40 | ||
| 27 | #define MMU_CNTL 0x44 | ||
| 28 | #define MMU_FAULT_AD 0x48 | ||
| 29 | #define MMU_TTB 0x4c | ||
| 30 | #define MMU_LOCK 0x50 | ||
| 31 | #define MMU_LD_TLB 0x54 | ||
| 32 | #define MMU_CAM 0x58 | ||
| 33 | #define MMU_RAM 0x5c | ||
| 34 | #define MMU_GFLUSH 0x60 | ||
| 35 | #define MMU_FLUSH_ENTRY 0x64 | ||
| 36 | #define MMU_READ_CAM 0x68 | ||
| 37 | #define MMU_READ_RAM 0x6c | ||
| 38 | #define MMU_EMU_FAULT_AD 0x70 | ||
| 39 | |||
| 40 | #define MMU_REG_SIZE 256 | ||
| 41 | |||
| 42 | /* | ||
| 43 | * MMU Register bit definitions | ||
| 44 | */ | ||
| 45 | #define MMU_LOCK_BASE_SHIFT 10 | ||
| 46 | #define MMU_LOCK_BASE_MASK (0x1f << MMU_LOCK_BASE_SHIFT) | ||
| 47 | #define MMU_LOCK_BASE(x) \ | ||
| 48 | ((x & MMU_LOCK_BASE_MASK) >> MMU_LOCK_BASE_SHIFT) | ||
| 49 | |||
| 50 | #define MMU_LOCK_VICT_SHIFT 4 | ||
| 51 | #define MMU_LOCK_VICT_MASK (0x1f << MMU_LOCK_VICT_SHIFT) | ||
| 52 | #define MMU_LOCK_VICT(x) \ | ||
| 53 | ((x & MMU_LOCK_VICT_MASK) >> MMU_LOCK_VICT_SHIFT) | ||
| 54 | |||
| 55 | #define MMU_CAM_VATAG_SHIFT 12 | ||
| 56 | #define MMU_CAM_VATAG_MASK \ | ||
| 57 | ((~0UL >> MMU_CAM_VATAG_SHIFT) << MMU_CAM_VATAG_SHIFT) | ||
| 58 | #define MMU_CAM_P (1 << 3) | ||
| 59 | #define MMU_CAM_V (1 << 2) | ||
| 60 | #define MMU_CAM_PGSZ_MASK 3 | ||
| 61 | #define MMU_CAM_PGSZ_1M (0 << 0) | ||
| 62 | #define MMU_CAM_PGSZ_64K (1 << 0) | ||
| 63 | #define MMU_CAM_PGSZ_4K (2 << 0) | ||
| 64 | #define MMU_CAM_PGSZ_16M (3 << 0) | ||
| 65 | |||
| 66 | #define MMU_RAM_PADDR_SHIFT 12 | ||
| 67 | #define MMU_RAM_PADDR_MASK \ | ||
| 68 | ((~0UL >> MMU_RAM_PADDR_SHIFT) << MMU_RAM_PADDR_SHIFT) | ||
| 69 | #define MMU_RAM_ENDIAN_SHIFT 9 | ||
| 70 | #define MMU_RAM_ENDIAN_MASK (1 << MMU_RAM_ENDIAN_SHIFT) | ||
| 71 | #define MMU_RAM_ENDIAN_BIG (1 << MMU_RAM_ENDIAN_SHIFT) | ||
| 72 | #define MMU_RAM_ENDIAN_LITTLE (0 << MMU_RAM_ENDIAN_SHIFT) | ||
| 73 | #define MMU_RAM_ELSZ_SHIFT 7 | ||
| 74 | #define MMU_RAM_ELSZ_MASK (3 << MMU_RAM_ELSZ_SHIFT) | ||
| 75 | #define MMU_RAM_ELSZ_8 (0 << MMU_RAM_ELSZ_SHIFT) | ||
| 76 | #define MMU_RAM_ELSZ_16 (1 << MMU_RAM_ELSZ_SHIFT) | ||
| 77 | #define MMU_RAM_ELSZ_32 (2 << MMU_RAM_ELSZ_SHIFT) | ||
| 78 | #define MMU_RAM_ELSZ_NONE (3 << MMU_RAM_ELSZ_SHIFT) | ||
| 79 | #define MMU_RAM_MIXED_SHIFT 6 | ||
| 80 | #define MMU_RAM_MIXED_MASK (1 << MMU_RAM_MIX | ||
