From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754335AbbKYQiP (ORCPT ); Wed, 25 Nov 2015 11:38:15 -0500 Received: from mout.kundenserver.de ([217.72.192.75]:64834 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753076AbbKYQdC (ORCPT ); Wed, 25 Nov 2015 11:33:02 -0500 From: Arnd Bergmann To: linux-arm-kernel@lists.infradead.org Cc: linux-kernel@vger.kernel.org, Linus Walleij , Russell King , Liviu Dudau , Sudeep Holla , Lorenzo Pieralisi , Arnd Bergmann , Russell King Subject: [PATCH 06/10] ARM: realview: enable multiplatform Date: Wed, 25 Nov 2015 17:32:19 +0100 Message-Id: <1448469143-447355-7-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.1.0.rc2 In-Reply-To: <1448469143-447355-1-git-send-email-arnd@arndb.de> References: <1448469143-447355-1-git-send-email-arnd@arndb.de> X-Provags-ID: V03:K0:YbFgEIWBTNJWHt6WEfNdFB+lBYH+Rvl0nCa0da7sXKSK0PvXjeZ vFg86NTNG5rnXPFD5XuJbvNGQ9XwTTCsXMmp3s3WJx2sfjhbUuUgV4azmOIgdsnreMJoA1T m5n0lLoFBxFjQfj5ekau9zlOx/VlbcWX9eMKvO/qwhgp6JmNL24xFI60ND5z24K+56Obbz/ 8M5rEqBuJGjTLHKDTjC2g== X-UI-Out-Filterresults: notjunk:1;V01:K0:MFxvH+ci39U=:TcI3mNFy8egMCyHbGdGtBt t6LgTbpMlAfCFKO8eCuEqYJ5ER9H0chRVTbs7WFbZROzhN/+AhD5MsmRpPoKN+yhTEN2DpFt9 xJa7R9B+dpfvSynqU0X2cF5v5V001tinr7Xb/BZvicauKEioh4ZY5nLAQLfZdjF27sVkWCbR3 n1PI7/nr6pbzNhNXf5JDL/nXjzo7N1d8AuZAGnk94T5wLVNUZhjOewQbNDwRIA3XYcskiI2ew pq++Ji+rzUo0ZwLanTDTbA6Nywtl6wZo+hvWGnyyrY8OJYUuDK1t6f+cEVowYPxrD/QgU270A VTis4FQCI1dgb9Z0w2fKYkRHr1cTWbx9jHp6nT2c09ZfJOGOii/Z2Q27rbdg0uD8SHrJlQmi2 HQAnYsIv47/Eb1ERjs1fbIOsBOrC7XIsKO/Q1bBV9w2Jolrb7QncV8DVPPfQo7OtMAgfGNeZV Vkdd/zC2Crmui0PlivnhSuCXhQD1UwxPGiQLDjt1ZTfQ8OER39j4gqq1pyMw1Tmx2kq2Th+cO JUe8cbNWeUf2PXt0WO1n+13lGeBWX02OrT+cLnR0QA3dEvokSdvrK2Z51lAZhovuhnzWYWbEW wWbm4oH7YFPVfGIAyU7roux+rWW6b7/yAbkpu+D4wtz58ipM2BfVTVe1IoT8s+qanzittbDhv MgguByF5QKtLZWfR+qEkOJQ1gUcUcrPl0Kbi3S1kDKfxhx/QFTrrmIFwnR7oiWDDdDX0= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org All obstacles are out of the way by now, so we can finally move realview to multiplatform. Signed-off-by: Arnd Bergmann Acked-by: Linus Walleij Cc: Russell King --- arch/arm/Kconfig | 14 ----------- arch/arm/mach-realview/Kconfig | 55 ++++++++++++++++++++++++++++++++--------- arch/arm/mach-realview/Makefile | 7 +++++- 3 files changed, 49 insertions(+), 27 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 05e0bb54d3cd..c1598ea2ba56 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -342,20 +342,6 @@ config ARM_SINGLE_ARMV7M select SPARSE_IRQ select USE_OF -config ARCH_REALVIEW - bool "ARM Ltd. RealView family" - select ARCH_WANT_OPTIONAL_GPIOLIB - select ARM_AMBA - select ARM_TIMER_SP804 - select COMMON_CLK - select COMMON_CLK_VERSATILE - select GENERIC_CLOCKEVENTS - select GPIO_PL061 if GPIOLIB - select ICST - select PLAT_VERSATILE - select PLAT_VERSATILE_SCHED_CLOCK - help - This enables support for ARM Ltd RealView boards. config ARCH_VERSATILE bool "ARM Ltd. Versatile family" diff --git a/arch/arm/mach-realview/Kconfig b/arch/arm/mach-realview/Kconfig index 055e7355ec14..0c10e4a2bace 100644 --- a/arch/arm/mach-realview/Kconfig +++ b/arch/arm/mach-realview/Kconfig @@ -1,9 +1,21 @@ -menu "RealView platform type" - depends on ARCH_REALVIEW +menuconfig ARCH_REALVIEW + bool "ARM Ltd. RealView family" if ARCH_MULTI_V5 || ARCH_MULTI_V6 || ARCH_MULTI_V7 + select ARM_AMBA + select ARM_TIMER_SP804 + select COMMON_CLK_VERSATILE + select GPIO_PL061 if GPIOLIB + select ICST + select PLAT_VERSATILE + select PLAT_VERSATILE_SCHED_CLOCK + help + This enables support for ARM Ltd RealView boards. + +if ARCH_REALVIEW config REALVIEW_DT bool "Support RealView(R) Device Tree based boot" select ARM_GIC + select MACH_REALVIEW_EB if ARCH_MULTI_V5 select MFD_SYSCON select POWER_RESET select POWER_RESET_VERSATILE @@ -17,14 +29,32 @@ config REALVIEW_DT config MACH_REALVIEW_EB bool "Support RealView(R) Emulation Baseboard" select ARM_GIC + select CPU_ARM926T if ARCH_MULTI_V5 help Include support for the ARM(R) RealView(R) Emulation Baseboard - platform. + platform. On an ARMv5 kernel, this will include support for + the ARM926EJ-S core tile, while on an ARMv6/v7 kernel, at least + one of the ARM1136, ARM1176, ARM11MPCore or Cortex-A9MPCore + core tile options should be enabled. + +config REALVIEW_EB_ARM1136 + bool "Support ARM1136J(F)-S Tile" + depends on MACH_REALVIEW_EB && ARCH_MULTI_V6 + select CPU_V6 + help + Enable support for the ARM1136 tile fitted to the + Realview(R) Emulation Baseboard platform. + +config REALVIEW_EB_ARM1176 + bool "Support ARM1176JZ(F)-S Tile" + depends on MACH_REALVIEW_EB && ARCH_MULTI_V6 + help + Enable support for the ARM1176 tile fitted to the + Realview(R) Emulation Baseboard platform. config REALVIEW_EB_A9MP bool "Support Multicore Cortex-A9 Tile" - depends on MACH_REALVIEW_EB - select CPU_V7 + depends on MACH_REALVIEW_EB && ARCH_MULTI_V7 select HAVE_ARM_SCU if SMP select HAVE_ARM_TWD if SMP select HAVE_SMP @@ -35,8 +65,7 @@ config REALVIEW_EB_A9MP config REALVIEW_EB_ARM11MP bool "Support ARM11MPCore Tile" - depends on MACH_REALVIEW_EB - select CPU_V6K + depends on MACH_REALVIEW_EB && ARCH_MULTI_V6 select HAVE_ARM_SCU if SMP select HAVE_ARM_TWD if SMP select HAVE_SMP @@ -47,7 +76,7 @@ config REALVIEW_EB_ARM11MP config REALVIEW_EB_ARM11MP_REVB bool "Support ARM11MPCore RevB Tile" - depends on REALVIEW_EB_ARM11MP + depends on REALVIEW_EB_ARM11MP && ARCH_MULTI_V6 help Enable support for the ARM11MPCore Revision B tile on the Realview(R) Emulation Baseboard platform. Since there are device @@ -56,8 +85,8 @@ config REALVIEW_EB_ARM11MP_REVB config MACH_REALVIEW_PB11MP bool "Support RealView(R) Platform Baseboard for ARM11MPCore" + depends on ARCH_MULTI_V6 select ARM_GIC - select CPU_V6K select HAVE_ARM_SCU if SMP select HAVE_ARM_TWD if SMP select HAVE_PATA_PLATFORM @@ -71,6 +100,7 @@ config MACH_REALVIEW_PB11MP # ARMv6 CPU without K extensions, but does have the new exclusive ops config MACH_REALVIEW_PB1176 bool "Support RealView(R) Platform Baseboard for ARM1176JZF-S" + depends on ARCH_MULTI_V6 select ARM_GIC select CPU_V6 select HAVE_TCM @@ -90,8 +120,8 @@ config REALVIEW_PB1176_SECURE_FLASH config MACH_REALVIEW_PBA8 bool "Support RealView(R) Platform Baseboard for Cortex(tm)-A8 platform" + depends on ARCH_MULTI_V7 select ARM_GIC - select CPU_V7 select HAVE_PATA_PLATFORM help Include support for the ARM(R) RealView Platform Baseboard for @@ -99,7 +129,8 @@ config MACH_REALVIEW_PBA8 support for PCI-E and Compact Flash. config MACH_REALVIEW_PBX - bool "Support RealView(R) Platform Baseboard Explore" + bool "Support RealView(R) Platform Baseboard Explore for Cortex-A9" + depends on ARCH_MULTI_V7 select ARM_GIC select HAVE_ARM_SCU if SMP select HAVE_ARM_TWD if SMP @@ -123,4 +154,4 @@ config REALVIEW_HIGH_PHYS_OFFSET offset. On the PBX board, disabling this option allows 1GB of RAM to be used with HIGHMEM. -endmenu +endif diff --git a/arch/arm/mach-realview/Makefile b/arch/arm/mach-realview/Makefile index e07fdf7ae8a7..ee0dfaedfa1f 100644 --- a/arch/arm/mach-realview/Makefile +++ b/arch/arm/mach-realview/Makefile @@ -1,13 +1,18 @@ # # Makefile for the linux kernel. # +ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include \ + -I$(srctree)/arch/arm/plat-versatile/include + -obj-y := core.o obj-$(CONFIG_REALVIEW_DT) += realview-dt.o +ifdef $(CONFIG_ATAGS) +obj-y := core.o obj-$(CONFIG_MACH_REALVIEW_EB) += realview_eb.o obj-$(CONFIG_MACH_REALVIEW_PB11MP) += realview_pb11mp.o obj-$(CONFIG_MACH_REALVIEW_PB1176) += realview_pb1176.o obj-$(CONFIG_MACH_REALVIEW_PBA8) += realview_pba8.o obj-$(CONFIG_MACH_REALVIEW_PBX) += realview_pbx.o +endif obj-$(CONFIG_SMP) += platsmp.o obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o -- 2.1.0.rc2