diff options
| author | Lennert Buytenhek <buytenh@wantstofly.org> | 2006-09-18 18:10:26 -0400 |
|---|---|---|
| committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2006-09-25 05:25:36 -0400 |
| commit | 3f7e5815f4b774270e6506962de37af85aa9c830 (patch) | |
| tree | 7e4a2b0d6f8b9f1a21ba7a4eb8baf1a1ec04d4f9 | |
| parent | 98954df6917cb8f7e65f4f0f79ed641112fcf6b6 (diff) | |
[ARM] 3817/1: iop3xx: split the iop3xx mach into iop32x and iop33x
Split the iop3xx mach type into iop32x and iop33x -- split the config
symbols, and move the code in the mach-iop3xx directory to the mach-iop32x
and mach-iop33x directories.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| -rw-r--r-- | arch/arm/Kconfig | 20 | ||||
| -rw-r--r-- | arch/arm/Makefile | 3 | ||||
| -rw-r--r-- | arch/arm/configs/ep80219_defconfig | 5 | ||||
| -rw-r--r-- | arch/arm/configs/iq31244_defconfig | 5 | ||||
| -rw-r--r-- | arch/arm/configs/iq80321_defconfig | 5 | ||||
| -rw-r--r-- | arch/arm/configs/iq80331_defconfig | 4 | ||||
| -rw-r--r-- | arch/arm/configs/iq80332_defconfig | 4 | ||||
| -rw-r--r-- | arch/arm/mach-iop32x/Kconfig | 28 | ||||
| -rw-r--r-- | arch/arm/mach-iop32x/Makefile | 11 | ||||
| -rw-r--r-- | arch/arm/mach-iop32x/Makefile.boot | 3 | ||||
| -rw-r--r-- | arch/arm/mach-iop32x/common.c (renamed from arch/arm/mach-iop3xx/common.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop32x/iq31244-mm.c (renamed from arch/arm/mach-iop3xx/iq31244-mm.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop32x/iq31244-pci.c (renamed from arch/arm/mach-iop3xx/iq31244-pci.c) | 4 | ||||
| -rw-r--r-- | arch/arm/mach-iop32x/iq80321-mm.c (renamed from arch/arm/mach-iop3xx/iq80321-mm.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop32x/iq80321-pci.c (renamed from arch/arm/mach-iop3xx/iq80321-pci.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop32x/irq.c (renamed from arch/arm/mach-iop3xx/iop321-irq.c) | 6 | ||||
| -rw-r--r-- | arch/arm/mach-iop32x/pci.c (renamed from arch/arm/mach-iop3xx/iop321-pci.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop32x/setup.c (renamed from arch/arm/mach-iop3xx/iop321-setup.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop32x/time.c (renamed from arch/arm/mach-iop3xx/iop321-time.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop33x/Kconfig | 27 | ||||
| -rw-r--r-- | arch/arm/mach-iop33x/Makefile | 11 | ||||
| -rw-r--r-- | arch/arm/mach-iop33x/Makefile.boot | 3 | ||||
| -rw-r--r-- | arch/arm/mach-iop33x/common.c | 22 | ||||
| -rw-r--r-- | arch/arm/mach-iop33x/iq80331-mm.c (renamed from arch/arm/mach-iop3xx/iq80331-mm.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop33x/iq80331-pci.c (renamed from arch/arm/mach-iop3xx/iq80331-pci.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop33x/iq80332-mm.c (renamed from arch/arm/mach-iop3xx/iq80332-mm.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop33x/iq80332-pci.c (renamed from arch/arm/mach-iop3xx/iq80332-pci.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop33x/irq.c (renamed from arch/arm/mach-iop3xx/iop331-irq.c) | 4 | ||||
| -rw-r--r-- | arch/arm/mach-iop33x/pci.c (renamed from arch/arm/mach-iop3xx/iop331-pci.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop33x/setup.c (renamed from arch/arm/mach-iop3xx/iop331-setup.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop33x/time.c (renamed from arch/arm/mach-iop3xx/iop331-time.c) | 2 | ||||
| -rw-r--r-- | arch/arm/mach-iop3xx/Kconfig | 66 | ||||
| -rw-r--r-- | arch/arm/mach-iop3xx/Makefile | 23 | ||||
| -rw-r--r-- | arch/arm/mach-iop3xx/Makefile.boot | 9 | ||||
| -rw-r--r-- | arch/arm/mm/Kconfig | 2 | ||||
| -rw-r--r-- | drivers/i2c/busses/Kconfig | 2 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/debug-macro.S | 20 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/dma.h (renamed from include/asm-arm/arch-iop3xx/dma.h) | 2 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/entry-macro.S | 28 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/hardware.h (renamed from include/asm-arm/arch-iop3xx/hardware.h) | 5 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/io.h (renamed from include/asm-arm/arch-iop3xx/io.h) | 2 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/iop321.h (renamed from include/asm-arm/arch-iop3xx/iop321.h) | 8 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/iq31244.h (renamed from include/asm-arm/arch-iop3xx/iq31244.h) | 2 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/iq80321.h (renamed from include/asm-arm/arch-iop3xx/iq80321.h) | 2 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/irqs.h (renamed from include/asm-arm/arch-iop3xx/iop321-irqs.h) | 12 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/memory.h (renamed from include/asm-arm/arch-iop3xx/memory.h) | 13 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/system.h (renamed from include/asm-arm/arch-iop3xx/system.h) | 8 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/timex.h | 8 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/uncompress.h | 38 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop32x/vmalloc.h (renamed from include/asm-arm/arch-iop3xx/vmalloc.h) | 2 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/debug-macro.S | 24 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/dma.h | 9 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/entry-macro.S (renamed from include/asm-arm/arch-iop3xx/entry-macro.S) | 29 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/hardware.h | 54 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/io.h | 21 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/iop331.h (renamed from include/asm-arm/arch-iop3xx/iop331.h) | 9 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/iq80331.h (renamed from include/asm-arm/arch-iop3xx/iq80331.h) | 2 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/iq80332.h (renamed from include/asm-arm/arch-iop3xx/iq80332.h) | 2 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/irqs.h (renamed from include/asm-arm/arch-iop3xx/iop331-irqs.h) | 12 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/memory.h | 26 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/system.h | 29 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/timex.h | 8 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/uncompress.h | 36 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop33x/vmalloc.h | 16 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop3xx/debug-macro.S | 35 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop3xx/irqs.h | 21 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop3xx/timex.h | 20 | ||||
| -rw-r--r-- | include/asm-arm/arch-iop3xx/uncompress.h | 48 |
68 files changed, 499 insertions, 347 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index d9376f048ed7..0fb17bbb86bc 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig | |||
| @@ -202,12 +202,20 @@ config ARCH_IMX | |||
| 202 | help | 202 | help |
| 203 | Support for Motorola's i.MX family of processors (MX1, MXL). | 203 | Support for Motorola's i.MX family of processors (MX1, MXL). |
| 204 | 204 | ||
| 205 | config ARCH_IOP3XX | 205 | config ARCH_IOP32X |
| 206 | bool "IOP3xx-based" | 206 | bool "IOP32x-based" |
| 207 | depends on MMU | 207 | depends on MMU |
| 208 | select PCI | 208 | select PCI |
| 209 | help | 209 | help |
| 210 | Support for Intel's IOP3XX (XScale) family of processors. | 210 | Support for Intel's 80219 and IOP32X (XScale) family of |
| 211 | processors. | ||
| 212 | |||
| 213 | config ARCH_IOP33X | ||
| 214 | bool "IOP33x-based" | ||
| 215 | depends on MMU | ||
| 216 | select PCI | ||
| 217 | help | ||
| 218 | Support for Intel's IOP33X (XScale) family of processors. | ||
| 211 | 219 | ||
| 212 | config ARCH_IXP4XX | 220 | config ARCH_IXP4XX |
| 213 | bool "IXP4xx-based" | 221 | bool "IXP4xx-based" |
| @@ -312,7 +320,9 @@ source "arch/arm/mach-footbridge/Kconfig" | |||
| 312 | 320 | ||
| 313 | source "arch/arm/mach-integrator/Kconfig" | 321 | source "arch/arm/mach-integrator/Kconfig" |
| 314 | 322 | ||
| 315 | source "arch/arm/mach-iop3xx/Kconfig" | 323 | source "arch/arm/mach-iop32x/Kconfig" |
| 324 | |||
| 325 | source "arch/arm/mach-iop33x/Kconfig" | ||
| 316 | 326 | ||
| 317 | source "arch/arm/mach-ixp4xx/Kconfig" | 327 | source "arch/arm/mach-ixp4xx/Kconfig" |
| 318 | 328 | ||
| @@ -848,7 +858,7 @@ source "drivers/block/Kconfig" | |||
| 848 | 858 | ||
| 849 | source "drivers/acorn/block/Kconfig" | 859 | source "drivers/acorn/block/Kconfig" |
| 850 | 860 | ||
| 851 | if PCMCIA || ARCH_CLPS7500 || ARCH_IOP3XX || ARCH_IXP4XX \ | 861 | if PCMCIA || ARCH_CLPS7500 || ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX \ |
| 852 | || ARCH_L7200 || ARCH_LH7A40X || ARCH_PXA || ARCH_RPC \ | 862 | || ARCH_L7200 || ARCH_LH7A40X || ARCH_PXA || ARCH_RPC \ |
| 853 | || ARCH_S3C2410 || ARCH_SA1100 || ARCH_SHARK || FOOTBRIDGE \ | 863 | || ARCH_S3C2410 || ARCH_SA1100 || ARCH_SHARK || FOOTBRIDGE \ |
| 854 | || ARCH_IXP23XX | 864 | || ARCH_IXP23XX |
diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 92873cdee31f..ac786bf0f546 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile | |||
| @@ -101,7 +101,8 @@ endif | |||
| 101 | machine-$(CONFIG_ARCH_INTEGRATOR) := integrator | 101 | machine-$(CONFIG_ARCH_INTEGRATOR) := integrator |
| 102 | textofs-$(CONFIG_ARCH_CLPS711X) := 0x00028000 | 102 | textofs-$(CONFIG_ARCH_CLPS711X) := 0x00028000 |
| 103 | machine-$(CONFIG_ARCH_CLPS711X) := clps711x | 103 | machine-$(CONFIG_ARCH_CLPS711X) := clps711x |
| 104 | machine-$(CONFIG_ARCH_IOP3XX) := iop3xx | 104 | machine-$(CONFIG_ARCH_IOP32X) := iop32x |
| 105 | machine-$(CONFIG_ARCH_IOP33X) := iop33x | ||
| 105 | machine-$(CONFIG_ARCH_IXP4XX) := ixp4xx | 106 | machine-$(CONFIG_ARCH_IXP4XX) := ixp4xx |
| 106 | machine-$(CONFIG_ARCH_IXP2000) := ixp2000 | 107 | machine-$(CONFIG_ARCH_IXP2000) := ixp2000 |
| 107 | machine-$(CONFIG_ARCH_IXP23XX) := ixp23xx | 108 | machine-$(CONFIG_ARCH_IXP23XX) := ixp23xx |
diff --git a/arch/arm/configs/ep80219_defconfig b/arch/arm/configs/ep80219_defconfig index 199f1567345d..f91cf8ff359d 100644 --- a/arch/arm/configs/ep80219_defconfig +++ b/arch/arm/configs/ep80219_defconfig | |||
| @@ -66,7 +66,8 @@ CONFIG_KMOD=y | |||
| 66 | # CONFIG_ARCH_EBSA110 is not set | 66 | # CONFIG_ARCH_EBSA110 is not set |
| 67 | # CONFIG_ARCH_FOOTBRIDGE is not set | 67 | # CONFIG_ARCH_FOOTBRIDGE is not set |
| 68 | # CONFIG_ARCH_INTEGRATOR is not set | 68 | # CONFIG_ARCH_INTEGRATOR is not set |
| 69 | CONFIG_ARCH_IOP3XX=y | 69 | CONFIG_ARCH_IOP32X=y |
| 70 | # CONFIG_ARCH_IOP33X is not set | ||
| 70 | # CONFIG_ARCH_IXP4XX is not set | 71 | # CONFIG_ARCH_IXP4XX is not set |
| 71 | # CONFIG_ARCH_IXP2000 is not set | 72 | # CONFIG_ARCH_IXP2000 is not set |
| 72 | # CONFIG_ARCH_L7200 is not set | 73 | # CONFIG_ARCH_L7200 is not set |
| @@ -93,8 +94,6 @@ CONFIG_ARCH_IQ31244=y | |||
| 93 | # CONFIG_ARCH_IQ80331 is not set | 94 | # CONFIG_ARCH_IQ80331 is not set |
| 94 | # CONFIG_MACH_IQ80332 is not set | 95 | # CONFIG_MACH_IQ80332 is not set |
| 95 | CONFIG_ARCH_EP80219=y | 96 | CONFIG_ARCH_EP80219=y |
| 96 | CONFIG_ARCH_IOP32X=y | ||
| 97 | # CONFIG_ARCH_IOP33X is not set | ||
| 98 | 97 | ||
| 99 | # | 98 | # |
| 100 | # IOP3xx Chipset Features | 99 | # IOP3xx Chipset Features |
diff --git a/arch/arm/configs/iq31244_defconfig b/arch/arm/configs/iq31244_defconfig index 27f884417b90..ce1b1f20b763 100644 --- a/arch/arm/configs/iq31244_defconfig +++ b/arch/arm/configs/iq31244_defconfig | |||
| @@ -67,7 +67,8 @@ CONFIG_KMOD=y | |||
| 67 | # CONFIG_ARCH_EBSA110 is not set | 67 | # CONFIG_ARCH_EBSA110 is not set |
| 68 | # CONFIG_ARCH_FOOTBRIDGE is not set | 68 | # CONFIG_ARCH_FOOTBRIDGE is not set |
| 69 | # CONFIG_ARCH_INTEGRATOR is not set | 69 | # CONFIG_ARCH_INTEGRATOR is not set |
| 70 | CONFIG_ARCH_IOP3XX=y | 70 | CONFIG_ARCH_IOP32X=y |
| 71 | # CONFIG_ARCH_IOP33X is not set | ||
| 71 | # CONFIG_ARCH_IXP4XX is not set | 72 | # CONFIG_ARCH_IXP4XX is not set |
| 72 | # CONFIG_ARCH_IXP2000 is not set | 73 | # CONFIG_ARCH_IXP2000 is not set |
| 73 | # CONFIG_ARCH_L7200 is not set | 74 | # CONFIG_ARCH_L7200 is not set |
| @@ -94,8 +95,6 @@ CONFIG_ARCH_IQ31244=y | |||
| 94 | # CONFIG_ARCH_IQ80331 is not set | 95 | # CONFIG_ARCH_IQ80331 is not set |
| 95 | # CONFIG_MACH_IQ80332 is not set | 96 | # CONFIG_MACH_IQ80332 is not set |
| 96 | # CONFIG_ARCH_EP80219 is not set | 97 | # CONFIG_ARCH_EP80219 is not set |
| 97 | CONFIG_ARCH_IOP32X=y | ||
| 98 | # CONFIG_ARCH_IOP33X is not set | ||
| 99 | 98 | ||
| 100 | # | 99 | # |
| 101 | # IOP3xx Chipset Features | 100 | # IOP3xx Chipset Features |
diff --git a/arch/arm/configs/iq80321_defconfig b/arch/arm/configs/iq80321_defconfig index 33f21a24cf4e..f00b0d2159dd 100644 --- a/arch/arm/configs/iq80321_defconfig +++ b/arch/arm/configs/iq80321_defconfig | |||
| @@ -66,7 +66,8 @@ CONFIG_KMOD=y | |||
| 66 | # CONFIG_ARCH_EBSA110 is not set | 66 | # CONFIG_ARCH_EBSA110 is not set |
| 67 | # CONFIG_ARCH_FOOTBRIDGE is not set | 67 | # CONFIG_ARCH_FOOTBRIDGE is not set |
| 68 | # CONFIG_ARCH_INTEGRATOR is not set | 68 | # CONFIG_ARCH_INTEGRATOR is not set |
| 69 | CONFIG_ARCH_IOP3XX=y | 69 | CONFIG_ARCH_IOP32X=y |
| 70 | # CONFIG_ARCH_IOP33X is not set | ||
| 70 | # CONFIG_ARCH_IXP4XX is not set | 71 | # CONFIG_ARCH_IXP4XX is not set |
| 71 | # CONFIG_ARCH_IXP2000 is not set | 72 | # CONFIG_ARCH_IXP2000 is not set |
| 72 | # CONFIG_ARCH_L7200 is not set | 73 | # CONFIG_ARCH_L7200 is not set |
| @@ -93,8 +94,6 @@ CONFIG_ARCH_IQ80321=y | |||
| 93 | # CONFIG_ARCH_IQ80331 is not set | 94 | # CONFIG_ARCH_IQ80331 is not set |
| 94 | # CONFIG_MACH_IQ80332 is not set | 95 | # CONFIG_MACH_IQ80332 is not set |
| 95 | # CONFIG_ARCH_EP80219 is not set | 96 | # CONFIG_ARCH_EP80219 is not set |
| 96 | CONFIG_ARCH_IOP32X=y | ||
| 97 | # CONFIG_ARCH_IOP33X is not set | ||
| 98 | 97 | ||
| 99 | # | 98 | # |
| 100 | # IOP3xx Chipset Features | 99 | # IOP3xx Chipset Features |
diff --git a/arch/arm/configs/iq80331_defconfig b/arch/arm/configs/iq80331_defconfig index 67a8bd7dba29..af3a87e469d5 100644 --- a/arch/arm/configs/iq80331_defconfig +++ b/arch/arm/configs/iq80331_defconfig | |||
| @@ -66,7 +66,8 @@ CONFIG_KMOD=y | |||
| 66 | # CONFIG_ARCH_EBSA110 is not set | 66 | # CONFIG_ARCH_EBSA110 is not set |
| 67 | # CONFIG_ARCH_FOOTBRIDGE is not set | 67 | # CONFIG_ARCH_FOOTBRIDGE is not set |
| 68 | # CONFIG_ARCH_INTEGRATOR is not set | 68 | # CONFIG_ARCH_INTEGRATOR is not set |
| 69 | CONFIG_ARCH_IOP3XX=y | 69 | # CONFIG_ARCH_IOP32X is not set |
| 70 | CONFIG_ARCH_IOP33X=y | ||
| 70 | # CONFIG_ARCH_IXP4XX is not set | 71 | # CONFIG_ARCH_IXP4XX is not set |
| 71 | # CONFIG_ARCH_IXP2000 is not set | 72 | # CONFIG_ARCH_IXP2000 is not set |
| 72 | # CONFIG_ARCH_L7200 is not set | 73 | # CONFIG_ARCH_L7200 is not set |
| @@ -93,7 +94,6 @@ CONFIG_ARCH_IOP3XX=y | |||
| 93 | CONFIG_ARCH_IQ80331=y | 94 | CONFIG_ARCH_IQ80331=y |
| 94 | # CONFIG_MACH_IQ80332 is not set | 95 | # CONFIG_MACH_IQ80332 is not set |
| 95 | # CONFIG_ARCH_EP80219 is not set | 96 | # CONFIG_ARCH_EP80219 is not set |
| 96 | CONFIG_ARCH_IOP33X=y | ||
| 97 | 97 | ||
| 98 | # | 98 | # |
| 99 | # IOP3xx Chipset Features | 99 | # IOP3xx Chipset Features |
diff --git a/arch/arm/configs/iq80332_defconfig b/arch/arm/configs/iq80332_defconfig index c8dea45cb017..931c78755a30 100644 --- a/arch/arm/configs/iq80332_defconfig +++ b/arch/arm/configs/iq80332_defconfig | |||
| @@ -66,7 +66,8 @@ CONFIG_KMOD=y | |||
| 66 | # CONFIG_ARCH_EBSA110 is not set | 66 | # CONFIG_ARCH_EBSA110 is not set |
| 67 | # CONFIG_ARCH_FOOTBRIDGE is not set | 67 | # CONFIG_ARCH_FOOTBRIDGE is not set |
| 68 | # CONFIG_ARCH_INTEGRATOR is not set | 68 | # CONFIG_ARCH_INTEGRATOR is not set |
| 69 | CONFIG_ARCH_IOP3XX=y | 69 | # CONFIG_ARCH_IOP32X is not set |
| 70 | CONFIG_ARCH_IOP33X=y | ||
| 70 | # CONFIG_ARCH_IXP4XX is not set | 71 | # CONFIG_ARCH_IXP4XX is not set |
| 71 | # CONFIG_ARCH_IXP2000 is not set | 72 | # CONFIG_ARCH_IXP2000 is not set |
| 72 | # CONFIG_ARCH_L7200 is not set | 73 | # CONFIG_ARCH_L7200 is not set |
| @@ -93,7 +94,6 @@ CONFIG_ARCH_IOP3XX=y | |||
| 93 | # CONFIG_ARCH_IQ80331 is not set | 94 | # CONFIG_ARCH_IQ80331 is not set |
| 94 | CONFIG_MACH_IQ80332=y | 95 | CONFIG_MACH_IQ80332=y |
| 95 | # CONFIG_ARCH_EP80219 is not set | 96 | # CONFIG_ARCH_EP80219 is not set |
| 96 | CONFIG_ARCH_IOP33X=y | ||
| 97 | 97 | ||
| 98 | # | 98 | # |
| 99 | # IOP3xx Chipset Features | 99 | # IOP3xx Chipset Features |
diff --git a/arch/arm/mach-iop32x/Kconfig b/arch/arm/mach-iop32x/Kconfig new file mode 100644 index 000000000000..21e3e8c8c2ad --- /dev/null +++ b/arch/arm/mach-iop32x/Kconfig | |||
| @@ -0,0 +1,28 @@ | |||
| 1 | if ARCH_IOP32X | ||
| 2 | |||
| 3 | menu "IOP32x Implementation Options" | ||
| 4 | |||
| 5 | comment "IOP32x Platform Types" | ||
| 6 | |||
| 7 | config ARCH_IQ80321 | ||
| 8 | bool "Enable support for IQ80321" | ||
| 9 | help | ||
| 10 | Say Y here if you want to run your kernel on the Intel IQ80321 | ||
| 11 | evaluation kit for the IOP321 chipset. | ||
| 12 | |||
| 13 | config ARCH_IQ31244 | ||
| 14 | bool "Enable support for IQ31244" | ||
| 15 | help | ||
| 16 | Say Y here if you want to run your kernel on the Intel IQ31244 | ||
| 17 | evaluation kit for the IOP321 chipset. | ||
| 18 | |||
| 19 | config ARCH_EP80219 | ||
| 20 | bool "Enable support for EP80219" | ||
| 21 | select ARCH_IQ31244 | ||
| 22 | help | ||
| 23 | Say Y here if you want to run your kernel on the Intel EP80219 | ||
| 24 | evaluation kit for the Intel 80219 chipset (a IOP321 variant). | ||
| 25 | |||
| 26 | endmenu | ||
| 27 | |||
| 28 | endif | ||
diff --git a/arch/arm/mach-iop32x/Makefile b/arch/arm/mach-iop32x/Makefile new file mode 100644 index 000000000000..94144f7efa6c --- /dev/null +++ b/arch/arm/mach-iop32x/Makefile | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | # | ||
| 2 | # Makefile for the linux kernel. | ||
| 3 | # | ||
| 4 | |||
| 5 | obj-y := common.o setup.o irq.o pci.o time.o | ||
| 6 | obj-m := | ||
| 7 | obj-n := | ||
| 8 | obj- := | ||
| 9 | |||
| 10 | obj-$(CONFIG_ARCH_IQ80321) += iq80321-mm.o iq80321-pci.o | ||
| 11 | obj-$(CONFIG_ARCH_IQ31244) += iq31244-mm.o iq31244-pci.o | ||
diff --git a/arch/arm/mach-iop32x/Makefile.boot b/arch/arm/mach-iop32x/Makefile.boot new file mode 100644 index 000000000000..47000dccd61f --- /dev/null +++ b/arch/arm/mach-iop32x/Makefile.boot | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | zreladdr-y := 0xa0008000 | ||
| 2 | params_phys-y := 0xa0000100 | ||
| 3 | initrd_phys-y := 0xa0800000 | ||
diff --git a/arch/arm/mach-iop3xx/common.c b/arch/arm/mach-iop32x/common.c index d7f50e57e753..8044af6a54e1 100644 --- a/arch/arm/mach-iop3xx/common.c +++ b/arch/arm/mach-iop32x/common.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * arch/arm/mach-iop3xx/common.c | 2 | * arch/arm/mach-iop32x/common.c |
| 3 | * | 3 | * |
| 4 | * Common routines shared across all IOP3xx implementations | 4 | * Common routines shared across all IOP3xx implementations |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-iop3xx/iq31244-mm.c b/arch/arm/mach-iop32x/iq31244-mm.c index e874b54eefe3..ffc6692c95ad 100644 --- a/arch/arm/mach-iop3xx/iq31244-mm.c +++ b/arch/arm/mach-iop32x/iq31244-mm.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/arch/arm/mach-iop3xx/mm.c | 2 | * linux/arch/arm/mach-iop32x/iq31244-mm.c |
| 3 | * | 3 | * |
| 4 | * Low level memory initialization for iq80321 platform | 4 | * Low level memory initialization for iq80321 platform |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-iop3xx/iq31244-pci.c b/arch/arm/mach-iop32x/iq31244-pci.c index f3c6413fa5bd..e447c8103ecd 100644 --- a/arch/arm/mach-iop3xx/iq31244-pci.c +++ b/arch/arm/mach-iop32x/iq31244-pci.c | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * arch/arm/mach-iop3xx/iq80321-pci.c | 2 | * arch/arm/mach-iop32x/iq31244-pci.c |
| 3 | * | 3 | * |
| 4 | * PCI support for the Intel IQ80321 reference board | 4 | * PCI support for the Intel IQ31244 reference board |
| 5 | * | 5 | * |
| 6 | * Author: Rory Bolt <rorybolt@pacbell.net> | 6 | * Author: Rory Bolt <rorybolt@pacbell.net> |
| 7 | * Copyright (C) 2002 Rory Bolt | 7 | * Copyright (C) 2002 Rory Bolt |
diff --git a/arch/arm/mach-iop3xx/iq80321-mm.c b/arch/arm/mach-iop32x/iq80321-mm.c index d9cac5e1fc3d..5f702a7ff622 100644 --- a/arch/arm/mach-iop3xx/iq80321-mm.c +++ b/arch/arm/mach-iop32x/iq80321-mm.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/arch/arm/mach-iop3xx/mm.c | 2 | * linux/arch/arm/mach-iop32x/iq80321-mm.c |
| 3 | * | 3 | * |
| 4 | * Low level memory initialization for iq80321 platform | 4 | * Low level memory initialization for iq80321 platform |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-iop3xx/iq80321-pci.c b/arch/arm/mach-iop32x/iq80321-pci.c index d9758d3f6e7f..8767950e131f 100644 --- a/arch/arm/mach-iop3xx/iq80321-pci.c +++ b/arch/arm/mach-iop32x/iq80321-pci.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * arch/arm/mach-iop3xx/iq80321-pci.c | 2 | * arch/arm/mach-iop32x/iq80321-pci.c |
| 3 | * | 3 | * |
| 4 | * PCI support for the Intel IQ80321 reference board | 4 | * PCI support for the Intel IQ80321 reference board |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-iop3xx/iop321-irq.c b/arch/arm/mach-iop32x/irq.c index 88ac333472c8..c5f633d2d632 100644 --- a/arch/arm/mach-iop3xx/iop321-irq.c +++ b/arch/arm/mach-iop32x/irq.c | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/arch/arm/mach-iop3xx/iop321-irq.c | 2 | * linux/arch/arm/mach-iop32x/irq.c |
| 3 | * | 3 | * |
| 4 | * Generic IOP321 IRQ handling functionality | 4 | * Generic IOP32X IRQ handling functionality |
| 5 | * | 5 | * |
| 6 | * Author: Rory Bolt <rorybolt@pacbell.net> | 6 | * Author: Rory Bolt <rorybolt@pacbell.net> |
| 7 | * Copyright (C) 2002 Rory Bolt | 7 | * Copyright (C) 2002 Rory Bolt |
| @@ -86,7 +86,7 @@ void __init iop321_init_irq(void) | |||
| 86 | machine_is_iq31244()) // all interrupts are inputs to chip | 86 | machine_is_iq31244()) // all interrupts are inputs to chip |
| 87 | *IOP321_PCIIRSR = 0x0f; | 87 | *IOP321_PCIIRSR = 0x0f; |
| 88 | 88 | ||
| 89 | for(i = IOP321_IRQ_OFS; i < NR_IOP321_IRQS; i++) | 89 | for(i = IOP321_IRQ_OFS; i < NR_IRQS; i++) |
| 90 | { | 90 | { |
| 91 | set_irq_chip(i, &ext_chip); | 91 | set_irq_chip(i, &ext_chip); |
| 92 | set_irq_handler(i, do_level_IRQ); | 92 | set_irq_handler(i, do_level_IRQ); |
diff --git a/arch/arm/mach-iop3xx/iop321-pci.c b/arch/arm/mach-iop32x/pci.c index 8ba6a0e23134..1a7c683673f2 100644 --- a/arch/arm/mach-iop3xx/iop321-pci.c +++ b/arch/arm/mach-iop32x/pci.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * arch/arm/mach-iop3xx/iop321-pci.c | 2 | * arch/arm/mach-iop32x/pci.c |
| 3 | * | 3 | * |
| 4 | * PCI support for the Intel IOP321 chipset | 4 | * PCI support for the Intel IOP321 chipset |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-iop3xx/iop321-setup.c b/arch/arm/mach-iop32x/setup.c index b6d096903c4a..729678799271 100644 --- a/arch/arm/mach-iop3xx/iop321-setup.c +++ b/arch/arm/mach-iop32x/setup.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/arch/arm/mach-iop3xx/iop321-setup.c | 2 | * linux/arch/arm/mach-iop32x/setup.c |
| 3 | * | 3 | * |
| 4 | * Author: Nicolas Pitre <nico@cam.org> | 4 | * Author: Nicolas Pitre <nico@cam.org> |
| 5 | * Copyright (C) 2001 MontaVista Software, Inc. | 5 | * Copyright (C) 2001 MontaVista Software, Inc. |
diff --git a/arch/arm/mach-iop3xx/iop321-time.c b/arch/arm/mach-iop32x/time.c index 04b1a6f7ebae..3cabbbca0a02 100644 --- a/arch/arm/mach-iop3xx/iop321-time.c +++ b/arch/arm/mach-iop32x/time.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * arch/arm/mach-iop3xx/iop321-time.c | 2 | * arch/arm/mach-iop32x/time.c |
| 3 | * | 3 | * |
| 4 | * Timer code for IOP321 based systems | 4 | * Timer code for IOP321 based systems |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-iop33x/Kconfig b/arch/arm/mach-iop33x/Kconfig new file mode 100644 index 000000000000..410df546e954 --- /dev/null +++ b/arch/arm/mach-iop33x/Kconfig | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | if ARCH_IOP33X | ||
| 2 | |||
| 3 | menu "IOP33x Implementation Options" | ||
| 4 | |||
| 5 | comment "IOP33x Platform Types" | ||
| 6 | |||
| 7 | config ARCH_IQ80331 | ||
| 8 | bool "Enable support for IQ80331" | ||
| 9 | help | ||
| 10 | Say Y here if you want to run your kernel on the Intel IQ80331 | ||
| 11 | evaluation kit for the IOP331 chipset. | ||
| 12 | |||
| 13 | config MACH_IQ80332 | ||
| 14 | bool "Enable support for IQ80332" | ||
| 15 | help | ||
| 16 | Say Y here if you want to run your kernel on the Intel IQ80332 | ||
| 17 | evaluation kit for the IOP332 chipset. | ||
| 18 | |||
| 19 | config IOP331_STEPD | ||
| 20 | bool "Chip stepping D of the IOP80331 processor or IOP80333" | ||
| 21 | help | ||
| 22 | Say Y here if you have StepD of the IOP80331 or IOP8033 | ||
| 23 | based platforms. | ||
| 24 | |||
| 25 | endmenu | ||
| 26 | |||
| 27 | endif | ||
diff --git a/arch/arm/mach-iop33x/Makefile b/arch/arm/mach-iop33x/Makefile new file mode 100644 index 000000000000..0f1a8fffe187 --- /dev/null +++ b/arch/arm/mach-iop33x/Makefile | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | # | ||
| 2 | # Makefile for the linux kernel. | ||
| 3 | # | ||
| 4 | |||
| 5 | obj-y := common.o setup.o irq.o pci.o time.o | ||
| 6 | obj-m := | ||
| 7 | obj-n := | ||
| 8 | obj- := | ||
| 9 | |||
| 10 | obj-$(CONFIG_ARCH_IQ80331) += iq80331-mm.o iq80331-pci.o | ||
| 11 | obj-$(CONFIG_MACH_IQ80332) += iq80332-mm.o iq80332-pci.o | ||
diff --git a/arch/arm/mach-iop33x/Makefile.boot b/arch/arm/mach-iop33x/Makefile.boot new file mode 100644 index 000000000000..67039c3e0c48 --- /dev/null +++ b/arch/arm/mach-iop33x/Makefile.boot | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | zreladdr-y := 0x00008000 | ||
| 2 | params_phys-y := 0x00000100 | ||
| 3 | initrd_phys-y := 0x00800000 | ||
diff --git a/arch/arm/mach-iop33x/common.c b/arch/arm/mach-iop33x/common.c new file mode 100644 index 000000000000..dd75f2b8e74f --- /dev/null +++ b/arch/arm/mach-iop33x/common.c | |||
| @@ -0,0 +1,22 @@ | |||
| 1 | /* | ||
| 2 | * arch/arm/mach-iop33x/common.c | ||
| 3 | * | ||
| 4 | * Common routines shared across all IOP3xx implementations | ||
| 5 | * | ||
| 6 | * Author: Deepak Saxena <dsaxena@mvista.com> | ||
| 7 | * | ||
| 8 | * Copyright 2003 (c) MontaVista, Software, Inc. | ||
| 9 | * | ||
| 10 | * This file is licensed under the terms of the GNU General Public | ||
| 11 | * License version 2. This program is licensed "as is" without any | ||
| 12 | * warranty of any kind, whether express or implied. | ||
| 13 | */ | ||
| 14 | |||
| 15 | #include <linux/delay.h> | ||
| 16 | #include <asm/hardware.h> | ||
| 17 | |||
| 18 | /* | ||
| 19 | * Shared variables | ||
| 20 | */ | ||
| 21 | unsigned long iop3xx_pcibios_min_io = 0; | ||
| 22 | unsigned long iop3xx_pcibios_min_mem = 0; | ||
diff --git a/arch/arm/mach-iop3xx/iq80331-mm.c b/arch/arm/mach-iop33x/iq80331-mm.c index 129eb49b0670..eb59445a0fca 100644 --- a/arch/arm/mach-iop3xx/iq80331-mm.c +++ b/arch/arm/mach-iop33x/iq80331-mm.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/arch/arm/mach-iop3xx/mm.c | 2 | * linux/arch/arm/mach-iop33x/iq80331-mm.c |
| 3 | * | 3 | * |
| 4 | * Low level memory initialization for iq80331 platform | 4 | * Low level memory initialization for iq80331 platform |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-iop3xx/iq80331-pci.c b/arch/arm/mach-iop33x/iq80331-pci.c index 40d861002492..71adb12a9421 100644 --- a/arch/arm/mach-iop3xx/iq80331-pci.c +++ b/arch/arm/mach-iop33x/iq80331-pci.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * arch/arm/mach-iop3xx/iq80331-pci.c | 2 | * arch/arm/mach-iop33x/iq80331-pci.c |
| 3 | * | 3 | * |
| 4 | * PCI support for the Intel IQ80331 reference board | 4 | * PCI support for the Intel IQ80331 reference board |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-iop3xx/iq80332-mm.c b/arch/arm/mach-iop33x/iq80332-mm.c index 2feaf7591f53..f7bc73113ea8 100644 --- a/arch/arm/mach-iop3xx/iq80332-mm.c +++ b/arch/arm/mach-iop33x/iq80332-mm.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/arch/arm/mach-iop3xx/mm.c | 2 | * linux/arch/arm/mach-iop33x/iq80332-mm.c |
| 3 | * | 3 | * |
| 4 | * Low level memory initialization for iq80332 platform | 4 | * Low level memory initialization for iq80332 platform |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-iop3xx/iq80332-pci.c b/arch/arm/mach-iop33x/iq80332-pci.c index afc0676318e4..f3010f85b1a2 100644 --- a/arch/arm/mach-iop3xx/iq80332-pci.c +++ b/arch/arm/mach-iop33x/iq80332-pci.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * arch/arm/mach-iop3xx/iq80332-pci.c | 2 | * arch/arm/mach-iop33x/iq80332-pci.c |
| 3 | * | 3 | * |
| 4 | * PCI support for the Intel IQ80332 reference board | 4 | * PCI support for the Intel IQ80332 reference board |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-iop3xx/iop331-irq.c b/arch/arm/mach-iop33x/irq.c index cab11722ced2..029fa78876a5 100644 --- a/arch/arm/mach-iop3xx/iop331-irq.c +++ b/arch/arm/mach-iop33x/irq.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/arch/arm/mach-iop3xx/iop331-irq.c | 2 | * linux/arch/arm/mach-iop33x/irq.c |
| 3 | * | 3 | * |
| 4 | * Generic IOP331 IRQ handling functionality | 4 | * Generic IOP331 IRQ handling functionality |
| 5 | * | 5 | * |
| @@ -119,7 +119,7 @@ void __init iop331_init_irq(void) | |||
| 119 | if(machine_is_iq80331()) // all interrupts are inputs to chip | 119 | if(machine_is_iq80331()) // all interrupts are inputs to chip |
| 120 | *IOP331_PCIIRSR = 0x0f; | 120 | *IOP331_PCIIRSR = 0x0f; |
| 121 | 121 | ||
| 122 | for(i = IOP331_IRQ_OFS; i < NR_IOP331_IRQS; i++) | 122 | for(i = IOP331_IRQ_OFS; i < NR_IRQS; i++) |
| 123 | { | 123 | { |
| 124 | set_irq_chip(i, (i < 32) ? &iop331_irqchip1 : &iop331_irqchip2); | 124 | set_irq_chip(i, (i < 32) ? &iop331_irqchip1 : &iop331_irqchip2); |
| 125 | set_irq_handler(i, do_level_IRQ); | 125 | set_irq_handler(i, do_level_IRQ); |
diff --git a/arch/arm/mach-iop3xx/iop331-pci.c b/arch/arm/mach-iop33x/pci.c index 44dd213b48a3..bf6aba91b47d 100644 --- a/arch/arm/mach-iop3xx/iop331-pci.c +++ b/arch/arm/mach-iop33x/pci.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * arch/arm/mach-iop3xx/iop331-pci.c | 2 | * arch/arm/mach-iop33x/pci.c |
| 3 | * | 3 | * |
| 4 | * PCI support for the Intel IOP331 chipset | 4 | * PCI support for the Intel IOP331 chipset |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-iop3xx/iop331-setup.c b/arch/arm/mach-iop33x/setup.c index b2f24931d143..c14c7da5ec4c 100644 --- a/arch/arm/mach-iop3xx/iop331-setup.c +++ b/arch/arm/mach-iop33x/setup.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/arch/arm/mach-iop3xx/iop331-setup.c | 2 | * linux/arch/arm/mach-iop33x/setup.c |
| 3 | * | 3 | * |
| 4 | * Author: Dave Jiang (dave.jiang@intel.com) | 4 | * Author: Dave Jiang (dave.jiang@intel.com) |
| 5 | * Copyright (C) 2004 Intel Corporation. | 5 | * Copyright (C) 2004 Intel Corporation. |
diff --git a/arch/arm/mach-iop3xx/iop331-time.c b/arch/arm/mach-iop33x/time.c index 0c09e74c5740..d839cd0d926e 100644 --- a/arch/arm/mach-iop3xx/iop331-time.c +++ b/arch/arm/mach-iop33x/time.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * arch/arm/mach-iop3xx/iop331-time.c | 2 | * arch/arm/mach-iop33x/time.c |
| 3 | * | 3 | * |
| 4 | * Timer code for IOP331 based systems | 4 | * Timer code for IOP331 based systems |
| 5 | * | 5 | * |
diff --git a/arch/arm/mach-iop3xx/Kconfig b/arch/arm/mach-iop3xx/Kconfig deleted file mode 100644 index 887c3753727f..000000000000 --- a/arch/arm/mach-iop3xx/Kconfig +++ /dev/null | |||
| @@ -1,66 +0,0 @@ | |||
| 1 | if ARCH_IOP3XX | ||
| 2 | |||
| 3 | menu "IOP3xx Implementation Options" | ||
| 4 | |||
| 5 | comment "IOP3xx Platform Types" | ||
| 6 | |||
| 7 | config ARCH_IQ80321 | ||
| 8 | bool "Enable support for IQ80321" | ||
| 9 | select ARCH_IOP32X | ||
| 10 | help | ||
| 11 | Say Y here if you want to run your kernel on the Intel IQ80321 | ||
| 12 | evaluation kit for the IOP321 chipset. | ||
| 13 | |||
| 14 | config ARCH_IQ31244 | ||
| 15 | bool "Enable support for IQ31244" | ||
| 16 | select ARCH_IOP32X | ||
| 17 | help | ||
| 18 | Say Y here if you want to run your kernel on the Intel IQ31244 | ||
| 19 | evaluation kit for the IOP321 chipset. | ||
| 20 | |||
| 21 | config ARCH_IQ80331 | ||
| 22 | bool "Enable support for IQ80331" | ||
| 23 | select ARCH_IOP33X | ||
| 24 | help | ||
| 25 | Say Y here if you want to run your kernel on the Intel IQ80331 | ||
| 26 | evaluation kit for the IOP331 chipset. | ||
| 27 | |||
| 28 | config MACH_IQ80332 | ||
| 29 | bool "Enable support for IQ80332" | ||
| 30 | select ARCH_IOP33X | ||
| 31 | help | ||
| 32 | Say Y here if you want to run your kernel on the Intel IQ80332 | ||
| 33 | evaluation kit for the IOP332 chipset. | ||
| 34 | |||
| 35 | config ARCH_EP80219 | ||
| 36 | bool "Enable support for EP80219" | ||
| 37 | select ARCH_IOP32X | ||
| 38 | select ARCH_IQ31244 | ||
| 39 | help | ||
| 40 | Say Y here if you want to run your kernel on the Intel EP80219 | ||
| 41 | evaluation kit for the Intel 80219 chipset (a IOP321 variant). | ||
| 42 | |||
| 43 | # Which IOP variant are we running? | ||
| 44 | config ARCH_IOP32X | ||
| 45 | bool | ||
| 46 | help | ||
| 47 | The IQ80321 uses the IOP321 variant. | ||
| 48 | The IQ31244 and EP80219 uses the IOP321 variant. | ||
| 49 | |||
| 50 | config ARCH_IOP33X | ||
| 51 | bool | ||
| 52 | default ARCH_IQ80331 | ||
| 53 | help | ||
| 54 | The IQ80331, IQ80332, and IQ80333 uses the IOP331 variant. | ||
| 55 | |||
| 56 | comment "IOP3xx Chipset Features" | ||
| 57 | |||
| 58 | config IOP331_STEPD | ||
| 59 | bool "Chip stepping D of the IOP80331 processor or IOP80333" | ||
| 60 | depends on ARCH_IOP33X | ||
| 61 | help | ||
| 62 | Say Y here if you have StepD of the IOP80331 or IOP8033 | ||
| 63 | based platforms. | ||
| 64 | |||
| 65 | endmenu | ||
| 66 | endif | ||
diff --git a/arch/arm/mach-iop3xx/Makefile b/arch/arm/mach-iop3xx/Makefile deleted file mode 100644 index ad3051524480..000000000000 --- a/arch/arm/mach-iop3xx/Makefile +++ /dev/null | |||
| @@ -1,23 +0,0 @@ | |||
| 1 | # | ||
| 2 | # Makefile for the linux kernel. | ||
| 3 | # | ||
| 4 | |||
| 5 | # Object file lists. | ||
| 6 | |||
| 7 | obj-y := common.o | ||
| 8 | |||
| 9 | obj-m := | ||
| 10 | obj-n := | ||
| 11 | obj- := | ||
| 12 | |||
| 13 | obj-$(CONFIG_ARCH_IOP32X) += iop321-setup.o iop321-irq.o iop321-pci.o iop321-time.o | ||
| 14 | |||
| 15 | obj-$(CONFIG_ARCH_IOP33X) += iop331-setup.o iop331-irq.o iop331-pci.o iop331-time.o | ||
| 16 | |||
| 17 | obj-$(CONFIG_ARCH_IQ80321) += iq80321-mm.o iq80321-pci.o | ||
| 18 | |||
| 19 | obj-$(CONFIG_ARCH_IQ31244) += iq31244-mm.o iq31244-pci.o | ||
| 20 | |||
| 21 | obj-$(CONFIG_ARCH_IQ80331) += iq80331-mm.o iq80331-pci.o | ||
| 22 | |||
| 23 | obj-$(CONFIG_MACH_IQ80332) += iq80332-mm.o iq80332-pci.o | ||
diff --git a/arch/arm/mach-iop3xx/Makefile.boot b/arch/arm/mach-iop3xx/Makefile.boot deleted file mode 100644 index e120c233b706..000000000000 --- a/arch/arm/mach-iop3xx/Makefile.boot +++ /dev/null | |||
| @@ -1,9 +0,0 @@ | |||
| 1 | zreladdr-y := 0xa0008000 | ||
| 2 | params_phys-y := 0xa0000100 | ||
| 3 | initrd_phys-y := 0xa0800000 | ||
| 4 | ifeq ($(CONFIG_ARCH_IOP33X),y) | ||
| 5 | zreladdr-y := 0x00008000 | ||
| 6 | params_phys-y := 0x00000100 | ||
| 7 | initrd_phys-y := 0x00800000 | ||
| 8 | endif | ||
| 9 | |||
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig index b4f220dd5eb8..b59c74100a84 100644 --- a/arch/arm/mm/Kconfig +++ b/arch/arm/mm/Kconfig | |||
| @@ -232,7 +232,7 @@ config CPU_SA1100 | |||
| 232 | # XScale | 232 | # XScale |
| 233 | config CPU_XSCALE | 233 | config CPU_XSCALE |
| 234 | bool | 234 | bool |
| 235 | depends on ARCH_IOP3XX || ARCH_PXA || ARCH_IXP4XX || ARCH_IXP2000 | 235 | depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_PXA || ARCH_IXP4XX || ARCH_IXP2000 |
| 236 | default y | 236 | default y |
| 237 | select CPU_32v5 | 237 | select CPU_32v5 |
| 238 | select CPU_ABRT_EV5T | 238 | select CPU_ABRT_EV5T |
diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig index 884320e70403..a843d6b10a0c 100644 --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig | |||
| @@ -196,7 +196,7 @@ config I2C_IBM_IIC | |||
| 196 | 196 | ||
| 197 | config I2C_IOP3XX | 197 | config I2C_IOP3XX |
| 198 | tristate "Intel IOP3xx and IXP4xx on-chip I2C interface" | 198 | tristate "Intel IOP3xx and IXP4xx on-chip I2C interface" |
| 199 | depends on (ARCH_IOP3XX || ARCH_IXP4XX) && I2C | 199 | depends on (ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX) && I2C |
| 200 | help | 200 | help |
| 201 | Say Y here if you want to use the IIC bus controller on | 201 | Say Y here if you want to use the IIC bus controller on |
| 202 | the Intel IOP3xx I/O Processors or IXP4xx Network Processors. | 202 | the Intel IOP3xx I/O Processors or IXP4xx Network Processors. |
diff --git a/include/asm-arm/arch-iop32x/debug-macro.S b/include/asm-arm/arch-iop32x/debug-macro.S new file mode 100644 index 000000000000..75ab2e0d8c67 --- /dev/null +++ b/include/asm-arm/arch-iop32x/debug-macro.S | |||
| @@ -0,0 +1,20 @@ | |||
| 1 | /* linux/include/asm-arm/arch-iop32x/debug-macro.S | ||
| 2 | * | ||
| 3 | * Debugging macro include header | ||
| 4 | * | ||
| 5 | * Copyright (C) 1994-1999 Russell King | ||
| 6 | * Moved from linux/arch/arm/kernel/debug.S by Ben Dooks | ||
| 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 | |||
| 14 | .macro addruart,rx | ||
| 15 | mov \rx, #0xfe000000 @ physical | ||
| 16 | orr \rx, \rx, #0x00800000 @ location of the UART | ||
| 17 | .endm | ||
| 18 | |||
| 19 | #define UART_SHIFT 0 | ||
| 20 | #include <asm/hardware/debug-8250.S> | ||
diff --git a/include/asm-arm/arch-iop3xx/dma.h b/include/asm-arm/arch-iop32x/dma.h index 1e808db8af2a..5be36676e58f 100644 --- a/include/asm-arm/arch-iop3xx/dma.h +++ b/include/asm-arm/arch-iop32x/dma.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm-arm/arch-iop3xx/dma.h | 2 | * linux/include/asm-arm/arch-iop32x/dma.h |
| 3 | * | 3 | * |
| 4 | * Copyright (C) 2004 Intel Corp. | 4 | * Copyright (C) 2004 Intel Corp. |
| 5 | * | 5 | * |
diff --git a/include/asm-arm/arch-iop32x/entry-macro.S b/include/asm-arm/arch-iop32x/entry-macro.S new file mode 100644 index 000000000000..52d9435c6a34 --- /dev/null +++ b/include/asm-arm/arch-iop32x/entry-macro.S | |||
| @@ -0,0 +1,28 @@ | |||
| 1 | /* | ||
| 2 | * include/asm-arm/arch-iop32x/entry-macro.S | ||
| 3 | * | ||
| 4 | * Low-level IRQ helper macros for IOP32x-based platforms | ||
| 5 | * | ||
| 6 | * This file is licensed under the terms of the GNU General Public | ||
| 7 | * License version 2. This program is licensed "as is" without any | ||
| 8 | * warranty of any kind, whether express or implied. | ||
| 9 | */ | ||
| 10 | #include <asm/arch/irqs.h> | ||
| 11 | |||
| 12 | .macro disable_fiq | ||
| 13 | .endm | ||
| 14 | |||
| 15 | /* | ||
| 16 | * Note: only deal with normal interrupts, not FIQ | ||
| 17 | */ | ||
| 18 | .macro get_irqnr_and_base, irqnr, irqstat, base, tmp | ||
| 19 | mov \irqnr, #0 | ||
| 20 | mrc p6, 0, \irqstat, c8, c0, 0 @ Read IINTSRC | ||
| 21 | cmp \irqstat, #0 | ||
| 22 | beq 1001f | ||
| 23 | clz \irqnr, \irqstat | ||
| 24 | mov \base, #31 | ||
| 25 | subs \irqnr,\base,\irqnr | ||
| 26 | add \irqnr,\irqnr,#IRQ_IOP321_DMA0_EOT | ||
| 27 | 1001: | ||
| 28 | .endm | ||
diff --git a/include/asm-arm/arch-iop3xx/hardware.h b/include/asm-arm/arch-iop32x/hardware.h index 3b138171d086..8fb10134a107 100644 --- a/include/asm-arm/arch-iop3xx/hardware.h +++ b/include/asm-arm/arch-iop32x/hardware.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm-arm/arch-iop3xx/hardware.h | 2 | * linux/include/asm-arm/arch-iop32x/hardware.h |
| 3 | */ | 3 | */ |
| 4 | #ifndef __ASM_ARCH_HARDWARE_H | 4 | #ifndef __ASM_ARCH_HARDWARE_H |
| 5 | #define __ASM_ARCH_HARDWARE_H | 5 | #define __ASM_ARCH_HARDWARE_H |
| @@ -44,14 +44,11 @@ extern unsigned int processor_id; | |||
| 44 | * | 44 | * |
| 45 | */ | 45 | */ |
| 46 | #include "iop321.h" | 46 | #include "iop321.h" |
| 47 | #include "iop331.h" | ||
| 48 | 47 | ||
| 49 | /* | 48 | /* |
| 50 | * Board specific bits | 49 | * Board specific bits |
| 51 | */ | 50 | */ |
| 52 | #include "iq80321.h" | 51 | #include "iq80321.h" |
| 53 | #include "iq31244.h" | 52 | #include "iq31244.h" |
| 54 | #include "iq80331.h" | ||
| 55 | #include "iq80332.h" | ||
| 56 | 53 | ||
| 57 | #endif /* _ASM_ARCH_HARDWARE_H */ | 54 | #endif /* _ASM_ARCH_HARDWARE_H */ |
diff --git a/include/asm-arm/arch-iop3xx/io.h b/include/asm-arm/arch-iop32x/io.h index 36adbdf5055a..36d05ada12c4 100644 --- a/include/asm-arm/arch-iop3xx/io.h +++ b/include/asm-arm/arch-iop32x/io.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm-arm/arch-iop3xx/io.h | 2 | * linux/include/asm-arm/arch-iop32x/io.h |
| 3 | * | 3 | * |
| 4 | * Copyright (C) 2001 MontaVista Software, Inc. | 4 | * Copyright (C) 2001 MontaVista Software, Inc. |
| 5 | * | 5 | * |
diff --git a/include/asm-arm/arch-iop3xx/iop321.h b/include/asm-arm/arch-iop32x/iop321.h index d198d72a50a4..7ba93faf8da4 100644 --- a/include/asm-arm/arch-iop3xx/iop321.h +++ b/include/asm-arm/arch-iop32x/iop321.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm/arch-iop3xx/iop321.h | 2 | * linux/include/asm/arch-iop32x/iop321.h |
| 3 | * | 3 | * |
| 4 | * Intel IOP321 Chip definitions | 4 | * Intel IOP321 Chip definitions |
| 5 | * | 5 | * |
| @@ -21,11 +21,7 @@ | |||
| 21 | * IOP3xx variants but behave slightly differently on each. | 21 | * IOP3xx variants but behave slightly differently on each. |
| 22 | */ | 22 | */ |
| 23 | #ifndef __ASSEMBLY__ | 23 | #ifndef __ASSEMBLY__ |
| 24 | #ifdef CONFIG_ARCH_IOP32X | 24 | #define iop_is_321() 1 |
| 25 | #define iop_is_321() (((processor_id & 0xfffff5e0) == 0x69052420)) | ||
| 26 | #else | ||
| 27 | #define iop_is_321() 0 | ||
| 28 | #endif | ||
| 29 | #endif | 25 | #endif |
| 30 | 26 | ||
| 31 | /* | 27 | /* |
diff --git a/include/asm-arm/arch-iop3xx/iq31244.h b/include/asm-arm/arch-iop32x/iq31244.h index 4177cfa8100f..f490063d2156 100644 --- a/include/asm-arm/arch-iop3xx/iq31244.h +++ b/include/asm-arm/arch-iop32x/iq31244.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm/arch-iop3xx/iq31244.h | 2 | * linux/include/asm/arch-iop32x/iq31244.h |
| 3 | * | 3 | * |
| 4 | * Intel IQ31244 evaluation board registers | 4 | * Intel IQ31244 evaluation board registers |
| 5 | */ | 5 | */ |
diff --git a/include/asm-arm/arch-iop3xx/iq80321.h b/include/asm-arm/arch-iop32x/iq80321.h index cb8725979ffa..7015a605ab64 100644 --- a/include/asm-arm/arch-iop3xx/iq80321.h +++ b/include/asm-arm/arch-iop32x/iq80321.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm/arch-iop3xx/iq80321.h | 2 | * linux/include/asm/arch-iop32x/iq80321.h |
| 3 | * | 3 | * |
| 4 | * Intel IQ80321 evaluation board registers | 4 | * Intel IQ80321 evaluation board registers |
| 5 | */ | 5 | */ |
diff --git a/include/asm-arm/arch-iop3xx/iop321-irqs.h b/include/asm-arm/arch-iop32x/irqs.h index 2fcc1654cb9d..4b0c82711f96 100644 --- a/include/asm-arm/arch-iop3xx/iop321-irqs.h +++ b/include/asm-arm/arch-iop32x/irqs.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm-arm/arch-iop3xx/irqs.h | 2 | * linux/include/asm-arm/arch-iop32x/irqs.h |
| 3 | * | 3 | * |
| 4 | * Author: Rory Bolt <rorybolt@pacbell.net> | 4 | * Author: Rory Bolt <rorybolt@pacbell.net> |
| 5 | * Copyright: (C) 2002 Rory Bolt | 5 | * Copyright: (C) 2002 Rory Bolt |
| @@ -9,8 +9,8 @@ | |||
| 9 | * published by the Free Software Foundation. | 9 | * published by the Free Software Foundation. |
| 10 | * | 10 | * |
| 11 | */ | 11 | */ |
| 12 | #ifndef _IOP321_IRQS_H_ | 12 | #ifndef _IRQS_H_ |
| 13 | #define _IOP321_IRQS_H_ | 13 | #define _IRQS_H_ |
| 14 | 14 | ||
| 15 | /* | 15 | /* |
| 16 | * IOP80321 chipset interrupts | 16 | * IOP80321 chipset interrupts |
| @@ -54,9 +54,7 @@ | |||
| 54 | #define IRQ_IOP321_XINT3 IOP321_IRQ(30) | 54 | #define IRQ_IOP321_XINT3 IOP321_IRQ(30) |
| 55 | #define IRQ_IOP321_HPI IOP321_IRQ(31) | 55 | #define IRQ_IOP321_HPI IOP321_IRQ(31) |
| 56 | 56 | ||
| 57 | #define NR_IOP321_IRQS (IOP321_IRQ(31) + 1) | 57 | #define NR_IRQS (IOP321_IRQ(31) + 1) |
| 58 | |||
| 59 | #define NR_IRQS NR_IOP321_IRQS | ||
| 60 | 58 | ||
| 61 | 59 | ||
| 62 | /* | 60 | /* |
| @@ -97,4 +95,4 @@ | |||
| 97 | #define IRQ_IQ31244_INTC IRQ_IOP321_XINT2 | 95 | #define IRQ_IQ31244_INTC IRQ_IOP321_XINT2 |
| 98 | #define IRQ_IQ31244_INTD IRQ_IOP321_XINT3 | 96 | #define IRQ_IQ31244_INTD IRQ_IOP321_XINT3 |
| 99 | 97 | ||
| 100 | #endif // _IOP321_IRQ_H_ | 98 | #endif // _IRQ_H_ |
diff --git a/include/asm-arm/arch-iop3xx/memory.h b/include/asm-arm/arch-iop32x/memory.h index 25666184e8fc..b4073f15b405 100644 --- a/include/asm-arm/arch-iop3xx/memory.h +++ b/include/asm-arm/arch-iop32x/memory.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm-arm/arch-iop3xx/memory.h | 2 | * linux/include/asm-arm/arch-iop32x/memory.h |
| 3 | */ | 3 | */ |
| 4 | 4 | ||
| 5 | #ifndef __ASM_ARCH_MEMORY_H | 5 | #ifndef __ASM_ARCH_MEMORY_H |
| @@ -10,11 +10,7 @@ | |||
| 10 | /* | 10 | /* |
| 11 | * Physical DRAM offset. | 11 | * Physical DRAM offset. |
| 12 | */ | 12 | */ |
| 13 | #ifndef CONFIG_ARCH_IOP33X | ||
| 14 | #define PHYS_OFFSET UL(0xa0000000) | 13 | #define PHYS_OFFSET UL(0xa0000000) |
| 15 | #else | ||
| 16 | #define PHYS_OFFSET UL(0x00000000) | ||
| 17 | #endif | ||
| 18 | 14 | ||
| 19 | /* | 15 | /* |
| 20 | * Virtual view <-> PCI DMA view memory address translations | 16 | * Virtual view <-> PCI DMA view memory address translations |
| @@ -23,16 +19,9 @@ | |||
| 23 | * bus_to_virt: Used to convert an address for DMA operations | 19 | * bus_to_virt: Used to convert an address for DMA operations |
| 24 | * to an address that the kernel can use. | 20 | * to an address that the kernel can use. |
| 25 | */ | 21 | */ |
| 26 | #if defined(CONFIG_ARCH_IOP32X) | ||
| 27 | 22 | ||
| 28 | #define __virt_to_bus(x) (((__virt_to_phys(x)) & ~(*IOP321_IATVR2)) | ((*IOP321_IABAR2) & 0xfffffff0)) | 23 | #define __virt_to_bus(x) (((__virt_to_phys(x)) & ~(*IOP321_IATVR2)) | ((*IOP321_IABAR2) & 0xfffffff0)) |
| 29 | #define __bus_to_virt(x) (__phys_to_virt(((x) & ~(*IOP321_IALR2)) | ( *IOP321_IATVR2))) | 24 | #define __bus_to_virt(x) (__phys_to_virt(((x) & ~(*IOP321_IALR2)) | ( *IOP321_IATVR2))) |
| 30 | 25 | ||
| 31 | #elif defined(CONFIG_ARCH_IOP33X) | ||
| 32 | |||
| 33 | #define __virt_to_bus(x) (((__virt_to_phys(x)) & ~(*IOP331_IATVR2)) | ((*IOP331_IABAR2) & 0xfffffff0)) | ||
| 34 | #define __bus_to_virt(x) (__phys_to_virt(((x) & ~(*IOP331_IALR2)) | ( *IOP331_IATVR2))) | ||
| 35 | |||
| 36 | #endif | ||
| 37 | 26 | ||
| 38 | #endif | 27 | #endif |
diff --git a/include/asm-arm/arch-iop3xx/system.h b/include/asm-arm/arch-iop32x/system.h index a16cbb77a7f6..d4c8d691e1b0 100644 --- a/include/asm-arm/arch-iop3xx/system.h +++ b/include/asm-arm/arch-iop32x/system.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm-arm/arch-iop3xx/system.h | 2 | * linux/include/asm-arm/arch-iop32x/system.h |
| 3 | * | 3 | * |
| 4 | * Copyright (C) 2001 MontaVista Software, Inc. | 4 | * Copyright (C) 2001 MontaVista Software, Inc. |
| 5 | * | 5 | * |
| @@ -16,13 +16,7 @@ static inline void arch_idle(void) | |||
| 16 | 16 | ||
| 17 | static inline void arch_reset(char mode) | 17 | static inline void arch_reset(char mode) |
| 18 | { | 18 | { |
| 19 | #ifdef CONFIG_ARCH_IOP32X | ||
| 20 | *IOP321_PCSR = 0x30; | 19 | *IOP321_PCSR = 0x30; |
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef CONFIG_ARCH_IOP33X | ||
| 24 | *IOP331_PCSR = 0x30; | ||
| 25 | #endif | ||
| 26 | 20 | ||
| 27 | if ( 1 && mode == 's') { | 21 | if ( 1 && mode == 's') { |
| 28 | /* Jump into ROM at address 0 */ | 22 | /* Jump into ROM at address 0 */ |
diff --git a/include/asm-arm/arch-iop32x/timex.h b/include/asm-arm/arch-iop32x/timex.h new file mode 100644 index 000000000000..08badde2e820 --- /dev/null +++ b/include/asm-arm/arch-iop32x/timex.h | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop32x/timex.h | ||
| 3 | * | ||
| 4 | * IOP3xx architecture timex specifications | ||
| 5 | */ | ||
| 6 | #include <asm/hardware.h> | ||
| 7 | |||
| 8 | #define CLOCK_TICK_RATE IOP321_TICK_RATE | ||
diff --git a/include/asm-arm/arch-iop32x/uncompress.h b/include/asm-arm/arch-iop32x/uncompress.h new file mode 100644 index 000000000000..4a85f20c796f --- /dev/null +++ b/include/asm-arm/arch-iop32x/uncompress.h | |||
| @@ -0,0 +1,38 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop32x/uncompress.h | ||
| 3 | */ | ||
| 4 | #include <asm/types.h> | ||
| 5 | #include <asm/mach-types.h> | ||
| 6 | #include <linux/serial_reg.h> | ||
| 7 | #include <asm/hardware.h> | ||
| 8 | |||
| 9 | static volatile u8 *uart_base; | ||
| 10 | |||
| 11 | #define TX_DONE (UART_LSR_TEMT|UART_LSR_THRE) | ||
| 12 | |||
| 13 | static inline void putc(char c) | ||
| 14 | { | ||
| 15 | while ((uart_base[UART_LSR] & TX_DONE) != TX_DONE) | ||
| 16 | barrier(); | ||
| 17 | *uart_base = c; | ||
| 18 | } | ||
| 19 | |||
| 20 | static inline void flush(void) | ||
| 21 | { | ||
| 22 | } | ||
| 23 | |||
| 24 | static __inline__ void __arch_decomp_setup(unsigned long arch_id) | ||
| 25 | { | ||
| 26 | if (machine_is_iq80321()) | ||
| 27 | uart_base = (volatile u8 *)IQ80321_UART; | ||
| 28 | else if (machine_is_iq31244()) | ||
| 29 | uart_base = (volatile u8 *)IQ31244_UART; | ||
| 30 | else | ||
| 31 | uart_base = (volatile u8 *)0xfe800000; | ||
| 32 | } | ||
| 33 | |||
| 34 | /* | ||
| 35 | * nothing to do | ||
| 36 | */ | ||
| 37 | #define arch_decomp_setup() __arch_decomp_setup(arch_id) | ||
| 38 | #define arch_decomp_wdog() | ||
diff --git a/include/asm-arm/arch-iop3xx/vmalloc.h b/include/asm-arm/arch-iop32x/vmalloc.h index 0f2f6847f93c..8492e1708a63 100644 --- a/include/asm-arm/arch-iop3xx/vmalloc.h +++ b/include/asm-arm/arch-iop32x/vmalloc.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm-arm/arch-iop3xx/vmalloc.h | 2 | * linux/include/asm-arm/arch-iop32x/vmalloc.h |
| 3 | */ | 3 | */ |
| 4 | 4 | ||
| 5 | /* | 5 | /* |
diff --git a/include/asm-arm/arch-iop33x/debug-macro.S b/include/asm-arm/arch-iop33x/debug-macro.S new file mode 100644 index 000000000000..b647edff475d --- /dev/null +++ b/include/asm-arm/arch-iop33x/debug-macro.S | |||
| @@ -0,0 +1,24 @@ | |||
| 1 | /* linux/include/asm-arm/arch-iop33x/debug-macro.S | ||
| 2 | * | ||
| 3 | * Debugging macro include header | ||
| 4 | * | ||
| 5 | * Copyright (C) 1994-1999 Russell King | ||
| 6 | * Moved from linux/arch/arm/kernel/debug.S by Ben Dooks | ||
| 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 | |||
| 14 | .macro addruart,rx | ||
| 15 | mrc p15, 0, \rx, c1, c0 | ||
| 16 | tst \rx, #1 @ mmu enabled? | ||
| 17 | moveq \rx, #0xff000000 @ physical | ||
| 18 | movne \rx, #0xfe000000 @ virtual | ||
| 19 | orr \rx, \rx, #0x00ff0000 | ||
| 20 | orr \rx, \rx, #0x0000f700 | ||
| 21 | .endm | ||
| 22 | |||
| 23 | #define UART_SHIFT 2 | ||
| 24 | #include <asm/hardware/debug-8250.S> | ||
diff --git a/include/asm-arm/arch-iop33x/dma.h b/include/asm-arm/arch-iop33x/dma.h new file mode 100644 index 000000000000..d577ca59f4b0 --- /dev/null +++ b/include/asm-arm/arch-iop33x/dma.h | |||
| @@ -0,0 +1,9 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop33x/dma.h | ||
| 3 | * | ||
| 4 | * Copyright (C) 2004 Intel Corp. | ||
| 5 | * | ||
| 6 | * This program is free software; you can redistribute it and/or modify | ||
| 7 | * it under the terms of the GNU General Public License version 2 as | ||
| 8 | * published by the Free Software Foundation. | ||
| 9 | */ | ||
diff --git a/include/asm-arm/arch-iop3xx/entry-macro.S b/include/asm-arm/arch-iop33x/entry-macro.S index f3db54637ad3..980ec9b1ac83 100644 --- a/include/asm-arm/arch-iop3xx/entry-macro.S +++ b/include/asm-arm/arch-iop33x/entry-macro.S | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * include/asm-arm/arch-iop3xx/entry-macro.S | 2 | * include/asm-arm/arch-iop33x/entry-macro.S |
| 3 | * | 3 | * |
| 4 | * Low-level IRQ helper macros for IOP3xx-based platforms | 4 | * Low-level IRQ helper macros for IOP33x-based platforms |
| 5 | * | 5 | * |
| 6 | * This file is licensed under the terms of the GNU General Public | 6 | * This file is licensed under the terms of the GNU General Public |
| 7 | * License version 2. This program is licensed "as is" without any | 7 | * License version 2. This program is licensed "as is" without any |
| @@ -9,26 +9,6 @@ | |||
| 9 | */ | 9 | */ |
| 10 | #include <asm/arch/irqs.h> | 10 | #include <asm/arch/irqs.h> |
| 11 | 11 | ||
| 12 | #if defined(CONFIG_ARCH_IOP32X) | ||
| 13 | .macro disable_fiq | ||
| 14 | .endm | ||
| 15 | |||
| 16 | /* | ||
| 17 | * Note: only deal with normal interrupts, not FIQ | ||
| 18 | */ | ||
| 19 | .macro get_irqnr_and_base, irqnr, irqstat, base, tmp | ||
| 20 | mov \irqnr, #0 | ||
| 21 | mrc p6, 0, \irqstat, c8, c0, 0 @ Read IINTSRC | ||
| 22 | cmp \irqstat, #0 | ||
| 23 | beq 1001f | ||
| 24 | clz \irqnr, \irqstat | ||
| 25 | mov \base, #31 | ||
| 26 | subs \irqnr,\base,\irqnr | ||
| 27 | add \irqnr,\irqnr,#IRQ_IOP321_DMA0_EOT | ||
| 28 | 1001: | ||
| 29 | .endm | ||
| 30 | |||
| 31 | #elif defined(CONFIG_ARCH_IOP33X) | ||
| 32 | .macro disable_fiq | 12 | .macro disable_fiq |
| 33 | .endm | 13 | .endm |
| 34 | 14 | ||
| @@ -47,11 +27,8 @@ | |||
| 47 | rsbs \irqnr,\irqnr,#31 @ recommend by RMK | 27 | rsbs \irqnr,\irqnr,#31 @ recommend by RMK |
| 48 | add \irqnr,\irqnr,#IRQ_IOP331_XINT8 | 28 | add \irqnr,\irqnr,#IRQ_IOP331_XINT8 |
| 49 | b 1001f | 29 | b 1001f |
| 50 | 1002: clz \irqnr, \irqstat | 30 | 1002: clz \irqnr, \irqstat |
| 51 | rsbs \irqnr,\irqnr,#31 @ recommend by RMK | 31 | rsbs \irqnr,\irqnr,#31 @ recommend by RMK |
| 52 | add \irqnr,\irqnr,#IRQ_IOP331_DMA0_EOT | 32 | add \irqnr,\irqnr,#IRQ_IOP331_DMA0_EOT |
| 53 | 1001: | 33 | 1001: |
| 54 | .endm | 34 | .endm |
| 55 | |||
| 56 | #endif | ||
| 57 | |||
diff --git a/include/asm-arm/arch-iop33x/hardware.h b/include/asm-arm/arch-iop33x/hardware.h new file mode 100644 index 000000000000..4a457084c5c6 --- /dev/null +++ b/include/asm-arm/arch-iop33x/hardware.h | |||
| @@ -0,0 +1,54 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop33x/hardware.h | ||
| 3 | */ | ||
| 4 | #ifndef __ASM_ARCH_HARDWARE_H | ||
| 5 | #define __ASM_ARCH_HARDWARE_H | ||
| 6 | |||
| 7 | #include <asm/types.h> | ||
| 8 | |||
| 9 | /* | ||
| 10 | * Note about PCI IO space mappings | ||
| 11 | * | ||
| 12 | * To make IO space accesses efficient, we store virtual addresses in | ||
| 13 | * the IO resources. | ||
| 14 | * | ||
| 15 | * The PCI IO space is located at virtual 0xfe000000 from physical | ||
| 16 | * 0x90000000. The PCI BARs must be programmed with physical addresses, | ||
| 17 | * but when we read them, we convert them to virtual addresses. See | ||
| 18 | * arch/arm/mach-iop33x/pci.c | ||
| 19 | */ | ||
| 20 | |||
| 21 | #define pcibios_assign_all_busses() 1 | ||
| 22 | |||
| 23 | |||
| 24 | /* | ||
| 25 | * The min PCI I/O and MEM space are dependent on what specific | ||
| 26 | * chipset/platform we are running on, so instead of hardcoding with | ||
| 27 | * #ifdefs, we just fill these in the platform level PCI init code. | ||
| 28 | */ | ||
| 29 | #ifndef __ASSEMBLY__ | ||
| 30 | extern unsigned long iop3xx_pcibios_min_io; | ||
| 31 | extern unsigned long iop3xx_pcibios_min_mem; | ||
| 32 | |||
| 33 | extern unsigned int processor_id; | ||
| 34 | #endif | ||
| 35 | |||
| 36 | /* | ||
| 37 | * We just set these to zero since they are really bogus anyways | ||
| 38 | */ | ||
| 39 | #define PCIBIOS_MIN_IO (iop3xx_pcibios_min_io) | ||
| 40 | #define PCIBIOS_MIN_MEM (iop3xx_pcibios_min_mem) | ||
| 41 | |||
| 42 | /* | ||
| 43 | * Generic chipset bits | ||
| 44 | * | ||
| 45 | */ | ||
| 46 | #include "iop331.h" | ||
| 47 | |||
| 48 | /* | ||
| 49 | * Board specific bits | ||
| 50 | */ | ||
| 51 | #include "iq80331.h" | ||
| 52 | #include "iq80332.h" | ||
| 53 | |||
| 54 | #endif /* _ASM_ARCH_HARDWARE_H */ | ||
diff --git a/include/asm-arm/arch-iop33x/io.h b/include/asm-arm/arch-iop33x/io.h new file mode 100644 index 000000000000..a9949d5d4953 --- /dev/null +++ b/include/asm-arm/arch-iop33x/io.h | |||
| @@ -0,0 +1,21 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop33x/io.h | ||
| 3 | * | ||
| 4 | * Copyright (C) 2001 MontaVista Software, Inc. | ||
| 5 | * | ||
| 6 | * This program is free software; you can redistribute it and/or modify | ||
| 7 | * it under the terms of the GNU General Public License version 2 as | ||
| 8 | * published by the Free Software Foundation. | ||
| 9 | */ | ||
| 10 | |||
| 11 | #ifndef __ASM_ARM_ARCH_IO_H | ||
| 12 | #define __ASM_ARM_ARCH_IO_H | ||
| 13 | |||
| 14 | #include <asm/hardware.h> | ||
| 15 | |||
| 16 | #define IO_SPACE_LIMIT 0xffffffff | ||
| 17 | |||
| 18 | #define __io(p) ((void __iomem *)(p)) | ||
| 19 | #define __mem_pci(a) (a) | ||
| 20 | |||
| 21 | #endif | ||
diff --git a/include/asm-arm/arch-iop3xx/iop331.h b/include/asm-arm/arch-iop33x/iop331.h index 4d7bcc62cb3e..780b707edb1e 100644 --- a/include/asm-arm/arch-iop3xx/iop331.h +++ b/include/asm-arm/arch-iop33x/iop331.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm/arch-iop3xx/iop331.h | 2 | * linux/include/asm/arch-iop33x/iop331.h |
| 3 | * | 3 | * |
| 4 | * Intel IOP331 Chip definitions | 4 | * Intel IOP331 Chip definitions |
| 5 | * | 5 | * |
| @@ -20,12 +20,7 @@ | |||
| 20 | * IOP3xx variants but behave slightly differently on each. | 20 | * IOP3xx variants but behave slightly differently on each. |
| 21 | */ | 21 | */ |
| 22 | #ifndef __ASSEMBLY__ | 22 | #ifndef __ASSEMBLY__ |
| 23 | #ifdef CONFIG_ARCH_IOP33X | 23 | #define iop_is_331() 1 |
| 24 | /*#define iop_is_331() ((processor_id & 0xffffffb0) == 0x69054090) */ | ||
| 25 | #define iop_is_331() ((processor_id & 0xffffff30) == 0x69054010) | ||
| 26 | #else | ||
| 27 | #define iop_is_331() 0 | ||
| 28 | #endif | ||
| 29 | #endif | 24 | #endif |
| 30 | 25 | ||
| 31 | /* | 26 | /* |
diff --git a/include/asm-arm/arch-iop3xx/iq80331.h b/include/asm-arm/arch-iop33x/iq80331.h index 0668e78d483e..bda7ab6d55cf 100644 --- a/include/asm-arm/arch-iop3xx/iq80331.h +++ b/include/asm-arm/arch-iop33x/iq80331.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm/arch-iop3xx/iq80331.h | 2 | * linux/include/asm/arch-iop33x/iq80331.h |
| 3 | * | 3 | * |
| 4 | * Intel IQ80331 evaluation board registers | 4 | * Intel IQ80331 evaluation board registers |
| 5 | */ | 5 | */ |
diff --git a/include/asm-arm/arch-iop3xx/iq80332.h b/include/asm-arm/arch-iop33x/iq80332.h index e5fff1775d1a..f728e04378ab 100644 --- a/include/asm-arm/arch-iop3xx/iq80332.h +++ b/include/asm-arm/arch-iop33x/iq80332.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm/arch-iop3xx/iq80332.h | 2 | * linux/include/asm/arch-iop33x/iq80332.h |
| 3 | * | 3 | * |
| 4 | * Intel IQ80332 evaluation board registers | 4 | * Intel IQ80332 evaluation board registers |
| 5 | */ | 5 | */ |
diff --git a/include/asm-arm/arch-iop3xx/iop331-irqs.h b/include/asm-arm/arch-iop33x/irqs.h index 7135ad7e335e..45856a12815a 100644 --- a/include/asm-arm/arch-iop3xx/iop331-irqs.h +++ b/include/asm-arm/arch-iop33x/irqs.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/asm-arm/arch-iop3xx/irqs.h | 2 | * linux/include/asm-arm/arch-iop33x/irqs.h |
| 3 | * | 3 | * |
| 4 | * Author: Dave Jiang (dave.jiang@intel.com) | 4 | * Author: Dave Jiang (dave.jiang@intel.com) |
| 5 | * Copyright: (C) 2003 Intel Corp. | 5 | * Copyright: (C) 2003 Intel Corp. |
| @@ -9,8 +9,8 @@ | |||
| 9 | * published by the Free Software Foundation. | 9 | * published by the Free Software Foundation. |
| 10 | * | 10 | * |
| 11 | */ | 11 | */ |
| 12 | #ifndef _IOP331_IRQS_H_ | 12 | #ifndef _IRQS_H_ |
| 13 | #define _IOP331_IRQS_H_ | 13 | #define _IRQS_H_ |
| 14 | 14 | ||
| 15 | /* | 15 | /* |
| 16 | * IOP80331 chipset interrupts | 16 | * IOP80331 chipset interrupts |
| @@ -86,9 +86,7 @@ | |||
| 86 | #define IRQ_IOP331_MSG_ERR IOP331_IRQ(62) // 30 | 86 | #define IRQ_IOP331_MSG_ERR IOP331_IRQ(62) // 30 |
| 87 | #define IRQ_IOP331_HPI IOP331_IRQ(63) // 31 | 87 | #define IRQ_IOP331_HPI IOP331_IRQ(63) // 31 |
| 88 | 88 | ||
| 89 | #define NR_IOP331_IRQS (IOP331_IRQ(63) + 1) | 89 | #define NR_IRQS (IOP331_IRQ(63) + 1) |
| 90 | |||
| 91 | #define NR_IRQS NR_IOP331_IRQS | ||
| 92 | 90 | ||
| 93 | 91 | ||
| 94 | /* | 92 | /* |
| @@ -129,4 +127,4 @@ | |||
| 129 | #define IRQ_IQ80332_INTC IRQ_IOP331_XINT2 | 127 | #define IRQ_IQ80332_INTC IRQ_IOP331_XINT2 |
| 130 | #define IRQ_IQ80332_INTD IRQ_IOP331_XINT3 | 128 | #define IRQ_IQ80332_INTD IRQ_IOP331_XINT3 |
| 131 | 129 | ||
| 132 | #endif // _IOP331_IRQ_H_ | 130 | #endif // _IRQ_H_ |
diff --git a/include/asm-arm/arch-iop33x/memory.h b/include/asm-arm/arch-iop33x/memory.h new file mode 100644 index 000000000000..5e47164934ce --- /dev/null +++ b/include/asm-arm/arch-iop33x/memory.h | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop33x/memory.h | ||
| 3 | */ | ||
| 4 | |||
| 5 | #ifndef __ASM_ARCH_MEMORY_H | ||
| 6 | #define __ASM_ARCH_MEMORY_H | ||
| 7 | |||
| 8 | #include <asm/hardware.h> | ||
| 9 | |||
| 10 | /* | ||
| 11 | * Physical DRAM offset. | ||
| 12 | */ | ||
| 13 | #define PHYS_OFFSET UL(0x00000000) | ||
| 14 | |||
| 15 | /* | ||
| 16 | * Virtual view <-> PCI DMA view memory address translations | ||
| 17 | * virt_to_bus: Used to translate the virtual address to an | ||
| 18 | * address suitable to be passed to set_dma_addr | ||
| 19 | * bus_to_virt: Used to convert an address for DMA operations | ||
| 20 | * to an address that the kernel can use. | ||
| 21 | */ | ||
| 22 | #define __virt_to_bus(x) (((__virt_to_phys(x)) & ~(*IOP331_IATVR2)) | ((*IOP331_IABAR2) & 0xfffffff0)) | ||
| 23 | #define __bus_to_virt(x) (__phys_to_virt(((x) & ~(*IOP331_IALR2)) | ( *IOP331_IATVR2))) | ||
| 24 | |||
| 25 | |||
| 26 | #endif | ||
diff --git a/include/asm-arm/arch-iop33x/system.h b/include/asm-arm/arch-iop33x/system.h new file mode 100644 index 000000000000..43cc787ea629 --- /dev/null +++ b/include/asm-arm/arch-iop33x/system.h | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop33x/system.h | ||
| 3 | * | ||
| 4 | * Copyright (C) 2001 MontaVista Software, Inc. | ||
| 5 | * | ||
| 6 | * This program is free software; you can redistribute it and/or modify | ||
| 7 | * it under the terms of the GNU General Public License version 2 as | ||
| 8 | * published by the Free Software Foundation. | ||
| 9 | */ | ||
| 10 | |||
| 11 | static inline void arch_idle(void) | ||
| 12 | { | ||
| 13 | cpu_do_idle(); | ||
| 14 | } | ||
| 15 | |||
| 16 | |||
| 17 | static inline void arch_reset(char mode) | ||
| 18 | { | ||
| 19 | *IOP331_PCSR = 0x30; | ||
| 20 | |||
| 21 | if ( 1 && mode == 's') { | ||
| 22 | /* Jump into ROM at address 0 */ | ||
| 23 | cpu_reset(0); | ||
| 24 | } else { | ||
| 25 | /* No on-chip reset capability */ | ||
| 26 | cpu_reset(0); | ||
| 27 | } | ||
| 28 | } | ||
| 29 | |||
diff --git a/include/asm-arm/arch-iop33x/timex.h b/include/asm-arm/arch-iop33x/timex.h new file mode 100644 index 000000000000..cc8085fa2a1e --- /dev/null +++ b/include/asm-arm/arch-iop33x/timex.h | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop33x/timex.h | ||
| 3 | * | ||
| 4 | * IOP3xx architecture timex specifications | ||
| 5 | */ | ||
| 6 | #include <asm/hardware.h> | ||
| 7 | |||
| 8 | #define CLOCK_TICK_RATE IOP331_TICK_RATE | ||
diff --git a/include/asm-arm/arch-iop33x/uncompress.h b/include/asm-arm/arch-iop33x/uncompress.h new file mode 100644 index 000000000000..62904ae3b038 --- /dev/null +++ b/include/asm-arm/arch-iop33x/uncompress.h | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop33x/uncompress.h | ||
| 3 | */ | ||
| 4 | #include <asm/types.h> | ||
| 5 | #include <asm/mach-types.h> | ||
| 6 | #include <linux/serial_reg.h> | ||
| 7 | #include <asm/hardware.h> | ||
| 8 | |||
| 9 | static volatile u32 *uart_base; | ||
| 10 | |||
| 11 | #define TX_DONE (UART_LSR_TEMT|UART_LSR_THRE) | ||
| 12 | |||
| 13 | static inline void putc(char c) | ||
| 14 | { | ||
| 15 | while ((uart_base[UART_LSR] & TX_DONE) != TX_DONE) | ||
| 16 | barrier(); | ||
| 17 | *uart_base = c; | ||
| 18 | } | ||
| 19 | |||
| 20 | static inline void flush(void) | ||
| 21 | { | ||
| 22 | } | ||
| 23 | |||
| 24 | static __inline__ void __arch_decomp_setup(unsigned long arch_id) | ||
| 25 | { | ||
| 26 | if (machine_is_iq80331() || machine_is_iq80332()) | ||
| 27 | uart_base = (volatile u32 *)IOP331_UART0_PHYS; | ||
| 28 | else | ||
| 29 | uart_base = (volatile u32 *)0xfe800000; | ||
| 30 | } | ||
| 31 | |||
| 32 | /* | ||
| 33 | * nothing to do | ||
| 34 | */ | ||
| 35 | #define arch_decomp_setup() __arch_decomp_setup(arch_id) | ||
| 36 | #define arch_decomp_wdog() | ||
diff --git a/include/asm-arm/arch-iop33x/vmalloc.h b/include/asm-arm/arch-iop33x/vmalloc.h new file mode 100644 index 000000000000..b5092027449e --- /dev/null +++ b/include/asm-arm/arch-iop33x/vmalloc.h | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop33x/vmalloc.h | ||
| 3 | */ | ||
| 4 | |||
| 5 | /* | ||
| 6 | * Just any arbitrary offset to the start of the vmalloc VM area: the | ||
| 7 | * current 8MB value just means that there will be a 8MB "hole" after the | ||
| 8 | * physical memory until the kernel virtual memory starts. That means that | ||
| 9 | * any out-of-bounds memory accesses will hopefully be caught. | ||
| 10 | * The vmalloc() routines leaves a hole of 4kB between each vmalloced | ||
| 11 | * area for the same reason. ;) | ||
| 12 | */ | ||
| 13 | //#define VMALLOC_END (0xe8000000) | ||
| 14 | /* increase usable physical RAM to ~992M per RMK */ | ||
| 15 | #define VMALLOC_END (0xfe000000) | ||
| 16 | |||
diff --git a/include/asm-arm/arch-iop3xx/debug-macro.S b/include/asm-arm/arch-iop3xx/debug-macro.S deleted file mode 100644 index dcc6856d14ff..000000000000 --- a/include/asm-arm/arch-iop3xx/debug-macro.S +++ /dev/null | |||
| @@ -1,35 +0,0 @@ | |||
| 1 | /* linux/include/asm-arm/arch-iop3xx/debug-macro.S | ||
| 2 | * | ||
| 3 | * Debugging macro include header | ||
| 4 | * | ||
| 5 | * Copyright (C) 1994-1999 Russell King | ||
| 6 | * Moved from linux/arch/arm/kernel/debug.S by Ben Dooks | ||
| 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 | |||
| 14 | .macro addruart,rx | ||
| 15 | mov \rx, #0xfe000000 @ physical | ||
| 16 | #if defined(CONFIG_ARCH_IQ80321) || defined(CONFIG_ARCH_IQ31244) | ||
| 17 | orr \rx, \rx, #0x00800000 @ location of the UART | ||
| 18 | #elif defined(CONFIG_ARCH_IOP33X) | ||
| 19 | mrc p15, 0, \rx, c1, c0 | ||
| 20 | tst \rx, #1 @ MMU enabled? | ||
| 21 | moveq \rx, #0x000fe000 @ Physical Base | ||
| 22 | movne \rx, #0 | ||
| 23 | orr \rx, \rx, #0xfe000000 | ||
| 24 | orr \rx, \rx, #0x00f00000 @ Virtual Base | ||
| 25 | orr \rx, \rx, #0x00001700 @ location of the UART | ||
| 26 | #else | ||
| 27 | #error Unknown IOP3XX implementation | ||
| 28 | #endif | ||
| 29 | .endm | ||
| 30 | |||
| 31 | #if !defined(CONFIG_ARCH_IQ80321) || !defined(CONFIG_ARCH_IQ31244) || !defined(CONFIG_ARCH_IQ80331) | ||
| 32 | #define FLOW_CONTROL | ||
| 33 | #endif | ||
| 34 | #define UART_SHIFT 0 | ||
| 35 | #include <asm/hardware/debug-8250.S> | ||
diff --git a/include/asm-arm/arch-iop3xx/irqs.h b/include/asm-arm/arch-iop3xx/irqs.h deleted file mode 100644 index 4f7c7aa87b4a..000000000000 --- a/include/asm-arm/arch-iop3xx/irqs.h +++ /dev/null | |||
| @@ -1,21 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop3xx/irqs.h | ||
| 3 | * | ||
| 4 | * Copyright: (C) 2001-2003 MontaVista Software Inc. | ||
| 5 | * | ||
| 6 | * This program is free software; you can redistribute it and/or modify | ||
| 7 | * it under the terms of the GNU General Public License version 2 as | ||
| 8 | * published by the Free Software Foundation. | ||
| 9 | * | ||
| 10 | */ | ||
| 11 | |||
| 12 | /* | ||
| 13 | * Chipset-specific bits | ||
| 14 | */ | ||
| 15 | #ifdef CONFIG_ARCH_IOP32X | ||
| 16 | #include "iop321-irqs.h" | ||
| 17 | #endif | ||
| 18 | |||
| 19 | #ifdef CONFIG_ARCH_IOP33X | ||
| 20 | #include "iop331-irqs.h" | ||
| 21 | #endif | ||
diff --git a/include/asm-arm/arch-iop3xx/timex.h b/include/asm-arm/arch-iop3xx/timex.h deleted file mode 100644 index 14ca8d0f7b29..000000000000 --- a/include/asm-arm/arch-iop3xx/timex.h +++ /dev/null | |||
| @@ -1,20 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop3xx/timex.h | ||
| 3 | * | ||
| 4 | * IOP3xx architecture timex specifications | ||
| 5 | */ | ||
| 6 | #include <asm/hardware.h> | ||
| 7 | |||
| 8 | #if defined(CONFIG_ARCH_IQ80321) || defined(CONFIG_ARCH_IQ31244) | ||
| 9 | |||
| 10 | #define CLOCK_TICK_RATE IOP321_TICK_RATE | ||
| 11 | |||
| 12 | #elif defined(CONFIG_ARCH_IQ80331) || defined(CONFIG_MACH_IQ80332) | ||
| 13 | |||
| 14 | #define CLOCK_TICK_RATE IOP331_TICK_RATE | ||
| 15 | |||
| 16 | #else | ||
| 17 | |||
| 18 | #error "No IOP3xx timex information for this architecture" | ||
| 19 | |||
| 20 | #endif | ||
diff --git a/include/asm-arm/arch-iop3xx/uncompress.h b/include/asm-arm/arch-iop3xx/uncompress.h deleted file mode 100644 index 066c16bc1250..000000000000 --- a/include/asm-arm/arch-iop3xx/uncompress.h +++ /dev/null | |||
| @@ -1,48 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * linux/include/asm-arm/arch-iop3xx/uncompress.h | ||
| 3 | */ | ||
| 4 | #include <asm/types.h> | ||
| 5 | #include <asm/mach-types.h> | ||
| 6 | #include <linux/serial_reg.h> | ||
| 7 | #include <asm/hardware.h> | ||
| 8 | |||
| 9 | #ifdef CONFIG_ARCH_IOP32X | ||
| 10 | #define UTYPE unsigned char * | ||
| 11 | #elif defined(CONFIG_ARCH_IOP33X) | ||
| 12 | #define UTYPE u32 * | ||
| 13 | #else | ||
| 14 | #error "Missing IOP3xx arch type def" | ||
| 15 | #endif | ||
| 16 | |||
| 17 | static volatile UTYPE uart_base; | ||
| 18 | |||
| 19 | #define TX_DONE (UART_LSR_TEMT|UART_LSR_THRE) | ||
| 20 | |||
| 21 | static inline void putc(char c) | ||
| 22 | { | ||
| 23 | while ((uart_base[UART_LSR] & TX_DONE) != TX_DONE) | ||
| 24 | barrier(); | ||
| 25 | *uart_base = c; | ||
| 26 | } | ||
| 27 | |||
| 28 | static inline void flush(void) | ||
| 29 | { | ||
| 30 | } | ||
| 31 | |||
| 32 | static __inline__ void __arch_decomp_setup(unsigned long arch_id) | ||
| 33 | { | ||
| 34 | if(machine_is_iq80321()) | ||
| 35 | uart_base = (volatile UTYPE)IQ80321_UART; | ||
| 36 | else if(machine_is_iq31244()) | ||
| 37 | uart_base = (volatile UTYPE)IQ31244_UART; | ||
| 38 | else if(machine_is_iq80331() || machine_is_iq80332()) | ||
| 39 | uart_base = (volatile UTYPE)IOP331_UART0_PHYS; | ||
| 40 | else | ||
| 41 | uart_base = (volatile UTYPE)0xfe800000; | ||
| 42 | } | ||
| 43 | |||
| 44 | /* | ||
| 45 | * nothing to do | ||
| 46 | */ | ||
| 47 | #define arch_decomp_setup() __arch_decomp_setup(arch_id) | ||
| 48 | #define arch_decomp_wdog() | ||
