From 03dd4cb26d967f9588437b0fc9cc0e8353322bb7 Mon Sep 17 00:00:00 2001 From: André Fabian Silva Delgado Date: Fri, 25 Mar 2016 03:53:42 -0300 Subject: Linux-libre 4.5-gnu --- arch/arm/mach-mmp/Kconfig | 34 ++- arch/arm/mach-mmp/Makefile | 1 + arch/arm/mach-mmp/addr-map.h | 44 +++ arch/arm/mach-mmp/aspenite.c | 8 +- arch/arm/mach-mmp/avengers_lite.c | 8 +- arch/arm/mach-mmp/brownstone.c | 8 +- arch/arm/mach-mmp/clock-mmp2.c | 6 +- arch/arm/mach-mmp/clock-pxa168.c | 6 +- arch/arm/mach-mmp/clock-pxa910.c | 6 +- arch/arm/mach-mmp/clock.c | 2 +- arch/arm/mach-mmp/clock.h | 2 - arch/arm/mach-mmp/common.c | 4 +- arch/arm/mach-mmp/common.h | 3 - arch/arm/mach-mmp/cputype.h | 55 ++++ arch/arm/mach-mmp/devices.c | 13 +- arch/arm/mach-mmp/devices.h | 56 ++++ arch/arm/mach-mmp/flint.c | 8 +- arch/arm/mach-mmp/gplugd.c | 6 +- arch/arm/mach-mmp/include/mach/addr-map.h | 46 ---- arch/arm/mach-mmp/include/mach/cputype.h | 55 ---- arch/arm/mach-mmp/include/mach/devices.h | 56 ---- arch/arm/mach-mmp/include/mach/dma.h | 13 - arch/arm/mach-mmp/include/mach/hardware.h | 4 - arch/arm/mach-mmp/include/mach/irqs.h | 239 ---------------- arch/arm/mach-mmp/include/mach/mfp-mmp2.h | 395 --------------------------- arch/arm/mach-mmp/include/mach/mfp-pxa168.h | 354 ------------------------ arch/arm/mach-mmp/include/mach/mfp-pxa910.h | 169 ------------ arch/arm/mach-mmp/include/mach/mfp.h | 34 --- arch/arm/mach-mmp/include/mach/mmp2.h | 102 ------- arch/arm/mach-mmp/include/mach/pm-mmp2.h | 61 ----- arch/arm/mach-mmp/include/mach/pm-pxa910.h | 77 ------ arch/arm/mach-mmp/include/mach/pxa168.h | 137 ---------- arch/arm/mach-mmp/include/mach/pxa910.h | 87 ------ arch/arm/mach-mmp/include/mach/regs-apbc.h | 24 -- arch/arm/mach-mmp/include/mach/regs-apmu.h | 33 --- arch/arm/mach-mmp/include/mach/regs-icu.h | 71 ----- arch/arm/mach-mmp/include/mach/regs-smc.h | 37 --- arch/arm/mach-mmp/include/mach/regs-timers.h | 44 --- arch/arm/mach-mmp/include/mach/regs-usb.h | 253 ----------------- arch/arm/mach-mmp/include/mach/teton_bga.h | 27 -- arch/arm/mach-mmp/include/mach/uncompress.h | 45 --- arch/arm/mach-mmp/irqs.h | 239 ++++++++++++++++ arch/arm/mach-mmp/jasper.c | 8 +- arch/arm/mach-mmp/mfp-mmp2.h | 395 +++++++++++++++++++++++++++ arch/arm/mach-mmp/mfp-pxa168.h | 354 ++++++++++++++++++++++++ arch/arm/mach-mmp/mfp-pxa910.h | 169 ++++++++++++ arch/arm/mach-mmp/mfp.h | 34 +++ arch/arm/mach-mmp/mmp2.c | 23 +- arch/arm/mach-mmp/mmp2.h | 103 +++++++ arch/arm/mach-mmp/pm-mmp2.c | 12 +- arch/arm/mach-mmp/pm-mmp2.h | 61 +++++ arch/arm/mach-mmp/pm-pxa910.c | 12 +- arch/arm/mach-mmp/pm-pxa910.h | 77 ++++++ arch/arm/mach-mmp/pxa168.c | 29 +- arch/arm/mach-mmp/pxa168.h | 138 ++++++++++ arch/arm/mach-mmp/pxa910.c | 24 +- arch/arm/mach-mmp/pxa910.h | 88 ++++++ arch/arm/mach-mmp/regs-apbc.h | 22 ++ arch/arm/mach-mmp/regs-apmu.h | 31 +++ arch/arm/mach-mmp/regs-icu.h | 69 +++++ arch/arm/mach-mmp/regs-timers.h | 42 +++ arch/arm/mach-mmp/regs-usb.h | 253 +++++++++++++++++ arch/arm/mach-mmp/tavorevb.c | 8 +- arch/arm/mach-mmp/teton_bga.c | 10 +- arch/arm/mach-mmp/teton_bga.h | 25 ++ arch/arm/mach-mmp/time.c | 11 +- arch/arm/mach-mmp/ttc_dkb.c | 10 +- 67 files changed, 2397 insertions(+), 2483 deletions(-) create mode 100644 arch/arm/mach-mmp/addr-map.h create mode 100644 arch/arm/mach-mmp/cputype.h create mode 100644 arch/arm/mach-mmp/devices.h delete mode 100644 arch/arm/mach-mmp/include/mach/addr-map.h delete mode 100644 arch/arm/mach-mmp/include/mach/cputype.h delete mode 100644 arch/arm/mach-mmp/include/mach/devices.h delete mode 100644 arch/arm/mach-mmp/include/mach/dma.h delete mode 100644 arch/arm/mach-mmp/include/mach/hardware.h delete mode 100644 arch/arm/mach-mmp/include/mach/irqs.h delete mode 100644 arch/arm/mach-mmp/include/mach/mfp-mmp2.h delete mode 100644 arch/arm/mach-mmp/include/mach/mfp-pxa168.h delete mode 100644 arch/arm/mach-mmp/include/mach/mfp-pxa910.h delete mode 100644 arch/arm/mach-mmp/include/mach/mfp.h delete mode 100644 arch/arm/mach-mmp/include/mach/mmp2.h delete mode 100644 arch/arm/mach-mmp/include/mach/pm-mmp2.h delete mode 100644 arch/arm/mach-mmp/include/mach/pm-pxa910.h delete mode 100644 arch/arm/mach-mmp/include/mach/pxa168.h delete mode 100644 arch/arm/mach-mmp/include/mach/pxa910.h delete mode 100644 arch/arm/mach-mmp/include/mach/regs-apbc.h delete mode 100644 arch/arm/mach-mmp/include/mach/regs-apmu.h delete mode 100644 arch/arm/mach-mmp/include/mach/regs-icu.h delete mode 100644 arch/arm/mach-mmp/include/mach/regs-smc.h delete mode 100644 arch/arm/mach-mmp/include/mach/regs-timers.h delete mode 100644 arch/arm/mach-mmp/include/mach/regs-usb.h delete mode 100644 arch/arm/mach-mmp/include/mach/teton_bga.h delete mode 100644 arch/arm/mach-mmp/include/mach/uncompress.h create mode 100644 arch/arm/mach-mmp/irqs.h create mode 100644 arch/arm/mach-mmp/mfp-mmp2.h create mode 100644 arch/arm/mach-mmp/mfp-pxa168.h create mode 100644 arch/arm/mach-mmp/mfp-pxa910.h create mode 100644 arch/arm/mach-mmp/mfp.h create mode 100644 arch/arm/mach-mmp/mmp2.h create mode 100644 arch/arm/mach-mmp/pm-mmp2.h create mode 100644 arch/arm/mach-mmp/pm-pxa910.h create mode 100644 arch/arm/mach-mmp/pxa168.h create mode 100644 arch/arm/mach-mmp/pxa910.h create mode 100644 arch/arm/mach-mmp/regs-apbc.h create mode 100644 arch/arm/mach-mmp/regs-apmu.h create mode 100644 arch/arm/mach-mmp/regs-icu.h create mode 100644 arch/arm/mach-mmp/regs-timers.h create mode 100644 arch/arm/mach-mmp/regs-usb.h create mode 100644 arch/arm/mach-mmp/teton_bga.h (limited to 'arch/arm/mach-mmp') diff --git a/arch/arm/mach-mmp/Kconfig b/arch/arm/mach-mmp/Kconfig index fdbfadf00..01c57d369 100644 --- a/arch/arm/mach-mmp/Kconfig +++ b/arch/arm/mach-mmp/Kconfig @@ -1,9 +1,22 @@ +menuconfig ARCH_MMP + bool "Marvell PXA168/910/MMP2" + depends on ARCH_MULTI_V5 || ARCH_MULTI_V7 + select ARCH_REQUIRE_GPIOLIB + select GPIO_PXA + select PINCTRL + select PLAT_PXA + help + Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line. + if ARCH_MMP -menu "Marvell PXA168/910/MMP2 Implmentations" +menu "Marvell PXA168/910/MMP2 Implementations" + +if ATAGS config MACH_ASPENITE bool "Marvell's PXA168 Aspenite Development Board" + depends on ARCH_MULTI_V5 select CPU_PXA168 help Say 'Y' here if you want to support the Marvell PXA168-based @@ -11,6 +24,7 @@ config MACH_ASPENITE config MACH_ZYLONITE2 bool "Marvell's PXA168 Zylonite2 Development Board" + depends on ARCH_MULTI_V5 select CPU_PXA168 help Say 'Y' here if you want to support the Marvell PXA168-based @@ -18,6 +32,7 @@ config MACH_ZYLONITE2 config MACH_AVENGERS_LITE bool "Marvell's PXA168 Avengers Lite Development Board" + depends on ARCH_MULTI_V5 select CPU_PXA168 help Say 'Y' here if you want to support the Marvell PXA168-based @@ -25,6 +40,7 @@ config MACH_AVENGERS_LITE config MACH_TAVOREVB bool "Marvell's PXA910 TavorEVB Development Board" + depends on ARCH_MULTI_V5 select CPU_PXA910 help Say 'Y' here if you want to support the Marvell PXA910-based @@ -32,6 +48,7 @@ config MACH_TAVOREVB config MACH_TTC_DKB bool "Marvell's PXA910 TavorEVB Development Board" + depends on ARCH_MULTI_V5 select CPU_PXA910 help Say 'Y' here if you want to support the Marvell PXA910-based @@ -39,7 +56,7 @@ config MACH_TTC_DKB config MACH_BROWNSTONE bool "Marvell's Brownstone Development Platform" - depends on !CPU_MOHAWK + depends on ARCH_MULTI_V7 select CPU_MMP2 help Say 'Y' here if you want to support the Marvell MMP2-based @@ -50,7 +67,7 @@ config MACH_BROWNSTONE config MACH_FLINT bool "Marvell's Flint Development Platform" - depends on !CPU_MOHAWK + depends on ARCH_MULTI_V7 select CPU_MMP2 help Say 'Y' here if you want to support the Marvell MMP2-based @@ -61,7 +78,7 @@ config MACH_FLINT config MACH_MARVELL_JASPER bool "Marvell's Jasper Development Platform" - depends on !CPU_MOHAWK + depends on ARCH_MULTI_V7 select CPU_MMP2 help Say 'Y' here if you want to support the Marvell MMP2-base @@ -72,6 +89,7 @@ config MACH_MARVELL_JASPER config MACH_TETON_BGA bool "Marvell's PXA168 Teton BGA Development Board" + depends on ARCH_MULTI_V5 select CPU_PXA168 help Say 'Y' here if you want to support the Marvell PXA168-based @@ -79,14 +97,16 @@ config MACH_TETON_BGA config MACH_GPLUGD bool "Marvell's PXA168 GuruPlug Display (gplugD) Board" + depends on ARCH_MULTI_V5 select CPU_PXA168 help Say 'Y' here if you want to support the Marvell PXA168-based GuruPlug Display (gplugD) Board +endif config MACH_MMP_DT bool "Support MMP (ARMv5) platforms from device tree" - select USE_OF + depends on ARCH_MULTI_V5 select PINCTRL select PINCTRL_SINGLE select COMMON_CLK @@ -99,11 +119,9 @@ config MACH_MMP_DT config MACH_MMP2_DT bool "Support MMP2 (ARMv7) platforms from device tree" - depends on !CPU_MOHAWK - select USE_OF + depends on ARCH_MULTI_V7 select PINCTRL select PINCTRL_SINGLE - select COMMON_CLK select ARCH_HAS_RESET_CONTROLLER select CPU_PJ4 help diff --git a/arch/arm/mach-mmp/Makefile b/arch/arm/mach-mmp/Makefile index 98f0f6388..7677ad541 100644 --- a/arch/arm/mach-mmp/Makefile +++ b/arch/arm/mach-mmp/Makefile @@ -1,6 +1,7 @@ # # Makefile for Marvell's PXA168 processors line # +ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/arch/arm/plat-pxa/include obj-y += common.o devices.o time.o diff --git a/arch/arm/mach-mmp/addr-map.h b/arch/arm/mach-mmp/addr-map.h new file mode 100644 index 000000000..2739d27bc --- /dev/null +++ b/arch/arm/mach-mmp/addr-map.h @@ -0,0 +1,44 @@ +/* + * Common address map definitions + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#ifndef __ASM_MACH_ADDR_MAP_H +#define __ASM_MACH_ADDR_MAP_H + +/* APB - Application Subsystem Peripheral Bus + * + * NOTE: the DMA controller registers are actually on the AXI fabric #1 + * slave port to AHB/APB bridge, due to its close relationship to those + * peripherals on APB, let's count it into the ABP mapping area. + */ +#define APB_PHYS_BASE 0xd4000000 +#define APB_VIRT_BASE IOMEM(0xfe000000) +#define APB_PHYS_SIZE 0x00200000 + +#define AXI_PHYS_BASE 0xd4200000 +#define AXI_VIRT_BASE IOMEM(0xfe200000) +#define AXI_PHYS_SIZE 0x00200000 + +/* Static Memory Controller - Chip Select 0 and 1 */ +#define SMC_CS0_PHYS_BASE 0x80000000 +#define SMC_CS0_PHYS_SIZE 0x10000000 +#define SMC_CS1_PHYS_BASE 0x90000000 +#define SMC_CS1_PHYS_SIZE 0x10000000 + +#define APMU_VIRT_BASE (AXI_VIRT_BASE + 0x82800) +#define APMU_REG(x) (APMU_VIRT_BASE + (x)) + +#define APBC_VIRT_BASE (APB_VIRT_BASE + 0x015000) +#define APBC_REG(x) (APBC_VIRT_BASE + (x)) + +#define MPMU_VIRT_BASE (APB_VIRT_BASE + 0x50000) +#define MPMU_REG(x) (MPMU_VIRT_BASE + (x)) + +#define CIU_VIRT_BASE (AXI_VIRT_BASE + 0x82c00) +#define CIU_REG(x) (CIU_VIRT_BASE + (x)) + +#endif /* __ASM_MACH_ADDR_MAP_H */ diff --git a/arch/arm/mach-mmp/aspenite.c b/arch/arm/mach-mmp/aspenite.c index 7e0248582..5db0edf71 100644 --- a/arch/arm/mach-mmp/aspenite.c +++ b/arch/arm/mach-mmp/aspenite.c @@ -22,14 +22,14 @@ #include #include -#include -#include -#include -#include #include