diff options
| author | Olof Johansson <olof@lixom.net> | 2013-06-14 18:18:25 -0400 |
|---|---|---|
| committer | Olof Johansson <olof@lixom.net> | 2013-06-14 18:18:25 -0400 |
| commit | 5ae13ef4e1045d6ec5d445947b42c839b9731bec (patch) | |
| tree | 8cc0d1409f254586cfe81fb08de061df45dbfa2e | |
| parent | 01758fe655103338ca80b1cdf527d65fd20a4c0c (diff) | |
| parent | 5fb2038d61ce94e7c9224db2aaff5633ca224953 (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.debug | 30 | ||||
| -rw-r--r-- | arch/arm/boot/dts/armada-370-xp.dtsi | 6 | ||||
| -rw-r--r-- | arch/arm/boot/dts/armada-xp-mv78460.dtsi | 2 | ||||
| -rw-r--r-- | arch/arm/boot/dts/armada-xp.dtsi | 2 | ||||
| -rw-r--r-- | arch/arm/configs/mvebu_defconfig | 2 | ||||
| -rw-r--r-- | arch/arm/include/debug/mvebu.S | 5 | ||||
| -rw-r--r-- | arch/arm/mach-mvebu/armada-370-xp.c | 55 | ||||
| -rw-r--r-- | arch/arm/mach-mvebu/armada-370-xp.h | 10 | ||||
| -rw-r--r-- | arch/arm/mach-mvebu/coherency.c | 44 | ||||
| -rw-r--r-- | arch/arm/mach-mvebu/coherency.h | 4 | ||||
| -rw-r--r-- | arch/arm/mach-mvebu/common.h | 2 | ||||
| -rw-r--r-- | arch/arm/mach-mvebu/headsmp.S | 16 | ||||
| -rw-r--r-- | arch/arm/mach-mvebu/platsmp.c | 10 |
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 |
| 101 | CONFIG_DEBUG_INFO=y | 101 | CONFIG_DEBUG_INFO=y |
| 102 | CONFIG_DEBUG_USER=y | 102 | CONFIG_DEBUG_USER=y |
| 103 | CONFIG_DEBUG_LL=y | ||
| 104 | CONFIG_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> |
