aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRob Herring <robh@kernel.org>2015-12-08 15:44:18 -0500
committerArnd Bergmann <arnd@arndb.de>2015-12-15 17:54:48 -0500
commita29da136de345f074d0c64f1c3b38eef30116b32 (patch)
tree28d16e8a2529f3fea31e25c5356a7f5b688dc12a
parenta70967892111934e292485ce84f1bab38cc55380 (diff)
ARM: versatile: convert to multi-platform
Now that all the prerequisites are in place, we can enable Versatile boards for multi-platform kernels. Signed-off-by: Rob Herring <robh@kernel.org> Cc: Russell King <linux@arm.linux.org.uk> Cc: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
-rw-r--r--arch/arm/Kconfig22
-rw-r--r--arch/arm/configs/versatile_defconfig2
-rw-r--r--arch/arm/mach-versatile/Kconfig16
-rw-r--r--arch/arm/mach-versatile/Makefile.boot4
-rw-r--r--arch/arm/mach-versatile/include/mach/uncompress.h45
5 files changed, 19 insertions, 70 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 34e2162213cb..99414545fe23 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -362,26 +362,6 @@ config ARCH_REALVIEW
362 help 362 help
363 This enables support for ARM Ltd RealView boards. 363 This enables support for ARM Ltd RealView boards.
364 364
365config ARCH_VERSATILE
366 bool "ARM Ltd. Versatile family"
367 select ARCH_WANT_OPTIONAL_GPIOLIB
368 select ARM_AMBA
369 select ARM_TIMER_SP804
370 select ARM_VIC
371 select CLKSRC_VERSATILE
372 select COMMON_CLK
373 select COMMON_CLK_VERSATILE
374 select CPU_ARM926T
375 select GENERIC_CLOCKEVENTS
376 select ICST
377 select PLAT_VERSATILE
378 select MIGHT_HAVE_PCI
379 select SPARSE_IRQ
380 select USE_OF
381 select VERSATILE_FPGA_IRQ
382 help
383 This enables support for ARM Ltd Versatile board.
384
385config ARCH_CLPS711X 365config ARCH_CLPS711X
386 bool "Cirrus Logic CLPS711x/EP721x/EP731x-based" 366 bool "Cirrus Logic CLPS711x/EP721x/EP731x-based"
387 select ARCH_REQUIRE_GPIOLIB 367 select ARCH_REQUIRE_GPIOLIB
@@ -929,6 +909,8 @@ source "arch/arm/mach-uniphier/Kconfig"
929 909
930source "arch/arm/mach-ux500/Kconfig" 910source "arch/arm/mach-ux500/Kconfig"
931 911
912source "arch/arm/mach-versatile/Kconfig"
913
932source "arch/arm/mach-vexpress/Kconfig" 914source "arch/arm/mach-vexpress/Kconfig"
933source "arch/arm/plat-versatile/Kconfig" 915source "arch/arm/plat-versatile/Kconfig"
934 916
diff --git a/arch/arm/configs/versatile_defconfig b/arch/arm/configs/versatile_defconfig
index ea49d37564da..01f402ddb1e7 100644
--- a/arch/arm/configs/versatile_defconfig
+++ b/arch/arm/configs/versatile_defconfig
@@ -6,8 +6,8 @@ CONFIG_SLAB=y
6CONFIG_MODULES=y 6CONFIG_MODULES=y
7CONFIG_MODULE_UNLOAD=y 7CONFIG_MODULE_UNLOAD=y
8CONFIG_PARTITION_ADVANCED=y 8CONFIG_PARTITION_ADVANCED=y
9# CONFIG_ARCH_MULTI_V7 is not set
9CONFIG_ARCH_VERSATILE=y 10CONFIG_ARCH_VERSATILE=y
10CONFIG_MACH_VERSATILE_AB=y
11CONFIG_AEABI=y 11CONFIG_AEABI=y
12CONFIG_OABI_COMPAT=y 12CONFIG_OABI_COMPAT=y
13CONFIG_ZBOOT_ROM_TEXT=0x0 13CONFIG_ZBOOT_ROM_TEXT=0x0
diff --git a/arch/arm/mach-versatile/Kconfig b/arch/arm/mach-versatile/Kconfig
new file mode 100644
index 000000000000..e40f777ccf7d
--- /dev/null
+++ b/arch/arm/mach-versatile/Kconfig
@@ -0,0 +1,16 @@
1config ARCH_VERSATILE
2 bool "ARM Ltd. Versatile family"
3 depends on ARCH_MULTI_V5
4 select ARM_AMBA
5 select ARM_TIMER_SP804
6 select ARM_VIC
7 select CLKSRC_VERSATILE
8 select COMMON_CLK_VERSATILE
9 select CPU_ARM926T
10 select ICST
11 select MIGHT_HAVE_PCI
12 select PLAT_VERSATILE
13 select VERSATILE_FPGA_IRQ
14 help
15 This enables support for ARM Ltd Versatile board.
16
diff --git a/arch/arm/mach-versatile/Makefile.boot b/arch/arm/mach-versatile/Makefile.boot
deleted file mode 100644
index ff0a4b5b0a82..000000000000
--- a/arch/arm/mach-versatile/Makefile.boot
+++ /dev/null
@@ -1,4 +0,0 @@
1 zreladdr-y += 0x00008000
2params_phys-y := 0x00000100
3initrd_phys-y := 0x00800000
4
diff --git a/arch/arm/mach-versatile/include/mach/uncompress.h b/arch/arm/mach-versatile/include/mach/uncompress.h
deleted file mode 100644
index 986e3d303f3c..000000000000
--- a/arch/arm/mach-versatile/include/mach/uncompress.h
+++ /dev/null
@@ -1,45 +0,0 @@
1/*
2 * arch/arm/mach-versatile/include/mach/uncompress.h
3 *
4 * Copyright (C) 2003 ARM Limited
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 */
20#define AMBA_UART_DR (*(volatile unsigned char *)0x101F1000)
21#define AMBA_UART_LCRH (*(volatile unsigned char *)0x101F102C)
22#define AMBA_UART_CR (*(volatile unsigned char *)0x101F1030)
23#define AMBA_UART_FR (*(volatile unsigned char *)0x101F1018)
24
25/*
26 * This does not append a newline
27 */
28static inline void putc(int c)
29{
30 while (AMBA_UART_FR & (1 << 5))
31 barrier();
32
33 AMBA_UART_DR = c;
34}
35
36static inline void flush(void)
37{
38 while (AMBA_UART_FR & (1 << 3))
39 barrier();
40}
41
42/*
43 * nothing to do
44 */
45#define arch_decomp_setup()