aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlof Johansson <olof@lixom.net>2013-06-14 18:18:25 -0400
committerOlof Johansson <olof@lixom.net>2013-06-14 18:18:25 -0400
commit5ae13ef4e1045d6ec5d445947b42c839b9731bec (patch)
tree8cc0d1409f254586cfe81fb08de061df45dbfa2e
parent01758fe655103338ca80b1cdf527d65fd20a4c0c (diff)
parent5fb2038d61ce94e7c9224db2aaff5633ca224953 (diff)
Merge tag 'regmap-3.11' of git://git.infradead.org/users/jcooper/linux into next/soc
mvebu register map changes for v3.11 This series removes the hardcoded register base address for mvebu. Depends: - mvebu/fixes-non-critical (up to tags/fixes-non-3.11-1) - mvebu/cleanup (up to tags/cleanup-3.11-3) * tag 'regmap-3.11' of git://git.infradead.org/users/jcooper/linux: arm: mvebu: disable DEBUG_LL/EARLY_PRINTK in defconfig arm: mvebu: add another earlyprintk Kconfig option arm: mvebu: don't hardcode the physical address for mvebu-mbus arm: mvebu: don't hardcode a physical address in headsmp.S arm: mvebu: remove hardcoded static I/O mapping arm: mvebu: move cache and mvebu-mbus initialization later arm: mvebu: avoid hardcoded virtual address in coherency code arm: mvebu: remove dependency of SMP init on static I/O mapping arm: mvebu: fix length of Ethernet registers area in .dtsi arm: mvebu: fix length of SATA registers area in .dtsi arm: mvebu: mark functions of armada-370-xp.c as static ARM: mvebu: Remove init_irq declaration in machine description ARM: Orion: Remove redundant init_dma_coherent_pool_size() Signed-off-by: Olof Johansson <olof@lixom.net>
-rw-r--r--arch/arm/Kconfig.debug30
-rw-r--r--arch/arm/boot/dts/armada-370-xp.dtsi6
-rw-r--r--arch/arm/boot/dts/armada-xp-mv78460.dtsi2
-rw-r--r--arch/arm/boot/dts/armada-xp.dtsi2
-rw-r--r--arch/arm/configs/mvebu_defconfig2
-rw-r--r--arch/arm/include/debug/mvebu.S5
-rw-r--r--arch/arm/mach-mvebu/armada-370-xp.c55
-rw-r--r--arch/arm/mach-mvebu/armada-370-xp.h10
-rw-r--r--arch/arm/mach-mvebu/coherency.c44
-rw-r--r--arch/arm/mach-mvebu/coherency.h4
-rw-r--r--arch/arm/mach-mvebu/common.h2
-rw-r--r--arch/arm/mach-mvebu/headsmp.S16
-rw-r--r--arch/arm/mach-mvebu/platsmp.c10
13 files changed, 107 insertions, 81 deletions
diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
index 1d41908d5cda..e6a6ab1b10d7 100644
--- a/arch/arm/Kconfig.debug
+++ b/arch/arm/Kconfig.debug
@@ -303,12 +303,37 @@ choice
303 their output to the serial port on MSM 8960 devices. 303 their output to the serial port on MSM 8960 devices.
304 304
305 config DEBUG_MVEBU_UART 305 config DEBUG_MVEBU_UART
306 bool "Kernel low-level debugging messages via MVEBU UART" 306 bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)"
307 depends on ARCH_MVEBU 307 depends on ARCH_MVEBU
308 help 308 help
309 Say Y here if you want kernel low-level debugging support 309 Say Y here if you want kernel low-level debugging support
310 on MVEBU based platforms. 310 on MVEBU based platforms.
311 311
312 This option should be used with the old bootloaders
313 that left the internal registers mapped at
314 0xd0000000. As of today, this is the case on
315 platforms such as the Globalscale Mirabox or the
316 Plathome OpenBlocks AX3, when using the original
317 bootloader.
318
319 If the wrong DEBUG_MVEBU_UART* option is selected,
320 when u-boot hands over to the kernel, the system
321 silently crashes, with no serial output at all.
322
323 config DEBUG_MVEBU_UART_ALTERNATE
324 bool "Kernel low-level debugging messages via MVEBU UART (new bootloaders)"
325 depends on ARCH_MVEBU
326 help
327 Say Y here if you want kernel low-level debugging support
328 on MVEBU based platforms.
329
330 This option should be used with the new bootloaders
331 that remap the internal registers at 0xf1000000.
332
333 If the wrong DEBUG_MVEBU_UART* option is selected,
334 when u-boot hands over to the kernel, the system
335 silently crashes, with no serial output at all.
336
312 config DEBUG_NOMADIK_UART 337 config DEBUG_NOMADIK_UART
313 bool "Kernel low-level debugging messages via NOMADIK UART" 338 bool "Kernel low-level debugging messages via NOMADIK UART"
314 depends on ARCH_NOMADIK 339 depends on ARCH_NOMADIK
@@ -632,7 +657,8 @@ config DEBUG_LL_INCLUDE
632 DEBUG_IMX51_UART || \ 657 DEBUG_IMX51_UART || \
633 DEBUG_IMX53_UART ||\ 658 DEBUG_IMX53_UART ||\
634 DEBUG_IMX6Q_UART 659 DEBUG_IMX6Q_UART
635 default "debug/mvebu.S" if DEBUG_MVEBU_UART 660 default "debug/mvebu.S" if DEBUG_MVEBU_UART || \
661 DEBUG_MVEBU_UART_ALTERNATE
636 default "debug/mxs.S" if DEBUG_IMX23_UART || DEBUG_IMX28_UART 662 default "debug/mxs.S" if DEBUG_IMX23_UART || DEBUG_IMX28_UART
637 default "debug/nomadik.S" if DEBUG_NOMADIK_UART 663 default "debug/nomadik.S" if DEBUG_NOMADIK_UART
638 default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART 664 default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
diff --git a/arch/arm/boot/dts/armada-370-xp.dtsi b/arch/arm/boot/dts/armada-370-xp.dtsi
index 550eb772c30e..52a1f5efc086 100644
--- a/arch/arm/boot/dts/armada-370-xp.dtsi
+++ b/arch/arm/boot/dts/armada-370-xp.dtsi
@@ -80,7 +80,7 @@
80 80
81 sata@a0000 { 81 sata@a0000 {
82 compatible = "marvell,orion-sata"; 82 compatible = "marvell,orion-sata";
83 reg = <0xa0000 0x2400>; 83 reg = <0xa0000 0x5000>;
84 interrupts = <55>; 84 interrupts = <55>;
85 clocks = <&gateclk 15>, <&gateclk 30>; 85 clocks = <&gateclk 15>, <&gateclk 30>;
86 clock-names = "0", "1"; 86 clock-names = "0", "1";
@@ -96,7 +96,7 @@
96 96
97 ethernet@70000 { 97 ethernet@70000 {
98 compatible = "marvell,armada-370-neta"; 98 compatible = "marvell,armada-370-neta";
99 reg = <0x70000 0x2500>; 99 reg = <0x70000 0x4000>;
100 interrupts = <8>; 100 interrupts = <8>;
101 clocks = <&gateclk 4>; 101 clocks = <&gateclk 4>;
102 status = "disabled"; 102 status = "disabled";
@@ -104,7 +104,7 @@
104 104
105 ethernet@74000 { 105 ethernet@74000 {
106 compatible = "marvell,armada-370-neta"; 106 compatible = "marvell,armada-370-neta";
107 reg = <0x74000 0x2500>; 107 reg = <0x74000 0x4000>;
108 interrupts = <10>; 108 interrupts = <10>;
109 clocks = <&gateclk 3>; 109 clocks = <&gateclk 3>;
110 status = "disabled"; 110 status = "disabled";
diff --git a/arch/arm/boot/dts/armada-xp-mv78460.dtsi b/arch/arm/boot/dts/armada-xp-mv78460.dtsi
index 6ab56bd35de9..488ca5eb9a55 100644
--- a/arch/arm/boot/dts/armada-xp-mv78460.dtsi
+++ b/arch/arm/boot/dts/armada-xp-mv78460.dtsi
@@ -107,7 +107,7 @@
107 107
108 ethernet@34000 { 108 ethernet@34000 {
109 compatible = "marvell,armada-370-neta"; 109 compatible = "marvell,armada-370-neta";
110 reg = <0x34000 0x2500>; 110 reg = <0x34000 0x4000>;
111 interrupts = <14>; 111 interrupts = <14>;
112 clocks = <&gateclk 1>; 112 clocks = <&gateclk 1>;
113 status = "disabled"; 113 status = "disabled";
diff --git a/arch/arm/boot/dts/armada-xp.dtsi b/arch/arm/boot/dts/armada-xp.dtsi
index 5b902f9a3af2..1ee8540b0eba 100644
--- a/arch/arm/boot/dts/armada-xp.dtsi
+++ b/arch/arm/boot/dts/armada-xp.dtsi
@@ -88,7 +88,7 @@
88 88
89 ethernet@30000 { 89 ethernet@30000 {
90 compatible = "marvell,armada-370-neta"; 90 compatible = "marvell,armada-370-neta";
91 reg = <0x30000 0x2500>; 91 reg = <0x30000 0x4000>;
92 interrupts = <12>; 92 interrupts = <12>;
93 clocks = <&gateclk 2>; 93 clocks = <&gateclk 2>;
94 status = "disabled"; 94 status = "disabled";
diff --git a/arch/arm/configs/mvebu_defconfig b/arch/arm/configs/mvebu_defconfig
index 804b1dae4330..731814e2c189 100644
--- a/arch/arm/configs/mvebu_defconfig
+++ b/arch/arm/configs/mvebu_defconfig
@@ -100,5 +100,3 @@ CONFIG_TIMER_STATS=y
100# CONFIG_DEBUG_BUGVERBOSE is not set 100# CONFIG_DEBUG_BUGVERBOSE is not set
101CONFIG_DEBUG_INFO=y 101CONFIG_DEBUG_INFO=y
102CONFIG_DEBUG_USER=y 102CONFIG_DEBUG_USER=y
103CONFIG_DEBUG_LL=y
104CONFIG_EARLY_PRINTK=y
diff --git a/arch/arm/include/debug/mvebu.S b/arch/arm/include/debug/mvebu.S
index df191afa3be1..6517311a1c91 100644
--- a/arch/arm/include/debug/mvebu.S
+++ b/arch/arm/include/debug/mvebu.S
@@ -11,7 +11,12 @@
11 * published by the Free Software Foundation. 11 * published by the Free Software Foundation.
12*/ 12*/
13 13
14#ifdef CONFIG_DEBUG_MVEBU_UART_ALTERNATE
15#define ARMADA_370_XP_REGS_PHYS_BASE 0xf1000000
16#else
14#define ARMADA_370_XP_REGS_PHYS_BASE 0xd0000000 17#define ARMADA_370_XP_REGS_PHYS_BASE 0xd0000000
18#endif
19
15#define ARMADA_370_XP_REGS_VIRT_BASE 0xfec00000 20#define ARMADA_370_XP_REGS_VIRT_BASE 0xfec00000
16 21
17 .macro addruart, rp, rv, tmp 22 .macro addruart, rp, rv, tmp
diff --git a/arch/arm/mach-mvebu/armada-370-xp.c b/arch/arm/mach-mvebu/armada-370-xp.c
index ebbc99739726..97cbb8021919 100644
--- a/arch/arm/mach-mvebu/armada-370-xp.c
+++ b/arch/arm/mach-mvebu/armada-370-xp.c
@@ -15,12 +15,12 @@
15#include <linux/kernel.h> 15#include <linux/kernel.h>
16#include <linux/init.h> 16#include <linux/init.h>
17#include <linux/clk-provider.h> 17#include <linux/clk-provider.h>
18#include <linux/of_address.h>
18#include <linux/of_platform.h> 19#include <linux/of_platform.h>
19#include <linux/io.h> 20#include <linux/io.h>
20#include <linux/time-armada-370-xp.h> 21#include <linux/time-armada-370-xp.h>