* [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal
@ 2014-02-11 21:11 Rob Herring
2014-02-11 21:11 ` [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options Rob Herring
` (11 more replies)
0 siblings, 12 replies; 37+ messages in thread
From: Rob Herring @ 2014-02-11 21:11 UTC (permalink / raw)
To: linux-arm-kernel
From: Rob Herring <robh@kernel.org>
This series removes common kconfig options required by multi-platform
builds out of individual platforms as they are redundant. Patches 2 and
3 make SMP and CACHE_L2X0 config options visible on MULTI_V7 builds as
most platforms enable these options and all platforms can run with them
enabled.
The previous version [1] was mainly a discussion about v6 vs. v6K.
Several platforms have this wrong and incorrectly select v6 when the
more optimal v6K option could be used. After more research, my memory
about i.MX31 was wrong and it does need to remain v6. I've tested the
v6K change on Rasp Pi. The default change to v6K for MULTI_V6 does not
switch any platforms. I don't plan to submit the v6K changes for
platforms without platform maintainers acks or testing.
Finally, patch 8 removes mach-virt as it is no longer needed. The core
ARM code can handle all the necessary initialization and mach-virt is
left as a kconfig option. Although not really related to this series,
it would otherwise conflict with it.
Rob
[1] http://lists.infradead.org/pipermail/linux-arm-kernel/2013-December/216631.html
Rob Herring (9):
ARM: centralize common multi-platform kconfig options
ARM: select HAVE_SMP for V7 multi-platform
ARM: select MIGHT_HAVE_CACHE_L2X0 for V7 multi-platform
ARM: Select V6K instead of V6 by default for multi-platform
ARM: bcm2835: enable V6K instead of plain V6
ARM: cns3xxx: enable V6K instead of plain V6
ARM: vt8500: enable V6K instead of plain V6
ARM: virt: make mach-virt just a kconfig option
ARM: virt: select ARM_AMBA
arch/arm/Kconfig | 15 ++++++++++++---
arch/arm/Makefile | 1 -
arch/arm/mach-bcm/Kconfig | 5 -----
arch/arm/mach-bcm2835/Kconfig | 4 ----
arch/arm/mach-berlin/Kconfig | 4 ----
arch/arm/mach-cns3xxx/Kconfig | 3 ---
arch/arm/mach-highbank/Kconfig | 7 -------
arch/arm/mach-hisi/Kconfig | 4 ----
arch/arm/mach-imx/Kconfig | 14 --------------
arch/arm/mach-keystone/Kconfig | 4 ----
arch/arm/mach-moxart/Kconfig | 5 -----
arch/arm/mach-mvebu/Kconfig | 6 ------
arch/arm/mach-mxs/Kconfig | 4 ----
arch/arm/mach-nomadik/Kconfig | 5 -----
arch/arm/mach-nspire/Kconfig | 5 -----
arch/arm/mach-omap2/Kconfig | 17 -----------------
arch/arm/mach-picoxcell/Kconfig | 5 -----
arch/arm/mach-prima2/Kconfig | 6 ------
arch/arm/mach-rockchip/Kconfig | 3 ---
arch/arm/mach-shmobile/Kconfig | 5 -----
arch/arm/mach-socfpga/Kconfig | 7 -------
arch/arm/mach-spear/Kconfig | 10 ----------
arch/arm/mach-sti/Kconfig | 4 ----
arch/arm/mach-sunxi/Kconfig | 5 -----
arch/arm/mach-tegra/Kconfig | 8 --------
arch/arm/mach-u300/Kconfig | 6 ------
arch/arm/mach-ux500/Kconfig | 6 ------
arch/arm/mach-vexpress/Kconfig | 5 -----
arch/arm/mach-virt/Kconfig | 10 ----------
arch/arm/mach-virt/Makefile | 5 -----
arch/arm/mach-virt/virt.c | 41 -----------------------------------------
arch/arm/mach-vt8500/Kconfig | 4 ----
arch/arm/mach-zynq/Kconfig | 7 -------
33 files changed, 12 insertions(+), 228 deletions(-)
delete mode 100644 arch/arm/mach-virt/Kconfig
delete mode 100644 arch/arm/mach-virt/Makefile
delete mode 100644 arch/arm/mach-virt/virt.c
--
1.8.3.2
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
@ 2014-02-11 21:11 ` Rob Herring
2014-02-14 10:40 ` Linus Walleij
2014-02-28 18:37 ` Kevin Hilman
2014-02-11 21:11 ` [PATCH 2/9] ARM: select HAVE_SMP for V7 multi-platform Rob Herring
` (10 subsequent siblings)
11 siblings, 2 replies; 37+ messages in thread
From: Rob Herring @ 2014-02-11 21:11 UTC (permalink / raw)
To: linux-arm-kernel
From: Rob Herring <robh@kernel.org>
Multi-platform requires various kconfig options to be selected, so
platforms don't need to select them individually.
Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Russell King <linux@arm.linux.org.uk>
---
arch/arm/Kconfig | 2 ++
arch/arm/mach-bcm/Kconfig | 5 -----
arch/arm/mach-bcm2835/Kconfig | 3 ---
arch/arm/mach-berlin/Kconfig | 3 ---
arch/arm/mach-cns3xxx/Kconfig | 1 -
arch/arm/mach-highbank/Kconfig | 6 ------
arch/arm/mach-hisi/Kconfig | 3 ---
arch/arm/mach-imx/Kconfig | 11 -----------
arch/arm/mach-keystone/Kconfig | 3 ---
arch/arm/mach-moxart/Kconfig | 5 -----
arch/arm/mach-mvebu/Kconfig | 5 -----
arch/arm/mach-mxs/Kconfig | 4 ----
arch/arm/mach-nomadik/Kconfig | 5 -----
arch/arm/mach-nspire/Kconfig | 5 -----
arch/arm/mach-omap2/Kconfig | 15 ---------------
arch/arm/mach-picoxcell/Kconfig | 4 ----
arch/arm/mach-prima2/Kconfig | 4 ----
arch/arm/mach-rockchip/Kconfig | 2 --
arch/arm/mach-shmobile/Kconfig | 3 ---
arch/arm/mach-socfpga/Kconfig | 6 ------
arch/arm/mach-spear/Kconfig | 8 --------
arch/arm/mach-sti/Kconfig | 2 --
arch/arm/mach-sunxi/Kconfig | 4 ----
arch/arm/mach-tegra/Kconfig | 6 ------
arch/arm/mach-u300/Kconfig | 6 ------
arch/arm/mach-ux500/Kconfig | 4 ----
arch/arm/mach-vexpress/Kconfig | 3 ---
arch/arm/mach-virt/Kconfig | 4 ----
arch/arm/mach-vt8500/Kconfig | 3 ---
arch/arm/mach-zynq/Kconfig | 5 -----
30 files changed, 2 insertions(+), 138 deletions(-)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index e254198..72d5571 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -306,9 +306,11 @@ choice
config ARCH_MULTIPLATFORM
bool "Allow multiple platforms to be selected"
depends on MMU
+ select ARCH_WANT_OPTIONAL_GPIOLIB
select ARM_PATCH_PHYS_VIRT
select AUTO_ZRELADDR
select COMMON_CLK
+ select GENERIC_CLOCKEVENTS
select MULTI_IRQ_HANDLER
select SPARSE_IRQ
select USE_OF
diff --git a/arch/arm/mach-bcm/Kconfig b/arch/arm/mach-bcm/Kconfig
index b1aa6a9..af4f2df 100644
--- a/arch/arm/mach-bcm/Kconfig
+++ b/arch/arm/mach-bcm/Kconfig
@@ -16,12 +16,7 @@ config ARCH_BCM_MOBILE
select ARM_ERRATA_754322
select ARM_ERRATA_764369 if SMP
select ARM_GIC
- select CPU_V7
- select CLKSRC_OF
- select GENERIC_CLOCKEVENTS
- select GENERIC_TIME
select GPIO_BCM_KONA
- select SPARSE_IRQ
select TICK_ONESHOT
select CACHE_L2X0
select HAVE_ARM_ARCH_TIMER
diff --git a/arch/arm/mach-bcm2835/Kconfig b/arch/arm/mach-bcm2835/Kconfig
index d1f9612..1c0decd 100644
--- a/arch/arm/mach-bcm2835/Kconfig
+++ b/arch/arm/mach-bcm2835/Kconfig
@@ -4,10 +4,7 @@ config ARCH_BCM2835
select ARM_AMBA
select ARM_ERRATA_411920
select ARM_TIMER_SP804
- select CLKDEV_LOOKUP
- select CLKSRC_OF
select CPU_V6
- select GENERIC_CLOCKEVENTS
select PINCTRL
select PINCTRL_BCM2835
help
diff --git a/arch/arm/mach-berlin/Kconfig b/arch/arm/mach-berlin/Kconfig
index 7a02d22..b346f59 100644
--- a/arch/arm/mach-berlin/Kconfig
+++ b/arch/arm/mach-berlin/Kconfig
@@ -1,9 +1,7 @@
config ARCH_BERLIN
bool "Marvell Berlin SoCs" if ARCH_MULTI_V7
select ARM_GIC
- select GENERIC_CLOCKEVENTS
select GENERIC_IRQ_CHIP
- select COMMON_CLK
select DW_APB_ICTL
select DW_APB_TIMER_OF
@@ -21,7 +19,6 @@ config MACH_BERLIN_BG2
config MACH_BERLIN_BG2CD
bool "Marvell Armada 1500-mini (BG2CD)"
select CACHE_L2X0
- select CPU_V7
select HAVE_ARM_TWD if SMP
endmenu
diff --git a/arch/arm/mach-cns3xxx/Kconfig b/arch/arm/mach-cns3xxx/Kconfig
index dbf0df8..e346688 100644
--- a/arch/arm/mach-cns3xxx/Kconfig
+++ b/arch/arm/mach-cns3xxx/Kconfig
@@ -2,7 +2,6 @@ config ARCH_CNS3XXX
bool "Cavium Networks CNS3XXX family" if ARCH_MULTI_V6
select ARM_GIC
select CPU_V6K
- select GENERIC_CLOCKEVENTS
select MIGHT_HAVE_CACHE_L2X0
select MIGHT_HAVE_PCI
select PCI_DOMAINS if PCI
diff --git a/arch/arm/mach-highbank/Kconfig b/arch/arm/mach-highbank/Kconfig
index 0aded64..59274a7 100644
--- a/arch/arm/mach-highbank/Kconfig
+++ b/arch/arm/mach-highbank/Kconfig
@@ -5,7 +5,6 @@ config ARCH_HIGHBANK
select ARCH_HAS_HOLES_MEMORYMODEL
select ARCH_HAS_OPP
select ARCH_SUPPORTS_BIG_ENDIAN
- select ARCH_WANT_OPTIONAL_GPIOLIB
select ARM_AMBA
select ARM_ERRATA_764369 if SMP
select ARM_ERRATA_775420
@@ -14,14 +13,9 @@ config ARCH_HIGHBANK
select ARM_PSCI
select ARM_TIMER_SP804
select CACHE_L2X0
- select COMMON_CLK
- select CPU_V7
- select GENERIC_CLOCKEVENTS
select HAVE_ARM_SCU
select HAVE_ARM_TWD if SMP
select HAVE_SMP
select MAILBOX
select PL320_MBOX
- select SPARSE_IRQ
- select USE_OF
select ZONE_DMA if ARM_LPAE
diff --git a/arch/arm/mach-hisi/Kconfig b/arch/arm/mach-hisi/Kconfig
index 1abae5f..95492d7 100644
--- a/arch/arm/mach-hisi/Kconfig
+++ b/arch/arm/mach-hisi/Kconfig
@@ -3,10 +3,7 @@ config ARCH_HI3xxx
select ARM_AMBA
select ARM_GIC
select ARM_TIMER_SP804
- select ARCH_WANT_OPTIONAL_GPIOLIB
select CACHE_L2X0
- select CLKSRC_OF
- select GENERIC_CLOCKEVENTS
select HAVE_ARM_SCU
select HAVE_ARM_TWD if SMP
select HAVE_SMP
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index 33567aa..3dd2c60 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -2,18 +2,12 @@ config ARCH_MXC
bool "Freescale i.MX family" if ARCH_MULTI_V4_V5 || ARCH_MULTI_V6_V7
select ARCH_REQUIRE_GPIOLIB
select ARM_CPU_SUSPEND if PM
- select ARM_PATCH_PHYS_VIRT
select CLKSRC_MMIO
- select COMMON_CLK
select GENERIC_ALLOCATOR
- select GENERIC_CLOCKEVENTS
select GENERIC_IRQ_CHIP
select MIGHT_HAVE_CACHE_L2X0 if ARCH_MULTI_V6_V7
- select MULTI_IRQ_HANDLER
select PINCTRL
select SOC_BUS
- select SPARSE_IRQ
- select USE_OF
help
Support for Freescale MXC/iMX-based family of processors
@@ -132,7 +126,6 @@ config SOC_IMX5
select ARCH_HAS_CPUFREQ
select ARCH_HAS_OPP
select ARCH_MXC_IOMUX_V3
- select CPU_V7
select MXC_TZIC
config SOC_IMX51
@@ -792,7 +785,6 @@ config SOC_IMX6Q
select ARM_ERRATA_764369 if SMP
select ARM_ERRATA_775420
select ARM_GIC
- select CPU_V7
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
select HAVE_IMX_ANATOP
@@ -817,7 +809,6 @@ config SOC_IMX6SL
select ARM_ERRATA_754322
select ARM_ERRATA_775420
select ARM_GIC
- select CPU_V7
select HAVE_IMX_ANATOP
select HAVE_IMX_GPC
select HAVE_IMX_MMDC
@@ -833,9 +824,7 @@ config SOC_IMX6SL
config SOC_VF610
bool "Vybrid Family VF610 support"
- select CPU_V7
select ARM_GIC
- select CLKSRC_OF
select PINCTRL_VF610
select VF_PIT_TIMER
select PL310_ERRATA_588369 if CACHE_PL310
diff --git a/arch/arm/mach-keystone/Kconfig b/arch/arm/mach-keystone/Kconfig
index 90a708f..00ed744 100644
--- a/arch/arm/mach-keystone/Kconfig
+++ b/arch/arm/mach-keystone/Kconfig
@@ -1,13 +1,10 @@
config ARCH_KEYSTONE
bool "Texas Instruments Keystone Devices"
depends on ARCH_MULTI_V7
- select CPU_V7
select ARM_GIC
select HAVE_ARM_ARCH_TIMER
select HAVE_SMP
select CLKSRC_MMIO
- select GENERIC_CLOCKEVENTS
- select ARCH_WANT_OPTIONAL_GPIOLIB
select ARM_ERRATA_798181 if SMP
select COMMON_CLK_KEYSTONE
select ARCH_SUPPORTS_BIG_ENDIAN
diff --git a/arch/arm/mach-moxart/Kconfig b/arch/arm/mach-moxart/Kconfig
index 3795ae2..95a6a4b 100644
--- a/arch/arm/mach-moxart/Kconfig
+++ b/arch/arm/mach-moxart/Kconfig
@@ -2,14 +2,9 @@ config ARCH_MOXART
bool "MOXA ART SoC" if ARCH_MULTI_V4T
select CPU_FA526
select ARM_DMA_MEM_BUFFERABLE
- select USE_OF
- select CLKSRC_OF
select CLKSRC_MMIO
- select HAVE_CLK
- select COMMON_CLK
select GENERIC_IRQ_CHIP
select ARCH_REQUIRE_GPIOLIB
- select GENERIC_CLOCKEVENTS
select PHYLIB if NETDEVICES
help
Say Y here if you want to run your kernel on hardware with a
diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig
index 5e269d7..d581e84 100644
--- a/arch/arm/mach-mvebu/Kconfig
+++ b/arch/arm/mach-mvebu/Kconfig
@@ -2,15 +2,10 @@ config ARCH_MVEBU
bool "Marvell SOCs with Device Tree support" if ARCH_MULTI_V7
select ARCH_SUPPORTS_BIG_ENDIAN
select CLKSRC_MMIO
- select COMMON_CLK
- select GENERIC_CLOCKEVENTS
select GENERIC_IRQ_CHIP
select IRQ_DOMAIN
- select MULTI_IRQ_HANDLER
select PINCTRL
select PLAT_ORION
- select SPARSE_IRQ
- select CLKDEV_LOOKUP
select MVEBU_MBUS
select ZONE_DMA if ARM_LPAE
select ARCH_REQUIRE_GPIOLIB
diff --git a/arch/arm/mach-mxs/Kconfig b/arch/arm/mach-mxs/Kconfig
index 8cde9e0..8479413 100644
--- a/arch/arm/mach-mxs/Kconfig
+++ b/arch/arm/mach-mxs/Kconfig
@@ -16,11 +16,7 @@ config ARCH_MXS
bool "Freescale MXS (i.MX23, i.MX28) support"
depends on ARCH_MULTI_V5
select ARCH_REQUIRE_GPIOLIB
- select CLKDEV_LOOKUP
select CLKSRC_MMIO
- select CLKSRC_OF
- select GENERIC_CLOCKEVENTS
- select HAVE_CLK_PREPARE
select PINCTRL
select SOC_BUS
select SOC_IMX23
diff --git a/arch/arm/mach-nomadik/Kconfig b/arch/arm/mach-nomadik/Kconfig
index 4d42da4..486d301 100644
--- a/arch/arm/mach-nomadik/Kconfig
+++ b/arch/arm/mach-nomadik/Kconfig
@@ -6,16 +6,11 @@ config ARCH_NOMADIK
select ARM_VIC
select CLKSRC_NOMADIK_MTU
select CLKSRC_NOMADIK_MTU_SCHED_CLOCK
- select CLKSRC_OF
- select COMMON_CLK
select CPU_ARM926T
- select GENERIC_CLOCKEVENTS
select MIGHT_HAVE_CACHE_L2X0
select PINCTRL
select PINCTRL_NOMADIK
select PINCTRL_STN8815
- select SPARSE_IRQ
- select USE_OF
help
Support for the Nomadik platform by ST-Ericsson
diff --git a/arch/arm/mach-nspire/Kconfig b/arch/arm/mach-nspire/Kconfig
index 59d8f0a..bc41f26 100644
--- a/arch/arm/mach-nspire/Kconfig
+++ b/arch/arm/mach-nspire/Kconfig
@@ -3,14 +3,9 @@ config ARCH_NSPIRE
depends on ARCH_MULTI_V4_V5
depends on MMU
select CPU_ARM926T
- select COMMON_CLK
- select GENERIC_CLOCKEVENTS
select GENERIC_IRQ_CHIP
- select SPARSE_IRQ
select ARM_AMBA
select ARM_VIC
select ARM_TIMER_SP804
- select USE_OF
- select CLKSRC_OF
help
This enables support for systems using the TI-NSPIRE CPU
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index e2ce4f8..d4eb5e9 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -6,7 +6,6 @@ config ARCH_OMAP2
depends on ARCH_MULTI_V6
select ARCH_OMAP2PLUS
select CPU_V6
- select MULTI_IRQ_HANDLER
select SOC_HAS_OMAP2_SDRC
config ARCH_OMAP3
@@ -15,8 +14,6 @@ config ARCH_OMAP3
select ARCH_OMAP2PLUS
select ARCH_HAS_OPP
select ARM_CPU_SUSPEND if PM
- select CPU_V7
- select MULTI_IRQ_HANDLER
select OMAP_INTERCONNECT
select PM_OPP if PM
select PM_RUNTIME if CPU_IDLE
@@ -33,7 +30,6 @@ config ARCH_OMAP4
select ARM_ERRATA_720789
select ARM_GIC
select CACHE_L2X0
- select CPU_V7
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
select HAVE_SMP
@@ -52,7 +48,6 @@ config SOC_OMAP5
select ARCH_OMAP2PLUS
select ARM_CPU_SUSPEND if PM
select ARM_GIC
- select CPU_V7
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
select HAVE_SMP
@@ -64,15 +59,11 @@ config SOC_AM33XX
depends on ARCH_MULTI_V7
select ARCH_OMAP2PLUS
select ARM_CPU_SUSPEND if PM
- select CPU_V7
- select MULTI_IRQ_HANDLER
config SOC_AM43XX
bool "TI AM43x"
depends on ARCH_MULTI_V7
- select CPU_V7
select ARCH_OMAP2PLUS
- select MULTI_IRQ_HANDLER
select ARM_GIC
select MACH_OMAP_GENERIC
@@ -82,8 +73,6 @@ config SOC_DRA7XX
select ARCH_OMAP2PLUS
select ARM_CPU_SUSPEND if PM
select ARM_GIC
- select CPU_V7
- select HAVE_SMP
select HAVE_ARM_ARCH_TIMER
config ARCH_OMAP2PLUS
@@ -94,17 +83,13 @@ config ARCH_OMAP2PLUS
select ARCH_OMAP
select ARCH_REQUIRE_GPIOLIB
select CLKSRC_MMIO
- select COMMON_CLK
- select GENERIC_CLOCKEVENTS
select GENERIC_IRQ_CHIP
select MACH_OMAP_GENERIC
select OMAP_DM_TIMER
select PINCTRL
select PROC_DEVICETREE if PROC_FS
select SOC_BUS
- select SPARSE_IRQ
select TI_PRIV_EDMA
- select USE_OF
help
Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
diff --git a/arch/arm/mach-picoxcell/Kconfig b/arch/arm/mach-picoxcell/Kconfig
index b1022f4..c88ff74 100644
--- a/arch/arm/mach-picoxcell/Kconfig
+++ b/arch/arm/mach-picoxcell/Kconfig
@@ -1,12 +1,8 @@
config ARCH_PICOXCELL
bool "Picochip PicoXcell" if ARCH_MULTI_V6
select ARCH_REQUIRE_GPIOLIB
- select ARM_PATCH_PHYS_VIRT
select ARM_VIC
select CPU_V6K
select DW_APB_TIMER_OF
- select GENERIC_CLOCKEVENTS
select HAVE_TCM
select NO_IOPORT
- select SPARSE_IRQ
- select USE_OF
diff --git a/arch/arm/mach-prima2/Kconfig b/arch/arm/mach-prima2/Kconfig
index 6988b11..16c2d90 100644
--- a/arch/arm/mach-prima2/Kconfig
+++ b/arch/arm/mach-prima2/Kconfig
@@ -1,7 +1,6 @@
config ARCH_SIRF
bool "CSR SiRF" if ARCH_MULTI_V7
select ARCH_REQUIRE_GPIOLIB
- select GENERIC_CLOCKEVENTS
select GENERIC_IRQ_CHIP
select MIGHT_HAVE_CACHE_L2X0
select NO_IOPORT
@@ -17,7 +16,6 @@ menu "CSR SiRF atlas6/primaII/Marco/Polo Specific Features"
config ARCH_ATLAS6
bool "CSR SiRFSoC ATLAS6 ARM Cortex A9 Platform"
default y
- select CPU_V7
select SIRF_IRQ
help
Support for CSR SiRFSoC ARM Cortex A9 Platform
@@ -25,7 +23,6 @@ config ARCH_ATLAS6
config ARCH_PRIMA2
bool "CSR SiRFSoC PRIMA2 ARM Cortex A9 Platform"
default y
- select CPU_V7
select SIRF_IRQ
select ZONE_DMA
help
@@ -35,7 +32,6 @@ config ARCH_MARCO
bool "CSR SiRFSoC MARCO ARM Cortex A9 Platform"
default y
select ARM_GIC
- select CPU_V7
select HAVE_ARM_SCU if SMP
select HAVE_SMP
select SMP_ON_UP if SMP
diff --git a/arch/arm/mach-rockchip/Kconfig b/arch/arm/mach-rockchip/Kconfig
index cf073de..2a695bc 100644
--- a/arch/arm/mach-rockchip/Kconfig
+++ b/arch/arm/mach-rockchip/Kconfig
@@ -7,8 +7,6 @@ config ARCH_ROCKCHIP
select CACHE_L2X0
select HAVE_ARM_TWD if SMP
select HAVE_SMP
- select COMMON_CLK
- select GENERIC_CLOCKEVENTS
select DW_APB_TIMER_OF
select ARM_GLOBAL_TIMER
select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
diff --git a/arch/arm/mach-shmobile/Kconfig b/arch/arm/mach-shmobile/Kconfig
index 05fa505..6f24e9e 100644
--- a/arch/arm/mach-shmobile/Kconfig
+++ b/arch/arm/mach-shmobile/Kconfig
@@ -5,8 +5,6 @@ config ARCH_SHMOBILE_MULTI
bool "Renesas ARM SoCs" if ARCH_MULTI_V7
depends on MMU
select ARCH_SHMOBILE
- select CPU_V7
- select GENERIC_CLOCKEVENTS
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
select HAVE_SMP
@@ -16,7 +14,6 @@ config ARCH_SHMOBILE_MULTI
select NO_IOPORT
select PINCTRL
select ARCH_REQUIRE_GPIOLIB
- select CLKDEV_LOOKUP
if ARCH_SHMOBILE_MULTI
diff --git a/arch/arm/mach-socfpga/Kconfig b/arch/arm/mach-socfpga/Kconfig
index aee77f0..2249137 100644
--- a/arch/arm/mach-socfpga/Kconfig
+++ b/arch/arm/mach-socfpga/Kconfig
@@ -1,17 +1,11 @@
config ARCH_SOCFPGA
bool "Altera SOCFPGA family" if ARCH_MULTI_V7
- select ARCH_WANT_OPTIONAL_GPIOLIB
select ARM_AMBA
select ARM_GIC
select CACHE_L2X0
- select COMMON_CLK
- select CPU_V7
select DW_APB_TIMER_OF
- select GENERIC_CLOCKEVENTS
select GPIO_PL061 if GPIOLIB
select HAVE_ARM_SCU
select HAVE_ARM_TWD if SMP
select HAVE_SMP
select MFD_SYSCON
- select SPARSE_IRQ
- select USE_OF
diff --git a/arch/arm/mach-spear/Kconfig b/arch/arm/mach-spear/Kconfig
index ac1710e6..a7a28ea 100644
--- a/arch/arm/mach-spear/Kconfig
+++ b/arch/arm/mach-spear/Kconfig
@@ -8,8 +8,6 @@ menuconfig PLAT_SPEAR
select ARCH_REQUIRE_GPIOLIB
select ARM_AMBA
select CLKSRC_MMIO
- select COMMON_CLK
- select GENERIC_CLOCKEVENTS
if PLAT_SPEAR
@@ -18,14 +16,12 @@ config ARCH_SPEAR13XX
depends on ARCH_MULTI_V7 || PLAT_SPEAR_SINGLE
select ARCH_HAS_CPUFREQ
select ARM_GIC
- select CPU_V7
select GPIO_SPEAR_SPICS
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
select HAVE_SMP
select MIGHT_HAVE_CACHE_L2X0
select PINCTRL
- select USE_OF
help
Supports for ARM's SPEAR13XX family
@@ -50,9 +46,7 @@ config ARCH_SPEAR3XX
depends on ARCH_MULTI_V5 || PLAT_SPEAR_SINGLE
depends on !ARCH_SPEAR13XX
select ARM_VIC
- select CPU_ARM926T
select PINCTRL
- select USE_OF
help
Supports for ARM's SPEAR3XX family
@@ -83,14 +77,12 @@ config ARCH_SPEAR6XX
depends on ARCH_MULTI_V5 || PLAT_SPEAR_SINGLE
depends on !ARCH_SPEAR13XX
select ARM_VIC
- select CPU_ARM926T
help
Supports for ARM's SPEAR6XX family
config MACH_SPEAR600
def_bool y
depends on ARCH_SPEAR6XX
- select USE_OF
help
Supports ST SPEAr600 boards configured via the device-treesource "arch/arm/mach-spear6xx/Kconfig"
diff --git a/arch/arm/mach-sti/Kconfig b/arch/arm/mach-sti/Kconfig
index d71654b..9c6dda8 100644
--- a/arch/arm/mach-sti/Kconfig
+++ b/arch/arm/mach-sti/Kconfig
@@ -1,7 +1,5 @@
menuconfig ARCH_STI
bool "STMicroelectronics Consumer Electronics SOCs with Device Trees" if ARCH_MULTI_V7
- select GENERIC_CLOCKEVENTS
- select CLKDEV_LOOKUP
select ARM_GIC
select ARM_GLOBAL_TIMER
select PINCTRL
diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig
index b9d6cad..201ef9b 100644
--- a/arch/arm/mach-sunxi/Kconfig
+++ b/arch/arm/mach-sunxi/Kconfig
@@ -5,14 +5,10 @@ config ARCH_SUNXI
select ARM_GIC
select ARM_PSCI
select CLKSRC_MMIO
- select CLKSRC_OF
- select COMMON_CLK
- select GENERIC_CLOCKEVENTS
select GENERIC_IRQ_CHIP
select HAVE_SMP
select PINCTRL
select PINCTRL_SUNXI
select RESET_CONTROLLER
- select SPARSE_IRQ
select SUN4I_TIMER
select SUN5I_HSTIMER
diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig
index b1232d8..5dc3e38 100644
--- a/arch/arm/mach-tegra/Kconfig
+++ b/arch/arm/mach-tegra/Kconfig
@@ -5,10 +5,6 @@ config ARCH_TEGRA
select ARCH_SUPPORTS_TRUSTED_FOUNDATIONS
select ARM_GIC
select CLKSRC_MMIO
- select CLKSRC_OF
- select COMMON_CLK
- select CPU_V7
- select GENERIC_CLOCKEVENTS
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
select HAVE_SMP
@@ -18,11 +14,9 @@ config ARCH_TEGRA
select ARCH_HAS_RESET_CONTROLLER
select RESET_CONTROLLER
select SOC_BUS
- select SPARSE_IRQ
select USB_ARCH_HAS_EHCI if USB_SUPPORT
select USB_ULPI if USB_PHY
select USB_ULPI_VIEWPORT if USB_PHY
- select USE_OF
help
This enables support for NVIDIA Tegra based systems.
diff --git a/arch/arm/mach-u300/Kconfig b/arch/arm/mach-u300/Kconfig
index 8e23071..e3a96d7 100644
--- a/arch/arm/mach-u300/Kconfig
+++ b/arch/arm/mach-u300/Kconfig
@@ -3,20 +3,14 @@ config ARCH_U300
depends on MMU
select ARCH_REQUIRE_GPIOLIB
select ARM_AMBA
- select ARM_PATCH_PHYS_VIRT
select ARM_VIC
select CLKSRC_MMIO
- select CLKSRC_OF
- select COMMON_CLK
select CPU_ARM926T
- select GENERIC_CLOCKEVENTS
select HAVE_TCM
select PINCTRL
select PINCTRL_COH901
select PINCTRL_U300
- select SPARSE_IRQ
select MFD_SYSCON
- select USE_OF
help
Support for ST-Ericsson U300 series mobile platforms.
diff --git a/arch/arm/mach-ux500/Kconfig b/arch/arm/mach-ux500/Kconfig
index 0034d2c..5d71c82 100644
--- a/arch/arm/mach-ux500/Kconfig
+++ b/arch/arm/mach-ux500/Kconfig
@@ -11,9 +11,6 @@ config ARCH_U8500
select ARM_GIC
select CACHE_L2X0
select CLKSRC_NOMADIK_MTU
- select COMMON_CLK
- select CPU_V7
- select GENERIC_CLOCKEVENTS
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
select HAVE_SMP
@@ -76,7 +73,6 @@ config UX500_AUTO_PLATFORM
config MACH_UX500_DT
bool "Generic U8500 support using device tree"
depends on MACH_MOP500
- select USE_OF
endmenu
diff --git a/arch/arm/mach-vexpress/Kconfig b/arch/arm/mach-vexpress/Kconfig
index 4a70be4..fa29222 100644
--- a/arch/arm/mach-vexpress/Kconfig
+++ b/arch/arm/mach-vexpress/Kconfig
@@ -5,10 +5,7 @@ config ARCH_VEXPRESS
select ARM_AMBA
select ARM_GIC
select ARM_TIMER_SP804
- select COMMON_CLK
select COMMON_CLK_VERSATILE
- select CPU_V7
- select GENERIC_CLOCKEVENTS
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
select HAVE_PATA_PLATFORM
diff --git a/arch/arm/mach-virt/Kconfig b/arch/arm/mach-virt/Kconfig
index 081d469..eaad072 100644
--- a/arch/arm/mach-virt/Kconfig
+++ b/arch/arm/mach-virt/Kconfig
@@ -1,10 +1,6 @@
config ARCH_VIRT
bool "Dummy Virtual Machine" if ARCH_MULTI_V7
- select ARCH_WANT_OPTIONAL_GPIOLIB
select ARM_GIC
select HAVE_ARM_ARCH_TIMER
select ARM_PSCI
select HAVE_SMP
- select CPU_V7
- select SPARSE_IRQ
- select USE_OF
diff --git a/arch/arm/mach-vt8500/Kconfig b/arch/arm/mach-vt8500/Kconfig
index 927be93..c581ed2 100644
--- a/arch/arm/mach-vt8500/Kconfig
+++ b/arch/arm/mach-vt8500/Kconfig
@@ -3,8 +3,6 @@ config ARCH_VT8500
select ARCH_HAS_CPUFREQ
select ARCH_REQUIRE_GPIOLIB
select CLKDEV_LOOKUP
- select CLKSRC_OF
- select GENERIC_CLOCKEVENTS
select VT8500_TIMER
select PINCTRL
help
@@ -29,6 +27,5 @@ config ARCH_WM8850
bool "WonderMedia WM8850"
depends on ARCH_MULTI_V7
select ARCH_VT8500
- select CPU_V7
help
Support for WonderMedia WM8850 System-on-Chip.
diff --git a/arch/arm/mach-zynq/Kconfig b/arch/arm/mach-zynq/Kconfig
index 6b04260..85d1805 100644
--- a/arch/arm/mach-zynq/Kconfig
+++ b/arch/arm/mach-zynq/Kconfig
@@ -2,16 +2,11 @@ config ARCH_ZYNQ
bool "Xilinx Zynq ARM Cortex A9 Platform" if ARCH_MULTI_V7
select ARM_AMBA
select ARM_GIC
- select COMMON_CLK
- select CPU_V7
- select GENERIC_CLOCKEVENTS
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
select ICST
select MIGHT_HAVE_CACHE_L2X0
- select USE_OF
select HAVE_SMP
- select SPARSE_IRQ
select CADENCE_TTC_TIMER
select ARM_GLOBAL_TIMER
help
--
1.8.3.2
^ permalink raw reply related [flat|nested] 37+ messages in thread
* [PATCH 2/9] ARM: select HAVE_SMP for V7 multi-platform
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
2014-02-11 21:11 ` [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options Rob Herring
@ 2014-02-11 21:11 ` Rob Herring
2014-02-14 10:41 ` Linus Walleij
2014-02-11 21:11 ` [PATCH 3/9] ARM: select MIGHT_HAVE_CACHE_L2X0 " Rob Herring
` (9 subsequent siblings)
11 siblings, 1 reply; 37+ messages in thread
From: Rob Herring @ 2014-02-11 21:11 UTC (permalink / raw)
To: linux-arm-kernel
From: Rob Herring <robh@kernel.org>
All V7 platforms can run SMP kernels, so make CONFIG_SMP visible for V7
multi-platform builds.
Signed-off-by: Rob Herring <robh@kernel.org>
---
arch/arm/Kconfig | 1 +
arch/arm/mach-berlin/Kconfig | 1 -
arch/arm/mach-highbank/Kconfig | 1 -
arch/arm/mach-hisi/Kconfig | 1 -
arch/arm/mach-imx/Kconfig | 1 -
arch/arm/mach-keystone/Kconfig | 1 -
arch/arm/mach-mvebu/Kconfig | 1 -
arch/arm/mach-omap2/Kconfig | 2 --
arch/arm/mach-prima2/Kconfig | 1 -
arch/arm/mach-rockchip/Kconfig | 1 -
arch/arm/mach-shmobile/Kconfig | 1 -
arch/arm/mach-socfpga/Kconfig | 1 -
arch/arm/mach-spear/Kconfig | 1 -
arch/arm/mach-sti/Kconfig | 1 -
arch/arm/mach-sunxi/Kconfig | 1 -
arch/arm/mach-tegra/Kconfig | 1 -
arch/arm/mach-ux500/Kconfig | 1 -
arch/arm/mach-vexpress/Kconfig | 1 -
arch/arm/mach-zynq/Kconfig | 1 -
19 files changed, 1 insertion(+), 19 deletions(-)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 72d5571..a1f36e7 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -917,6 +917,7 @@ config ARCH_MULTI_V7
default y
select ARCH_MULTI_V6_V7
select CPU_V7
+ select HAVE_SMP
config ARCH_MULTI_V6_V7
bool
diff --git a/arch/arm/mach-berlin/Kconfig b/arch/arm/mach-berlin/Kconfig
index b346f59..b0cb072 100644
--- a/arch/arm/mach-berlin/Kconfig
+++ b/arch/arm/mach-berlin/Kconfig
@@ -14,7 +14,6 @@ config MACH_BERLIN_BG2
select CACHE_L2X0
select CPU_PJ4B
select HAVE_ARM_TWD if SMP
- select HAVE_SMP
config MACH_BERLIN_BG2CD
bool "Marvell Armada 1500-mini (BG2CD)"
diff --git a/arch/arm/mach-highbank/Kconfig b/arch/arm/mach-highbank/Kconfig
index 59274a7..830b76e 100644
--- a/arch/arm/mach-highbank/Kconfig
+++ b/arch/arm/mach-highbank/Kconfig
@@ -15,7 +15,6 @@ config ARCH_HIGHBANK
select CACHE_L2X0
select HAVE_ARM_SCU
select HAVE_ARM_TWD if SMP
- select HAVE_SMP
select MAILBOX
select PL320_MBOX
select ZONE_DMA if ARM_LPAE
diff --git a/arch/arm/mach-hisi/Kconfig b/arch/arm/mach-hisi/Kconfig
index 95492d7..9d0a87b 100644
--- a/arch/arm/mach-hisi/Kconfig
+++ b/arch/arm/mach-hisi/Kconfig
@@ -6,7 +6,6 @@ config ARCH_HI3xxx
select CACHE_L2X0
select HAVE_ARM_SCU
select HAVE_ARM_TWD if SMP
- select HAVE_SMP
select PINCTRL
select PINCTRL_SINGLE
help
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index 3dd2c60..1a6a843 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -791,7 +791,6 @@ config SOC_IMX6Q
select HAVE_IMX_GPC
select HAVE_IMX_MMDC
select HAVE_IMX_SRC
- select HAVE_SMP
select MFD_SYSCON
select MIGHT_HAVE_PCI
select PCI_DOMAINS if PCI
diff --git a/arch/arm/mach-keystone/Kconfig b/arch/arm/mach-keystone/Kconfig
index 00ed744..f50bc93 100644
--- a/arch/arm/mach-keystone/Kconfig
+++ b/arch/arm/mach-keystone/Kconfig
@@ -3,7 +3,6 @@ config ARCH_KEYSTONE
depends on ARCH_MULTI_V7
select ARM_GIC
select HAVE_ARM_ARCH_TIMER
- select HAVE_SMP
select CLKSRC_MMIO
select ARM_ERRATA_798181 if SMP
select COMMON_CLK_KEYSTONE
diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig
index d581e84..875a352 100644
--- a/arch/arm/mach-mvebu/Kconfig
+++ b/arch/arm/mach-mvebu/Kconfig
@@ -19,7 +19,6 @@ menu "Marvell SOC with device tree"
config MACH_ARMADA_370_XP
bool
select ARMADA_370_XP_TIMER
- select HAVE_SMP
select CACHE_L2X0
select CPU_PJ4B
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index d4eb5e9..922cbd8 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -32,7 +32,6 @@ config ARCH_OMAP4
select CACHE_L2X0
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
- select HAVE_SMP
select OMAP_INTERCONNECT
select PL310_ERRATA_588369
select PL310_ERRATA_727915
@@ -50,7 +49,6 @@ config SOC_OMAP5
select ARM_GIC
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
- select HAVE_SMP
select HAVE_ARM_ARCH_TIMER
select ARM_ERRATA_798181 if SMP
diff --git a/arch/arm/mach-prima2/Kconfig b/arch/arm/mach-prima2/Kconfig
index 16c2d90..59aa3ea 100644
--- a/arch/arm/mach-prima2/Kconfig
+++ b/arch/arm/mach-prima2/Kconfig
@@ -33,7 +33,6 @@ config ARCH_MARCO
default y
select ARM_GIC
select HAVE_ARM_SCU if SMP
- select HAVE_SMP
select SMP_ON_UP if SMP
help
Support for CSR SiRFSoC ARM Cortex A9 Platform
diff --git a/arch/arm/mach-rockchip/Kconfig b/arch/arm/mach-rockchip/Kconfig
index 2a695bc..6b2f586 100644
--- a/arch/arm/mach-rockchip/Kconfig
+++ b/arch/arm/mach-rockchip/Kconfig
@@ -6,7 +6,6 @@ config ARCH_ROCKCHIP
select ARM_GIC
select CACHE_L2X0
select HAVE_ARM_TWD if SMP
- select HAVE_SMP
select DW_APB_TIMER_OF
select ARM_GLOBAL_TIMER
select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
diff --git a/arch/arm/mach-shmobile/Kconfig b/arch/arm/mach-shmobile/Kconfig
index 6f24e9e..99f181d 100644
--- a/arch/arm/mach-shmobile/Kconfig
+++ b/arch/arm/mach-shmobile/Kconfig
@@ -7,7 +7,6 @@ config ARCH_SHMOBILE_MULTI
select ARCH_SHMOBILE
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
- select HAVE_SMP
select ARM_GIC
select MIGHT_HAVE_CACHE_L2X0
select MIGHT_HAVE_PCI
diff --git a/arch/arm/mach-socfpga/Kconfig b/arch/arm/mach-socfpga/Kconfig
index 2249137..b5f8d75 100644
--- a/arch/arm/mach-socfpga/Kconfig
+++ b/arch/arm/mach-socfpga/Kconfig
@@ -7,5 +7,4 @@ config ARCH_SOCFPGA
select GPIO_PL061 if GPIOLIB
select HAVE_ARM_SCU
select HAVE_ARM_TWD if SMP
- select HAVE_SMP
select MFD_SYSCON
diff --git a/arch/arm/mach-spear/Kconfig b/arch/arm/mach-spear/Kconfig
index a7a28ea..601b8d8 100644
--- a/arch/arm/mach-spear/Kconfig
+++ b/arch/arm/mach-spear/Kconfig
@@ -19,7 +19,6 @@ config ARCH_SPEAR13XX
select GPIO_SPEAR_SPICS
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
- select HAVE_SMP
select MIGHT_HAVE_CACHE_L2X0
select PINCTRL
help
diff --git a/arch/arm/mach-sti/Kconfig b/arch/arm/mach-sti/Kconfig
index 9c6dda8..c3fdcee 100644
--- a/arch/arm/mach-sti/Kconfig
+++ b/arch/arm/mach-sti/Kconfig
@@ -6,7 +6,6 @@ menuconfig ARCH_STI
select PINCTRL_ST
select MFD_SYSCON
select MIGHT_HAVE_CACHE_L2X0
- select HAVE_SMP
select HAVE_ARM_SCU if SMP
select ARCH_REQUIRE_GPIOLIB
select ARM_ERRATA_754322
diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig
index 201ef9b..9de27cf 100644
--- a/arch/arm/mach-sunxi/Kconfig
+++ b/arch/arm/mach-sunxi/Kconfig
@@ -6,7 +6,6 @@ config ARCH_SUNXI
select ARM_PSCI
select CLKSRC_MMIO
select GENERIC_IRQ_CHIP
- select HAVE_SMP
select PINCTRL
select PINCTRL_SUNXI
select RESET_CONTROLLER
diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig
index 5dc3e38..e596739 100644
--- a/arch/arm/mach-tegra/Kconfig
+++ b/arch/arm/mach-tegra/Kconfig
@@ -7,7 +7,6 @@ config ARCH_TEGRA
select CLKSRC_MMIO
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
- select HAVE_SMP
select MIGHT_HAVE_CACHE_L2X0
select MIGHT_HAVE_PCI
select PINCTRL
diff --git a/arch/arm/mach-ux500/Kconfig b/arch/arm/mach-ux500/Kconfig
index 5d71c82..731b919 100644
--- a/arch/arm/mach-ux500/Kconfig
+++ b/arch/arm/mach-ux500/Kconfig
@@ -13,7 +13,6 @@ config ARCH_U8500
select CLKSRC_NOMADIK_MTU
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
- select HAVE_SMP
select MIGHT_HAVE_CACHE_L2X0
select PINCTRL
select PINCTRL_ABX500
diff --git a/arch/arm/mach-vexpress/Kconfig b/arch/arm/mach-vexpress/Kconfig
index fa29222..6cbddb8 100644
--- a/arch/arm/mach-vexpress/Kconfig
+++ b/arch/arm/mach-vexpress/Kconfig
@@ -9,7 +9,6 @@ config ARCH_VEXPRESS
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
select HAVE_PATA_PLATFORM
- select HAVE_SMP
select ICST
select MIGHT_HAVE_CACHE_L2X0
select NO_IOPORT
diff --git a/arch/arm/mach-zynq/Kconfig b/arch/arm/mach-zynq/Kconfig
index 85d1805..70e247d 100644
--- a/arch/arm/mach-zynq/Kconfig
+++ b/arch/arm/mach-zynq/Kconfig
@@ -6,7 +6,6 @@ config ARCH_ZYNQ
select HAVE_ARM_TWD if SMP
select ICST
select MIGHT_HAVE_CACHE_L2X0
- select HAVE_SMP
select CADENCE_TTC_TIMER
select ARM_GLOBAL_TIMER
help
--
1.8.3.2
^ permalink raw reply related [flat|nested] 37+ messages in thread
* [PATCH 3/9] ARM: select MIGHT_HAVE_CACHE_L2X0 for V7 multi-platform
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
2014-02-11 21:11 ` [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options Rob Herring
2014-02-11 21:11 ` [PATCH 2/9] ARM: select HAVE_SMP for V7 multi-platform Rob Herring
@ 2014-02-11 21:11 ` Rob Herring
2014-02-12 20:32 ` Stephen Warren
2014-02-11 21:11 ` [PATCH 4/9] ARM: Select V6K instead of V6 by default for multi-platform Rob Herring
` (8 subsequent siblings)
11 siblings, 1 reply; 37+ messages in thread
From: Rob Herring @ 2014-02-11 21:11 UTC (permalink / raw)
To: linux-arm-kernel
From: Rob Herring <robh@kernel.org>
Many V7 platforms have an L2x0 cache, so make CONFIG_MIGHT_HAVE_CACHE_L2X0
visible for V7 multi-platform builds.
Signed-off-by: Rob Herring <robh@kernel.org>
---
arch/arm/Kconfig | 1 +
arch/arm/mach-cns3xxx/Kconfig | 1 -
arch/arm/mach-imx/Kconfig | 1 -
arch/arm/mach-prima2/Kconfig | 1 -
arch/arm/mach-shmobile/Kconfig | 1 -
arch/arm/mach-spear/Kconfig | 1 -
arch/arm/mach-sti/Kconfig | 1 -
arch/arm/mach-tegra/Kconfig | 1 -
arch/arm/mach-ux500/Kconfig | 1 -
arch/arm/mach-vexpress/Kconfig | 1 -
arch/arm/mach-zynq/Kconfig | 1 -
11 files changed, 1 insertion(+), 10 deletions(-)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index a1f36e7..7560be4 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -921,6 +921,7 @@ config ARCH_MULTI_V7
config ARCH_MULTI_V6_V7
bool
+ select MIGHT_HAVE_CACHE_L2X0
config ARCH_MULTI_CPU_AUTO
def_bool !(ARCH_MULTI_V4 || ARCH_MULTI_V4T || ARCH_MULTI_V6_V7)
diff --git a/arch/arm/mach-cns3xxx/Kconfig b/arch/arm/mach-cns3xxx/Kconfig
index e346688..c6f58a1 100644
--- a/arch/arm/mach-cns3xxx/Kconfig
+++ b/arch/arm/mach-cns3xxx/Kconfig
@@ -2,7 +2,6 @@ config ARCH_CNS3XXX
bool "Cavium Networks CNS3XXX family" if ARCH_MULTI_V6
select ARM_GIC
select CPU_V6K
- select MIGHT_HAVE_CACHE_L2X0
select MIGHT_HAVE_PCI
select PCI_DOMAINS if PCI
help
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index 1a6a843..ff24473 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -5,7 +5,6 @@ config ARCH_MXC
select CLKSRC_MMIO
select GENERIC_ALLOCATOR
select GENERIC_IRQ_CHIP
- select MIGHT_HAVE_CACHE_L2X0 if ARCH_MULTI_V6_V7
select PINCTRL
select SOC_BUS
help
diff --git a/arch/arm/mach-prima2/Kconfig b/arch/arm/mach-prima2/Kconfig
index 59aa3ea..2c726b4 100644
--- a/arch/arm/mach-prima2/Kconfig
+++ b/arch/arm/mach-prima2/Kconfig
@@ -2,7 +2,6 @@ config ARCH_SIRF
bool "CSR SiRF" if ARCH_MULTI_V7
select ARCH_REQUIRE_GPIOLIB
select GENERIC_IRQ_CHIP
- select MIGHT_HAVE_CACHE_L2X0
select NO_IOPORT
select PINCTRL
select PINCTRL_SIRF
diff --git a/arch/arm/mach-shmobile/Kconfig b/arch/arm/mach-shmobile/Kconfig
index 99f181d..8a685ed 100644
--- a/arch/arm/mach-shmobile/Kconfig
+++ b/arch/arm/mach-shmobile/Kconfig
@@ -8,7 +8,6 @@ config ARCH_SHMOBILE_MULTI
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
select ARM_GIC
- select MIGHT_HAVE_CACHE_L2X0
select MIGHT_HAVE_PCI
select NO_IOPORT
select PINCTRL
diff --git a/arch/arm/mach-spear/Kconfig b/arch/arm/mach-spear/Kconfig
index 601b8d8..5c57262 100644
--- a/arch/arm/mach-spear/Kconfig
+++ b/arch/arm/mach-spear/Kconfig
@@ -19,7 +19,6 @@ config ARCH_SPEAR13XX
select GPIO_SPEAR_SPICS
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
- select MIGHT_HAVE_CACHE_L2X0
select PINCTRL
help
Supports for ARM's SPEAR13XX family
diff --git a/arch/arm/mach-sti/Kconfig b/arch/arm/mach-sti/Kconfig
index c3fdcee..d2c13ba 100644
--- a/arch/arm/mach-sti/Kconfig
+++ b/arch/arm/mach-sti/Kconfig
@@ -5,7 +5,6 @@ menuconfig ARCH_STI
select PINCTRL
select PINCTRL_ST
select MFD_SYSCON
- select MIGHT_HAVE_CACHE_L2X0
select HAVE_ARM_SCU if SMP
select ARCH_REQUIRE_GPIOLIB
select ARM_ERRATA_754322
diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig
index e596739..f61cd5b 100644
--- a/arch/arm/mach-tegra/Kconfig
+++ b/arch/arm/mach-tegra/Kconfig
@@ -7,7 +7,6 @@ config ARCH_TEGRA
select CLKSRC_MMIO
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
- select MIGHT_HAVE_CACHE_L2X0
select MIGHT_HAVE_PCI
select PINCTRL
select ARCH_HAS_RESET_CONTROLLER
diff --git a/arch/arm/mach-ux500/Kconfig b/arch/arm/mach-ux500/Kconfig
index 731b919..8052bd5 100644
--- a/arch/arm/mach-ux500/Kconfig
+++ b/arch/arm/mach-ux500/Kconfig
@@ -13,7 +13,6 @@ config ARCH_U8500
select CLKSRC_NOMADIK_MTU
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
- select MIGHT_HAVE_CACHE_L2X0
select PINCTRL
select PINCTRL_ABX500
select PINCTRL_NOMADIK
diff --git a/arch/arm/mach-vexpress/Kconfig b/arch/arm/mach-vexpress/Kconfig
index 6cbddb8..80b4be3 100644
--- a/arch/arm/mach-vexpress/Kconfig
+++ b/arch/arm/mach-vexpress/Kconfig
@@ -10,7 +10,6 @@ config ARCH_VEXPRESS
select HAVE_ARM_TWD if SMP
select HAVE_PATA_PLATFORM
select ICST
- select MIGHT_HAVE_CACHE_L2X0
select NO_IOPORT
select PLAT_VERSATILE
select PLAT_VERSATILE_CLCD
diff --git a/arch/arm/mach-zynq/Kconfig b/arch/arm/mach-zynq/Kconfig
index 70e247d..105d39b 100644
--- a/arch/arm/mach-zynq/Kconfig
+++ b/arch/arm/mach-zynq/Kconfig
@@ -5,7 +5,6 @@ config ARCH_ZYNQ
select HAVE_ARM_SCU if SMP
select HAVE_ARM_TWD if SMP
select ICST
- select MIGHT_HAVE_CACHE_L2X0
select CADENCE_TTC_TIMER
select ARM_GLOBAL_TIMER
help
--
1.8.3.2
^ permalink raw reply related [flat|nested] 37+ messages in thread
* [PATCH 4/9] ARM: Select V6K instead of V6 by default for multi-platform
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
` (2 preceding siblings ...)
2014-02-11 21:11 ` [PATCH 3/9] ARM: select MIGHT_HAVE_CACHE_L2X0 " Rob Herring
@ 2014-02-11 21:11 ` Rob Herring
2014-02-11 21:22 ` Arnd Bergmann
2014-02-12 4:07 ` Shawn Guo
2014-02-11 21:11 ` [PATCH 5/9] ARM: bcm2835: enable V6K instead of plain V6 Rob Herring
` (7 subsequent siblings)
11 siblings, 2 replies; 37+ messages in thread
From: Rob Herring @ 2014-02-11 21:11 UTC (permalink / raw)
To: linux-arm-kernel
From: Rob Herring <robh@kernel.org>
MULTI_V6 should default to V6K as it is more optimal than V6. Any
platform which is not V6K should select CPU_V6 which will enable the
less optimal code paths.
Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Anton Vorontsov <anton@enomsg.org>
Cc: Shawn Guo <shawn.guo@linaro.org>
Cc: Sascha Hauer <kernel@pengutronix.de>
Cc: Jamie Iles <jamie@jamieiles.com>
---
arch/arm/Kconfig | 2 +-
arch/arm/mach-cns3xxx/Kconfig | 2 +-
arch/arm/mach-imx/Kconfig | 1 -
arch/arm/mach-picoxcell/Kconfig | 1 -
4 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 7560be4..f350ca5 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -910,7 +910,7 @@ config ARCH_MULTI_V4_V5
config ARCH_MULTI_V6
bool "ARMv6 based platforms (ARM11)"
select ARCH_MULTI_V6_V7
- select CPU_V6
+ select CPU_V6K
config ARCH_MULTI_V7
bool "ARMv7 based platforms (Cortex-A, PJ4, Scorpion, Krait)"
diff --git a/arch/arm/mach-cns3xxx/Kconfig b/arch/arm/mach-cns3xxx/Kconfig
index c6f58a1..b16b29a 100644
--- a/arch/arm/mach-cns3xxx/Kconfig
+++ b/arch/arm/mach-cns3xxx/Kconfig
@@ -1,9 +1,9 @@
config ARCH_CNS3XXX
bool "Cavium Networks CNS3XXX family" if ARCH_MULTI_V6
select ARM_GIC
- select CPU_V6K
select MIGHT_HAVE_PCI
select PCI_DOMAINS if PCI
+ select CPU_V6
help
Support for Cavium Networks CNS3XXX platform.
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index ff24473..41ffd43 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -114,7 +114,6 @@ config SOC_IMX31
config SOC_IMX35
bool
select ARCH_MXC_IOMUX_V3
- select CPU_V6K
select HAVE_EPIT
select MXC_AVIC
select SMP_ON_UP if SMP
diff --git a/arch/arm/mach-picoxcell/Kconfig b/arch/arm/mach-picoxcell/Kconfig
index c88ff74..eca9eb1 100644
--- a/arch/arm/mach-picoxcell/Kconfig
+++ b/arch/arm/mach-picoxcell/Kconfig
@@ -2,7 +2,6 @@ config ARCH_PICOXCELL
bool "Picochip PicoXcell" if ARCH_MULTI_V6
select ARCH_REQUIRE_GPIOLIB
select ARM_VIC
- select CPU_V6K
select DW_APB_TIMER_OF
select HAVE_TCM
select NO_IOPORT
--
1.8.3.2
^ permalink raw reply related [flat|nested] 37+ messages in thread
* [PATCH 5/9] ARM: bcm2835: enable V6K instead of plain V6
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
` (3 preceding siblings ...)
2014-02-11 21:11 ` [PATCH 4/9] ARM: Select V6K instead of V6 by default for multi-platform Rob Herring
@ 2014-02-11 21:11 ` Rob Herring
2014-02-11 21:11 ` [PATCH 6/9] ARM: cns3xxx: " Rob Herring
` (6 subsequent siblings)
11 siblings, 0 replies; 37+ messages in thread
From: Rob Herring @ 2014-02-11 21:11 UTC (permalink / raw)
To: linux-arm-kernel
From: Rob Herring <robh@kernel.org>
The bcm2835 is an ARM1176 which has all the V6K extensions except for SMP,
so V6K should be selected instead. Dropping the select will use
the default for ARCH_MULTI_V6 which is V6K.
Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Stephen Warren <swarren@wwwdotorg.org>
---
arch/arm/mach-bcm2835/Kconfig | 1 -
1 file changed, 1 deletion(-)
diff --git a/arch/arm/mach-bcm2835/Kconfig b/arch/arm/mach-bcm2835/Kconfig
index 1c0decd..3a36935 100644
--- a/arch/arm/mach-bcm2835/Kconfig
+++ b/arch/arm/mach-bcm2835/Kconfig
@@ -4,7 +4,6 @@ config ARCH_BCM2835
select ARM_AMBA
select ARM_ERRATA_411920
select ARM_TIMER_SP804
- select CPU_V6
select PINCTRL
select PINCTRL_BCM2835
help
--
1.8.3.2
^ permalink raw reply related [flat|nested] 37+ messages in thread
* [PATCH 6/9] ARM: cns3xxx: enable V6K instead of plain V6
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
` (4 preceding siblings ...)
2014-02-11 21:11 ` [PATCH 5/9] ARM: bcm2835: enable V6K instead of plain V6 Rob Herring
@ 2014-02-11 21:11 ` Rob Herring
2014-02-11 21:11 ` [PATCH 7/9] ARM: vt8500: " Rob Herring
` (5 subsequent siblings)
11 siblings, 0 replies; 37+ messages in thread
From: Rob Herring @ 2014-02-11 21:11 UTC (permalink / raw)
To: linux-arm-kernel
From: Rob Herring <robh@kernel.org>
The cns3xxx is an ARM11MPCore which has all the V6K extensions, so V6K
should be selected instead. Dropping the select will use the default for
ARCH_MULTI_V6 which is V6K.
Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Anton Vorontsov <anton@enomsg.org>
---
arch/arm/mach-cns3xxx/Kconfig | 1 -
1 file changed, 1 deletion(-)
diff --git a/arch/arm/mach-cns3xxx/Kconfig b/arch/arm/mach-cns3xxx/Kconfig
index b16b29a..dce8dec 100644
--- a/arch/arm/mach-cns3xxx/Kconfig
+++ b/arch/arm/mach-cns3xxx/Kconfig
@@ -3,7 +3,6 @@ config ARCH_CNS3XXX
select ARM_GIC
select MIGHT_HAVE_PCI
select PCI_DOMAINS if PCI
- select CPU_V6
help
Support for Cavium Networks CNS3XXX platform.
--
1.8.3.2
^ permalink raw reply related [flat|nested] 37+ messages in thread
* [PATCH 7/9] ARM: vt8500: enable V6K instead of plain V6
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
` (5 preceding siblings ...)
2014-02-11 21:11 ` [PATCH 6/9] ARM: cns3xxx: " Rob Herring
@ 2014-02-11 21:11 ` Rob Herring
2014-02-11 21:11 ` [PATCH 8/9] ARM: virt: make mach-virt just a kconfig option Rob Herring
` (4 subsequent siblings)
11 siblings, 0 replies; 37+ messages in thread
From: Rob Herring @ 2014-02-11 21:11 UTC (permalink / raw)
To: linux-arm-kernel
From: Rob Herring <robh@kernel.org>
The wm8750 is an ARM1176 which has all the V6K extensions except for SMP,
so V6K should be selected instead. Dropping the select will use the
default for ARCH_MULTI_V6 which is V6K.
Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Tony Prisk <linux@prisktech.co.nz>
---
arch/arm/mach-vt8500/Kconfig | 1 -
1 file changed, 1 deletion(-)
diff --git a/arch/arm/mach-vt8500/Kconfig b/arch/arm/mach-vt8500/Kconfig
index c581ed2..08f56a4 100644
--- a/arch/arm/mach-vt8500/Kconfig
+++ b/arch/arm/mach-vt8500/Kconfig
@@ -19,7 +19,6 @@ config ARCH_WM8750
bool "WonderMedia WM8750"
depends on ARCH_MULTI_V6
select ARCH_VT8500
- select CPU_V6
help
Support for WonderMedia WM8750 System-on-Chip.
--
1.8.3.2
^ permalink raw reply related [flat|nested] 37+ messages in thread
* [PATCH 8/9] ARM: virt: make mach-virt just a kconfig option
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
` (6 preceding siblings ...)
2014-02-11 21:11 ` [PATCH 7/9] ARM: vt8500: " Rob Herring
@ 2014-02-11 21:11 ` Rob Herring
2014-02-12 14:03 ` Marc Zyngier
2014-02-11 21:11 ` [PATCH 9/9] ARM: virt: select ARM_AMBA Rob Herring
` (3 subsequent siblings)
11 siblings, 1 reply; 37+ messages in thread
From: Rob Herring @ 2014-02-11 21:11 UTC (permalink / raw)
To: linux-arm-kernel
From: Rob Herring <robh@kernel.org>
The mach code for mach-virt is no longer needed, so we can remove all of
mach-virt except the kconfig entry.
Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Russell King <linux@arm.linux.org.uk>
---
arch/arm/Kconfig | 8 ++++++--
arch/arm/Makefile | 1 -
arch/arm/mach-virt/Kconfig | 6 ------
arch/arm/mach-virt/Makefile | 5 -----
arch/arm/mach-virt/virt.c | 41 -----------------------------------------
5 files changed, 6 insertions(+), 55 deletions(-)
delete mode 100644 arch/arm/mach-virt/Kconfig
delete mode 100644 arch/arm/mach-virt/Makefile
delete mode 100644 arch/arm/mach-virt/virt.c
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index f350ca5..9790c5d 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -929,6 +929,12 @@ config ARCH_MULTI_CPU_AUTO
endmenu
+config ARCH_VIRT
+ bool "Dummy Virtual Machine" if ARCH_MULTI_V7
+ select ARM_GIC
+ select HAVE_ARM_ARCH_TIMER
+ select ARM_PSCI
+
#
# This is sorted alphabetically by mach-* pathname. However, plat-*
# Kconfigs may be included either alphabetically (according to the
@@ -1052,8 +1058,6 @@ source "arch/arm/mach-versatile/Kconfig"
source "arch/arm/mach-vexpress/Kconfig"
source "arch/arm/plat-versatile/Kconfig"
-source "arch/arm/mach-virt/Kconfig"
-
source "arch/arm/mach-vt8500/Kconfig"
source "arch/arm/mach-w90x900/Kconfig"
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index 08a9ef5..a3c06dd 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -199,7 +199,6 @@ machine-$(CONFIG_ARCH_U300) += u300
machine-$(CONFIG_ARCH_U8500) += ux500
machine-$(CONFIG_ARCH_VERSATILE) += versatile
machine-$(CONFIG_ARCH_VEXPRESS) += vexpress
-machine-$(CONFIG_ARCH_VIRT) += virt
machine-$(CONFIG_ARCH_VT8500) += vt8500
machine-$(CONFIG_ARCH_W90X900) += w90x900
machine-$(CONFIG_ARCH_ZYNQ) += zynq
diff --git a/arch/arm/mach-virt/Kconfig b/arch/arm/mach-virt/Kconfig
deleted file mode 100644
index eaad072..0000000
--- a/arch/arm/mach-virt/Kconfig
+++ /dev/null
@@ -1,6 +0,0 @@
-config ARCH_VIRT
- bool "Dummy Virtual Machine" if ARCH_MULTI_V7
- select ARM_GIC
- select HAVE_ARM_ARCH_TIMER
- select ARM_PSCI
- select HAVE_SMP
diff --git a/arch/arm/mach-virt/Makefile b/arch/arm/mach-virt/Makefile
deleted file mode 100644
index 7ddbfa6..0000000
--- a/arch/arm/mach-virt/Makefile
+++ /dev/null
@@ -1,5 +0,0 @@
-#
-# Makefile for the linux kernel.
-#
-
-obj-y := virt.o
diff --git a/arch/arm/mach-virt/virt.c b/arch/arm/mach-virt/virt.c
deleted file mode 100644
index b184e57..0000000
--- a/arch/arm/mach-virt/virt.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Dummy Virtual Machine - does what it says on the tin.
- *
- * Copyright (C) 2012 ARM Ltd
- * Authors: Will Deacon <will.deacon@arm.com>,
- * Marc Zyngier <marc.zyngier@arm.com>
- *
- * 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.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include <linux/of_irq.h>
-#include <linux/of_platform.h>
-#include <linux/smp.h>
-
-#include <asm/mach/arch.h>
-
-static void __init virt_init(void)
-{
- of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
-}
-
-static const char *virt_dt_match[] = {
- "linux,dummy-virt",
- "xen,xenvm",
- NULL
-};
-
-DT_MACHINE_START(VIRT, "Dummy Virtual Machine")
- .init_machine = virt_init,
- .dt_compat = virt_dt_match,
-MACHINE_END
--
1.8.3.2
^ permalink raw reply related [flat|nested] 37+ messages in thread
* [PATCH 9/9] ARM: virt: select ARM_AMBA
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
` (7 preceding siblings ...)
2014-02-11 21:11 ` [PATCH 8/9] ARM: virt: make mach-virt just a kconfig option Rob Herring
@ 2014-02-11 21:11 ` Rob Herring
2014-02-12 13:26 ` [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Arnd Bergmann
` (2 subsequent siblings)
11 siblings, 0 replies; 37+ messages in thread
From: Rob Herring @ 2014-02-11 21:11 UTC (permalink / raw)
To: linux-arm-kernel
From: Rob Herring <robh@kernel.org>
Guests can use AMBA bus devices such as the PL011 uart, so enable the
AMBA bus for mach-virt.
Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Russell King <linux@arm.linux.org.uk>
---
arch/arm/Kconfig | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 9790c5d..25a6b53 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -931,9 +931,10 @@ endmenu
config ARCH_VIRT
bool "Dummy Virtual Machine" if ARCH_MULTI_V7
+ select ARM_AMBA
select ARM_GIC
- select HAVE_ARM_ARCH_TIMER
select ARM_PSCI
+ select HAVE_ARM_ARCH_TIMER
#
# This is sorted alphabetically by mach-* pathname. However, plat-*
--
1.8.3.2
^ permalink raw reply related [flat|nested] 37+ messages in thread
* [PATCH 4/9] ARM: Select V6K instead of V6 by default for multi-platform
2014-02-11 21:11 ` [PATCH 4/9] ARM: Select V6K instead of V6 by default for multi-platform Rob Herring
@ 2014-02-11 21:22 ` Arnd Bergmann
2014-02-11 21:26 ` Rob Herring
2014-02-12 4:07 ` Shawn Guo
1 sibling, 1 reply; 37+ messages in thread
From: Arnd Bergmann @ 2014-02-11 21:22 UTC (permalink / raw)
To: linux-arm-kernel
On Tuesday 11 February 2014 15:11:54 Rob Herring wrote:
> @@ -1,9 +1,9 @@
> config ARCH_CNS3XXX
> bool "Cavium Networks CNS3XXX family" if ARCH_MULTI_V6
> select ARM_GIC
> - select CPU_V6K
> select MIGHT_HAVE_PCI
> select PCI_DOMAINS if PCI
> + select CPU_V6
> help
> Support for Cavium Networks CNS3XXX platform.
I thought we had concluded that CNS3xxx is V6K as well. Do you
have newer information? Maybe Anton remembers.
Arnd
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH 4/9] ARM: Select V6K instead of V6 by default for multi-platform
2014-02-11 21:22 ` Arnd Bergmann
@ 2014-02-11 21:26 ` Rob Herring
2014-02-11 21:27 ` Arnd Bergmann
0 siblings, 1 reply; 37+ messages in thread
From: Rob Herring @ 2014-02-11 21:26 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, Feb 11, 2014 at 3:22 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> On Tuesday 11 February 2014 15:11:54 Rob Herring wrote:
>> @@ -1,9 +1,9 @@
>> config ARCH_CNS3XXX
>> bool "Cavium Networks CNS3XXX family" if ARCH_MULTI_V6
>> select ARM_GIC
>> - select CPU_V6K
>> select MIGHT_HAVE_PCI
>> select PCI_DOMAINS if PCI
>> + select CPU_V6
>> help
>> Support for Cavium Networks CNS3XXX platform.
>
> I thought we had concluded that CNS3xxx is V6K as well. Do you
> have newer information? Maybe Anton remembers.
I believe it is being MP, but I split this up so that changing the
default doesn't change any platform and each platform change is a
separate patch which can be applied or not.
Rob
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH 4/9] ARM: Select V6K instead of V6 by default for multi-platform
2014-02-11 21:26 ` Rob Herring
@ 2014-02-11 21:27 ` Arnd Bergmann
0 siblings, 0 replies; 37+ messages in thread
From: Arnd Bergmann @ 2014-02-11 21:27 UTC (permalink / raw)
To: linux-arm-kernel
On Tuesday 11 February 2014 15:26:14 Rob Herring wrote:
> On Tue, Feb 11, 2014 at 3:22 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> > On Tuesday 11 February 2014 15:11:54 Rob Herring wrote:
> >> @@ -1,9 +1,9 @@
> >> config ARCH_CNS3XXX
> >> bool "Cavium Networks CNS3XXX family" if ARCH_MULTI_V6
> >> select ARM_GIC
> >> - select CPU_V6K
> >> select MIGHT_HAVE_PCI
> >> select PCI_DOMAINS if PCI
> >> + select CPU_V6
> >> help
> >> Support for Cavium Networks CNS3XXX platform.
> >
> > I thought we had concluded that CNS3xxx is V6K as well. Do you
> > have newer information? Maybe Anton remembers.
>
> I believe it is being MP, but I split this up so that changing the
> default doesn't change any platform and each platform change is a
> separate patch which can be applied or not.
>
Ok, got it.
Arnd
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH 4/9] ARM: Select V6K instead of V6 by default for multi-platform
2014-02-11 21:11 ` [PATCH 4/9] ARM: Select V6K instead of V6 by default for multi-platform Rob Herring
2014-02-11 21:22 ` Arnd Bergmann
@ 2014-02-12 4:07 ` Shawn Guo
1 sibling, 0 replies; 37+ messages in thread
From: Shawn Guo @ 2014-02-12 4:07 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, Feb 11, 2014 at 03:11:54PM -0600, Rob Herring wrote:
> From: Rob Herring <robh@kernel.org>
>
> MULTI_V6 should default to V6K as it is more optimal than V6. Any
> platform which is not V6K should select CPU_V6 which will enable the
> less optimal code paths.
>
> Signed-off-by: Rob Herring <robh@kernel.org>
> Cc: Anton Vorontsov <anton@enomsg.org>
> Cc: Shawn Guo <shawn.guo@linaro.org>
...
> arch/arm/mach-imx/Kconfig | 1 -
Acked-by: Shawn Guo <shawn.guo@linaro.org>
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
` (8 preceding siblings ...)
2014-02-11 21:11 ` [PATCH 9/9] ARM: virt: select ARM_AMBA Rob Herring
@ 2014-02-12 13:26 ` Arnd Bergmann
2014-02-12 13:46 ` Will Deacon
2014-02-12 20:38 ` Stephen Warren
2014-02-13 2:30 ` Stephen Warren
11 siblings, 1 reply; 37+ messages in thread
From: Arnd Bergmann @ 2014-02-12 13:26 UTC (permalink / raw)
To: linux-arm-kernel
On Tuesday 11 February 2014, Rob Herring wrote:
> From: Rob Herring <robh@kernel.org>
>
> This series removes common kconfig options required by multi-platform
> builds out of individual platforms as they are redundant. Patches 2 and
> 3 make SMP and CACHE_L2X0 config options visible on MULTI_V7 builds as
> most platforms enable these options and all platforms can run with them
> enabled.
Overall looks pretty good, let's wait for a few more Acks or a possible
Nak and then put it into arm-soc. You can add my 'Acked-by' to all patches
if you like.
> The previous version [1] was mainly a discussion about v6 vs. v6K.
> Several platforms have this wrong and incorrectly select v6 when the
> more optimal v6K option could be used. After more research, my memory
> about i.MX31 was wrong and it does need to remain v6.
Just curious: do you have more information on this? Are all i.MX31 ARMv6
and all i.MX35 v6k as the current Kconfig claims, or is it more
complicated?
> Finally, patch 8 removes mach-virt as it is no longer needed. The core
> ARM code can handle all the necessary initialization and mach-virt is
> left as a kconfig option. Although not really related to this series,
> it would otherwise conflict with it.
Makes sense. It's still a cleanup, so you could send it as a
separate patch to be applied on-top of the pull rather than the
same pull request, although the difference is really marginal.
You are probably right in leaving out the non-multiplatform
platforms, but maybe we can figure out whether they should be
changed as well, especially as some of them are going to become
multiplatform-enabled in the future:
* ARCH_S5P64X0 should be changed, it's next on the list
* DaVinci/TNETV107X looks rather broken, I wonder if we should
just remove it entirely rather than fix it. I have a series
to fix all 'randconfig' build bugs locally and there were a
lot of them for TNETV107X, and I doubt fixing the build will
actually give you a booting kernel.
* ARCH_MSM7X00A should just be changed, although probably nobody
really cares.
* integrator and realview apparently allow both CPU_V6 and CPU_V6K
to be manually selected. Is that actually the correct behavior
in that both kinds of core tiles exist?
Arnd
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal
2014-02-12 13:26 ` [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Arnd Bergmann
@ 2014-02-12 13:46 ` Will Deacon
2014-02-12 14:07 ` Rob Herring
0 siblings, 1 reply; 37+ messages in thread
From: Will Deacon @ 2014-02-12 13:46 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Feb 12, 2014 at 01:26:41PM +0000, Arnd Bergmann wrote:
> On Tuesday 11 February 2014, Rob Herring wrote:
> > The previous version [1] was mainly a discussion about v6 vs. v6K.
> > Several platforms have this wrong and incorrectly select v6 when the
> > more optimal v6K option could be used. After more research, my memory
> > about i.MX31 was wrong and it does need to remain v6.
>
> Just curious: do you have more information on this? Are all i.MX31 ARMv6
> and all i.MX35 v6k as the current Kconfig claims, or is it more
> complicated?
Slightly tangential, but the one to watch out for is 1136. Prior to r1 (i.e.
r0pX), it is v6 but r1pX+ are v6k (without SMP).
> * integrator and realview apparently allow both CPU_V6 and CPU_V6K
> to be manually selected. Is that actually the correct behavior
> in that both kinds of core tiles exist?
I have 1136 r0p1 on an integrator CP, so I suppose it could also take an
1136 r1pX without any trouble.
Will
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH 8/9] ARM: virt: make mach-virt just a kconfig option
2014-02-11 21:11 ` [PATCH 8/9] ARM: virt: make mach-virt just a kconfig option Rob Herring
@ 2014-02-12 14:03 ` Marc Zyngier
0 siblings, 0 replies; 37+ messages in thread
From: Marc Zyngier @ 2014-02-12 14:03 UTC (permalink / raw)
To: linux-arm-kernel
On 11/02/14 21:11, Rob Herring wrote:
> From: Rob Herring <robh@kernel.org>
>
> The mach code for mach-virt is no longer needed, so we can remove all of
> mach-virt except the kconfig entry.
>
> Signed-off-by: Rob Herring <robh@kernel.org>
> Cc: Russell King <linux@arm.linux.org.uk>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
M.
--
Jazz is not dead. It just smells funny...
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal
2014-02-12 13:46 ` Will Deacon
@ 2014-02-12 14:07 ` Rob Herring
2014-02-12 16:53 ` Arnd Bergmann
0 siblings, 1 reply; 37+ messages in thread
From: Rob Herring @ 2014-02-12 14:07 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Feb 12, 2014 at 7:46 AM, Will Deacon <will.deacon@arm.com> wrote:
> On Wed, Feb 12, 2014 at 01:26:41PM +0000, Arnd Bergmann wrote:
>> On Tuesday 11 February 2014, Rob Herring wrote:
>> > The previous version [1] was mainly a discussion about v6 vs. v6K.
>> > Several platforms have this wrong and incorrectly select v6 when the
>> > more optimal v6K option could be used. After more research, my memory
>> > about i.MX31 was wrong and it does need to remain v6.
>>
>> Just curious: do you have more information on this? Are all i.MX31 ARMv6
>> and all i.MX35 v6k as the current Kconfig claims, or is it more
>> complicated?
>
> Slightly tangential, but the one to watch out for is 1136. Prior to r1 (i.e.
> r0pX), it is v6 but r1pX+ are v6k (without SMP).
Right. I originally was thinking that the MX31 1.x was r0pX and MX31
2.x was r1pX and that there are no 1.x chips around. However, after
checking the errata sheet, 1.x is r0p1 and 2.x is r0p4. It must have
been one of the other 1136 chips we did that moved to r1pX.
>> * integrator and realview apparently allow both CPU_V6 and CPU_V6K
>> to be manually selected. Is that actually the correct behavior
>> in that both kinds of core tiles exist?
>
> I have 1136 r0p1 on an integrator CP, so I suppose it could also take an
> 1136 r1pX without any trouble.
Presumably some of both exist which is why the config options are as they are?
Rob
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal
2014-02-12 14:07 ` Rob Herring
@ 2014-02-12 16:53 ` Arnd Bergmann
2014-02-12 17:11 ` Marc Zyngier
0 siblings, 1 reply; 37+ messages in thread
From: Arnd Bergmann @ 2014-02-12 16:53 UTC (permalink / raw)
To: linux-arm-kernel
On Wednesday 12 February 2014 08:07:12 Rob Herring wrote:
> On Wed, Feb 12, 2014 at 7:46 AM, Will Deacon <will.deacon@arm.com> wrote:
> > On Wed, Feb 12, 2014 at 01:26:41PM +0000, Arnd Bergmann wrote:
> >> On Tuesday 11 February 2014, Rob Herring wrote:
> >> > The previous version [1] was mainly a discussion about v6 vs. v6K.
> >> > Several platforms have this wrong and incorrectly select v6 when the
> >> > more optimal v6K option could be used. After more research, my memory
> >> > about i.MX31 was wrong and it does need to remain v6.
> >>
> >> Just curious: do you have more information on this? Are all i.MX31 ARMv6
> >> and all i.MX35 v6k as the current Kconfig claims, or is it more
> >> complicated?
> >
> > Slightly tangential, but the one to watch out for is 1136. Prior to r1 (i.e.
> > r0pX), it is v6 but r1pX+ are v6k (without SMP).
>
> Right. I originally was thinking that the MX31 1.x was r0pX and MX31
> 2.x was r1pX and that there are no 1.x chips around. However, after
> checking the errata sheet, 1.x is r0p1 and 2.x is r0p4. It must have
> been one of the other 1136 chips we did that moved to r1pX.
Ok.
> >> * integrator and realview apparently allow both CPU_V6 and CPU_V6K
> >> to be manually selected. Is that actually the correct behavior
> >> in that both kinds of core tiles exist?
> >
> > I have 1136 r0p1 on an integrator CP, so I suppose it could also take an
> > 1136 r1pX without any trouble.
>
> Presumably some of both exist which is why the config options are as they are?
Possible, but I wouldn't trust that part of the kernel very far. Especially
the MMU-less CPUs in there seem to be listed a bit randomly.
On the topic of V6, we don't support CPU_V6T2 at all, though I assume that
there is an ARM1156 core tile for integrator and realview, and we support
running the V6/V6K parts with MMU turned off. Would all revisions of ARM1156
work with CPU_V6K and !MMU?
Arnd
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal
2014-02-12 16:53 ` Arnd Bergmann
@ 2014-02-12 17:11 ` Marc Zyngier
2014-02-12 17:16 ` Will Deacon
0 siblings, 1 reply; 37+ messages in thread
From: Marc Zyngier @ 2014-02-12 17:11 UTC (permalink / raw)
To: linux-arm-kernel
On 12/02/14 16:53, Arnd Bergmann wrote:
>
> On the topic of V6, we don't support CPU_V6T2 at all, though I assume that
> there is an ARM1156 core tile for integrator and realview, and we support
> running the V6/V6K parts with MMU turned off. Would all revisions of ARM1156
> work with CPU_V6K and !MMU?
CPU_V6 and !MMU should work. V6K might, but that requires close
inspection (WFE, SEV shouldn't be used in UP context)...
Full disclosure: I happen to have a *brand new*, freshly unwrapped
ARM1156 core tile for a Versatile EB. All it requires is a victim with
time on their hand...
M.
--
Jazz is not dead. It just smells funny...
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal
2014-02-12 17:11 ` Marc Zyngier
@ 2014-02-12 17:16 ` Will Deacon
2014-02-12 18:07 ` Arnd Bergmann
0 siblings, 1 reply; 37+ messages in thread
From: Will Deacon @ 2014-02-12 17:16 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Feb 12, 2014 at 05:11:45PM +0000, Marc Zyngier wrote:
> On 12/02/14 16:53, Arnd Bergmann wrote:
> >
> > On the topic of V6, we don't support CPU_V6T2 at all, though I assume that
> > there is an ARM1156 core tile for integrator and realview, and we support
> > running the V6/V6K parts with MMU turned off. Would all revisions of ARM1156
> > work with CPU_V6K and !MMU?
>
> CPU_V6 and !MMU should work. V6K might, but that requires close
> inspection (WFE, SEV shouldn't be used in UP context)...
Well I can boot Debian on my 1136 r0p1 (no v6k) using a v6/v7 kernel, so the
lack of MMU shouldn't change that. The main issue was booting the same
kernel on an A15, which resulted in speculative interrupt acks on the GIC
(fix sitting in rmk's tree [ARM: 7954/1: mm: remove remaining domain support
from ARMv6]).
Will
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal
2014-02-12 17:16 ` Will Deacon
@ 2014-02-12 18:07 ` Arnd Bergmann
2014-02-12 18:15 ` Will Deacon
0 siblings, 1 reply; 37+ messages in thread
From: Arnd Bergmann @ 2014-02-12 18:07 UTC (permalink / raw)
To: linux-arm-kernel
On Wednesday 12 February 2014 17:16:21 Will Deacon wrote:
> On Wed, Feb 12, 2014 at 05:11:45PM +0000, Marc Zyngier wrote:
> > On 12/02/14 16:53, Arnd Bergmann wrote:
> > >
> > > On the topic of V6, we don't support CPU_V6T2 at all, though I assume that
> > > there is an ARM1156 core tile for integrator and realview, and we support
> > > running the V6/V6K parts with MMU turned off. Would all revisions of ARM1156
> > > work with CPU_V6K and !MMU?
> >
> > CPU_V6 and !MMU should work. V6K might, but that requires close
> > inspection (WFE, SEV shouldn't be used in UP context)...
>
> Well I can boot Debian on my 1136 r0p1 (no v6k) using a v6/v7 kernel, so the
> lack of MMU shouldn't change that.
I was more worried about ARM1156 not being a strict superset of V6K, i.e.
stuff other than the MMU missing from it that the kernel would rely on.
Arnd
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal
2014-02-12 18:07 ` Arnd Bergmann
@ 2014-02-12 18:15 ` Will Deacon
2014-02-12 18:20 ` Arnd Bergmann
0 siblings, 1 reply; 37+ messages in thread
From: Will Deacon @ 2014-02-12 18:15 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Feb 12, 2014 at 06:07:56PM +0000, Arnd Bergmann wrote:
> On Wednesday 12 February 2014 17:16:21 Will Deacon wrote:
> > On Wed, Feb 12, 2014 at 05:11:45PM +0000, Marc Zyngier wrote:
> > > On 12/02/14 16:53, Arnd Bergmann wrote:
> > > >
> > > > On the topic of V6, we don't support CPU_V6T2 at all, though I assume that
> > > > there is an ARM1156 core tile for integrator and realview, and we support
> > > > running the V6/V6K parts with MMU turned off. Would all revisions of ARM1156
> > > > work with CPU_V6K and !MMU?
> > >
> > > CPU_V6 and !MMU should work. V6K might, but that requires close
> > > inspection (WFE, SEV shouldn't be used in UP context)...
> >
> > Well I can boot Debian on my 1136 r0p1 (no v6k) using a v6/v7 kernel, so the
> > lack of MMU shouldn't change that.
>
> I was more worried about ARM1156 not being a strict superset of V6K, i.e.
> stuff other than the MMU missing from it that the kernel would rely on.
ARM1156 doesn't implement v6k, so you mean subset, right? My point was that
1136 works fine, so the only remaining part should be the lack of MMU.
I can't think of anything else missing, but I've never actually tried
booting one!
Will
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal
2014-02-12 18:15 ` Will Deacon
@ 2014-02-12 18:20 ` Arnd Bergmann
0 siblings, 0 replies; 37+ messages in thread
From: Arnd Bergmann @ 2014-02-12 18:20 UTC (permalink / raw)
To: linux-arm-kernel
On Wednesday 12 February 2014 18:15:27 Will Deacon wrote:
> On Wed, Feb 12, 2014 at 06:07:56PM +0000, Arnd Bergmann wrote:
> > On Wednesday 12 February 2014 17:16:21 Will Deacon wrote:
> > > On Wed, Feb 12, 2014 at 05:11:45PM +0000, Marc Zyngier wrote:
> > > > On 12/02/14 16:53, Arnd Bergmann wrote:
> > > > >
> > > > > On the topic of V6, we don't support CPU_V6T2 at all, though I assume that
> > > > > there is an ARM1156 core tile for integrator and realview, and we support
> > > > > running the V6/V6K parts with MMU turned off. Would all revisions of ARM1156
> > > > > work with CPU_V6K and !MMU?
> > > >
> > > > CPU_V6 and !MMU should work. V6K might, but that requires close
> > > > inspection (WFE, SEV shouldn't be used in UP context)...
> > >
> > > Well I can boot Debian on my 1136 r0p1 (no v6k) using a v6/v7 kernel, so the
> > > lack of MMU shouldn't change that.
> >
> > I was more worried about ARM1156 not being a strict superset of V6K, i.e.
> > stuff other than the MMU missing from it that the kernel would rely on.
>
> ARM1156 doesn't implement v6k, so you mean subset, right? My point was that
> 1136 works fine, so the only remaining part should be the lack of MMU.
I meant superset of the no-mmu subset of v6k. ARM1156 introduced Thumb2
support, so it's clearly not just a subset but also contains stuff that
wasn't part of v6k.
Arnd
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH 3/9] ARM: select MIGHT_HAVE_CACHE_L2X0 for V7 multi-platform
2014-02-11 21:11 ` [PATCH 3/9] ARM: select MIGHT_HAVE_CACHE_L2X0 " Rob Herring
@ 2014-02-12 20:32 ` Stephen Warren
2014-02-13 13:10 ` Rob Herring
0 siblings, 1 reply; 37+ messages in thread
From: Stephen Warren @ 2014-02-12 20:32 UTC (permalink / raw)
To: linux-arm-kernel
On 02/11/2014 02:11 PM, Rob Herring wrote:
> Many V7 platforms have an L2x0 cache, so make CONFIG_MIGHT_HAVE_CACHE_L2X0
> visible for V7 multi-platform builds.
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> config ARCH_MULTI_V6_V7
> bool
> + select MIGHT_HAVE_CACHE_L2X0
The commit description says "V7", whereas the select got added to
"V6_V7" rather then "V7". Was that intentional?
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
` (9 preceding siblings ...)
2014-02-12 13:26 ` [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Arnd Bergmann
@ 2014-02-12 20:38 ` Stephen Warren
2014-02-13 2:30 ` Stephen Warren
11 siblings, 0 replies; 37+ messages in thread
From: Stephen Warren @ 2014-02-12 20:38 UTC (permalink / raw)
To: linux-arm-kernel
On 02/11/2014 02:11 PM, Rob Herring wrote:
> From: Rob Herring <robh@kernel.org>
>
> This series removes common kconfig options required by multi-platform
> builds out of individual platforms as they are redundant. Patches 2 and
> 3 make SMP and CACHE_L2X0 config options visible on MULTI_V7 builds as
> most platforms enable these options and all platforms can run with them
> enabled.
>
> The previous version [1] was mainly a discussion about v6 vs. v6K.
> Several platforms have this wrong and incorrectly select v6 when the
> more optimal v6K option could be used. After more research, my memory
> about i.MX31 was wrong and it does need to remain v6. I've tested the
> v6K change on Rasp Pi. The default change to v6K for MULTI_V6 does not
> switch any platforms. I don't plan to submit the v6K changes for
> platforms without platform maintainers acks or testing.
>
> Finally, patch 8 removes mach-virt as it is no longer needed. The core
> ARM code can handle all the necessary initialization and mach-virt is
> left as a kconfig option. Although not really related to this series,
> it would otherwise conflict with it.
mach-tegra changes,
Acked-by: Stephen Warren <swarren@nvidia.com>
mach-bcm2835 *except* patch 5/9, which I hope to test tonight,
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
` (10 preceding siblings ...)
2014-02-12 20:38 ` Stephen Warren
@ 2014-02-13 2:30 ` Stephen Warren
11 siblings, 0 replies; 37+ messages in thread
From: Stephen Warren @ 2014-02-13 2:30 UTC (permalink / raw)
To: linux-arm-kernel
On 02/11/2014 02:11 PM, Rob Herring wrote:
> From: Rob Herring <robh@kernel.org>
>
> This series removes common kconfig options required by multi-platform
> builds out of individual platforms as they are redundant. Patches 2 and
> 3 make SMP and CACHE_L2X0 config options visible on MULTI_V7 builds as
> most platforms enable these options and all platforms can run with them
> enabled.
>
> The previous version [1] was mainly a discussion about v6 vs. v6K.
> Several platforms have this wrong and incorrectly select v6 when the
> more optimal v6K option could be used. After more research, my memory
> about i.MX31 was wrong and it does need to remain v6. I've tested the
> v6K change on Rasp Pi. The default change to v6K for MULTI_V6 does not
> switch any platforms. I don't plan to submit the v6K changes for
> platforms without platform maintainers acks or testing.
>
> Finally, patch 8 removes mach-virt as it is no longer needed. The core
> ARM code can handle all the necessary initialization and mach-virt is
> left as a kconfig option. Although not really related to this series,
> it would otherwise conflict with it.
For mach-bcm2835, the series,
Tested-by: Stephen Warren <swarren@wwwdotorg.org>
And patch 5/9 also now,
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH 3/9] ARM: select MIGHT_HAVE_CACHE_L2X0 for V7 multi-platform
2014-02-12 20:32 ` Stephen Warren
@ 2014-02-13 13:10 ` Rob Herring
0 siblings, 0 replies; 37+ messages in thread
From: Rob Herring @ 2014-02-13 13:10 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Feb 12, 2014 at 2:32 PM, Stephen Warren <swarren@wwwdotorg.org> wrote:
> On 02/11/2014 02:11 PM, Rob Herring wrote:
>> Many V7 platforms have an L2x0 cache, so make CONFIG_MIGHT_HAVE_CACHE_L2X0
>> visible for V7 multi-platform builds.
>
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>
>> config ARCH_MULTI_V6_V7
>> bool
>> + select MIGHT_HAVE_CACHE_L2X0
>
> The commit description says "V7", whereas the select got added to
> "V6_V7" rather then "V7". Was that intentional?
I'll fix the commit text. Given that most ARM11 platforms have an
L2x0, we should enable for both.
Rob
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options
2014-02-11 21:11 ` [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options Rob Herring
@ 2014-02-14 10:40 ` Linus Walleij
2014-02-14 14:02 ` Rob Herring
2014-02-28 18:37 ` Kevin Hilman
1 sibling, 1 reply; 37+ messages in thread
From: Linus Walleij @ 2014-02-14 10:40 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, Feb 11, 2014 at 10:11 PM, Rob Herring <robherring2@gmail.com> wrote:
> From: Rob Herring <robh@kernel.org>
>
> Multi-platform requires various kconfig options to be selected, so
> platforms don't need to select them individually.
>
> Signed-off-by: Rob Herring <robh@kernel.org>
> Cc: Linus Walleij <linus.walleij@linaro.org>
> Cc: Russell King <linux@arm.linux.org.uk>
OK makes sense. Maybe a bit unintuitive that multiplat
make gpiolib wanted optional and then platforms override
this by requiring it, but whatever, I cannot think of anything
better.
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Yours,
Linus Walleij
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH 2/9] ARM: select HAVE_SMP for V7 multi-platform
2014-02-11 21:11 ` [PATCH 2/9] ARM: select HAVE_SMP for V7 multi-platform Rob Herring
@ 2014-02-14 10:41 ` Linus Walleij
0 siblings, 0 replies; 37+ messages in thread
From: Linus Walleij @ 2014-02-14 10:41 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, Feb 11, 2014 at 10:11 PM, Rob Herring <robherring2@gmail.com> wrote:
> From: Rob Herring <robh@kernel.org>
>
> All V7 platforms can run SMP kernels, so make CONFIG_SMP visible for V7
> multi-platform builds.
>
> Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Yours,
Linus Walleij
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options
2014-02-14 10:40 ` Linus Walleij
@ 2014-02-14 14:02 ` Rob Herring
2014-02-24 9:41 ` Linus Walleij
0 siblings, 1 reply; 37+ messages in thread
From: Rob Herring @ 2014-02-14 14:02 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, Feb 14, 2014 at 4:40 AM, Linus Walleij <linus.walleij@linaro.org> wrote:
> On Tue, Feb 11, 2014 at 10:11 PM, Rob Herring <robherring2@gmail.com> wrote:
>
>> From: Rob Herring <robh@kernel.org>
>>
>> Multi-platform requires various kconfig options to be selected, so
>> platforms don't need to select them individually.
>>
>> Signed-off-by: Rob Herring <robh@kernel.org>
>> Cc: Linus Walleij <linus.walleij@linaro.org>
>> Cc: Russell King <linux@arm.linux.org.uk>
>
> OK makes sense. Maybe a bit unintuitive that multiplat
> make gpiolib wanted optional and then platforms override
> this by requiring it, but whatever, I cannot think of anything
> better.
> Acked-by: Linus Walleij <linus.walleij@linaro.org>
It's really just about making gpiolib visible. Can we just kill the
symbol or there are still non-gpiolib users that would conflict?
Rob
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options
2014-02-14 14:02 ` Rob Herring
@ 2014-02-24 9:41 ` Linus Walleij
0 siblings, 0 replies; 37+ messages in thread
From: Linus Walleij @ 2014-02-24 9:41 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, Feb 14, 2014 at 3:02 PM, Rob Herring <robherring2@gmail.com> wrote:
> On Fri, Feb 14, 2014 at 4:40 AM, Linus Walleij <linus.walleij@linaro.org> wrote:
>> On Tue, Feb 11, 2014 at 10:11 PM, Rob Herring <robherring2@gmail.com> wrote:
>>
>>> From: Rob Herring <robh@kernel.org>
>>>
>>> Multi-platform requires various kconfig options to be selected, so
>>> platforms don't need to select them individually.
>>>
>>> Signed-off-by: Rob Herring <robh@kernel.org>
>>> Cc: Linus Walleij <linus.walleij@linaro.org>
>>> Cc: Russell King <linux@arm.linux.org.uk>
>>
>> OK makes sense. Maybe a bit unintuitive that multiplat
>> make gpiolib wanted optional and then platforms override
>> this by requiring it, but whatever, I cannot think of anything
>> better.
>> Acked-by: Linus Walleij <linus.walleij@linaro.org>
>
> It's really just about making gpiolib visible. Can we just kill the
> symbol or there are still non-gpiolib users that would conflict?
Oh no and yes. I'm working on trying to get rid of that
old cruft, but the problem is that I basically have to acquire
or delete these platforms to get them off the "generic GPIO"
API (i.e. just a set of functions with certain names).
Old habits die hard you know.
Having the symbol default-selected by multiplatform definately
puts up a roadblock stopping new platforms from doing
anything like that again so at second thought I really like
this patch:
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Yours,
Linus Walleij
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options
2014-02-11 21:11 ` [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options Rob Herring
2014-02-14 10:40 ` Linus Walleij
@ 2014-02-28 18:37 ` Kevin Hilman
2014-02-28 20:15 ` Arnd Bergmann
1 sibling, 1 reply; 37+ messages in thread
From: Kevin Hilman @ 2014-02-28 18:37 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, Feb 11, 2014 at 1:11 PM, Rob Herring <robherring2@gmail.com> wrote:
> From: Rob Herring <robh@kernel.org>
>
> Multi-platform requires various kconfig options to be selected, so
> platforms don't need to select them individually.
>
> Signed-off-by: Rob Herring <robh@kernel.org>
> Cc: Linus Walleij <linus.walleij@linaro.org>
> Cc: Russell King <linux@arm.linux.org.uk>
FYI... this recently hit arm-soc/for-next and according to my bisect,
is the cause for two new boot failures[1] for sunxi_defconfig on
cubieboard and cubie2. The previous build/boot passed on both
boards[2]. Interestingly, both boards boot fine with
multi_v7_defconfig though.
There's zero console output on the boards, and I haven't dug further
since I still have to pack for a trip tomorrow.
Kevin
[1] http://lists.linaro.org/pipermail/kernel-build-reports/2014-February/002615.html
[2] http://lists.linaro.org/pipermail/kernel-build-reports/2014-February/002613.html
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options
2014-02-28 18:37 ` Kevin Hilman
@ 2014-02-28 20:15 ` Arnd Bergmann
2014-02-28 20:22 ` Kevin Hilman
0 siblings, 1 reply; 37+ messages in thread
From: Arnd Bergmann @ 2014-02-28 20:15 UTC (permalink / raw)
To: linux-arm-kernel
On Friday 28 February 2014, Kevin Hilman wrote:
> On Tue, Feb 11, 2014 at 1:11 PM, Rob Herring <robherring2@gmail.com> wrote:
> > From: Rob Herring <robh@kernel.org>
> >
> > Multi-platform requires various kconfig options to be selected, so
> > platforms don't need to select them individually.
> >
> > Signed-off-by: Rob Herring <robh@kernel.org>
> > Cc: Linus Walleij <linus.walleij@linaro.org>
> > Cc: Russell King <linux@arm.linux.org.uk>
>
> FYI... this recently hit arm-soc/for-next and according to my bisect,
> is the cause for two new boot failures[1] for sunxi_defconfig on
> cubieboard and cubie2. The previous build/boot passed on both
> boards[2]. Interestingly, both boards boot fine with
> multi_v7_defconfig though.
>
> There's zero console output on the boards, and I haven't dug further
> since I still have to pack for a trip tomorrow.
>
> Kevin
>
> [1] http://lists.linaro.org/pipermail/kernel-build-reports/2014-February/002615.html
> [2] http://lists.linaro.org/pipermail/kernel-build-reports/2014-February/002613.html
I suspect we want this one:
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 7d1588e..cf35d18 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -304,6 +304,7 @@ config ARCH_MULTIPLATFORM
bool "Allow multiple platforms to be selected"
select ARCH_WANT_OPTIONAL_GPIOLIB
select AUTO_ZRELADDR
+ select CLKSRC_OF
select COMMON_CLK
select GENERIC_CLOCKEVENTS
select MULTI_IRQ_HANDLER
^ permalink raw reply related [flat|nested] 37+ messages in thread
* [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options
2014-02-28 20:15 ` Arnd Bergmann
@ 2014-02-28 20:22 ` Kevin Hilman
2014-02-28 20:33 ` Arnd Bergmann
0 siblings, 1 reply; 37+ messages in thread
From: Kevin Hilman @ 2014-02-28 20:22 UTC (permalink / raw)
To: linux-arm-kernel
Arnd Bergmann <arnd@arndb.de> writes:
> On Friday 28 February 2014, Kevin Hilman wrote:
>> On Tue, Feb 11, 2014 at 1:11 PM, Rob Herring <robherring2@gmail.com> wrote:
>> > From: Rob Herring <robh@kernel.org>
>> >
>> > Multi-platform requires various kconfig options to be selected, so
>> > platforms don't need to select them individually.
>> >
>> > Signed-off-by: Rob Herring <robh@kernel.org>
>> > Cc: Linus Walleij <linus.walleij@linaro.org>
>> > Cc: Russell King <linux@arm.linux.org.uk>
>>
>> FYI... this recently hit arm-soc/for-next and according to my bisect,
>> is the cause for two new boot failures[1] for sunxi_defconfig on
>> cubieboard and cubie2. The previous build/boot passed on both
>> boards[2]. Interestingly, both boards boot fine with
>> multi_v7_defconfig though.
>>
>> There's zero console output on the boards, and I haven't dug further
>> since I still have to pack for a trip tomorrow.
>>
>> Kevin
>>
>> [1] http://lists.linaro.org/pipermail/kernel-build-reports/2014-February/002615.html
>> [2] http://lists.linaro.org/pipermail/kernel-build-reports/2014-February/002613.html
>
> I suspect we want this one:
>
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 7d1588e..cf35d18 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -304,6 +304,7 @@ config ARCH_MULTIPLATFORM
> bool "Allow multiple platforms to be selected"
> select ARCH_WANT_OPTIONAL_GPIOLIB
> select AUTO_ZRELADDR
> + select CLKSRC_OF
> select COMMON_CLK
> select GENERIC_CLOCKEVENTS
> select MULTI_IRQ_HANDLER
Yup, that's it. With that, sunxi_defconfig is booting again.
Tested-by: Kevin Hilman <khilman@linaro.org>
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options
2014-02-28 20:22 ` Kevin Hilman
@ 2014-02-28 20:33 ` Arnd Bergmann
2014-04-20 10:56 ` Daniel Willmann
0 siblings, 1 reply; 37+ messages in thread
From: Arnd Bergmann @ 2014-02-28 20:33 UTC (permalink / raw)
To: linux-arm-kernel
On Friday 28 February 2014, Kevin Hilman wrote:
> > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > index 7d1588e..cf35d18 100644
> > --- a/arch/arm/Kconfig
> > +++ b/arch/arm/Kconfig
> > @@ -304,6 +304,7 @@ config ARCH_MULTIPLATFORM
> > bool "Allow multiple platforms to be selected"
> > select ARCH_WANT_OPTIONAL_GPIOLIB
> > select AUTO_ZRELADDR
> > + select CLKSRC_OF
> > select COMMON_CLK
> > select GENERIC_CLOCKEVENTS
> > select MULTI_IRQ_HANDLER
>
> Yup, that's it. With that, sunxi_defconfig is booting again.
>
> Tested-by: Kevin Hilman <khilman@linaro.org>
I've added this patch on the *for-next* branch for now, while we
still decide whether it is the correct solution. The alternative
would be to only select it from the clocksource drivers that want
it.
Arnd
^ permalink raw reply [flat|nested] 37+ messages in thread
* [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options
2014-02-28 20:33 ` Arnd Bergmann
@ 2014-04-20 10:56 ` Daniel Willmann
0 siblings, 0 replies; 37+ messages in thread
From: Daniel Willmann @ 2014-04-20 10:56 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, 2014-02-28 at 21:33, Arnd Bergmann wrote:
> On Friday 28 February 2014, Kevin Hilman wrote:
> > > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > > index 7d1588e..cf35d18 100644
> > > --- a/arch/arm/Kconfig
> > > +++ b/arch/arm/Kconfig
> > > @@ -304,6 +304,7 @@ config ARCH_MULTIPLATFORM
> > > bool "Allow multiple platforms to be selected"
> > > select ARCH_WANT_OPTIONAL_GPIOLIB
> > > select AUTO_ZRELADDR
> > > + select CLKSRC_OF
> > > select COMMON_CLK
> > > select GENERIC_CLOCKEVENTS
> > > select MULTI_IRQ_HANDLER
> >
> > Yup, that's it. With that, sunxi_defconfig is booting again.
> >
> > Tested-by: Kevin Hilman <khilman@linaro.org>
>
> I've added this patch on the *for-next* branch for now, while we
> still decide whether it is the correct solution. The alternative
> would be to only select it from the clocksource drivers that want
I see the same lockup with v3.15-rc1 on an imx233 board (olinuxino nano)
and this patch also fixes the issues I see.
Tested-by: Daniel Willmann <daniel@totalueberwachung.de>
Regards,
Daniel Willmann
^ permalink raw reply [flat|nested] 37+ messages in thread
end of thread, other threads:[~2014-04-20 10:56 UTC | newest]
Thread overview: 37+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-02-11 21:11 [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Rob Herring
2014-02-11 21:11 ` [PATCH v2 1/9] ARM: centralize common multi-platform kconfig options Rob Herring
2014-02-14 10:40 ` Linus Walleij
2014-02-14 14:02 ` Rob Herring
2014-02-24 9:41 ` Linus Walleij
2014-02-28 18:37 ` Kevin Hilman
2014-02-28 20:15 ` Arnd Bergmann
2014-02-28 20:22 ` Kevin Hilman
2014-02-28 20:33 ` Arnd Bergmann
2014-04-20 10:56 ` Daniel Willmann
2014-02-11 21:11 ` [PATCH 2/9] ARM: select HAVE_SMP for V7 multi-platform Rob Herring
2014-02-14 10:41 ` Linus Walleij
2014-02-11 21:11 ` [PATCH 3/9] ARM: select MIGHT_HAVE_CACHE_L2X0 " Rob Herring
2014-02-12 20:32 ` Stephen Warren
2014-02-13 13:10 ` Rob Herring
2014-02-11 21:11 ` [PATCH 4/9] ARM: Select V6K instead of V6 by default for multi-platform Rob Herring
2014-02-11 21:22 ` Arnd Bergmann
2014-02-11 21:26 ` Rob Herring
2014-02-11 21:27 ` Arnd Bergmann
2014-02-12 4:07 ` Shawn Guo
2014-02-11 21:11 ` [PATCH 5/9] ARM: bcm2835: enable V6K instead of plain V6 Rob Herring
2014-02-11 21:11 ` [PATCH 6/9] ARM: cns3xxx: " Rob Herring
2014-02-11 21:11 ` [PATCH 7/9] ARM: vt8500: " Rob Herring
2014-02-11 21:11 ` [PATCH 8/9] ARM: virt: make mach-virt just a kconfig option Rob Herring
2014-02-12 14:03 ` Marc Zyngier
2014-02-11 21:11 ` [PATCH 9/9] ARM: virt: select ARM_AMBA Rob Herring
2014-02-12 13:26 ` [PATCH v2 0/9] ARM: multi-platform kconfig cleanup and mach-virt removal Arnd Bergmann
2014-02-12 13:46 ` Will Deacon
2014-02-12 14:07 ` Rob Herring
2014-02-12 16:53 ` Arnd Bergmann
2014-02-12 17:11 ` Marc Zyngier
2014-02-12 17:16 ` Will Deacon
2014-02-12 18:07 ` Arnd Bergmann
2014-02-12 18:15 ` Will Deacon
2014-02-12 18:20 ` Arnd Bergmann
2014-02-12 20:38 ` Stephen Warren
2014-02-13 2:30 ` Stephen Warren
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.