From 2c3c1048746a4622d8c89a29670120dc8fab93c4 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 20:49:45 +0200 Subject: Adding upstream version 6.1.76. Signed-off-by: Daniel Baumann --- arch/arm/mach-pxa/Kconfig | 741 +++++++++++++++++ arch/arm/mach-pxa/Makefile | 89 ++ arch/arm/mach-pxa/addr-map.h | 61 ++ arch/arm/mach-pxa/am200epd.c | 395 +++++++++ arch/arm/mach-pxa/am300epd.c | 296 +++++++ arch/arm/mach-pxa/balloon3-pcmcia.c | 137 ++++ arch/arm/mach-pxa/balloon3.c | 821 +++++++++++++++++++ arch/arm/mach-pxa/balloon3.h | 181 +++++ arch/arm/mach-pxa/capc7117.c | 159 ++++ arch/arm/mach-pxa/cm-x300.c | 883 ++++++++++++++++++++ arch/arm/mach-pxa/colibri-evalboard.c | 138 ++++ arch/arm/mach-pxa/colibri-pcmcia.c | 165 ++++ arch/arm/mach-pxa/colibri-pxa270-income.c | 236 ++++++ arch/arm/mach-pxa/colibri-pxa270.c | 330 ++++++++ arch/arm/mach-pxa/colibri-pxa300.c | 193 +++++ arch/arm/mach-pxa/colibri-pxa320.c | 264 ++++++ arch/arm/mach-pxa/colibri-pxa3xx.c | 147 ++++ arch/arm/mach-pxa/colibri.h | 70 ++ arch/arm/mach-pxa/corgi.c | 826 +++++++++++++++++++ arch/arm/mach-pxa/corgi.h | 110 +++ arch/arm/mach-pxa/corgi_pm.c | 221 +++++ arch/arm/mach-pxa/csb701.c | 67 ++ arch/arm/mach-pxa/csb726.c | 291 +++++++ arch/arm/mach-pxa/csb726.h | 24 + arch/arm/mach-pxa/devices.c | 1131 ++++++++++++++++++++++++++ arch/arm/mach-pxa/devices.h | 71 ++ arch/arm/mach-pxa/e740-pcmcia.c | 127 +++ arch/arm/mach-pxa/eseries-gpio.h | 63 ++ arch/arm/mach-pxa/eseries-irq.h | 24 + arch/arm/mach-pxa/eseries.c | 1001 +++++++++++++++++++++++ arch/arm/mach-pxa/ezx.c | 1254 +++++++++++++++++++++++++++++ arch/arm/mach-pxa/generic.c | 113 +++ arch/arm/mach-pxa/generic.h | 69 ++ arch/arm/mach-pxa/gumstix.c | 240 ++++++ arch/arm/mach-pxa/gumstix.h | 89 ++ arch/arm/mach-pxa/h5000.c | 210 +++++ arch/arm/mach-pxa/h5000.h | 109 +++ arch/arm/mach-pxa/himalaya.c | 166 ++++ arch/arm/mach-pxa/hx4700-pcmcia.c | 118 +++ arch/arm/mach-pxa/hx4700.c | 942 ++++++++++++++++++++++ arch/arm/mach-pxa/hx4700.h | 129 +++ arch/arm/mach-pxa/icontrol.c | 218 +++++ arch/arm/mach-pxa/idp.c | 285 +++++++ arch/arm/mach-pxa/idp.h | 195 +++++ arch/arm/mach-pxa/irq.c | 271 +++++++ arch/arm/mach-pxa/irqs.h | 109 +++ arch/arm/mach-pxa/littleton.c | 462 +++++++++++ arch/arm/mach-pxa/littleton.h | 14 + arch/arm/mach-pxa/lpd270.c | 518 ++++++++++++ arch/arm/mach-pxa/lpd270.h | 40 + arch/arm/mach-pxa/lubbock.c | 649 +++++++++++++++ arch/arm/mach-pxa/lubbock.h | 47 ++ arch/arm/mach-pxa/magician.c | 1112 +++++++++++++++++++++++++ arch/arm/mach-pxa/magician.h | 125 +++ arch/arm/mach-pxa/mainstone.c | 738 +++++++++++++++++ arch/arm/mach-pxa/mainstone.h | 140 ++++ arch/arm/mach-pxa/mfp-pxa25x.h | 226 ++++++ arch/arm/mach-pxa/mfp-pxa27x.h | 472 +++++++++++ arch/arm/mach-pxa/mfp-pxa2xx.c | 437 ++++++++++ arch/arm/mach-pxa/mfp-pxa2xx.h | 143 ++++ arch/arm/mach-pxa/mfp-pxa300.h | 572 +++++++++++++ arch/arm/mach-pxa/mfp-pxa320.h | 458 +++++++++++ arch/arm/mach-pxa/mfp-pxa3xx.c | 55 ++ arch/arm/mach-pxa/mfp-pxa3xx.h | 159 ++++ arch/arm/mach-pxa/mfp-pxa930.h | 495 ++++++++++++ arch/arm/mach-pxa/mfp.h | 18 + arch/arm/mach-pxa/mioa701.c | 784 ++++++++++++++++++ arch/arm/mach-pxa/mioa701.h | 76 ++ arch/arm/mach-pxa/mioa701_bootresume.S | 38 + arch/arm/mach-pxa/mp900.c | 101 +++ arch/arm/mach-pxa/mxm8x10.c | 477 +++++++++++ arch/arm/mach-pxa/mxm8x10.h | 22 + arch/arm/mach-pxa/palm27x.c | 473 +++++++++++ arch/arm/mach-pxa/palm27x.h | 77 ++ arch/arm/mach-pxa/palmld-pcmcia.c | 111 +++ arch/arm/mach-pxa/palmld.c | 392 +++++++++ arch/arm/mach-pxa/palmld.h | 107 +++ arch/arm/mach-pxa/palmt5.c | 234 ++++++ arch/arm/mach-pxa/palmt5.h | 82 ++ arch/arm/mach-pxa/palmtc-pcmcia.c | 162 ++++ arch/arm/mach-pxa/palmtc.c | 539 +++++++++++++ arch/arm/mach-pxa/palmtc.h | 84 ++ arch/arm/mach-pxa/palmte2.c | 383 +++++++++ arch/arm/mach-pxa/palmte2.h | 64 ++ arch/arm/mach-pxa/palmtreo.c | 548 +++++++++++++ arch/arm/mach-pxa/palmtreo.h | 64 ++ arch/arm/mach-pxa/palmtx-pcmcia.c | 111 +++ arch/arm/mach-pxa/palmtx.c | 390 +++++++++ arch/arm/mach-pxa/palmtx.h | 110 +++ arch/arm/mach-pxa/palmz72.c | 319 ++++++++ arch/arm/mach-pxa/palmz72.h | 80 ++ arch/arm/mach-pxa/pcm027.c | 266 ++++++ arch/arm/mach-pxa/pcm027.h | 73 ++ arch/arm/mach-pxa/pcm990-baseboard.c | 408 ++++++++++ arch/arm/mach-pxa/pcm990_baseboard.h | 199 +++++ arch/arm/mach-pxa/pm.c | 117 +++ arch/arm/mach-pxa/pm.h | 39 + arch/arm/mach-pxa/poodle.c | 484 +++++++++++ arch/arm/mach-pxa/poodle.h | 92 +++ arch/arm/mach-pxa/pxa-dt.c | 57 ++ arch/arm/mach-pxa/pxa-regs.h | 52 ++ arch/arm/mach-pxa/pxa25x.c | 261 ++++++ arch/arm/mach-pxa/pxa25x.h | 10 + arch/arm/mach-pxa/pxa27x-udc.h | 260 ++++++ arch/arm/mach-pxa/pxa27x.c | 359 +++++++++ arch/arm/mach-pxa/pxa27x.h | 26 + arch/arm/mach-pxa/pxa2xx-regs.h | 149 ++++ arch/arm/mach-pxa/pxa2xx.c | 79 ++ arch/arm/mach-pxa/pxa300.c | 97 +++ arch/arm/mach-pxa/pxa300.h | 8 + arch/arm/mach-pxa/pxa320.c | 88 ++ arch/arm/mach-pxa/pxa320.h | 9 + arch/arm/mach-pxa/pxa3xx-regs.h | 134 +++ arch/arm/mach-pxa/pxa3xx-ulpi.c | 385 +++++++++ arch/arm/mach-pxa/pxa3xx.c | 515 ++++++++++++ arch/arm/mach-pxa/pxa3xx.h | 9 + arch/arm/mach-pxa/pxa930.c | 217 +++++ arch/arm/mach-pxa/pxa930.h | 8 + arch/arm/mach-pxa/pxa_cplds_irqs.c | 200 +++++ arch/arm/mach-pxa/regs-ost.h | 37 + arch/arm/mach-pxa/regs-rtc.h | 24 + arch/arm/mach-pxa/regs-u2d.h | 199 +++++ arch/arm/mach-pxa/regs-uart.h | 146 ++++ arch/arm/mach-pxa/reset.c | 106 +++ arch/arm/mach-pxa/reset.h | 22 + arch/arm/mach-pxa/saar.c | 604 ++++++++++++++ arch/arm/mach-pxa/sharpsl_pm.c | 947 ++++++++++++++++++++++ arch/arm/mach-pxa/sharpsl_pm.h | 109 +++ arch/arm/mach-pxa/sleep.S | 172 ++++ arch/arm/mach-pxa/smemc.c | 81 ++ arch/arm/mach-pxa/smemc.h | 72 ++ arch/arm/mach-pxa/spitz.c | 1087 +++++++++++++++++++++++++ arch/arm/mach-pxa/spitz.h | 185 +++++ arch/arm/mach-pxa/spitz_pm.c | 254 ++++++ arch/arm/mach-pxa/standby.S | 111 +++ arch/arm/mach-pxa/tavorevb.c | 506 ++++++++++++ arch/arm/mach-pxa/tosa-bt.c | 134 +++ arch/arm/mach-pxa/tosa.c | 946 ++++++++++++++++++++++ arch/arm/mach-pxa/tosa.h | 165 ++++ arch/arm/mach-pxa/tosa_bt.h | 18 + arch/arm/mach-pxa/trizeps4-pcmcia.c | 200 +++++ arch/arm/mach-pxa/trizeps4.c | 575 +++++++++++++ arch/arm/mach-pxa/trizeps4.h | 166 ++++ arch/arm/mach-pxa/udc.h | 8 + arch/arm/mach-pxa/viper-pcmcia.c | 180 +++++ arch/arm/mach-pxa/viper-pcmcia.h | 12 + arch/arm/mach-pxa/viper.c | 1034 ++++++++++++++++++++++++ arch/arm/mach-pxa/viper.h | 91 +++ arch/arm/mach-pxa/vpac270-pcmcia.c | 137 ++++ arch/arm/mach-pxa/vpac270.c | 736 +++++++++++++++++ arch/arm/mach-pxa/vpac270.h | 38 + arch/arm/mach-pxa/xcep.c | 190 +++++ arch/arm/mach-pxa/z2.c | 781 ++++++++++++++++++ arch/arm/mach-pxa/z2.h | 37 + arch/arm/mach-pxa/zeus.c | 974 ++++++++++++++++++++++ arch/arm/mach-pxa/zeus.h | 82 ++ arch/arm/mach-pxa/zylonite.c | 495 ++++++++++++ arch/arm/mach-pxa/zylonite.h | 45 ++ arch/arm/mach-pxa/zylonite_pxa300.c | 281 +++++++ arch/arm/mach-pxa/zylonite_pxa320.c | 213 +++++ 160 files changed, 43288 insertions(+) create mode 100644 arch/arm/mach-pxa/Kconfig create mode 100644 arch/arm/mach-pxa/Makefile create mode 100644 arch/arm/mach-pxa/addr-map.h create mode 100644 arch/arm/mach-pxa/am200epd.c create mode 100644 arch/arm/mach-pxa/am300epd.c create mode 100644 arch/arm/mach-pxa/balloon3-pcmcia.c create mode 100644 arch/arm/mach-pxa/balloon3.c create mode 100644 arch/arm/mach-pxa/balloon3.h create mode 100644 arch/arm/mach-pxa/capc7117.c create mode 100644 arch/arm/mach-pxa/cm-x300.c create mode 100644 arch/arm/mach-pxa/colibri-evalboard.c create mode 100644 arch/arm/mach-pxa/colibri-pcmcia.c create mode 100644 arch/arm/mach-pxa/colibri-pxa270-income.c create mode 100644 arch/arm/mach-pxa/colibri-pxa270.c create mode 100644 arch/arm/mach-pxa/colibri-pxa300.c create mode 100644 arch/arm/mach-pxa/colibri-pxa320.c create mode 100644 arch/arm/mach-pxa/colibri-pxa3xx.c create mode 100644 arch/arm/mach-pxa/colibri.h create mode 100644 arch/arm/mach-pxa/corgi.c create mode 100644 arch/arm/mach-pxa/corgi.h create mode 100644 arch/arm/mach-pxa/corgi_pm.c create mode 100644 arch/arm/mach-pxa/csb701.c create mode 100644 arch/arm/mach-pxa/csb726.c create mode 100644 arch/arm/mach-pxa/csb726.h create mode 100644 arch/arm/mach-pxa/devices.c create mode 100644 arch/arm/mach-pxa/devices.h create mode 100644 arch/arm/mach-pxa/e740-pcmcia.c create mode 100644 arch/arm/mach-pxa/eseries-gpio.h create mode 100644 arch/arm/mach-pxa/eseries-irq.h create mode 100644 arch/arm/mach-pxa/eseries.c create mode 100644 arch/arm/mach-pxa/ezx.c create mode 100644 arch/arm/mach-pxa/generic.c create mode 100644 arch/arm/mach-pxa/generic.h create mode 100644 arch/arm/mach-pxa/gumstix.c create mode 100644 arch/arm/mach-pxa/gumstix.h create mode 100644 arch/arm/mach-pxa/h5000.c create mode 100644 arch/arm/mach-pxa/h5000.h create mode 100644 arch/arm/mach-pxa/himalaya.c create mode 100644 arch/arm/mach-pxa/hx4700-pcmcia.c create mode 100644 arch/arm/mach-pxa/hx4700.c create mode 100644 arch/arm/mach-pxa/hx4700.h create mode 100644 arch/arm/mach-pxa/icontrol.c create mode 100644 arch/arm/mach-pxa/idp.c create mode 100644 arch/arm/mach-pxa/idp.h create mode 100644 arch/arm/mach-pxa/irq.c create mode 100644 arch/arm/mach-pxa/irqs.h create mode 100644 arch/arm/mach-pxa/littleton.c create mode 100644 arch/arm/mach-pxa/littleton.h create mode 100644 arch/arm/mach-pxa/lpd270.c create mode 100644 arch/arm/mach-pxa/lpd270.h create mode 100644 arch/arm/mach-pxa/lubbock.c create mode 100644 arch/arm/mach-pxa/lubbock.h create mode 100644 arch/arm/mach-pxa/magician.c create mode 100644 arch/arm/mach-pxa/magician.h create mode 100644 arch/arm/mach-pxa/mainstone.c create mode 100644 arch/arm/mach-pxa/mainstone.h create mode 100644 arch/arm/mach-pxa/mfp-pxa25x.h create mode 100644 arch/arm/mach-pxa/mfp-pxa27x.h create mode 100644 arch/arm/mach-pxa/mfp-pxa2xx.c create mode 100644 arch/arm/mach-pxa/mfp-pxa2xx.h create mode 100644 arch/arm/mach-pxa/mfp-pxa300.h create mode 100644 arch/arm/mach-pxa/mfp-pxa320.h create mode 100644 arch/arm/mach-pxa/mfp-pxa3xx.c create mode 100644 arch/arm/mach-pxa/mfp-pxa3xx.h create mode 100644 arch/arm/mach-pxa/mfp-pxa930.h create mode 100644 arch/arm/mach-pxa/mfp.h create mode 100644 arch/arm/mach-pxa/mioa701.c create mode 100644 arch/arm/mach-pxa/mioa701.h create mode 100644 arch/arm/mach-pxa/mioa701_bootresume.S create mode 100644 arch/arm/mach-pxa/mp900.c create mode 100644 arch/arm/mach-pxa/mxm8x10.c create mode 100644 arch/arm/mach-pxa/mxm8x10.h create mode 100644 arch/arm/mach-pxa/palm27x.c create mode 100644 arch/arm/mach-pxa/palm27x.h create mode 100644 arch/arm/mach-pxa/palmld-pcmcia.c create mode 100644 arch/arm/mach-pxa/palmld.c create mode 100644 arch/arm/mach-pxa/palmld.h create mode 100644 arch/arm/mach-pxa/palmt5.c create mode 100644 arch/arm/mach-pxa/palmt5.h create mode 100644 arch/arm/mach-pxa/palmtc-pcmcia.c create mode 100644 arch/arm/mach-pxa/palmtc.c create mode 100644 arch/arm/mach-pxa/palmtc.h create mode 100644 arch/arm/mach-pxa/palmte2.c create mode 100644 arch/arm/mach-pxa/palmte2.h create mode 100644 arch/arm/mach-pxa/palmtreo.c create mode 100644 arch/arm/mach-pxa/palmtreo.h create mode 100644 arch/arm/mach-pxa/palmtx-pcmcia.c create mode 100644 arch/arm/mach-pxa/palmtx.c create mode 100644 arch/arm/mach-pxa/palmtx.h create mode 100644 arch/arm/mach-pxa/palmz72.c create mode 100644 arch/arm/mach-pxa/palmz72.h create mode 100644 arch/arm/mach-pxa/pcm027.c create mode 100644 arch/arm/mach-pxa/pcm027.h create mode 100644 arch/arm/mach-pxa/pcm990-baseboard.c create mode 100644 arch/arm/mach-pxa/pcm990_baseboard.h create mode 100644 arch/arm/mach-pxa/pm.c create mode 100644 arch/arm/mach-pxa/pm.h create mode 100644 arch/arm/mach-pxa/poodle.c create mode 100644 arch/arm/mach-pxa/poodle.h create mode 100644 arch/arm/mach-pxa/pxa-dt.c create mode 100644 arch/arm/mach-pxa/pxa-regs.h create mode 100644 arch/arm/mach-pxa/pxa25x.c create mode 100644 arch/arm/mach-pxa/pxa25x.h create mode 100644 arch/arm/mach-pxa/pxa27x-udc.h create mode 100644 arch/arm/mach-pxa/pxa27x.c create mode 100644 arch/arm/mach-pxa/pxa27x.h create mode 100644 arch/arm/mach-pxa/pxa2xx-regs.h create mode 100644 arch/arm/mach-pxa/pxa2xx.c create mode 100644 arch/arm/mach-pxa/pxa300.c create mode 100644 arch/arm/mach-pxa/pxa300.h create mode 100644 arch/arm/mach-pxa/pxa320.c create mode 100644 arch/arm/mach-pxa/pxa320.h create mode 100644 arch/arm/mach-pxa/pxa3xx-regs.h create mode 100644 arch/arm/mach-pxa/pxa3xx-ulpi.c create mode 100644 arch/arm/mach-pxa/pxa3xx.c create mode 100644 arch/arm/mach-pxa/pxa3xx.h create mode 100644 arch/arm/mach-pxa/pxa930.c create mode 100644 arch/arm/mach-pxa/pxa930.h create mode 100644 arch/arm/mach-pxa/pxa_cplds_irqs.c create mode 100644 arch/arm/mach-pxa/regs-ost.h create mode 100644 arch/arm/mach-pxa/regs-rtc.h create mode 100644 arch/arm/mach-pxa/regs-u2d.h create mode 100644 arch/arm/mach-pxa/regs-uart.h create mode 100644 arch/arm/mach-pxa/reset.c create mode 100644 arch/arm/mach-pxa/reset.h create mode 100644 arch/arm/mach-pxa/saar.c create mode 100644 arch/arm/mach-pxa/sharpsl_pm.c create mode 100644 arch/arm/mach-pxa/sharpsl_pm.h create mode 100644 arch/arm/mach-pxa/sleep.S create mode 100644 arch/arm/mach-pxa/smemc.c create mode 100644 arch/arm/mach-pxa/smemc.h create mode 100644 arch/arm/mach-pxa/spitz.c create mode 100644 arch/arm/mach-pxa/spitz.h create mode 100644 arch/arm/mach-pxa/spitz_pm.c create mode 100644 arch/arm/mach-pxa/standby.S create mode 100644 arch/arm/mach-pxa/tavorevb.c create mode 100644 arch/arm/mach-pxa/tosa-bt.c create mode 100644 arch/arm/mach-pxa/tosa.c create mode 100644 arch/arm/mach-pxa/tosa.h create mode 100644 arch/arm/mach-pxa/tosa_bt.h create mode 100644 arch/arm/mach-pxa/trizeps4-pcmcia.c create mode 100644 arch/arm/mach-pxa/trizeps4.c create mode 100644 arch/arm/mach-pxa/trizeps4.h create mode 100644 arch/arm/mach-pxa/udc.h create mode 100644 arch/arm/mach-pxa/viper-pcmcia.c create mode 100644 arch/arm/mach-pxa/viper-pcmcia.h create mode 100644 arch/arm/mach-pxa/viper.c create mode 100644 arch/arm/mach-pxa/viper.h create mode 100644 arch/arm/mach-pxa/vpac270-pcmcia.c create mode 100644 arch/arm/mach-pxa/vpac270.c create mode 100644 arch/arm/mach-pxa/vpac270.h create mode 100644 arch/arm/mach-pxa/xcep.c create mode 100644 arch/arm/mach-pxa/z2.c create mode 100644 arch/arm/mach-pxa/z2.h create mode 100644 arch/arm/mach-pxa/zeus.c create mode 100644 arch/arm/mach-pxa/zeus.h create mode 100644 arch/arm/mach-pxa/zylonite.c create mode 100644 arch/arm/mach-pxa/zylonite.h create mode 100644 arch/arm/mach-pxa/zylonite_pxa300.c create mode 100644 arch/arm/mach-pxa/zylonite_pxa320.c (limited to 'arch/arm/mach-pxa') diff --git a/arch/arm/mach-pxa/Kconfig b/arch/arm/mach-pxa/Kconfig new file mode 100644 index 000000000..b90d98bae --- /dev/null +++ b/arch/arm/mach-pxa/Kconfig @@ -0,0 +1,741 @@ +# SPDX-License-Identifier: GPL-2.0-only +menuconfig ARCH_PXA + bool "PXA2xx/PXA3xx-based" + depends on ARCH_MULTI_V5 + depends on CPU_LITTLE_ENDIAN + select ARM_CPU_SUSPEND if PM + select CLKSRC_PXA + select CLKSRC_MMIO + select TIMER_OF + select CPU_XSCALE if !CPU_XSC3 + select GPIO_PXA + select GPIOLIB + select PLAT_PXA + help + Support for Intel/Marvell's PXA2xx/PXA3xx processor line. + +if ARCH_PXA + +menu "Intel PXA2xx/PXA3xx Implementations" + +comment "Intel/Marvell Dev Platforms (sorted by hardware release time)" + +config MACH_PXA25X_DT + bool "Support PXA25x platforms from device tree" + select PINCTRL + select POWER_SUPPLY + select PXA25x + select USE_OF + help + Include support for Marvell PXA25x based platforms using + the device tree. Needn't select any other machine while + MACH_PXA25x_DT is enabled. + +config MACH_PXA27X_DT + bool "Support PXA27x platforms from device tree" + select PINCTRL + select POWER_SUPPLY + select PXA27x + select USE_OF + help + Include support for Marvell PXA27x based platforms using + the device tree. Needn't select any other machine while + MACH_PXA27X_DT is enabled. + +config MACH_PXA3XX_DT + bool "Support PXA3xx platforms from device tree" + select CPU_PXA300 + select PINCTRL + select POWER_SUPPLY + select PXA3xx + select USE_OF + help + Include support for Marvell PXA3xx based platforms using + the device tree. Needn't select any other machine while + MACH_PXA3XX_DT is enabled. + +if ATAGS + +config ARCH_LUBBOCK + bool "Intel DBPXA250 Development Platform (aka Lubbock)" + depends on UNUSED_BOARD_FILES + select GPIO_REG + select PXA25x + select SA1111 + +config MACH_MAINSTONE + bool "Intel HCDDBBVA0 Development Platform (aka Mainstone)" + depends on UNUSED_BOARD_FILES + select GPIO_REG + select PXA27x + +config MACH_ZYLONITE + bool + select PXA3xx + +config MACH_ZYLONITE300 + bool "PXA3xx Development Platform (aka Zylonite) PXA300/310" + depends on UNUSED_BOARD_FILES + select CPU_PXA300 + select CPU_PXA310 + select MACH_ZYLONITE + +config MACH_ZYLONITE320 + bool "PXA3xx Development Platform (aka Zylonite) PXA320" + depends on UNUSED_BOARD_FILES + select CPU_PXA320 + select MACH_ZYLONITE + +config MACH_LITTLETON + bool "PXA3xx Form Factor Platform (aka Littleton)" + depends on UNUSED_BOARD_FILES + select CPU_PXA300 + select CPU_PXA310 + select PXA3xx + +config MACH_TAVOREVB + bool "PXA930 Evaluation Board (aka TavorEVB)" + depends on UNUSED_BOARD_FILES + select CPU_PXA930 + select CPU_PXA935 + select PXA3xx + select FB + select FB_PXA + +config MACH_SAAR + bool "PXA930 Handheld Platform (aka SAAR)" + depends on UNUSED_BOARD_FILES + select CPU_PXA930 + select CPU_PXA935 + select PXA3xx + select FB + select FB_PXA + +comment "Third Party Dev Platforms (sorted by vendor name)" + +config ARCH_PXA_IDP + bool "Accelent Xscale IDP" + depends on UNUSED_BOARD_FILES + select PXA25x + +config ARCH_VIPER + bool "Arcom/Eurotech VIPER SBC" + depends on UNUSED_BOARD_FILES + select ARCOM_PCMCIA + select I2C_GPIO if I2C=y + select ISA + select PXA25x + +config MACH_ARCOM_ZEUS + bool "Arcom/Eurotech ZEUS SBC" + depends on UNUSED_BOARD_FILES + select ARCOM_PCMCIA + select ISA + select PXA27x + +config MACH_BALLOON3 + bool "Balloon 3 board" + depends on UNUSED_BOARD_FILES + select IWMMXT + select PXA27x + +config MACH_CSB726 + bool "Enable Cogent CSB726 System On a Module" + depends on UNUSED_BOARD_FILES + select IWMMXT + select PXA27x + help + Say Y here if you intend to run this kernel on a Cogent + CSB726 System On Module. + +config CSB726_CSB701 + bool "Enable support for CSB701 baseboard" + depends on UNUSED_BOARD_FILES + depends on MACH_CSB726 + +config MACH_CM_X300 + bool "CompuLab CM-X300 modules" + depends on UNUSED_BOARD_FILES + select CPU_PXA300 + select CPU_PXA310 + select PXA3xx + +config MACH_CAPC7117 + bool "Embedian CAPC-7117 evaluation kit based on the MXM-8x10 CoM" + depends on UNUSED_BOARD_FILES + select CPU_PXA320 + select PXA3xx + +config ARCH_GUMSTIX + bool "Gumstix XScale 255 boards" + select PXA25x + help + Say Y here if you intend to run this kernel on + Basix, Connex, ws-200ax, ws-400ax systems + +choice + prompt "Gumstix Carrier/Expansion Board" + depends on ARCH_GUMSTIX + +config GUMSTIX_AM200EPD + bool "Enable AM200EPD board support" + +config GUMSTIX_AM300EPD + bool "Enable AM300EPD board support" + +endchoice + +config MACH_XCEP + bool "Iskratel Electronics XCEP" + depends on UNUSED_BOARD_FILES + select MTD + select MTD_CFI + select MTD_CFI_INTELEXT + select MTD_PHYSMAP + select PXA25x + help + PXA255 based Single Board Computer with SMC 91C111 ethernet chip and 64 MB of flash. + Tuned for usage in Libera instruments for particle accelerators. + +config TRIZEPS_PXA + bool "PXA based Keith und Koep Trizeps DIMM-Modules" + depends on UNUSED_BOARD_FILES + +config MACH_TRIZEPS4 + bool "Keith und Koep Trizeps4 DIMM-Module" + depends on TRIZEPS_PXA + select PXA27x + select TRIZEPS_PCMCIA + +config MACH_TRIZEPS4WL + bool "Keith und Koep Trizeps4-WL DIMM-Module" + depends on TRIZEPS_PXA + select MACH_TRIZEPS4 + select PXA27x + select TRIZEPS_PCMCIA + +choice + prompt "Select base board for Trizeps module" + depends on TRIZEPS_PXA + +config MACH_TRIZEPS_CONXS + bool "ConXS Eval Board" + +config MACH_TRIZEPS_UCONXS + bool "uConXS Eval Board" + +config MACH_TRIZEPS_ANY + bool "another Board" + +endchoice + +config ARCOM_PCMCIA + bool + help + Generic option for Arcom Viper/Zeus PCMCIA + +config TRIZEPS_PCMCIA + bool + help + Enable PCMCIA support for Trizeps modules + +config MACH_LOGICPD_PXA270 + bool "LogicPD PXA270 Card Engine Development Platform" + depends on UNUSED_BOARD_FILES + select PXA27x + +config MACH_PCM027 + bool "Phytec phyCORE-PXA270 CPU module (PCM-027)" + depends on UNUSED_BOARD_FILES + select IWMMXT + select PXA27x + +config MACH_PCM990_BASEBOARD + bool "PHYTEC PCM-990 development board" + depends on UNUSED_BOARD_FILES + depends on MACH_PCM027 + +choice + prompt "display on pcm990" + depends on MACH_PCM990_BASEBOARD + +config PCM990_DISPLAY_SHARP + bool "sharp lq084v1dg21 stn display" + +config PCM990_DISPLAY_NEC + bool "nec nl6448bc20_18d tft display" + +config PCM990_DISPLAY_NONE + bool "no display" + +endchoice + +config MACH_COLIBRI + bool "Toradex Colibri PXA270" + depends on UNUSED_BOARD_FILES + select PXA27x + +config MACH_COLIBRI_PXA270_INCOME + bool "Income s.r.o. PXA270 SBC" + depends on UNUSED_BOARD_FILES + depends on MACH_COLIBRI + select PXA27x + +config MACH_COLIBRI300 + bool "Toradex Colibri PXA300/310" + depends on UNUSED_BOARD_FILES + select CPU_PXA300 + select CPU_PXA310 + select PXA3xx + +config MACH_COLIBRI320 + bool "Toradex Colibri PXA320" + depends on UNUSED_BOARD_FILES + select CPU_PXA320 + select PXA3xx + +config MACH_COLIBRI_EVALBOARD + bool "Toradex Colibri Evaluation Carrier Board support" + depends on UNUSED_BOARD_FILES + depends on MACH_COLIBRI || MACH_COLIBRI300 || MACH_COLIBRI320 + +config MACH_VPAC270 + bool "Voipac PXA270" + depends on UNUSED_BOARD_FILES + select HAVE_PATA_PLATFORM + select PXA27x + help + PXA270 based Single Board Computer. + +comment "End-user Products (sorted by vendor name)" + +config MACH_H4700 + bool "HP iPAQ hx4700" + depends on UNUSED_BOARD_FILES + select IWMMXT + select PXA27x + +config MACH_H5000 + bool "HP iPAQ h5000" + depends on UNUSED_BOARD_FILES + select PXA25x + +config MACH_HIMALAYA + bool "HTC Himalaya Support" + depends on UNUSED_BOARD_FILES + select CPU_PXA26x + +config MACH_MAGICIAN + bool "Enable HTC Magician Support" + depends on UNUSED_BOARD_FILES + select IWMMXT + select PXA27x + +config MACH_MIOA701 + bool "Mitac Mio A701 Support" + depends on UNUSED_BOARD_FILES + select IWMMXT + select PXA27x + help + Say Y here if you intend to run this kernel on a + MIO A701. Currently there is only basic support + for this PDA. + +config PXA_EZX + bool "Motorola EZX Platform" + depends on UNUSED_BOARD_FILES + select IWMMXT + select PXA27x + +config MACH_EZX_A780 + bool "Motorola EZX A780" + default y + depends on PXA_EZX + +config MACH_EZX_E680 + bool "Motorola EZX E680" + default y + depends on PXA_EZX + +config MACH_EZX_A1200 + bool "Motorola EZX A1200" + default y + depends on PXA_EZX + +config MACH_EZX_A910 + bool "Motorola EZX A910" + default y + depends on PXA_EZX + +config MACH_EZX_E6 + bool "Motorola EZX E6" + default y + depends on PXA_EZX + +config MACH_EZX_E2 + bool "Motorola EZX E2" + default y + depends on PXA_EZX + +config MACH_MP900C + bool "Nec Mobilepro 900/c" + depends on UNUSED_BOARD_FILES + select PXA25x + +config ARCH_PXA_PALM + bool "PXA based Palm PDAs" + depends on UNUSED_BOARD_FILES + +config MACH_PALM27X + bool + +config MACH_PALMTE2 + bool "Palm Tungsten|E2" + depends on UNUSED_BOARD_FILES + default y + depends on ARCH_PXA_PALM + select PXA25x + help + Say Y here if you intend to run this kernel on a Palm Tungsten|E2 + handheld computer. + +config MACH_PALMTC + bool "Palm Tungsten|C" + default y + depends on ARCH_PXA_PALM + select PXA25x + help + Say Y here if you intend to run this kernel on a Palm Tungsten|C + handheld computer. + +config MACH_PALMT5 + bool "Palm Tungsten|T5" + depends on UNUSED_BOARD_FILES + default y + depends on ARCH_PXA_PALM + select IWMMXT + select MACH_PALM27X + select PXA27x + help + Say Y here if you intend to run this kernel on a Palm Tungsten|T5 + handheld computer. + +config MACH_PALMTX + bool "Palm T|X" + depends on UNUSED_BOARD_FILES + default y + depends on ARCH_PXA_PALM + select IWMMXT + select MACH_PALM27X + select PXA27x + help + Say Y here if you intend to run this kernel on a Palm T|X + handheld computer. + +config MACH_PALMZ72 + bool "Palm Zire 72" + depends on UNUSED_BOARD_FILES + default y + depends on ARCH_PXA_PALM + select IWMMXT + select MACH_PALM27X + select PXA27x + help + Say Y here if you intend to run this kernel on Palm Zire 72 + handheld computer. + +config MACH_PALMLD + bool "Palm LifeDrive" + depends on UNUSED_BOARD_FILES + default y + depends on ARCH_PXA_PALM + select IWMMXT + select MACH_PALM27X + select PXA27x + help + Say Y here if you intend to run this kernel on a Palm LifeDrive + handheld computer. + +config PALM_TREO + bool + depends on ARCH_PXA_PALM + +config MACH_CENTRO + bool "Palm Centro 685 (GSM)" + depends on UNUSED_BOARD_FILES + default y + depends on ARCH_PXA_PALM + select IWMMXT + select MACH_PALM27X + select PALM_TREO + select PXA27x + help + Say Y here if you intend to run this kernel on Palm Centro 685 (GSM) + smartphone. + +config MACH_TREO680 + bool "Palm Treo 680" + depends on UNUSED_BOARD_FILES + default y + depends on ARCH_PXA_PALM + select IWMMXT + select MACH_PALM27X + select PALM_TREO + select PXA27x + help + Say Y here if you intend to run this kernel on Palm Treo 680 + smartphone. + +config PXA_SHARPSL + bool "SHARP Zaurus SL-5600, SL-C7xx and SL-Cxx00 Models" + select SHARP_PARAM + select SHARP_SCOOP + help + Say Y here if you intend to run this kernel on a + Sharp Zaurus SL-5600 (Poodle), SL-C700 (Corgi), + SL-C750 (Shepherd), SL-C760 (Husky), SL-C1000 (Akita), + SL-C3000 (Spitz), SL-C3100 (Borzoi) or SL-C6000x (Tosa) + handheld computer. + +config PXA_SHARPSL_DETECT_MACH_ID + bool "Detect machine ID at run-time in the decompressor" + depends on PXA_SHARPSL + help + Say Y here if you want the zImage decompressor to detect + the Zaurus machine ID at run-time. For latest kexec-based + boot loader, this is not necessary. + +config MACH_POODLE + bool "Enable Sharp SL-5600 (Poodle) Support" + depends on PXA_SHARPSL + depends on UNUSED_BOARD_FILES + select PXA25x + select SHARP_LOCOMO + +config MACH_CORGI + bool "Enable Sharp SL-C700 (Corgi) Support" + depends on PXA_SHARPSL + depends on UNUSED_BOARD_FILES + select PXA25x + select PXA_SHARP_C7xx + +config MACH_SHEPHERD + bool "Enable Sharp SL-C750 (Shepherd) Support" + depends on PXA_SHARPSL + depends on UNUSED_BOARD_FILES + select PXA25x + select PXA_SHARP_C7xx + +config MACH_HUSKY + bool "Enable Sharp SL-C760 (Husky) Support" + depends on PXA_SHARPSL + depends on UNUSED_BOARD_FILES + select PXA25x + select PXA_SHARP_C7xx + +config MACH_AKITA + bool "Enable Sharp SL-1000 (Akita) Support" + depends on PXA_SHARPSL + select I2C + select I2C_PXA + select MACH_SPITZ + select PXA27x + select PXA_SHARP_Cxx00 + +config MACH_SPITZ + bool "Enable Sharp Zaurus SL-3000 (Spitz) Support" + depends on PXA_SHARPSL + select PXA27x + select PXA_SHARP_Cxx00 + +config MACH_BORZOI + bool "Enable Sharp Zaurus SL-3100 (Borzoi) Support" + depends on PXA_SHARPSL + select PXA27x + select PXA_SHARP_Cxx00 + +config MACH_TOSA + bool "Enable Sharp SL-6000x (Tosa) Support" + depends on UNUSED_BOARD_FILES + depends on PXA_SHARPSL + select PXA25x + +config TOSA_BT + tristate "Control the state of built-in bluetooth chip on Sharp SL-6000" + depends on MACH_TOSA && NET + select RFKILL + help + This is a simple driver that is able to control + the state of built in bluetooth chip on tosa. + +config TOSA_USE_EXT_KEYCODES + bool "Tosa keyboard: use extended keycodes" + depends on MACH_TOSA + help + Say Y here to enable the tosa keyboard driver to generate extended + (>= 127) keycodes. Be aware, that they can't be correctly interpreted + by either console keyboard driver or by Kdrive keybd driver. + + Say Y only if you know, what you are doing! + +config MACH_ICONTROL + bool "TMT iControl/SafeTCam based on the MXM-8x10 CoM" + depends on UNUSED_BOARD_FILES + select CPU_PXA320 + select PXA3xx + +config ARCH_PXA_ESERIES + bool "PXA based Toshiba e-series PDAs" + depends on UNUSED_BOARD_FILES + select FB_W100 + select FB + select PXA25x + +config MACH_E330 + bool "Toshiba e330" + default y + depends on ARCH_PXA_ESERIES + help + Say Y here if you intend to run this kernel on a Toshiba + e330 family PDA. + +config MACH_E350 + bool "Toshiba e350" + default y + depends on ARCH_PXA_ESERIES + help + Say Y here if you intend to run this kernel on a Toshiba + e350 family PDA. + +config MACH_E740 + bool "Toshiba e740" + default y + depends on ARCH_PXA_ESERIES + help + Say Y here if you intend to run this kernel on a Toshiba + e740 family PDA. + +config MACH_E750 + bool "Toshiba e750" + default y + depends on ARCH_PXA_ESERIES + help + Say Y here if you intend to run this kernel on a Toshiba + e750 family PDA. + +config MACH_E400 + bool "Toshiba e400" + default y + depends on ARCH_PXA_ESERIES + help + Say Y here if you intend to run this kernel on a Toshiba + e400 family PDA. + +config MACH_E800 + bool "Toshiba e800" + default y + depends on ARCH_PXA_ESERIES + help + Say Y here if you intend to run this kernel on a Toshiba + e800 family PDA. + +config MACH_ZIPIT2 + bool "Zipit Z2 Handheld" + depends on UNUSED_BOARD_FILES + select PXA27x + +endif # ATAGS +endmenu + +config PXA25x + bool + select CPU_XSCALE + help + Select code specific to PXA21x/25x/26x variants + +config PXA27x + bool + select CPU_XSCALE + help + Select code specific to PXA27x variants + +config CPU_PXA26x + bool + select PXA25x + help + Select code specific to PXA26x (codename Dalhart) + +config PXA3xx + bool + select CPU_XSC3 + help + Select code specific to PXA3xx variants + +config CPU_PXA300 + bool + select PXA3xx + help + PXA300 (codename Monahans-L) + +config CPU_PXA310 + bool + select CPU_PXA300 + select PXA310_ULPI if USB_ULPI + help + PXA310 (codename Monahans-LV) + +config CPU_PXA320 + bool + select PXA3xx + help + PXA320 (codename Monahans-P) + +config CPU_PXA930 + bool + select PXA3xx + help + PXA930 (codename Tavor-P) + +config CPU_PXA935 + bool + select CPU_PXA930 + help + PXA935 (codename Tavor-P65) + +config PXA_SHARP_C7xx + bool + select SHARPSL_PM + help + Enable support for all Sharp C7xx models + +config PXA_SHARP_Cxx00 + bool + select SHARPSL_PM + help + Enable common support for Sharp Cxx00 models + +config SHARPSL_PM + bool + select APM_EMULATION + select SHARPSL_PM_MAX1111 + +config SHARPSL_PM_MAX1111 + bool + select HWMON + select SENSORS_MAX1111 + select SPI + select SPI_MASTER + +config PXA310_ULPI + bool + +config PXA_SYSTEMS_CPLDS + tristate "Motherboard cplds" + default ARCH_LUBBOCK || MACH_MAINSTONE + help + This driver supports the Lubbock and Mainstone multifunction chip + found on the pxa25x development platform system (Lubbock) and pxa27x + development platform system (Mainstone). This IO board supports the + interrupts handling, ethernet controller, flash chips, etc ... + +endif diff --git a/arch/arm/mach-pxa/Makefile b/arch/arm/mach-pxa/Makefile new file mode 100644 index 000000000..0aec36e67 --- /dev/null +++ b/arch/arm/mach-pxa/Makefile @@ -0,0 +1,89 @@ +# SPDX-License-Identifier: GPL-2.0 +# +# Makefile for the linux kernel. +# + +# Common support (must be linked before board specific support) +obj-y += devices.o generic.o irq.o reset.o +obj-$(CONFIG_PM) += pm.o sleep.o standby.o + +# Generic drivers that other drivers may depend upon + +# SoC-specific code +obj-$(CONFIG_PXA25x) += mfp-pxa2xx.o pxa2xx.o pxa25x.o +obj-$(CONFIG_PXA27x) += mfp-pxa2xx.o pxa2xx.o pxa27x.o +obj-$(CONFIG_PXA3xx) += mfp-pxa3xx.o pxa3xx.o smemc.o pxa3xx-ulpi.o +obj-$(CONFIG_CPU_PXA300) += pxa300.o +obj-$(CONFIG_CPU_PXA320) += pxa320.o +obj-$(CONFIG_CPU_PXA930) += pxa930.o + +# NOTE: keep the order of boards in accordance to their order in Kconfig + +# Device Tree support +obj-$(CONFIG_MACH_PXA25X_DT) += pxa-dt.o +obj-$(CONFIG_MACH_PXA27X_DT) += pxa-dt.o +obj-$(CONFIG_MACH_PXA3XX_DT) += pxa-dt.o + +# Intel/Marvell Dev Platforms +obj-$(CONFIG_ARCH_LUBBOCK) += lubbock.o +obj-$(CONFIG_MACH_MAINSTONE) += mainstone.o +obj-$(CONFIG_MACH_ZYLONITE300) += zylonite.o zylonite_pxa300.o +obj-$(CONFIG_MACH_ZYLONITE320) += zylonite.o zylonite_pxa320.o +obj-$(CONFIG_MACH_LITTLETON) += littleton.o +obj-$(CONFIG_MACH_TAVOREVB) += tavorevb.o +obj-$(CONFIG_MACH_SAAR) += saar.o + +# 3rd Party Dev Platforms +obj-$(CONFIG_ARCH_PXA_IDP) += idp.o +obj-$(CONFIG_ARCH_VIPER) += viper.o +obj-$(CONFIG_MACH_ARCOM_ZEUS) += zeus.o +obj-$(CONFIG_ARCOM_PCMCIA) += viper-pcmcia.o +obj-$(CONFIG_MACH_BALLOON3) += balloon3.o balloon3-pcmcia.o +obj-$(CONFIG_MACH_CSB726) += csb726.o +obj-$(CONFIG_CSB726_CSB701) += csb701.o +obj-$(CONFIG_MACH_CM_X300) += cm-x300.o +obj-$(CONFIG_MACH_CAPC7117) += capc7117.o mxm8x10.o +obj-$(CONFIG_ARCH_GUMSTIX) += gumstix.o +obj-$(CONFIG_GUMSTIX_AM200EPD) += am200epd.o +obj-$(CONFIG_GUMSTIX_AM300EPD) += am300epd.o +obj-$(CONFIG_MACH_XCEP) += xcep.o +obj-$(CONFIG_MACH_TRIZEPS4) += trizeps4.o +obj-$(CONFIG_TRIZEPS_PCMCIA) += trizeps4-pcmcia.o +obj-$(CONFIG_MACH_LOGICPD_PXA270) += lpd270.o +obj-$(CONFIG_MACH_PCM027) += pcm027.o +obj-$(CONFIG_MACH_PCM990_BASEBOARD) += pcm990-baseboard.o +obj-$(CONFIG_MACH_COLIBRI) += colibri-pxa270.o colibri-pcmcia.o +obj-$(CONFIG_MACH_COLIBRI_EVALBOARD) += colibri-evalboard.o +obj-$(CONFIG_MACH_COLIBRI_PXA270_INCOME) += colibri-pxa270-income.o +obj-$(CONFIG_MACH_COLIBRI300) += colibri-pxa3xx.o colibri-pxa300.o +obj-$(CONFIG_MACH_COLIBRI320) += colibri-pxa3xx.o colibri-pxa320.o colibri-pcmcia.o +obj-$(CONFIG_MACH_VPAC270) += vpac270.o vpac270-pcmcia.o + +# End-user Products +obj-$(CONFIG_MACH_H4700) += hx4700.o +obj-$(CONFIG_MACH_H4700) += hx4700-pcmcia.o +obj-$(CONFIG_MACH_H5000) += h5000.o +obj-$(CONFIG_MACH_HIMALAYA) += himalaya.o +obj-$(CONFIG_MACH_MAGICIAN) += magician.o +obj-$(CONFIG_MACH_MIOA701) += mioa701.o mioa701_bootresume.o +obj-$(CONFIG_PXA_EZX) += ezx.o +obj-$(CONFIG_MACH_MP900C) += mp900.o +obj-$(CONFIG_MACH_PALMTE2) += palmte2.o +obj-$(CONFIG_MACH_PALMTC) += palmtc.o palmtc-pcmcia.o +obj-$(CONFIG_MACH_PALM27X) += palm27x.o +obj-$(CONFIG_MACH_PALMT5) += palmt5.o +obj-$(CONFIG_MACH_PALMTX) += palmtx.o palmtx-pcmcia.o +obj-$(CONFIG_MACH_PALMZ72) += palmz72.o +obj-$(CONFIG_MACH_PALMLD) += palmld.o palmld-pcmcia.o +obj-$(CONFIG_PALM_TREO) += palmtreo.o +obj-$(CONFIG_PXA_SHARP_C7xx) += corgi.o sharpsl_pm.o corgi_pm.o +obj-$(CONFIG_PXA_SHARP_Cxx00) += spitz.o sharpsl_pm.o spitz_pm.o +obj-$(CONFIG_MACH_POODLE) += poodle.o +obj-$(CONFIG_MACH_TOSA) += tosa.o +obj-$(CONFIG_MACH_ICONTROL) += icontrol.o mxm8x10.o +obj-$(CONFIG_ARCH_PXA_ESERIES) += eseries.o +obj-$(CONFIG_MACH_E740) += e740-pcmcia.o +obj-$(CONFIG_MACH_ZIPIT2) += z2.o + +obj-$(CONFIG_PXA_SYSTEMS_CPLDS) += pxa_cplds_irqs.o +obj-$(CONFIG_TOSA_BT) += tosa-bt.o diff --git a/arch/arm/mach-pxa/addr-map.h b/arch/arm/mach-pxa/addr-map.h new file mode 100644 index 000000000..93cfe7dbf --- /dev/null +++ b/arch/arm/mach-pxa/addr-map.h @@ -0,0 +1,61 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef __ASM_MACH_ADDR_MAP_H +#define __ASM_MACH_ADDR_MAP_H + +/* + * Chip Selects + */ +#define PXA_CS0_PHYS 0x00000000 +#define PXA_CS1_PHYS 0x04000000 +#define PXA_CS2_PHYS 0x08000000 +#define PXA_CS3_PHYS 0x0C000000 +#define PXA_CS4_PHYS 0x10000000 +#define PXA_CS5_PHYS 0x14000000 + +#define PXA300_CS0_PHYS 0x00000000 /* PXA300/PXA310 _only_ */ +#define PXA300_CS1_PHYS 0x30000000 /* PXA300/PXA310 _only_ */ +#define PXA3xx_CS2_PHYS 0x10000000 +#define PXA3xx_CS3_PHYS 0x14000000 + +/* + * Peripheral Bus + */ +#define PERIPH_PHYS 0x40000000 +#define PERIPH_VIRT IOMEM(0xf2000000) +#define PERIPH_SIZE 0x02000000 + +/* + * Static Memory Controller (w/ SDRAM controls on PXA25x/PXA27x) + */ +#define PXA2XX_SMEMC_PHYS 0x48000000 +#define PXA3XX_SMEMC_PHYS 0x4a000000 +#define SMEMC_VIRT IOMEM(0xf6000000) +#define SMEMC_SIZE 0x00100000 + +/* + * Dynamic Memory Controller (only on PXA3xx) + */ +#define DMEMC_PHYS 0x48100000 +#define DMEMC_VIRT IOMEM(0xf6100000) +#define DMEMC_SIZE 0x00100000 + +/* + * Reserved space for low level debug virtual addresses within + * 0xf6200000..0xf6201000 + */ + +/* + * DFI Bus for NAND, PXA3xx only + */ +#define NAND_PHYS 0x43100000 +#define NAND_VIRT IOMEM(0xf6300000) +#define NAND_SIZE 0x00100000 + +/* + * Internal Memory Controller (PXA27x and later) + */ +#define IMEMC_PHYS 0x58000000 +#define IMEMC_VIRT IOMEM(0xfe000000) +#define IMEMC_SIZE 0x00100000 + +#endif /* __ASM_MACH_ADDR_MAP_H */ diff --git a/arch/arm/mach-pxa/am200epd.c b/arch/arm/mach-pxa/am200epd.c new file mode 100644 index 000000000..cac0bb09d --- /dev/null +++ b/arch/arm/mach-pxa/am200epd.c @@ -0,0 +1,395 @@ +/* + * am200epd.c -- Platform device for AM200 EPD kit + * + * Copyright (C) 2008, Jaya Kumar + * + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file COPYING in the main directory of this archive for + * more details. + * + * Layout is based on skeletonfb.c by James Simmons and Geert Uytterhoeven. + * + * This work was made possible by help and equipment support from E-Ink + * Corporation. http://support.eink.com/community + * + * This driver is written to be used with the Metronome display controller. + * on the AM200 EPD prototype kit/development kit with an E-Ink 800x600 + * Vizplex EPD on a Gumstix board using the Lyre interface board. + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "pxa25x.h" +#include "gumstix.h" +#include + +#include "generic.h" + +#include