From ba56a9876decc99f361ff4e8c7e15253c2b1930d Mon Sep 17 00:00:00 2001 From: Masahiro Yamada Date: Fri, 8 May 2015 13:07:11 +0900 Subject: ARM: UniPhier: add basic support for UniPhier architecture Initial commit for a new SoC family, UniPhier, developed by Socionext Inc. (formerly, System LSI Business Division of Panasonic Corporation). This commit includes a minimal set of components for booting the kernel, including SMP support. Signed-off-by: Masahiro Yamada Signed-off-by: Arnd Bergmann --- arch/arm/Kconfig | 2 ++ 1 file changed, 2 insertions(+) (limited to 'arch/arm/Kconfig') diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 45df48ba0b12..b2e0d98894d3 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -937,6 +937,8 @@ source "arch/arm/mach-tegra/Kconfig" source "arch/arm/mach-u300/Kconfig" +source "arch/arm/mach-uniphier/Kconfig" + source "arch/arm/mach-ux500/Kconfig" source "arch/arm/mach-versatile/Kconfig" -- cgit v1.2.3 From 48a17db28c64369e3c6a8a2b415ad4030fac77e4 Mon Sep 17 00:00:00 2001 From: Robert Jarzmik Date: Sat, 27 Dec 2014 14:55:26 +0100 Subject: ARM: pxa: Transition pxa25x and pxa27x to clk framework Transition the PXA25x and PXA27x CPUs to the clock framework. This transition still enables legacy platforms to run without device tree as before, ie relying on platform data encoded in board specific files. The transition breaks the previous clocks activation of pin control (gpio11 and gpio12). Machine files should be amended to take that into account. This is the last step of clock framework transition for pxa25x and pxa27x, leaving only pxa3xx for further work. Reviewed-by: Michael Turquette Signed-off-by: Robert Jarzmik --- arch/arm/Kconfig | 1 + 1 file changed, 1 insertion(+) (limited to 'arch/arm/Kconfig') diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 45df48ba0b12..cd617a6feeb9 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -606,6 +606,7 @@ config ARCH_PXA select ARCH_REQUIRE_GPIOLIB select ARM_CPU_SUSPEND if PM select AUTO_ZRELADDR + select COMMON_CLK if PXA27x || PXA25x select CLKDEV_LOOKUP select CLKSRC_MMIO select CLKSRC_OF -- cgit v1.2.3 From a1c0a6adbc705a9a760416796ce9cb3349fd476f Mon Sep 17 00:00:00 2001 From: Robert Jarzmik Date: Sat, 7 Feb 2015 22:54:03 +0100 Subject: ARM: pxa: Transition pxa25x, pxa27x, pxa3xx to clk framework Transition the PXA25x, PXA27x and PXA3xx CPUs to the clock framework. This transition still enables legacy platforms to run without device tree as before, ie relying on platform data encoded in board specific files. This is the last step of clock framework transition for pxa platforms. It was tested on lubbock (pxa25x), mioa701 (pxa27x) and zylonite (pxa3xx). Signed-off-by: Robert Jarzmik --- arch/arm/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'arch/arm/Kconfig') diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index cd617a6feeb9..3021592e2568 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -606,7 +606,7 @@ config ARCH_PXA select ARCH_REQUIRE_GPIOLIB select ARM_CPU_SUSPEND if PM select AUTO_ZRELADDR - select COMMON_CLK if PXA27x || PXA25x + select COMMON_CLK select CLKDEV_LOOKUP select CLKSRC_MMIO select CLKSRC_OF -- cgit v1.2.3 From 9b799b78372c925d3204567741e3ff8fe0cc1c7d Mon Sep 17 00:00:00 2001 From: Maxime Coquelin Date: Sat, 9 May 2015 09:53:54 +0200 Subject: ARM: Add STM32 family machine STMicrolectronics's STM32 series is a family of Cortex-M microcontrollers. It is used in various applications, and proposes a wide range of peripherals. Tested-by: Chanwoo Choi Signed-off-by: Maxime Coquelin Signed-off-by: Arnd Bergmann --- arch/arm/Kconfig | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'arch/arm/Kconfig') diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 7cd23bb03244..99544479ab01 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -758,6 +758,24 @@ config ARCH_OMAP1 help Support for older TI OMAP1 (omap7xx, omap15xx or omap16xx) +config ARCH_STM32 + bool "STMicrolectronics STM32" + depends on !MMU + select ARCH_HAS_RESET_CONTROLLER + select ARM_NVIC + select ARMV7M_SYSTICK + select AUTO_ZRELADDR + select CLKSRC_OF + select COMMON_CLK + select CPU_V7M + select GENERIC_CLOCKEVENTS + select NO_IOPORT_MAP + select RESET_CONTROLLER + select SPARSE_IRQ + select USE_OF + help + Support for STMicroelectronics STM32 processors. + endchoice menu "Multiple platform selection" -- cgit v1.2.3 From e8d235d4d8fb8957bae5f6ed4521115203a00d8b Mon Sep 17 00:00:00 2001 From: Joachim Eastwood Date: Tue, 12 May 2015 00:00:47 +0200 Subject: ARM: lpc18xx: add basic support for NXP LPC18xx/43xx SoCs Add support for NXP's LPC18xx (Cortex-M3) and LPC43xx (Cortex-M4) SoCs. These SoCs are NXP's high preformance MCU line and can run at clock speeds up to 180 MHz for LPC18xx and 204 MHz for LPC43xx. LPC43xx is more or less a LPC18xx with a Cortex-M4F core and a few extra peripherals. The LPC43xx series also features one or two Cortex-M0 cores that can be used to offload the main M4 core. Signed-off-by: Joachim Eastwood Reviewed-by: Ezequiel Garcia Signed-off-by: Arnd Bergmann --- arch/arm/Kconfig | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'arch/arm/Kconfig') diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 99544479ab01..16b47afb60f1 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -586,6 +586,26 @@ config ARCH_W90X900 +config ARCH_LPC18XX + bool "NXP LPC18xx/LPC43xx" + depends on !MMU + select ARCH_HAS_RESET_CONTROLLER + select ARCH_REQUIRE_GPIOLIB + select ARM_AMBA + select ARM_NVIC + select AUTO_ZRELADDR + select CLKSRC_LPC32XX + select COMMON_CLK + select CPU_V7M + select GENERIC_CLOCKEVENTS + select NO_IOPORT_MAP + select PINCTRL + select SPARSE_IRQ + select USE_OF + help + Support for NXP's LPC18xx Cortex-M3 and LPC43xx Cortex-M4 + high performance microcontrollers. + config ARCH_LPC32XX bool "NXP LPC32XX" select ARCH_REQUIRE_GPIOLIB -- cgit v1.2.3 From acede515b3a5997becc5736657e11f4f410a8235 Mon Sep 17 00:00:00 2001 From: Jun Nie Date: Tue, 28 Apr 2015 17:18:05 +0800 Subject: ARM: zx: add basic support for ZTE ZX296702 Add basic code for ZTE ZX296702 platform. [arnd: removed unused zx296702_init_machine function, and changed l2c aux val to default] Signed-off-by: Jun Nie Signed-off-by: Arnd Bergmann --- arch/arm/Kconfig | 2 ++ 1 file changed, 2 insertions(+) (limited to 'arch/arm/Kconfig') diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 16b47afb60f1..80a2a14df604 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -989,6 +989,8 @@ source "arch/arm/mach-vt8500/Kconfig" source "arch/arm/mach-w90x900/Kconfig" +source "arch/arm/mach-zx/Kconfig" + source "arch/arm/mach-zynq/Kconfig" # Definitions to make life easier -- cgit v1.2.3 From b694331cfb2ec3bc2225a0ea9fddbb7e24d81c37 Mon Sep 17 00:00:00 2001 From: Tony Lindgren Date: Wed, 20 May 2015 09:01:21 -0700 Subject: ARM: omap1: Switch to use MULTI_IRQ This allows us to get a bit further with SPARSE_IRQ and MULTIARCH support. Note that we now also rename omap_irq_flags to omap_l2_irq as that's the omap_irq_flags naming is confusing. It just contains the interrupt number for the l2 irq. Cc: Aaro Koskinen Signed-off-by: Tony Lindgren --- arch/arm/Kconfig | 1 + 1 file changed, 1 insertion(+) (limited to 'arch/arm/Kconfig') diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 45df48ba0b12..881a76c586c2 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -752,6 +752,7 @@ config ARCH_OMAP1 select GENERIC_IRQ_CHIP select HAVE_IDE select IRQ_DOMAIN + select MULTI_IRQ_HANDLER select NEED_MACH_IO_H if PCCARD select NEED_MACH_MEMORY_H help -- cgit v1.2.3 From 685e2d08c54b1a1bf31bbe6562f06db089d31c7b Mon Sep 17 00:00:00 2001 From: Tony Lindgren Date: Wed, 20 May 2015 09:01:21 -0700 Subject: ARM: OMAP1: Change interrupt numbering for sparse IRQ Change interrupt numbering for sparse IRQ. We do this using a fixed offset until we can drop irqs.h once all it's users have been updated. Note that this depends on the GPIO fix for the MPUIO IRQs "gpio: omap: Fix regression for MPUIO interrupts". Also note that this patch adds some extra irq alloc warnings that will go away when we stop calling irq_alloc_descs in gpio-omap.c with a follow-up patch. Cc: Aaro Koskinen Signed-off-by: Tony Lindgren --- arch/arm/Kconfig | 1 + 1 file changed, 1 insertion(+) (limited to 'arch/arm/Kconfig') diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 881a76c586c2..6a23dac1c0ab 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -755,6 +755,7 @@ config ARCH_OMAP1 select MULTI_IRQ_HANDLER select NEED_MACH_IO_H if PCCARD select NEED_MACH_MEMORY_H + select SPARSE_IRQ help Support for older TI OMAP1 (omap7xx, omap15xx or omap16xx) -- cgit v1.2.3 From 9c77bc438f88366e2e42c229b4aff52d4693e5c9 Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Wed, 20 May 2015 00:03:51 +0200 Subject: ARM: introduce ARM_SINGLE_ARMV7M for ARMv7-M platforms This introduces a new top level config symbol ARM_SINGLE_ARMV7M for non-MMU, ARMv7-M platforms. It also support multiple ARMv7-M platforms in one kernel image since the cores share the same basic memory layout and interrupt controller. However, this works only if the combined platforms also have a similar (main) memory layout. Signed-off-by: Stefan Agner Signed-off-by: Arnd Bergmann --- arch/arm/Kconfig | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'arch/arm/Kconfig') diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 80a2a14df604..75920edec3cc 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -329,6 +329,19 @@ config ARCH_MULTIPLATFORM select SPARSE_IRQ select USE_OF +config ARM_SINGLE_ARMV7M + bool "ARMv7-M based platforms (Cortex-M0/M3/M4)" + depends on !MMU + select ARCH_WANT_OPTIONAL_GPIOLIB + select ARM_NVIC + select CLKSRC_OF + select COMMON_CLK + select CPU_V7M + select GENERIC_CLOCKEVENTS + select NO_IOPORT_MAP + select SPARSE_IRQ + select USE_OF + config ARCH_REALVIEW bool "ARM Ltd. RealView family" select ARCH_WANT_OPTIONAL_GPIOLIB -- cgit v1.2.3 From 499f164020786a721e96a114c2715e2c8e2a89d9 Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Thu, 21 May 2015 00:35:44 +0200 Subject: ARM: use ARM_SINGLE_ARMV7M for ARMv7-M platforms MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use the new config symbol ARM_SINGLE_ARMV7M which groups config symbols used by modern ARMv7-M platforms. This allows supporting multiple ARMv7-M platforms in one kernel image. However, a common kernel image requires the combined platforms to share the same main memory layout to be bootable. Signed-off-by: Stefan Agner Acked-by: Uwe Kleine-König Acked-by: Joachim Eastwood Acked-by: Maxime Coquelin Signed-off-by: Arnd Bergmann --- arch/arm/Kconfig | 86 ++++++++++++++++++++------------------------------------ 1 file changed, 30 insertions(+), 56 deletions(-) (limited to 'arch/arm/Kconfig') diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 6929dd4118ed..b7a7d1556d96 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -334,6 +334,7 @@ config ARM_SINGLE_ARMV7M depends on !MMU select ARCH_WANT_OPTIONAL_GPIOLIB select ARM_NVIC + select AUTO_ZRELADDR select CLKSRC_OF select COMMON_CLK select CPU_V7M @@ -411,24 +412,6 @@ config ARCH_EBSA110 Ethernet interface, two PCMCIA sockets, two serial ports and a parallel port. -config ARCH_EFM32 - bool "Energy Micro efm32" - depends on !MMU - select ARCH_REQUIRE_GPIOLIB - select ARM_NVIC - select AUTO_ZRELADDR - select CLKSRC_OF - select COMMON_CLK - select CPU_V7M - select GENERIC_CLOCKEVENTS - select NO_DMA - select NO_IOPORT_MAP - select SPARSE_IRQ - select USE_OF - help - Support for Energy Micro's (now Silicon Labs) efm32 Giant Gecko - processors. - config ARCH_EP93XX bool "EP93xx-based" select ARCH_HAS_HOLES_MEMORYMODEL @@ -599,26 +582,6 @@ config ARCH_W90X900 -config ARCH_LPC18XX - bool "NXP LPC18xx/LPC43xx" - depends on !MMU - select ARCH_HAS_RESET_CONTROLLER - select ARCH_REQUIRE_GPIOLIB - select ARM_AMBA - select ARM_NVIC - select AUTO_ZRELADDR - select CLKSRC_LPC32XX - select COMMON_CLK - select CPU_V7M - select GENERIC_CLOCKEVENTS - select NO_IOPORT_MAP - select PINCTRL - select SPARSE_IRQ - select USE_OF - help - Support for NXP's LPC18xx Cortex-M3 and LPC43xx Cortex-M4 - high performance microcontrollers. - config ARCH_LPC32XX bool "NXP LPC32XX" select ARCH_REQUIRE_GPIOLIB @@ -793,24 +756,6 @@ config ARCH_OMAP1 help Support for older TI OMAP1 (omap7xx, omap15xx or omap16xx) -config ARCH_STM32 - bool "STMicrolectronics STM32" - depends on !MMU - select ARCH_HAS_RESET_CONTROLLER - select ARM_NVIC - select ARMV7M_SYSTICK - select AUTO_ZRELADDR - select CLKSRC_OF - select COMMON_CLK - select CPU_V7M - select GENERIC_CLOCKEVENTS - select NO_IOPORT_MAP - select RESET_CONTROLLER - select SPARSE_IRQ - select USE_OF - help - Support for STMicroelectronics STM32 processors. - endchoice menu "Multiple platform selection" @@ -1008,6 +953,35 @@ source "arch/arm/mach-zx/Kconfig" source "arch/arm/mach-zynq/Kconfig" +# ARMv7-M architecture +config ARCH_EFM32 + bool "Energy Micro efm32" + depends on ARM_SINGLE_ARMV7M + select ARCH_REQUIRE_GPIOLIB + help + Support for Energy Micro's (now Silicon Labs) efm32 Giant Gecko + processors. + +config ARCH_LPC18XX + bool "NXP LPC18xx/LPC43xx" + depends on ARM_SINGLE_ARMV7M + select ARCH_HAS_RESET_CONTROLLER + select ARM_AMBA + select CLKSRC_LPC32XX + select PINCTRL + help + Support for NXP's LPC18xx Cortex-M3 and LPC43xx Cortex-M4 + high performance microcontrollers. + +config ARCH_STM32 + bool "STMicrolectronics STM32" + depends on ARM_SINGLE_ARMV7M + select ARCH_HAS_RESET_CONTROLLER + select ARMV7M_SYSTICK + select RESET_CONTROLLER + help + Support for STMicroelectronics STM32 processors. + # Definitions to make life easier config ARCH_ACORN bool -- cgit v1.2.3 From b35d2e561ea711626749fcb511637f0e4604ff18 Mon Sep 17 00:00:00 2001 From: Gregory Fong Date: Thu, 28 May 2015 19:14:10 -0700 Subject: ARM: brcmstb: Add default gpio number Out of the brcmstb SoCs that I know, BCM3390 has the largest numbers of GPIOs, with its - 320 "peripheral" GPIOs - 5*32 = 160 UPG GPIOs (counting unused lines, which do get counted) - 2*32 = 64 UPG AON GPIOs (counting unused lines) Total: 544 I suspect that the upper limit will only need to be higher in the future, so set it to 1024. Signed-off-by: Gregory Fong Signed-off-by: Florian Fainelli --- arch/arm/Kconfig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'arch/arm/Kconfig') diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 45df48ba0b12..401a2db8ed9f 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1477,7 +1477,8 @@ config ARM_PSCI # selected platforms. config ARCH_NR_GPIO int - default 1024 if ARCH_SHMOBILE || ARCH_TEGRA || ARCH_ZYNQ + default 1024 if ARCH_BRCMSTB || ARCH_SHMOBILE || ARCH_TEGRA || \ + ARCH_ZYNQ default 512 if ARCH_EXYNOS || ARCH_KEYSTONE || SOC_OMAP5 || \ SOC_DRA7XX || ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 default 416 if ARCH_SUNXI -- cgit v1.2.3 From 2526318638589ec26804f935cf38a7fa1d43cdeb Mon Sep 17 00:00:00 2001 From: Maxime Coquelin Date: Fri, 22 May 2015 23:50:52 +0200 Subject: ARM: Kconfig: Select clocksource in STM32 entry STM32 clocksource driver needs to be selected if ARCH_STM32. Signed-off-by: Maxime Coquelin Signed-off-by: Arnd Bergmann --- arch/arm/Kconfig | 1 + 1 file changed, 1 insertion(+) (limited to 'arch/arm/Kconfig') diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 0d4eb0ebcb9f..72c4273de003 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -978,6 +978,7 @@ config ARCH_STM32 depends on ARM_SINGLE_ARMV7M select ARCH_HAS_RESET_CONTROLLER select ARMV7M_SYSTICK + select CLKSRC_STM32 select RESET_CONTROLLER help Support for STMicroelectronics STM32 processors. -- cgit v1.2.3