All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/7] ARM: mvebu: switch to DT probed irqchip and clocksource
@ 2013-07-02 11:03 ` Sebastian Hesselbarth
  0 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Sebastian Hesselbarth, Russell King, Jason Cooper, Andrew Lunn,
	Thomas Petazzoni, Gregory CLEMENT, linux-arm-kernel,
	linux-kernel

This patch set converts Marvell Dove and Kirkwood DT enabled boards
to probe irqchip and clocksource by DT. The corresponding irqchip and
clocksource drivers have been taken by Thomas Gleixner and Daniel Lezcano
respectively. This patch set is based on next-20130701 plus tip/core and
timers/clockevents. Also, mv643xx_eth DT patches sent earlier are applied.

Unfortunately, the same compatible string is used by irqchip driver and
irq DT stub in plat-orion/irq.c while reg layout is different. This patch
set should be applied as a whole only, as device tree conversion breaks
kernel boot until the corresponding second patch is applied. As this set
is Marvell SoC related only, I suggest to take it all through Jason
Cooper's branch.

Patch set version has been bumped to v4, but this only contains the
remaining Marvell related patches. irqchip and clocksource drivers from
v3 have already been taken by the respective maintainers.

The first three patches convert Dove, Kirkwood, and Orion5x DT files to
the new reg layout. Patch 4 and 5 add the new clocksource and irqchip
nodes. Patch 6 also removes an obsolete clock gate workaround from
Kirkwood DT board setup. Patch 7 then updates the irq driver DT stub in
plat-orion/irq to reflect the changed reg layout. The irq driver DT stub
is still used on Orion5x until proper DT clk provider is available.

The patch set has been tested on Dove, and compile-tested on Kirkwood
and Orion5x defconfig.

Sebastian Hesselbarth (7):
  ARM: dove: move device tree nodes to DT irqchip and clocksource
  ARM: kirkwood: move device tree nodes to DT irqchip and clocksource
  ARM: orion5x: update intc device tree node to new reg layout
  ARM: dove: convert to DT irqchip and clocksource
  ARM: kirkwood: convert to DT irqchip and clocksource
  ARM: kirkwood: remove obsolete SDIO clock gate workaround
  ARM: plat-orion: add reg offset to DT irq driver stub

 arch/arm/boot/dts/dove.dtsi       |   21 +++++++++++++++++++--
 arch/arm/boot/dts/kirkwood.dtsi   |   35 +++++++++++++++++++++++++++--------
 arch/arm/boot/dts/orion5x.dtsi    |    5 +++--
 arch/arm/mach-dove/Kconfig        |    2 ++
 arch/arm/mach-dove/Makefile       |    4 ++--
 arch/arm/mach-dove/board-dt.c     |   23 ++++++++++++++++-------
 arch/arm/mach-kirkwood/Kconfig    |   22 ++++++++++++++++++++++
 arch/arm/mach-kirkwood/Makefile   |    4 ++--
 arch/arm/mach-kirkwood/board-dt.c |   28 +++++++++++++++++-----------
 arch/arm/plat-orion/irq.c         |    2 +-
 10 files changed, 111 insertions(+), 35 deletions(-)

---
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
-- 
1.7.2.5


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH v4 0/7] ARM: mvebu: switch to DT probed irqchip and clocksource
@ 2013-07-02 11:03 ` Sebastian Hesselbarth
  0 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: linux-arm-kernel

This patch set converts Marvell Dove and Kirkwood DT enabled boards
to probe irqchip and clocksource by DT. The corresponding irqchip and
clocksource drivers have been taken by Thomas Gleixner and Daniel Lezcano
respectively. This patch set is based on next-20130701 plus tip/core and
timers/clockevents. Also, mv643xx_eth DT patches sent earlier are applied.

Unfortunately, the same compatible string is used by irqchip driver and
irq DT stub in plat-orion/irq.c while reg layout is different. This patch
set should be applied as a whole only, as device tree conversion breaks
kernel boot until the corresponding second patch is applied. As this set
is Marvell SoC related only, I suggest to take it all through Jason
Cooper's branch.

Patch set version has been bumped to v4, but this only contains the
remaining Marvell related patches. irqchip and clocksource drivers from
v3 have already been taken by the respective maintainers.

The first three patches convert Dove, Kirkwood, and Orion5x DT files to
the new reg layout. Patch 4 and 5 add the new clocksource and irqchip
nodes. Patch 6 also removes an obsolete clock gate workaround from
Kirkwood DT board setup. Patch 7 then updates the irq driver DT stub in
plat-orion/irq to reflect the changed reg layout. The irq driver DT stub
is still used on Orion5x until proper DT clk provider is available.

The patch set has been tested on Dove, and compile-tested on Kirkwood
and Orion5x defconfig.

Sebastian Hesselbarth (7):
  ARM: dove: move device tree nodes to DT irqchip and clocksource
  ARM: kirkwood: move device tree nodes to DT irqchip and clocksource
  ARM: orion5x: update intc device tree node to new reg layout
  ARM: dove: convert to DT irqchip and clocksource
  ARM: kirkwood: convert to DT irqchip and clocksource
  ARM: kirkwood: remove obsolete SDIO clock gate workaround
  ARM: plat-orion: add reg offset to DT irq driver stub

 arch/arm/boot/dts/dove.dtsi       |   21 +++++++++++++++++++--
 arch/arm/boot/dts/kirkwood.dtsi   |   35 +++++++++++++++++++++++++++--------
 arch/arm/boot/dts/orion5x.dtsi    |    5 +++--
 arch/arm/mach-dove/Kconfig        |    2 ++
 arch/arm/mach-dove/Makefile       |    4 ++--
 arch/arm/mach-dove/board-dt.c     |   23 ++++++++++++++++-------
 arch/arm/mach-kirkwood/Kconfig    |   22 ++++++++++++++++++++++
 arch/arm/mach-kirkwood/Makefile   |    4 ++--
 arch/arm/mach-kirkwood/board-dt.c |   28 +++++++++++++++++-----------
 arch/arm/plat-orion/irq.c         |    2 +-
 10 files changed, 111 insertions(+), 35 deletions(-)

---
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
-- 
1.7.2.5

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH v4 1/7] ARM: dove: move device tree nodes to DT irqchip and clocksource
  2013-07-02 11:03 ` Sebastian Hesselbarth
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  -1 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Sebastian Hesselbarth, Russell King, Jason Cooper, Andrew Lunn,
	Thomas Petazzoni, Gregory CLEMENT, linux-arm-kernel,
	linux-kernel

With recent support for true irqchip and clocksource drivers for Orion
SoCs, now make use of it on DT enabled Dove boards.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
 arch/arm/boot/dts/dove.dtsi |   21 +++++++++++++++++++--
 1 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/dove.dtsi b/arch/arm/boot/dts/dove.dtsi
index 5e394a6..44f50c4 100644
--- a/arch/arm/boot/dts/dove.dtsi
+++ b/arch/arm/boot/dts/dove.dtsi
@@ -30,11 +30,28 @@
 			marvell,tauros2-cache-features = <0>;
 		};
 
-		intc: interrupt-controller {
+		timer: timer@20300 {
+			compatible = "marvell,orion-timer";
+			reg = <0x20300 0x20>;
+			interrupt-parent = <&bridge_intc>;
+			interrupts = <1>, <2>;
+			clocks = <&core_clk 0>;
+		};
+
+		intc: main-interrupt-ctrl@20200 {
 			compatible = "marvell,orion-intc";
 			interrupt-controller;
 			#interrupt-cells = <1>;
-			reg = <0x20204 0x04>, <0x20214 0x04>;
+			reg = <0x20200 0x10>, <0x20210 0x10>;
+		};
+
+		bridge_intc: bridge-interrupt-ctrl@20110 {
+			compatible = "marvell,orion-bridge-intc";
+			interrupt-controller;
+			#interrupt-cells = <1>;
+			reg = <0x20110 0x8>;
+			interrupts = <0>;
+			marvell,#interrupts = <5>;
 		};
 
 		core_clk: core-clocks@d0214 {
-- 
1.7.2.5


^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 1/7] ARM: dove: move device tree nodes to DT irqchip and clocksource
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  0 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: linux-arm-kernel

With recent support for true irqchip and clocksource drivers for Orion
SoCs, now make use of it on DT enabled Dove boards.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
---
 arch/arm/boot/dts/dove.dtsi |   21 +++++++++++++++++++--
 1 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/dove.dtsi b/arch/arm/boot/dts/dove.dtsi
index 5e394a6..44f50c4 100644
--- a/arch/arm/boot/dts/dove.dtsi
+++ b/arch/arm/boot/dts/dove.dtsi
@@ -30,11 +30,28 @@
 			marvell,tauros2-cache-features = <0>;
 		};
 
-		intc: interrupt-controller {
+		timer: timer at 20300 {
+			compatible = "marvell,orion-timer";
+			reg = <0x20300 0x20>;
+			interrupt-parent = <&bridge_intc>;
+			interrupts = <1>, <2>;
+			clocks = <&core_clk 0>;
+		};
+
+		intc: main-interrupt-ctrl at 20200 {
 			compatible = "marvell,orion-intc";
 			interrupt-controller;
 			#interrupt-cells = <1>;
-			reg = <0x20204 0x04>, <0x20214 0x04>;
+			reg = <0x20200 0x10>, <0x20210 0x10>;
+		};
+
+		bridge_intc: bridge-interrupt-ctrl at 20110 {
+			compatible = "marvell,orion-bridge-intc";
+			interrupt-controller;
+			#interrupt-cells = <1>;
+			reg = <0x20110 0x8>;
+			interrupts = <0>;
+			marvell,#interrupts = <5>;
 		};
 
 		core_clk: core-clocks at d0214 {
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 2/7] ARM: kirkwood: move device tree nodes to DT irqchip and clocksource
  2013-07-02 11:03 ` Sebastian Hesselbarth
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  -1 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Sebastian Hesselbarth, Russell King, Jason Cooper, Andrew Lunn,
	Thomas Petazzoni, Gregory CLEMENT, linux-arm-kernel,
	linux-kernel

With recent support for true irqchip and clocksource drivers for Orion
SoCs, now make use of it on DT enabled Kirkwood boards.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
 arch/arm/boot/dts/kirkwood.dtsi |   35 +++++++++++++++++++++++++++--------
 1 files changed, 27 insertions(+), 8 deletions(-)

diff --git a/arch/arm/boot/dts/kirkwood.dtsi b/arch/arm/boot/dts/kirkwood.dtsi
index ad56dd8..204f44f 100644
--- a/arch/arm/boot/dts/kirkwood.dtsi
+++ b/arch/arm/boot/dts/kirkwood.dtsi
@@ -20,13 +20,6 @@
 	       gpio0 = &gpio0;
 	       gpio1 = &gpio1;
 	};
-	intc: interrupt-controller {
-		compatible = "marvell,orion-intc", "marvell,intc";
-		interrupt-controller;
-		#interrupt-cells = <1>;
-		reg = <0xf1020204 0x04>,
-		      <0xf1020214 0x04>;
-	};
 
 	ocp@f1000000 {
 		compatible = "simple-bus";
@@ -37,6 +30,30 @@
 		#address-cells = <1>;
 		#size-cells = <1>;
 
+		timer: timer@20300 {
+			compatible = "marvell,orion-timer";
+			reg = <0x20300 0x20>;
+			interrupt-parent = <&bridge_intc>;
+			interrupts = <1>, <2>;
+			clocks = <&core_clk 0>;
+		};
+
+		intc: main-interrupt-ctrl@20200 {
+			compatible = "marvell,orion-intc";
+			interrupt-controller;
+			#interrupt-cells = <1>;
+			reg = <0x20200 0x10>, <0x20210 0x10>;
+		};
+
+		bridge_intc: bridge-interrupt-ctrl@20110 {
+			compatible = "marvell,orion-bridge-intc";
+			interrupt-controller;
+			#interrupt-cells = <1>;
+			reg = <0x20110 0x8>;
+			interrupts = <1>;
+			marvell,#interrupts = <6>;
+		};
+
 		core_clk: core-clocks@10030 {
 			compatible = "marvell,kirkwood-core-clock";
 			reg = <0x10030 0x4>;
@@ -103,9 +120,11 @@
 			#clock-cells = <1>;
 		};
 
-		wdt@20300 {
+		wdt: watchdog-timer@20300 {
 			compatible = "marvell,orion-wdt";
 			reg = <0x20300 0x28>;
+			interrupt-parent = <&bridge_intc>;
+			interrupts = <3>;
 			clocks = <&gate_clk 7>;
 			status = "okay";
 		};
-- 
1.7.2.5


^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 2/7] ARM: kirkwood: move device tree nodes to DT irqchip and clocksource
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  0 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: linux-arm-kernel

With recent support for true irqchip and clocksource drivers for Orion
SoCs, now make use of it on DT enabled Kirkwood boards.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
---
 arch/arm/boot/dts/kirkwood.dtsi |   35 +++++++++++++++++++++++++++--------
 1 files changed, 27 insertions(+), 8 deletions(-)

diff --git a/arch/arm/boot/dts/kirkwood.dtsi b/arch/arm/boot/dts/kirkwood.dtsi
index ad56dd8..204f44f 100644
--- a/arch/arm/boot/dts/kirkwood.dtsi
+++ b/arch/arm/boot/dts/kirkwood.dtsi
@@ -20,13 +20,6 @@
 	       gpio0 = &gpio0;
 	       gpio1 = &gpio1;
 	};
-	intc: interrupt-controller {
-		compatible = "marvell,orion-intc", "marvell,intc";
-		interrupt-controller;
-		#interrupt-cells = <1>;
-		reg = <0xf1020204 0x04>,
-		      <0xf1020214 0x04>;
-	};
 
 	ocp at f1000000 {
 		compatible = "simple-bus";
@@ -37,6 +30,30 @@
 		#address-cells = <1>;
 		#size-cells = <1>;
 
+		timer: timer at 20300 {
+			compatible = "marvell,orion-timer";
+			reg = <0x20300 0x20>;
+			interrupt-parent = <&bridge_intc>;
+			interrupts = <1>, <2>;
+			clocks = <&core_clk 0>;
+		};
+
+		intc: main-interrupt-ctrl at 20200 {
+			compatible = "marvell,orion-intc";
+			interrupt-controller;
+			#interrupt-cells = <1>;
+			reg = <0x20200 0x10>, <0x20210 0x10>;
+		};
+
+		bridge_intc: bridge-interrupt-ctrl at 20110 {
+			compatible = "marvell,orion-bridge-intc";
+			interrupt-controller;
+			#interrupt-cells = <1>;
+			reg = <0x20110 0x8>;
+			interrupts = <1>;
+			marvell,#interrupts = <6>;
+		};
+
 		core_clk: core-clocks at 10030 {
 			compatible = "marvell,kirkwood-core-clock";
 			reg = <0x10030 0x4>;
@@ -103,9 +120,11 @@
 			#clock-cells = <1>;
 		};
 
-		wdt at 20300 {
+		wdt: watchdog-timer at 20300 {
 			compatible = "marvell,orion-wdt";
 			reg = <0x20300 0x28>;
+			interrupt-parent = <&bridge_intc>;
+			interrupts = <3>;
 			clocks = <&gate_clk 7>;
 			status = "okay";
 		};
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 3/7] ARM: orion5x: update intc device tree node to new reg layout
  2013-07-02 11:03 ` Sebastian Hesselbarth
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  -1 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Sebastian Hesselbarth, Russell King, Jason Cooper, Andrew Lunn,
	Thomas Petazzoni, Gregory CLEMENT, linux-arm-kernel,
	linux-kernel

Future irqchip driver for Orion SoCs has a modified reg layout starting
from CAUSE register. The former DT irq driver stub just used what the
non-DT driver wants. Currently, orion5x is not ready for irqchip driver
because of legacy timer and missing DT clk provider. To ease future
conversion and just because orion-intc binding documentation already
reflects new reg layout, we convert orion5x DT now.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
 arch/arm/boot/dts/orion5x.dtsi |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/orion5x.dtsi b/arch/arm/boot/dts/orion5x.dtsi
index 2d241fc..ede6c3b 100644
--- a/arch/arm/boot/dts/orion5x.dtsi
+++ b/arch/arm/boot/dts/orion5x.dtsi
@@ -16,11 +16,12 @@
 	aliases {
 		gpio0 = &gpio0;
 	};
+
 	intc: interrupt-controller {
-		compatible = "marvell,orion-intc", "marvell,intc";
+		compatible = "marvell,orion-intc";
 		interrupt-controller;
 		#interrupt-cells = <1>;
-		reg = <0xf1020204 0x04>;
+		reg = <0xf1020200 0x08>;
 	};
 
 	ocp@f1000000 {
-- 
1.7.2.5


^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 3/7] ARM: orion5x: update intc device tree node to new reg layout
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  0 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: linux-arm-kernel

Future irqchip driver for Orion SoCs has a modified reg layout starting
from CAUSE register. The former DT irq driver stub just used what the
non-DT driver wants. Currently, orion5x is not ready for irqchip driver
because of legacy timer and missing DT clk provider. To ease future
conversion and just because orion-intc binding documentation already
reflects new reg layout, we convert orion5x DT now.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
---
 arch/arm/boot/dts/orion5x.dtsi |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/orion5x.dtsi b/arch/arm/boot/dts/orion5x.dtsi
index 2d241fc..ede6c3b 100644
--- a/arch/arm/boot/dts/orion5x.dtsi
+++ b/arch/arm/boot/dts/orion5x.dtsi
@@ -16,11 +16,12 @@
 	aliases {
 		gpio0 = &gpio0;
 	};
+
 	intc: interrupt-controller {
-		compatible = "marvell,orion-intc", "marvell,intc";
+		compatible = "marvell,orion-intc";
 		interrupt-controller;
 		#interrupt-cells = <1>;
-		reg = <0xf1020204 0x04>;
+		reg = <0xf1020200 0x08>;
 	};
 
 	ocp at f1000000 {
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 4/7] ARM: dove: convert to DT irqchip and clocksource
  2013-07-02 11:03 ` Sebastian Hesselbarth
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  -1 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Sebastian Hesselbarth, Russell King, Jason Cooper, Andrew Lunn,
	Thomas Petazzoni, Gregory CLEMENT, linux-arm-kernel,
	linux-kernel

With recent support for true irqchip and clocksource drivers for Orion
SoCs, now make use of it on DT enabled Dove boards.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
 arch/arm/mach-dove/Kconfig    |    2 ++
 arch/arm/mach-dove/Makefile   |    4 ++--
 arch/arm/mach-dove/board-dt.c |   23 ++++++++++++++++-------
 3 files changed, 20 insertions(+), 9 deletions(-)

diff --git a/arch/arm/mach-dove/Kconfig b/arch/arm/mach-dove/Kconfig
index dff7b2f..0bc7cdf 100644
--- a/arch/arm/mach-dove/Kconfig
+++ b/arch/arm/mach-dove/Kconfig
@@ -23,6 +23,8 @@ config MACH_CM_A510
 config MACH_DOVE_DT
 	bool "Marvell Dove Flattened Device Tree"
 	select DOVE_CLK
+	select ORION_IRQCHIP
+	select ORION_TIMER
 	select REGULATOR
 	select REGULATOR_FIXED_VOLTAGE
 	select USE_OF
diff --git a/arch/arm/mach-dove/Makefile b/arch/arm/mach-dove/Makefile
index 4d9d2ff..cbc5c06 100644
--- a/arch/arm/mach-dove/Makefile
+++ b/arch/arm/mach-dove/Makefile
@@ -1,5 +1,5 @@
-obj-y				+= common.o irq.o
-obj-$(CONFIG_DOVE_LEGACY)	+= mpp.o
+obj-y				+= common.o
+obj-$(CONFIG_DOVE_LEGACY)	+= irq.o mpp.o
 obj-$(CONFIG_PCI)		+= pcie.o
 obj-$(CONFIG_MACH_DOVE_DB)	+= dove-db-setup.o
 obj-$(CONFIG_MACH_DOVE_DT)	+= board-dt.o
diff --git a/arch/arm/mach-dove/board-dt.c b/arch/arm/mach-dove/board-dt.c
index b5ccc1c..49f72a8 100644
--- a/arch/arm/mach-dove/board-dt.c
+++ b/arch/arm/mach-dove/board-dt.c
@@ -10,11 +10,14 @@
 
 #include <linux/init.h>
 #include <linux/clk-provider.h>
+#include <linux/clocksource.h>
+#include <linux/irqchip.h>
 #include <linux/of.h>
 #include <linux/of_platform.h>
 #include <linux/platform_data/usb-ehci-orion.h>
 #include <asm/hardware/cache-tauros2.h>
 #include <asm/mach/arch.h>
+#include <mach/dove.h>
 #include <mach/pm.h>
 #include <plat/common.h>
 #include <plat/irq.h>
@@ -42,10 +45,17 @@ static void __init dove_legacy_clk_init(void)
 			 of_clk_get_from_provider(&clkspec));
 }
 
-static void __init dove_of_clk_init(void)
+static void __init dove_dt_time_init(void)
 {
 	of_clk_init(NULL);
-	dove_legacy_clk_init();
+	clocksource_of_init();
+}
+
+static void __init dove_dt_init_early(void)
+{
+	mvebu_mbus_init("marvell,dove-mbus",
+			BRIDGE_WINS_BASE, BRIDGE_WINS_SZ,
+			DOVE_MC_WINS_BASE, DOVE_MC_WINS_SZ);
 }
 
 static void __init dove_dt_init(void)
@@ -57,8 +67,8 @@ static void __init dove_dt_init(void)
 #endif
 	dove_setup_cpu_wins();
 
-	/* Setup root of clk tree */
-	dove_of_clk_init();
+	/* Setup clocks for legacy devices */
+	dove_legacy_clk_init();
 
 	/* Internal devices not ported to DT yet */
 	dove_pcie_init(1, 1);
@@ -73,9 +83,8 @@ static const char * const dove_dt_board_compat[] = {
 
 DT_MACHINE_START(DOVE_DT, "Marvell Dove (Flattened Device Tree)")
 	.map_io		= dove_map_io,
-	.init_early	= dove_init_early,
-	.init_irq	= orion_dt_init_irq,
-	.init_time	= dove_timer_init,
+	.init_early	= dove_dt_init_early,
+	.init_time	= dove_dt_time_init,
 	.init_machine	= dove_dt_init,
 	.restart	= dove_restart,
 	.dt_compat	= dove_dt_board_compat,
-- 
1.7.2.5


^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 4/7] ARM: dove: convert to DT irqchip and clocksource
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  0 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: linux-arm-kernel

With recent support for true irqchip and clocksource drivers for Orion
SoCs, now make use of it on DT enabled Dove boards.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
---
 arch/arm/mach-dove/Kconfig    |    2 ++
 arch/arm/mach-dove/Makefile   |    4 ++--
 arch/arm/mach-dove/board-dt.c |   23 ++++++++++++++++-------
 3 files changed, 20 insertions(+), 9 deletions(-)

diff --git a/arch/arm/mach-dove/Kconfig b/arch/arm/mach-dove/Kconfig
index dff7b2f..0bc7cdf 100644
--- a/arch/arm/mach-dove/Kconfig
+++ b/arch/arm/mach-dove/Kconfig
@@ -23,6 +23,8 @@ config MACH_CM_A510
 config MACH_DOVE_DT
 	bool "Marvell Dove Flattened Device Tree"
 	select DOVE_CLK
+	select ORION_IRQCHIP
+	select ORION_TIMER
 	select REGULATOR
 	select REGULATOR_FIXED_VOLTAGE
 	select USE_OF
diff --git a/arch/arm/mach-dove/Makefile b/arch/arm/mach-dove/Makefile
index 4d9d2ff..cbc5c06 100644
--- a/arch/arm/mach-dove/Makefile
+++ b/arch/arm/mach-dove/Makefile
@@ -1,5 +1,5 @@
-obj-y				+= common.o irq.o
-obj-$(CONFIG_DOVE_LEGACY)	+= mpp.o
+obj-y				+= common.o
+obj-$(CONFIG_DOVE_LEGACY)	+= irq.o mpp.o
 obj-$(CONFIG_PCI)		+= pcie.o
 obj-$(CONFIG_MACH_DOVE_DB)	+= dove-db-setup.o
 obj-$(CONFIG_MACH_DOVE_DT)	+= board-dt.o
diff --git a/arch/arm/mach-dove/board-dt.c b/arch/arm/mach-dove/board-dt.c
index b5ccc1c..49f72a8 100644
--- a/arch/arm/mach-dove/board-dt.c
+++ b/arch/arm/mach-dove/board-dt.c
@@ -10,11 +10,14 @@
 
 #include <linux/init.h>
 #include <linux/clk-provider.h>
+#include <linux/clocksource.h>
+#include <linux/irqchip.h>
 #include <linux/of.h>
 #include <linux/of_platform.h>
 #include <linux/platform_data/usb-ehci-orion.h>
 #include <asm/hardware/cache-tauros2.h>
 #include <asm/mach/arch.h>
+#include <mach/dove.h>
 #include <mach/pm.h>
 #include <plat/common.h>
 #include <plat/irq.h>
@@ -42,10 +45,17 @@ static void __init dove_legacy_clk_init(void)
 			 of_clk_get_from_provider(&clkspec));
 }
 
-static void __init dove_of_clk_init(void)
+static void __init dove_dt_time_init(void)
 {
 	of_clk_init(NULL);
-	dove_legacy_clk_init();
+	clocksource_of_init();
+}
+
+static void __init dove_dt_init_early(void)
+{
+	mvebu_mbus_init("marvell,dove-mbus",
+			BRIDGE_WINS_BASE, BRIDGE_WINS_SZ,
+			DOVE_MC_WINS_BASE, DOVE_MC_WINS_SZ);
 }
 
 static void __init dove_dt_init(void)
@@ -57,8 +67,8 @@ static void __init dove_dt_init(void)
 #endif
 	dove_setup_cpu_wins();
 
-	/* Setup root of clk tree */
-	dove_of_clk_init();
+	/* Setup clocks for legacy devices */
+	dove_legacy_clk_init();
 
 	/* Internal devices not ported to DT yet */
 	dove_pcie_init(1, 1);
@@ -73,9 +83,8 @@ static const char * const dove_dt_board_compat[] = {
 
 DT_MACHINE_START(DOVE_DT, "Marvell Dove (Flattened Device Tree)")
 	.map_io		= dove_map_io,
-	.init_early	= dove_init_early,
-	.init_irq	= orion_dt_init_irq,
-	.init_time	= dove_timer_init,
+	.init_early	= dove_dt_init_early,
+	.init_time	= dove_dt_time_init,
 	.init_machine	= dove_dt_init,
 	.restart	= dove_restart,
 	.dt_compat	= dove_dt_board_compat,
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 5/7] ARM: kirkwood: convert to DT irqchip and clocksource
  2013-07-02 11:03 ` Sebastian Hesselbarth
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  -1 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Sebastian Hesselbarth, Russell King, Jason Cooper, Andrew Lunn,
	Thomas Petazzoni, Gregory CLEMENT, linux-arm-kernel,
	linux-kernel

With recent support for true irqchip and clocksource drivers for Orion
SoCs, now make use of it on DT enabled Kirkwood boards.

This also introduces a new Kconfig option for legacy (non-DT) Kirkwood
where old code is moved out to and polishes DT board file a little bit.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
 arch/arm/mach-kirkwood/Kconfig    |   22 ++++++++++++++++++++++
 arch/arm/mach-kirkwood/Makefile   |    4 ++--
 arch/arm/mach-kirkwood/board-dt.c |   24 +++++++++++++++++-------
 3 files changed, 41 insertions(+), 9 deletions(-)

diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
index 493c71a..ede131e 100644
--- a/arch/arm/mach-kirkwood/Kconfig
+++ b/arch/arm/mach-kirkwood/Kconfig
@@ -2,67 +2,81 @@ if ARCH_KIRKWOOD
 
 menu "Marvell Kirkwood Implementations"
 
+config KIRKWOOD_LEGACY
+	bool
+
 config MACH_D2NET_V2
 	bool "LaCie d2 Network v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie d2 Network v2 NAS.
 
 config MACH_DOCKSTAR
 	bool "Seagate FreeAgent DockStar"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Seagate FreeAgent DockStar.
 
 config MACH_ESATA_SHEEVAPLUG
 	bool "Marvell eSATA SheevaPlug Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell eSATA SheevaPlug Reference Board.
 
 config MACH_GURUPLUG
 	bool "Marvell GuruPlug Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell GuruPlug Reference Board.
 
 config MACH_INETSPACE_V2
 	bool "LaCie Internet Space v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie Internet Space v2 NAS.
 
 config MACH_MV88F6281GTW_GE
 	bool "Marvell 88F6281 GTW GE Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell 88F6281 GTW GE Board.
 
 config MACH_NET2BIG_V2
 	bool "LaCie 2Big Network v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie 2Big Network v2 NAS.
 
 config MACH_NET5BIG_V2
 	bool "LaCie 5Big Network v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie 5Big Network v2 NAS.
 
 config MACH_NETSPACE_MAX_V2
 	bool "LaCie Network Space Max v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie Network Space Max v2 NAS.
 
 config MACH_NETSPACE_V2
 	bool "LaCie Network Space v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie Network Space v2 NAS.
 
 config MACH_OPENRD
+	select KIRKWOOD_LEGACY
         bool
 
 config MACH_OPENRD_BASE
@@ -88,30 +102,35 @@ config MACH_OPENRD_ULTIMATE
 
 config MACH_RD88F6192_NAS
 	bool "Marvell RD-88F6192-NAS Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell RD-88F6192-NAS Reference Board.
 
 config MACH_RD88F6281
 	bool "Marvell RD-88F6281 Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell RD-88F6281 Reference Board.
 
 config MACH_SHEEVAPLUG
 	bool "Marvell SheevaPlug Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell SheevaPlug Reference Board.
 
 config MACH_T5325
 	bool "HP t5325 Thin Client"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  HP t5325 Thin Client.
 
 config MACH_TS219
 	bool "QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and
@@ -119,6 +138,7 @@ config MACH_TS219
 
 config MACH_TS41X
 	bool "QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo NAS"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo
@@ -129,6 +149,8 @@ comment "Device tree entries"
 config ARCH_KIRKWOOD_DT
 	bool "Marvell Kirkwood Flattened Device Tree"
 	select KIRKWOOD_CLK
+	select ORION_IRQCHIP
+	select ORION_TIMER
 	select POWER_SUPPLY
 	select POWER_RESET
 	select POWER_RESET_GPIO
diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile
index 062f8c7..f78f333 100644
--- a/arch/arm/mach-kirkwood/Makefile
+++ b/arch/arm/mach-kirkwood/Makefile
@@ -1,5 +1,5 @@
-obj-y				+= common.o irq.o pcie.o mpp.o
-
+obj-y				+= common.o pcie.o
+obj-$(CONFIG_KIRKWOOD_LEGACY)	+= irq.o mpp.o
 obj-$(CONFIG_MACH_D2NET_V2)		+= d2net_v2-setup.o lacie_v2-common.o
 obj-$(CONFIG_MACH_DOCKSTAR)		+= dockstar-setup.o
 obj-$(CONFIG_MACH_ESATA_SHEEVAPLUG)	+= sheevaplug-setup.o
diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
index 881f37e..385244c 100644
--- a/arch/arm/mach-kirkwood/board-dt.c
+++ b/arch/arm/mach-kirkwood/board-dt.c
@@ -15,6 +15,9 @@
 #include <linux/of.h>
 #include <linux/of_platform.h>
 #include <linux/clk-provider.h>
+#include <linux/clocksource.h>
+#include <linux/dma-mapping.h>
+#include <linux/irqchip.h>
 #include <linux/kexec.h>
 #include <asm/mach/arch.h>
 #include <asm/mach/map.h>
@@ -67,10 +70,18 @@ static void __init kirkwood_legacy_clk_init(void)
 	clk_prepare_enable(clk);
 }
 
-static void __init kirkwood_of_clk_init(void)
+static void __init kirkwood_dt_time_init(void)
 {
 	of_clk_init(NULL);
-	kirkwood_legacy_clk_init();
+	clocksource_of_init();
+}
+
+static void __init kirkwood_dt_init_early(void)
+{
+	init_dma_coherent_pool_size(SZ_1M);
+	mvebu_mbus_init("marvell,kirkwood-mbus",
+			BRIDGE_WINS_BASE, BRIDGE_WINS_SZ,
+			DDR_WINDOW_CPU_BASE, DDR_WINDOW_CPU_SZ);
 }
 
 static void __init kirkwood_dt_init(void)
@@ -91,8 +102,8 @@ static void __init kirkwood_dt_init(void)
 
 	kirkwood_cpufreq_init();
 
-	/* Setup root of clk tree */
-	kirkwood_of_clk_init();
+	/* Setup clocks for legacy devices */
+	kirkwood_legacy_clk_init();
 
 	kirkwood_cpuidle_init();
 
@@ -114,9 +125,8 @@ static const char * const kirkwood_dt_board_compat[] = {
 DT_MACHINE_START(KIRKWOOD_DT, "Marvell Kirkwood (Flattened Device Tree)")
 	/* Maintainer: Jason Cooper <jason@lakedaemon.net> */
 	.map_io		= kirkwood_map_io,
-	.init_early	= kirkwood_init_early,
-	.init_irq	= orion_dt_init_irq,
-	.init_time	= kirkwood_timer_init,
+	.init_early	= kirkwood_dt_init_early,
+	.init_time	= kirkwood_dt_time_init,
 	.init_machine	= kirkwood_dt_init,
 	.restart	= kirkwood_restart,
 	.dt_compat	= kirkwood_dt_board_compat,
-- 
1.7.2.5


^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 5/7] ARM: kirkwood: convert to DT irqchip and clocksource
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  0 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: linux-arm-kernel

With recent support for true irqchip and clocksource drivers for Orion
SoCs, now make use of it on DT enabled Kirkwood boards.

This also introduces a new Kconfig option for legacy (non-DT) Kirkwood
where old code is moved out to and polishes DT board file a little bit.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
---
 arch/arm/mach-kirkwood/Kconfig    |   22 ++++++++++++++++++++++
 arch/arm/mach-kirkwood/Makefile   |    4 ++--
 arch/arm/mach-kirkwood/board-dt.c |   24 +++++++++++++++++-------
 3 files changed, 41 insertions(+), 9 deletions(-)

diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
index 493c71a..ede131e 100644
--- a/arch/arm/mach-kirkwood/Kconfig
+++ b/arch/arm/mach-kirkwood/Kconfig
@@ -2,67 +2,81 @@ if ARCH_KIRKWOOD
 
 menu "Marvell Kirkwood Implementations"
 
+config KIRKWOOD_LEGACY
+	bool
+
 config MACH_D2NET_V2
 	bool "LaCie d2 Network v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie d2 Network v2 NAS.
 
 config MACH_DOCKSTAR
 	bool "Seagate FreeAgent DockStar"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Seagate FreeAgent DockStar.
 
 config MACH_ESATA_SHEEVAPLUG
 	bool "Marvell eSATA SheevaPlug Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell eSATA SheevaPlug Reference Board.
 
 config MACH_GURUPLUG
 	bool "Marvell GuruPlug Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell GuruPlug Reference Board.
 
 config MACH_INETSPACE_V2
 	bool "LaCie Internet Space v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie Internet Space v2 NAS.
 
 config MACH_MV88F6281GTW_GE
 	bool "Marvell 88F6281 GTW GE Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell 88F6281 GTW GE Board.
 
 config MACH_NET2BIG_V2
 	bool "LaCie 2Big Network v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie 2Big Network v2 NAS.
 
 config MACH_NET5BIG_V2
 	bool "LaCie 5Big Network v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie 5Big Network v2 NAS.
 
 config MACH_NETSPACE_MAX_V2
 	bool "LaCie Network Space Max v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie Network Space Max v2 NAS.
 
 config MACH_NETSPACE_V2
 	bool "LaCie Network Space v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie Network Space v2 NAS.
 
 config MACH_OPENRD
+	select KIRKWOOD_LEGACY
         bool
 
 config MACH_OPENRD_BASE
@@ -88,30 +102,35 @@ config MACH_OPENRD_ULTIMATE
 
 config MACH_RD88F6192_NAS
 	bool "Marvell RD-88F6192-NAS Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell RD-88F6192-NAS Reference Board.
 
 config MACH_RD88F6281
 	bool "Marvell RD-88F6281 Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell RD-88F6281 Reference Board.
 
 config MACH_SHEEVAPLUG
 	bool "Marvell SheevaPlug Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell SheevaPlug Reference Board.
 
 config MACH_T5325
 	bool "HP t5325 Thin Client"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  HP t5325 Thin Client.
 
 config MACH_TS219
 	bool "QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and
@@ -119,6 +138,7 @@ config MACH_TS219
 
 config MACH_TS41X
 	bool "QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo NAS"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo
@@ -129,6 +149,8 @@ comment "Device tree entries"
 config ARCH_KIRKWOOD_DT
 	bool "Marvell Kirkwood Flattened Device Tree"
 	select KIRKWOOD_CLK
+	select ORION_IRQCHIP
+	select ORION_TIMER
 	select POWER_SUPPLY
 	select POWER_RESET
 	select POWER_RESET_GPIO
diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile
index 062f8c7..f78f333 100644
--- a/arch/arm/mach-kirkwood/Makefile
+++ b/arch/arm/mach-kirkwood/Makefile
@@ -1,5 +1,5 @@
-obj-y				+= common.o irq.o pcie.o mpp.o
-
+obj-y				+= common.o pcie.o
+obj-$(CONFIG_KIRKWOOD_LEGACY)	+= irq.o mpp.o
 obj-$(CONFIG_MACH_D2NET_V2)		+= d2net_v2-setup.o lacie_v2-common.o
 obj-$(CONFIG_MACH_DOCKSTAR)		+= dockstar-setup.o
 obj-$(CONFIG_MACH_ESATA_SHEEVAPLUG)	+= sheevaplug-setup.o
diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
index 881f37e..385244c 100644
--- a/arch/arm/mach-kirkwood/board-dt.c
+++ b/arch/arm/mach-kirkwood/board-dt.c
@@ -15,6 +15,9 @@
 #include <linux/of.h>
 #include <linux/of_platform.h>
 #include <linux/clk-provider.h>
+#include <linux/clocksource.h>
+#include <linux/dma-mapping.h>
+#include <linux/irqchip.h>
 #include <linux/kexec.h>
 #include <asm/mach/arch.h>
 #include <asm/mach/map.h>
@@ -67,10 +70,18 @@ static void __init kirkwood_legacy_clk_init(void)
 	clk_prepare_enable(clk);
 }
 
-static void __init kirkwood_of_clk_init(void)
+static void __init kirkwood_dt_time_init(void)
 {
 	of_clk_init(NULL);
-	kirkwood_legacy_clk_init();
+	clocksource_of_init();
+}
+
+static void __init kirkwood_dt_init_early(void)
+{
+	init_dma_coherent_pool_size(SZ_1M);
+	mvebu_mbus_init("marvell,kirkwood-mbus",
+			BRIDGE_WINS_BASE, BRIDGE_WINS_SZ,
+			DDR_WINDOW_CPU_BASE, DDR_WINDOW_CPU_SZ);
 }
 
 static void __init kirkwood_dt_init(void)
@@ -91,8 +102,8 @@ static void __init kirkwood_dt_init(void)
 
 	kirkwood_cpufreq_init();
 
-	/* Setup root of clk tree */
-	kirkwood_of_clk_init();
+	/* Setup clocks for legacy devices */
+	kirkwood_legacy_clk_init();
 
 	kirkwood_cpuidle_init();
 
@@ -114,9 +125,8 @@ static const char * const kirkwood_dt_board_compat[] = {
 DT_MACHINE_START(KIRKWOOD_DT, "Marvell Kirkwood (Flattened Device Tree)")
 	/* Maintainer: Jason Cooper <jason@lakedaemon.net> */
 	.map_io		= kirkwood_map_io,
-	.init_early	= kirkwood_init_early,
-	.init_irq	= orion_dt_init_irq,
-	.init_time	= kirkwood_timer_init,
+	.init_early	= kirkwood_dt_init_early,
+	.init_time	= kirkwood_dt_time_init,
 	.init_machine	= kirkwood_dt_init,
 	.restart	= kirkwood_restart,
 	.dt_compat	= kirkwood_dt_board_compat,
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 6/7] ARM: kirkwood: remove obsolete SDIO clock gate workaround
  2013-07-02 11:03 ` Sebastian Hesselbarth
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  -1 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Sebastian Hesselbarth, Russell King, Jason Cooper, Andrew Lunn,
	Thomas Petazzoni, Gregory CLEMENT, linux-arm-kernel,
	linux-kernel

Kirkwood DT boards have been converted to DT SDIO already, we can now
remove the legacy clock gate workaround for SDIO clock.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
 arch/arm/mach-kirkwood/board-dt.c |    4 ----
 1 files changed, 0 insertions(+), 4 deletions(-)

diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
index 385244c..a2c8c20 100644
--- a/arch/arm/mach-kirkwood/board-dt.c
+++ b/arch/arm/mach-kirkwood/board-dt.c
@@ -52,10 +52,6 @@ static void __init kirkwood_legacy_clk_init(void)
 	orion_clkdev_add("1", "pcie",
 			 of_clk_get_from_provider(&clkspec));
 
-	clkspec.args[0] = CGC_BIT_SDIO;
-	orion_clkdev_add(NULL, "mvsdio",
-			 of_clk_get_from_provider(&clkspec));
-
 	/*
 	 * The ethernet interfaces forget the MAC address assigned by
 	 * u-boot if the clocks are turned off. Until proper DT support
-- 
1.7.2.5


^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 6/7] ARM: kirkwood: remove obsolete SDIO clock gate workaround
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  0 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: linux-arm-kernel

Kirkwood DT boards have been converted to DT SDIO already, we can now
remove the legacy clock gate workaround for SDIO clock.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
---
 arch/arm/mach-kirkwood/board-dt.c |    4 ----
 1 files changed, 0 insertions(+), 4 deletions(-)

diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
index 385244c..a2c8c20 100644
--- a/arch/arm/mach-kirkwood/board-dt.c
+++ b/arch/arm/mach-kirkwood/board-dt.c
@@ -52,10 +52,6 @@ static void __init kirkwood_legacy_clk_init(void)
 	orion_clkdev_add("1", "pcie",
 			 of_clk_get_from_provider(&clkspec));
 
-	clkspec.args[0] = CGC_BIT_SDIO;
-	orion_clkdev_add(NULL, "mvsdio",
-			 of_clk_get_from_provider(&clkspec));
-
 	/*
 	 * The ethernet interfaces forget the MAC address assigned by
 	 * u-boot if the clocks are turned off. Until proper DT support
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 7/7] ARM: plat-orion: add reg offset to DT irq driver stub
  2013-07-02 11:03 ` Sebastian Hesselbarth
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  -1 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Sebastian Hesselbarth, Russell King, Jason Cooper, Andrew Lunn,
	Thomas Petazzoni, Gregory CLEMENT, linux-arm-kernel,
	linux-kernel

With irqchip driver for Orion SoCs, reg layout of orion-intc has changed.
This updates irq driver stub implemented before to the new reg layout by
adding an offset to the base address passed by DT node. As orion5x still
uses this stub, it cannot be removed yet.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
 arch/arm/plat-orion/irq.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/arm/plat-orion/irq.c b/arch/arm/plat-orion/irq.c
index 8db0b98..c492e1b 100644
--- a/arch/arm/plat-orion/irq.c
+++ b/arch/arm/plat-orion/irq.c
@@ -47,7 +47,7 @@ static int __init orion_add_irq_domain(struct device_node *np,
 	do {
 		base = of_iomap(np, i);
 		if (base) {
-			orion_irq_init(i * 32, base);
+			orion_irq_init(i * 32, base + 0x04);
 			i++;
 		}
 	} while (base);
-- 
1.7.2.5


^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v4 7/7] ARM: plat-orion: add reg offset to DT irq driver stub
@ 2013-07-02 11:03   ` Sebastian Hesselbarth
  0 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 11:03 UTC (permalink / raw)
  To: linux-arm-kernel

With irqchip driver for Orion SoCs, reg layout of orion-intc has changed.
This updates irq driver stub implemented before to the new reg layout by
adding an offset to the base address passed by DT node. As orion5x still
uses this stub, it cannot be removed yet.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
---
 arch/arm/plat-orion/irq.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/arm/plat-orion/irq.c b/arch/arm/plat-orion/irq.c
index 8db0b98..c492e1b 100644
--- a/arch/arm/plat-orion/irq.c
+++ b/arch/arm/plat-orion/irq.c
@@ -47,7 +47,7 @@ static int __init orion_add_irq_domain(struct device_node *np,
 	do {
 		base = of_iomap(np, i);
 		if (base) {
-			orion_irq_init(i * 32, base);
+			orion_irq_init(i * 32, base + 0x04);
 			i++;
 		}
 	} while (base);
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* Re: [PATCH v4 5/7] ARM: kirkwood: convert to DT irqchip and clocksource
  2013-07-02 11:03   ` Sebastian Hesselbarth
@ 2013-07-02 11:53     ` Jason Cooper
  -1 siblings, 0 replies; 28+ messages in thread
From: Jason Cooper @ 2013-07-02 11:53 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Russell King, Andrew Lunn, Thomas Petazzoni, Gregory CLEMENT,
	linux-arm-kernel, linux-kernel

On Tue, Jul 02, 2013 at 01:03:41PM +0200, Sebastian Hesselbarth wrote:
> With recent support for true irqchip and clocksource drivers for Orion
> SoCs, now make use of it on DT enabled Kirkwood boards.
> 
> This also introduces a new Kconfig option for legacy (non-DT) Kirkwood
> where old code is moved out to and polishes DT board file a little bit.
> 
> Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
> --- 
> Cc: Russell King <linux@arm.linux.org.uk>
> Cc: Jason Cooper <jason@lakedaemon.net>
> Cc: Andrew Lunn <andrew@lunn.ch>
> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-kernel@vger.kernel.org
> ---
>  arch/arm/mach-kirkwood/Kconfig    |   22 ++++++++++++++++++++++
>  arch/arm/mach-kirkwood/Makefile   |    4 ++--
>  arch/arm/mach-kirkwood/board-dt.c |   24 +++++++++++++++++-------
>  3 files changed, 41 insertions(+), 9 deletions(-)
> 
> diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
> index 493c71a..ede131e 100644
> --- a/arch/arm/mach-kirkwood/Kconfig
> +++ b/arch/arm/mach-kirkwood/Kconfig
> @@ -2,67 +2,81 @@ if ARCH_KIRKWOOD
>  
>  menu "Marvell Kirkwood Implementations"
>  
> +config KIRKWOOD_LEGACY
> +	bool
> +
>  config MACH_D2NET_V2
>  	bool "LaCie d2 Network v2 NAS Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  LaCie d2 Network v2 NAS.
>  
>  config MACH_DOCKSTAR
>  	bool "Seagate FreeAgent DockStar"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Seagate FreeAgent DockStar.
>  
>  config MACH_ESATA_SHEEVAPLUG
>  	bool "Marvell eSATA SheevaPlug Reference Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Marvell eSATA SheevaPlug Reference Board.
>  
>  config MACH_GURUPLUG
>  	bool "Marvell GuruPlug Reference Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Marvell GuruPlug Reference Board.
>  
>  config MACH_INETSPACE_V2
>  	bool "LaCie Internet Space v2 NAS Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  LaCie Internet Space v2 NAS.
>  
>  config MACH_MV88F6281GTW_GE
>  	bool "Marvell 88F6281 GTW GE Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Marvell 88F6281 GTW GE Board.
>  
>  config MACH_NET2BIG_V2
>  	bool "LaCie 2Big Network v2 NAS Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  LaCie 2Big Network v2 NAS.
>  
>  config MACH_NET5BIG_V2
>  	bool "LaCie 5Big Network v2 NAS Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  LaCie 5Big Network v2 NAS.
>  
>  config MACH_NETSPACE_MAX_V2
>  	bool "LaCie Network Space Max v2 NAS Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  LaCie Network Space Max v2 NAS.
>  
>  config MACH_NETSPACE_V2
>  	bool "LaCie Network Space v2 NAS Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  LaCie Network Space v2 NAS.
>  
>  config MACH_OPENRD
> +	select KIRKWOOD_LEGACY
>          bool
>  
>  config MACH_OPENRD_BASE
> @@ -88,30 +102,35 @@ config MACH_OPENRD_ULTIMATE
>  
>  config MACH_RD88F6192_NAS
>  	bool "Marvell RD-88F6192-NAS Reference Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Marvell RD-88F6192-NAS Reference Board.
>  
>  config MACH_RD88F6281
>  	bool "Marvell RD-88F6281 Reference Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Marvell RD-88F6281 Reference Board.
>  
>  config MACH_SHEEVAPLUG
>  	bool "Marvell SheevaPlug Reference Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Marvell SheevaPlug Reference Board.
>  
>  config MACH_T5325
>  	bool "HP t5325 Thin Client"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  HP t5325 Thin Client.
>  
>  config MACH_TS219
>  	bool "QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and
> @@ -119,6 +138,7 @@ config MACH_TS219
>  
>  config MACH_TS41X
>  	bool "QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo NAS"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo
> @@ -129,6 +149,8 @@ comment "Device tree entries"
>  config ARCH_KIRKWOOD_DT
>  	bool "Marvell Kirkwood Flattened Device Tree"
>  	select KIRKWOOD_CLK
> +	select ORION_IRQCHIP
> +	select ORION_TIMER
>  	select POWER_SUPPLY
>  	select POWER_RESET
>  	select POWER_RESET_GPIO
> diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile
> index 062f8c7..f78f333 100644
> --- a/arch/arm/mach-kirkwood/Makefile
> +++ b/arch/arm/mach-kirkwood/Makefile
> @@ -1,5 +1,5 @@
> -obj-y				+= common.o irq.o pcie.o mpp.o
> -
> +obj-y				+= common.o pcie.o
> +obj-$(CONFIG_KIRKWOOD_LEGACY)	+= irq.o mpp.o
>  obj-$(CONFIG_MACH_D2NET_V2)		+= d2net_v2-setup.o lacie_v2-common.o
>  obj-$(CONFIG_MACH_DOCKSTAR)		+= dockstar-setup.o
>  obj-$(CONFIG_MACH_ESATA_SHEEVAPLUG)	+= sheevaplug-setup.o
> diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
> index 881f37e..385244c 100644
> --- a/arch/arm/mach-kirkwood/board-dt.c
> +++ b/arch/arm/mach-kirkwood/board-dt.c
> @@ -15,6 +15,9 @@
>  #include <linux/of.h>
>  #include <linux/of_platform.h>
>  #include <linux/clk-provider.h>
> +#include <linux/clocksource.h>
> +#include <linux/dma-mapping.h>
> +#include <linux/irqchip.h>
>  #include <linux/kexec.h>
>  #include <asm/mach/arch.h>
>  #include <asm/mach/map.h>
> @@ -67,10 +70,18 @@ static void __init kirkwood_legacy_clk_init(void)
>  	clk_prepare_enable(clk);
>  }
>  
> -static void __init kirkwood_of_clk_init(void)
> +static void __init kirkwood_dt_time_init(void)
>  {
>  	of_clk_init(NULL);
> -	kirkwood_legacy_clk_init();
> +	clocksource_of_init();
> +}
> +
> +static void __init kirkwood_dt_init_early(void)
> +{


> +	init_dma_coherent_pool_size(SZ_1M);

This shouldn't be needed any more.  Is there a reason you're adding it
back in?

thx,

Jason.

> +	mvebu_mbus_init("marvell,kirkwood-mbus",
> +			BRIDGE_WINS_BASE, BRIDGE_WINS_SZ,
> +			DDR_WINDOW_CPU_BASE, DDR_WINDOW_CPU_SZ);
>  }
>  
>  static void __init kirkwood_dt_init(void)
> @@ -91,8 +102,8 @@ static void __init kirkwood_dt_init(void)
>  
>  	kirkwood_cpufreq_init();
>  
> -	/* Setup root of clk tree */
> -	kirkwood_of_clk_init();
> +	/* Setup clocks for legacy devices */
> +	kirkwood_legacy_clk_init();
>  
>  	kirkwood_cpuidle_init();
>  
> @@ -114,9 +125,8 @@ static const char * const kirkwood_dt_board_compat[] = {
>  DT_MACHINE_START(KIRKWOOD_DT, "Marvell Kirkwood (Flattened Device Tree)")
>  	/* Maintainer: Jason Cooper <jason@lakedaemon.net> */
>  	.map_io		= kirkwood_map_io,
> -	.init_early	= kirkwood_init_early,
> -	.init_irq	= orion_dt_init_irq,
> -	.init_time	= kirkwood_timer_init,
> +	.init_early	= kirkwood_dt_init_early,
> +	.init_time	= kirkwood_dt_time_init,
>  	.init_machine	= kirkwood_dt_init,
>  	.restart	= kirkwood_restart,
>  	.dt_compat	= kirkwood_dt_board_compat,
> -- 
> 1.7.2.5
> 

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH v4 5/7] ARM: kirkwood: convert to DT irqchip and clocksource
@ 2013-07-02 11:53     ` Jason Cooper
  0 siblings, 0 replies; 28+ messages in thread
From: Jason Cooper @ 2013-07-02 11:53 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Jul 02, 2013 at 01:03:41PM +0200, Sebastian Hesselbarth wrote:
> With recent support for true irqchip and clocksource drivers for Orion
> SoCs, now make use of it on DT enabled Kirkwood boards.
> 
> This also introduces a new Kconfig option for legacy (non-DT) Kirkwood
> where old code is moved out to and polishes DT board file a little bit.
> 
> Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
> --- 
> Cc: Russell King <linux@arm.linux.org.uk>
> Cc: Jason Cooper <jason@lakedaemon.net>
> Cc: Andrew Lunn <andrew@lunn.ch>
> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
> Cc: linux-arm-kernel at lists.infradead.org
> Cc: linux-kernel at vger.kernel.org
> ---
>  arch/arm/mach-kirkwood/Kconfig    |   22 ++++++++++++++++++++++
>  arch/arm/mach-kirkwood/Makefile   |    4 ++--
>  arch/arm/mach-kirkwood/board-dt.c |   24 +++++++++++++++++-------
>  3 files changed, 41 insertions(+), 9 deletions(-)
> 
> diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
> index 493c71a..ede131e 100644
> --- a/arch/arm/mach-kirkwood/Kconfig
> +++ b/arch/arm/mach-kirkwood/Kconfig
> @@ -2,67 +2,81 @@ if ARCH_KIRKWOOD
>  
>  menu "Marvell Kirkwood Implementations"
>  
> +config KIRKWOOD_LEGACY
> +	bool
> +
>  config MACH_D2NET_V2
>  	bool "LaCie d2 Network v2 NAS Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  LaCie d2 Network v2 NAS.
>  
>  config MACH_DOCKSTAR
>  	bool "Seagate FreeAgent DockStar"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Seagate FreeAgent DockStar.
>  
>  config MACH_ESATA_SHEEVAPLUG
>  	bool "Marvell eSATA SheevaPlug Reference Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Marvell eSATA SheevaPlug Reference Board.
>  
>  config MACH_GURUPLUG
>  	bool "Marvell GuruPlug Reference Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Marvell GuruPlug Reference Board.
>  
>  config MACH_INETSPACE_V2
>  	bool "LaCie Internet Space v2 NAS Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  LaCie Internet Space v2 NAS.
>  
>  config MACH_MV88F6281GTW_GE
>  	bool "Marvell 88F6281 GTW GE Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Marvell 88F6281 GTW GE Board.
>  
>  config MACH_NET2BIG_V2
>  	bool "LaCie 2Big Network v2 NAS Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  LaCie 2Big Network v2 NAS.
>  
>  config MACH_NET5BIG_V2
>  	bool "LaCie 5Big Network v2 NAS Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  LaCie 5Big Network v2 NAS.
>  
>  config MACH_NETSPACE_MAX_V2
>  	bool "LaCie Network Space Max v2 NAS Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  LaCie Network Space Max v2 NAS.
>  
>  config MACH_NETSPACE_V2
>  	bool "LaCie Network Space v2 NAS Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  LaCie Network Space v2 NAS.
>  
>  config MACH_OPENRD
> +	select KIRKWOOD_LEGACY
>          bool
>  
>  config MACH_OPENRD_BASE
> @@ -88,30 +102,35 @@ config MACH_OPENRD_ULTIMATE
>  
>  config MACH_RD88F6192_NAS
>  	bool "Marvell RD-88F6192-NAS Reference Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Marvell RD-88F6192-NAS Reference Board.
>  
>  config MACH_RD88F6281
>  	bool "Marvell RD-88F6281 Reference Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Marvell RD-88F6281 Reference Board.
>  
>  config MACH_SHEEVAPLUG
>  	bool "Marvell SheevaPlug Reference Board"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  Marvell SheevaPlug Reference Board.
>  
>  config MACH_T5325
>  	bool "HP t5325 Thin Client"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  HP t5325 Thin Client.
>  
>  config MACH_TS219
>  	bool "QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and
> @@ -119,6 +138,7 @@ config MACH_TS219
>  
>  config MACH_TS41X
>  	bool "QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo NAS"
> +	select KIRKWOOD_LEGACY
>  	help
>  	  Say 'Y' here if you want your kernel to support the
>  	  QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo
> @@ -129,6 +149,8 @@ comment "Device tree entries"
>  config ARCH_KIRKWOOD_DT
>  	bool "Marvell Kirkwood Flattened Device Tree"
>  	select KIRKWOOD_CLK
> +	select ORION_IRQCHIP
> +	select ORION_TIMER
>  	select POWER_SUPPLY
>  	select POWER_RESET
>  	select POWER_RESET_GPIO
> diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile
> index 062f8c7..f78f333 100644
> --- a/arch/arm/mach-kirkwood/Makefile
> +++ b/arch/arm/mach-kirkwood/Makefile
> @@ -1,5 +1,5 @@
> -obj-y				+= common.o irq.o pcie.o mpp.o
> -
> +obj-y				+= common.o pcie.o
> +obj-$(CONFIG_KIRKWOOD_LEGACY)	+= irq.o mpp.o
>  obj-$(CONFIG_MACH_D2NET_V2)		+= d2net_v2-setup.o lacie_v2-common.o
>  obj-$(CONFIG_MACH_DOCKSTAR)		+= dockstar-setup.o
>  obj-$(CONFIG_MACH_ESATA_SHEEVAPLUG)	+= sheevaplug-setup.o
> diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
> index 881f37e..385244c 100644
> --- a/arch/arm/mach-kirkwood/board-dt.c
> +++ b/arch/arm/mach-kirkwood/board-dt.c
> @@ -15,6 +15,9 @@
>  #include <linux/of.h>
>  #include <linux/of_platform.h>
>  #include <linux/clk-provider.h>
> +#include <linux/clocksource.h>
> +#include <linux/dma-mapping.h>
> +#include <linux/irqchip.h>
>  #include <linux/kexec.h>
>  #include <asm/mach/arch.h>
>  #include <asm/mach/map.h>
> @@ -67,10 +70,18 @@ static void __init kirkwood_legacy_clk_init(void)
>  	clk_prepare_enable(clk);
>  }
>  
> -static void __init kirkwood_of_clk_init(void)
> +static void __init kirkwood_dt_time_init(void)
>  {
>  	of_clk_init(NULL);
> -	kirkwood_legacy_clk_init();
> +	clocksource_of_init();
> +}
> +
> +static void __init kirkwood_dt_init_early(void)
> +{


> +	init_dma_coherent_pool_size(SZ_1M);

This shouldn't be needed any more.  Is there a reason you're adding it
back in?

thx,

Jason.

> +	mvebu_mbus_init("marvell,kirkwood-mbus",
> +			BRIDGE_WINS_BASE, BRIDGE_WINS_SZ,
> +			DDR_WINDOW_CPU_BASE, DDR_WINDOW_CPU_SZ);
>  }
>  
>  static void __init kirkwood_dt_init(void)
> @@ -91,8 +102,8 @@ static void __init kirkwood_dt_init(void)
>  
>  	kirkwood_cpufreq_init();
>  
> -	/* Setup root of clk tree */
> -	kirkwood_of_clk_init();
> +	/* Setup clocks for legacy devices */
> +	kirkwood_legacy_clk_init();
>  
>  	kirkwood_cpuidle_init();
>  
> @@ -114,9 +125,8 @@ static const char * const kirkwood_dt_board_compat[] = {
>  DT_MACHINE_START(KIRKWOOD_DT, "Marvell Kirkwood (Flattened Device Tree)")
>  	/* Maintainer: Jason Cooper <jason@lakedaemon.net> */
>  	.map_io		= kirkwood_map_io,
> -	.init_early	= kirkwood_init_early,
> -	.init_irq	= orion_dt_init_irq,
> -	.init_time	= kirkwood_timer_init,
> +	.init_early	= kirkwood_dt_init_early,
> +	.init_time	= kirkwood_dt_time_init,
>  	.init_machine	= kirkwood_dt_init,
>  	.restart	= kirkwood_restart,
>  	.dt_compat	= kirkwood_dt_board_compat,
> -- 
> 1.7.2.5
> 

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH v4 5/7] ARM: kirkwood: convert to DT irqchip and clocksource
  2013-07-02 11:53     ` Jason Cooper
@ 2013-07-02 12:51       ` Sebastian Hesselbarth
  -1 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 12:51 UTC (permalink / raw)
  To: Jason Cooper
  Cc: Russell King, Andrew Lunn, Thomas Petazzoni, Gregory CLEMENT,
	linux-arm-kernel, linux-kernel

On 07/02/13 13:53, Jason Cooper wrote:
> On Tue, Jul 02, 2013 at 01:03:41PM +0200, Sebastian Hesselbarth wrote:
>> With recent support for true irqchip and clocksource drivers for Orion
>> SoCs, now make use of it on DT enabled Kirkwood boards.
>>
>> This also introduces a new Kconfig option for legacy (non-DT) Kirkwood
>> where old code is moved out to and polishes DT board file a little bit.
>>
>> Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
>> ---
[...]
>> diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
>> index 881f37e..385244c 100644
>> --- a/arch/arm/mach-kirkwood/board-dt.c
>> +++ b/arch/arm/mach-kirkwood/board-dt.c
>> @@ -15,6 +15,9 @@
>>   #include <linux/of.h>
>>   #include <linux/of_platform.h>
>>   #include <linux/clk-provider.h>
>> +#include <linux/clocksource.h>
>> +#include <linux/dma-mapping.h>
>> +#include <linux/irqchip.h>
>>   #include <linux/kexec.h>
>>   #include <asm/mach/arch.h>
>>   #include <asm/mach/map.h>
>> @@ -67,10 +70,18 @@ static void __init kirkwood_legacy_clk_init(void)
>>   	clk_prepare_enable(clk);
>>   }
>>
>> -static void __init kirkwood_of_clk_init(void)
>> +static void __init kirkwood_dt_time_init(void)
>>   {
>>   	of_clk_init(NULL);
>> -	kirkwood_legacy_clk_init();
>> +	clocksource_of_init();
>> +}
>> +
>> +static void __init kirkwood_dt_init_early(void)
>> +{
>
>
>> +	init_dma_coherent_pool_size(SZ_1M);
>
> This shouldn't be needed any more.  Is there a reason you're adding it
> back in?

Jason, thanks for catching this. The last patch I had was before removal
of init_dma_coherent_pool_size. I slipped back in because I missed the
removal patches.

Can you remove it prior merge, should I prepare a fixup patch, or respin
this patch?

Sebastian


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH v4 5/7] ARM: kirkwood: convert to DT irqchip and clocksource
@ 2013-07-02 12:51       ` Sebastian Hesselbarth
  0 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 12:51 UTC (permalink / raw)
  To: linux-arm-kernel

On 07/02/13 13:53, Jason Cooper wrote:
> On Tue, Jul 02, 2013 at 01:03:41PM +0200, Sebastian Hesselbarth wrote:
>> With recent support for true irqchip and clocksource drivers for Orion
>> SoCs, now make use of it on DT enabled Kirkwood boards.
>>
>> This also introduces a new Kconfig option for legacy (non-DT) Kirkwood
>> where old code is moved out to and polishes DT board file a little bit.
>>
>> Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
>> ---
[...]
>> diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
>> index 881f37e..385244c 100644
>> --- a/arch/arm/mach-kirkwood/board-dt.c
>> +++ b/arch/arm/mach-kirkwood/board-dt.c
>> @@ -15,6 +15,9 @@
>>   #include <linux/of.h>
>>   #include <linux/of_platform.h>
>>   #include <linux/clk-provider.h>
>> +#include <linux/clocksource.h>
>> +#include <linux/dma-mapping.h>
>> +#include <linux/irqchip.h>
>>   #include <linux/kexec.h>
>>   #include <asm/mach/arch.h>
>>   #include <asm/mach/map.h>
>> @@ -67,10 +70,18 @@ static void __init kirkwood_legacy_clk_init(void)
>>   	clk_prepare_enable(clk);
>>   }
>>
>> -static void __init kirkwood_of_clk_init(void)
>> +static void __init kirkwood_dt_time_init(void)
>>   {
>>   	of_clk_init(NULL);
>> -	kirkwood_legacy_clk_init();
>> +	clocksource_of_init();
>> +}
>> +
>> +static void __init kirkwood_dt_init_early(void)
>> +{
>
>
>> +	init_dma_coherent_pool_size(SZ_1M);
>
> This shouldn't be needed any more.  Is there a reason you're adding it
> back in?

Jason, thanks for catching this. The last patch I had was before removal
of init_dma_coherent_pool_size. I slipped back in because I missed the
removal patches.

Can you remove it prior merge, should I prepare a fixup patch, or respin
this patch?

Sebastian

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH v4 5/7] ARM: kirkwood: convert to DT irqchip and clocksource
  2013-07-02 12:51       ` Sebastian Hesselbarth
@ 2013-07-02 13:00         ` Jason Cooper
  -1 siblings, 0 replies; 28+ messages in thread
From: Jason Cooper @ 2013-07-02 13:00 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Russell King, Andrew Lunn, Thomas Petazzoni, Gregory CLEMENT,
	linux-arm-kernel, linux-kernel

On Tue, Jul 02, 2013 at 02:51:16PM +0200, Sebastian Hesselbarth wrote:
> On 07/02/13 13:53, Jason Cooper wrote:
> >On Tue, Jul 02, 2013 at 01:03:41PM +0200, Sebastian Hesselbarth wrote:
> >>With recent support for true irqchip and clocksource drivers for Orion
> >>SoCs, now make use of it on DT enabled Kirkwood boards.
> >>
> >>This also introduces a new Kconfig option for legacy (non-DT) Kirkwood
> >>where old code is moved out to and polishes DT board file a little bit.
> >>
> >>Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
> >>---
> [...]
> >>diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
> >>index 881f37e..385244c 100644
> >>--- a/arch/arm/mach-kirkwood/board-dt.c
> >>+++ b/arch/arm/mach-kirkwood/board-dt.c
> >>@@ -15,6 +15,9 @@
> >>  #include <linux/of.h>
> >>  #include <linux/of_platform.h>
> >>  #include <linux/clk-provider.h>
> >>+#include <linux/clocksource.h>
> >>+#include <linux/dma-mapping.h>
> >>+#include <linux/irqchip.h>
> >>  #include <linux/kexec.h>
> >>  #include <asm/mach/arch.h>
> >>  #include <asm/mach/map.h>
> >>@@ -67,10 +70,18 @@ static void __init kirkwood_legacy_clk_init(void)
> >>  	clk_prepare_enable(clk);
> >>  }
> >>
> >>-static void __init kirkwood_of_clk_init(void)
> >>+static void __init kirkwood_dt_time_init(void)
> >>  {
> >>  	of_clk_init(NULL);
> >>-	kirkwood_legacy_clk_init();
> >>+	clocksource_of_init();
> >>+}
> >>+
> >>+static void __init kirkwood_dt_init_early(void)
> >>+{
> >
> >
> >>+	init_dma_coherent_pool_size(SZ_1M);
> >
> >This shouldn't be needed any more.  Is there a reason you're adding it
> >back in?
> 
> Jason, thanks for catching this. The last patch I had was before removal
> of init_dma_coherent_pool_size. I slipped back in because I missed the
> removal patches.

ah, ok.

> Can you remove it prior merge, should I prepare a fixup patch, or respin
> this patch?

Please check for other occurrences (all should be gone), and post a v2
of only the affected patches.

thx,

Jason.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH v4 5/7] ARM: kirkwood: convert to DT irqchip and clocksource
@ 2013-07-02 13:00         ` Jason Cooper
  0 siblings, 0 replies; 28+ messages in thread
From: Jason Cooper @ 2013-07-02 13:00 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Jul 02, 2013 at 02:51:16PM +0200, Sebastian Hesselbarth wrote:
> On 07/02/13 13:53, Jason Cooper wrote:
> >On Tue, Jul 02, 2013 at 01:03:41PM +0200, Sebastian Hesselbarth wrote:
> >>With recent support for true irqchip and clocksource drivers for Orion
> >>SoCs, now make use of it on DT enabled Kirkwood boards.
> >>
> >>This also introduces a new Kconfig option for legacy (non-DT) Kirkwood
> >>where old code is moved out to and polishes DT board file a little bit.
> >>
> >>Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
> >>---
> [...]
> >>diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
> >>index 881f37e..385244c 100644
> >>--- a/arch/arm/mach-kirkwood/board-dt.c
> >>+++ b/arch/arm/mach-kirkwood/board-dt.c
> >>@@ -15,6 +15,9 @@
> >>  #include <linux/of.h>
> >>  #include <linux/of_platform.h>
> >>  #include <linux/clk-provider.h>
> >>+#include <linux/clocksource.h>
> >>+#include <linux/dma-mapping.h>
> >>+#include <linux/irqchip.h>
> >>  #include <linux/kexec.h>
> >>  #include <asm/mach/arch.h>
> >>  #include <asm/mach/map.h>
> >>@@ -67,10 +70,18 @@ static void __init kirkwood_legacy_clk_init(void)
> >>  	clk_prepare_enable(clk);
> >>  }
> >>
> >>-static void __init kirkwood_of_clk_init(void)
> >>+static void __init kirkwood_dt_time_init(void)
> >>  {
> >>  	of_clk_init(NULL);
> >>-	kirkwood_legacy_clk_init();
> >>+	clocksource_of_init();
> >>+}
> >>+
> >>+static void __init kirkwood_dt_init_early(void)
> >>+{
> >
> >
> >>+	init_dma_coherent_pool_size(SZ_1M);
> >
> >This shouldn't be needed any more.  Is there a reason you're adding it
> >back in?
> 
> Jason, thanks for catching this. The last patch I had was before removal
> of init_dma_coherent_pool_size. I slipped back in because I missed the
> removal patches.

ah, ok.

> Can you remove it prior merge, should I prepare a fixup patch, or respin
> this patch?

Please check for other occurrences (all should be gone), and post a v2
of only the affected patches.

thx,

Jason.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH v5 5/7] ARM: kirkwood: convert to DT irqchip and clocksource
  2013-07-02 11:03   ` Sebastian Hesselbarth
@ 2013-07-02 13:15     ` Sebastian Hesselbarth
  -1 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 13:15 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Sebastian Hesselbarth, Russell King, Jason Cooper, Andrew Lunn,
	Thomas Petazzoni, Gregory CLEMENT, linux-arm-kernel,
	linux-kernel

With recent support for true irqchip and clocksource drivers for Orion
SoCs, now make use of it on DT enabled Kirkwood boards.

This also introduces a new Kconfig option for legacy (non-DT) Kirkwood
where old code is moved out to and polishes DT board file a little bit.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Changelog:
v4->v5:
- do not re-introduce already removed init_dma_coherent_pool_size
  (Reported by Jason Cooper)

@Jason: I did a 'git grep init_dma_coherent_pool_size' and now there
are no users of that function - as it was before. Patch 6/7 only differs
in the 'index' diff line because of the rebase here. I will not resend that,
it should still apply.

Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
 arch/arm/mach-kirkwood/Kconfig    |   22 ++++++++++++++++++++++
 arch/arm/mach-kirkwood/Makefile   |    4 ++--
 arch/arm/mach-kirkwood/board-dt.c |   23 ++++++++++++++++-------
 3 files changed, 40 insertions(+), 9 deletions(-)

diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
index 493c71a..ede131e 100644
--- a/arch/arm/mach-kirkwood/Kconfig
+++ b/arch/arm/mach-kirkwood/Kconfig
@@ -2,67 +2,81 @@ if ARCH_KIRKWOOD
 
 menu "Marvell Kirkwood Implementations"
 
+config KIRKWOOD_LEGACY
+	bool
+
 config MACH_D2NET_V2
 	bool "LaCie d2 Network v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie d2 Network v2 NAS.
 
 config MACH_DOCKSTAR
 	bool "Seagate FreeAgent DockStar"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Seagate FreeAgent DockStar.
 
 config MACH_ESATA_SHEEVAPLUG
 	bool "Marvell eSATA SheevaPlug Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell eSATA SheevaPlug Reference Board.
 
 config MACH_GURUPLUG
 	bool "Marvell GuruPlug Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell GuruPlug Reference Board.
 
 config MACH_INETSPACE_V2
 	bool "LaCie Internet Space v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie Internet Space v2 NAS.
 
 config MACH_MV88F6281GTW_GE
 	bool "Marvell 88F6281 GTW GE Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell 88F6281 GTW GE Board.
 
 config MACH_NET2BIG_V2
 	bool "LaCie 2Big Network v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie 2Big Network v2 NAS.
 
 config MACH_NET5BIG_V2
 	bool "LaCie 5Big Network v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie 5Big Network v2 NAS.
 
 config MACH_NETSPACE_MAX_V2
 	bool "LaCie Network Space Max v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie Network Space Max v2 NAS.
 
 config MACH_NETSPACE_V2
 	bool "LaCie Network Space v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie Network Space v2 NAS.
 
 config MACH_OPENRD
+	select KIRKWOOD_LEGACY
         bool
 
 config MACH_OPENRD_BASE
@@ -88,30 +102,35 @@ config MACH_OPENRD_ULTIMATE
 
 config MACH_RD88F6192_NAS
 	bool "Marvell RD-88F6192-NAS Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell RD-88F6192-NAS Reference Board.
 
 config MACH_RD88F6281
 	bool "Marvell RD-88F6281 Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell RD-88F6281 Reference Board.
 
 config MACH_SHEEVAPLUG
 	bool "Marvell SheevaPlug Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell SheevaPlug Reference Board.
 
 config MACH_T5325
 	bool "HP t5325 Thin Client"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  HP t5325 Thin Client.
 
 config MACH_TS219
 	bool "QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and
@@ -119,6 +138,7 @@ config MACH_TS219
 
 config MACH_TS41X
 	bool "QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo NAS"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo
@@ -129,6 +149,8 @@ comment "Device tree entries"
 config ARCH_KIRKWOOD_DT
 	bool "Marvell Kirkwood Flattened Device Tree"
 	select KIRKWOOD_CLK
+	select ORION_IRQCHIP
+	select ORION_TIMER
 	select POWER_SUPPLY
 	select POWER_RESET
 	select POWER_RESET_GPIO
diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile
index 062f8c7..f78f333 100644
--- a/arch/arm/mach-kirkwood/Makefile
+++ b/arch/arm/mach-kirkwood/Makefile
@@ -1,5 +1,5 @@
-obj-y				+= common.o irq.o pcie.o mpp.o
-
+obj-y				+= common.o pcie.o
+obj-$(CONFIG_KIRKWOOD_LEGACY)	+= irq.o mpp.o
 obj-$(CONFIG_MACH_D2NET_V2)		+= d2net_v2-setup.o lacie_v2-common.o
 obj-$(CONFIG_MACH_DOCKSTAR)		+= dockstar-setup.o
 obj-$(CONFIG_MACH_ESATA_SHEEVAPLUG)	+= sheevaplug-setup.o
diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
index 881f37e..56d4a5e 100644
--- a/arch/arm/mach-kirkwood/board-dt.c
+++ b/arch/arm/mach-kirkwood/board-dt.c
@@ -15,6 +15,9 @@
 #include <linux/of.h>
 #include <linux/of_platform.h>
 #include <linux/clk-provider.h>
+#include <linux/clocksource.h>
+#include <linux/dma-mapping.h>
+#include <linux/irqchip.h>
 #include <linux/kexec.h>
 #include <asm/mach/arch.h>
 #include <asm/mach/map.h>
@@ -67,10 +70,17 @@ static void __init kirkwood_legacy_clk_init(void)
 	clk_prepare_enable(clk);
 }
 
-static void __init kirkwood_of_clk_init(void)
+static void __init kirkwood_dt_time_init(void)
 {
 	of_clk_init(NULL);
-	kirkwood_legacy_clk_init();
+	clocksource_of_init();
+}
+
+static void __init kirkwood_dt_init_early(void)
+{
+	mvebu_mbus_init("marvell,kirkwood-mbus",
+			BRIDGE_WINS_BASE, BRIDGE_WINS_SZ,
+			DDR_WINDOW_CPU_BASE, DDR_WINDOW_CPU_SZ);
 }
 
 static void __init kirkwood_dt_init(void)
@@ -91,8 +101,8 @@ static void __init kirkwood_dt_init(void)
 
 	kirkwood_cpufreq_init();
 
-	/* Setup root of clk tree */
-	kirkwood_of_clk_init();
+	/* Setup clocks for legacy devices */
+	kirkwood_legacy_clk_init();
 
 	kirkwood_cpuidle_init();
 
@@ -114,9 +124,8 @@ static const char * const kirkwood_dt_board_compat[] = {
 DT_MACHINE_START(KIRKWOOD_DT, "Marvell Kirkwood (Flattened Device Tree)")
 	/* Maintainer: Jason Cooper <jason@lakedaemon.net> */
 	.map_io		= kirkwood_map_io,
-	.init_early	= kirkwood_init_early,
-	.init_irq	= orion_dt_init_irq,
-	.init_time	= kirkwood_timer_init,
+	.init_early	= kirkwood_dt_init_early,
+	.init_time	= kirkwood_dt_time_init,
 	.init_machine	= kirkwood_dt_init,
 	.restart	= kirkwood_restart,
 	.dt_compat	= kirkwood_dt_board_compat,
-- 
1.7.2.5


^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH v5 5/7] ARM: kirkwood: convert to DT irqchip and clocksource
@ 2013-07-02 13:15     ` Sebastian Hesselbarth
  0 siblings, 0 replies; 28+ messages in thread
From: Sebastian Hesselbarth @ 2013-07-02 13:15 UTC (permalink / raw)
  To: linux-arm-kernel

With recent support for true irqchip and clocksource drivers for Orion
SoCs, now make use of it on DT enabled Kirkwood boards.

This also introduces a new Kconfig option for legacy (non-DT) Kirkwood
where old code is moved out to and polishes DT board file a little bit.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
--- 
Changelog:
v4->v5:
- do not re-introduce already removed init_dma_coherent_pool_size
  (Reported by Jason Cooper)

@Jason: I did a 'git grep init_dma_coherent_pool_size' and now there
are no users of that function - as it was before. Patch 6/7 only differs
in the 'index' diff line because of the rebase here. I will not resend that,
it should still apply.

Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
---
 arch/arm/mach-kirkwood/Kconfig    |   22 ++++++++++++++++++++++
 arch/arm/mach-kirkwood/Makefile   |    4 ++--
 arch/arm/mach-kirkwood/board-dt.c |   23 ++++++++++++++++-------
 3 files changed, 40 insertions(+), 9 deletions(-)

diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
index 493c71a..ede131e 100644
--- a/arch/arm/mach-kirkwood/Kconfig
+++ b/arch/arm/mach-kirkwood/Kconfig
@@ -2,67 +2,81 @@ if ARCH_KIRKWOOD
 
 menu "Marvell Kirkwood Implementations"
 
+config KIRKWOOD_LEGACY
+	bool
+
 config MACH_D2NET_V2
 	bool "LaCie d2 Network v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie d2 Network v2 NAS.
 
 config MACH_DOCKSTAR
 	bool "Seagate FreeAgent DockStar"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Seagate FreeAgent DockStar.
 
 config MACH_ESATA_SHEEVAPLUG
 	bool "Marvell eSATA SheevaPlug Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell eSATA SheevaPlug Reference Board.
 
 config MACH_GURUPLUG
 	bool "Marvell GuruPlug Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell GuruPlug Reference Board.
 
 config MACH_INETSPACE_V2
 	bool "LaCie Internet Space v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie Internet Space v2 NAS.
 
 config MACH_MV88F6281GTW_GE
 	bool "Marvell 88F6281 GTW GE Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell 88F6281 GTW GE Board.
 
 config MACH_NET2BIG_V2
 	bool "LaCie 2Big Network v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie 2Big Network v2 NAS.
 
 config MACH_NET5BIG_V2
 	bool "LaCie 5Big Network v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie 5Big Network v2 NAS.
 
 config MACH_NETSPACE_MAX_V2
 	bool "LaCie Network Space Max v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie Network Space Max v2 NAS.
 
 config MACH_NETSPACE_V2
 	bool "LaCie Network Space v2 NAS Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  LaCie Network Space v2 NAS.
 
 config MACH_OPENRD
+	select KIRKWOOD_LEGACY
         bool
 
 config MACH_OPENRD_BASE
@@ -88,30 +102,35 @@ config MACH_OPENRD_ULTIMATE
 
 config MACH_RD88F6192_NAS
 	bool "Marvell RD-88F6192-NAS Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell RD-88F6192-NAS Reference Board.
 
 config MACH_RD88F6281
 	bool "Marvell RD-88F6281 Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell RD-88F6281 Reference Board.
 
 config MACH_SHEEVAPLUG
 	bool "Marvell SheevaPlug Reference Board"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  Marvell SheevaPlug Reference Board.
 
 config MACH_T5325
 	bool "HP t5325 Thin Client"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  HP t5325 Thin Client.
 
 config MACH_TS219
 	bool "QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and
@@ -119,6 +138,7 @@ config MACH_TS219
 
 config MACH_TS41X
 	bool "QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo NAS"
+	select KIRKWOOD_LEGACY
 	help
 	  Say 'Y' here if you want your kernel to support the
 	  QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo
@@ -129,6 +149,8 @@ comment "Device tree entries"
 config ARCH_KIRKWOOD_DT
 	bool "Marvell Kirkwood Flattened Device Tree"
 	select KIRKWOOD_CLK
+	select ORION_IRQCHIP
+	select ORION_TIMER
 	select POWER_SUPPLY
 	select POWER_RESET
 	select POWER_RESET_GPIO
diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile
index 062f8c7..f78f333 100644
--- a/arch/arm/mach-kirkwood/Makefile
+++ b/arch/arm/mach-kirkwood/Makefile
@@ -1,5 +1,5 @@
-obj-y				+= common.o irq.o pcie.o mpp.o
-
+obj-y				+= common.o pcie.o
+obj-$(CONFIG_KIRKWOOD_LEGACY)	+= irq.o mpp.o
 obj-$(CONFIG_MACH_D2NET_V2)		+= d2net_v2-setup.o lacie_v2-common.o
 obj-$(CONFIG_MACH_DOCKSTAR)		+= dockstar-setup.o
 obj-$(CONFIG_MACH_ESATA_SHEEVAPLUG)	+= sheevaplug-setup.o
diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
index 881f37e..56d4a5e 100644
--- a/arch/arm/mach-kirkwood/board-dt.c
+++ b/arch/arm/mach-kirkwood/board-dt.c
@@ -15,6 +15,9 @@
 #include <linux/of.h>
 #include <linux/of_platform.h>
 #include <linux/clk-provider.h>
+#include <linux/clocksource.h>
+#include <linux/dma-mapping.h>
+#include <linux/irqchip.h>
 #include <linux/kexec.h>
 #include <asm/mach/arch.h>
 #include <asm/mach/map.h>
@@ -67,10 +70,17 @@ static void __init kirkwood_legacy_clk_init(void)
 	clk_prepare_enable(clk);
 }
 
-static void __init kirkwood_of_clk_init(void)
+static void __init kirkwood_dt_time_init(void)
 {
 	of_clk_init(NULL);
-	kirkwood_legacy_clk_init();
+	clocksource_of_init();
+}
+
+static void __init kirkwood_dt_init_early(void)
+{
+	mvebu_mbus_init("marvell,kirkwood-mbus",
+			BRIDGE_WINS_BASE, BRIDGE_WINS_SZ,
+			DDR_WINDOW_CPU_BASE, DDR_WINDOW_CPU_SZ);
 }
 
 static void __init kirkwood_dt_init(void)
@@ -91,8 +101,8 @@ static void __init kirkwood_dt_init(void)
 
 	kirkwood_cpufreq_init();
 
-	/* Setup root of clk tree */
-	kirkwood_of_clk_init();
+	/* Setup clocks for legacy devices */
+	kirkwood_legacy_clk_init();
 
 	kirkwood_cpuidle_init();
 
@@ -114,9 +124,8 @@ static const char * const kirkwood_dt_board_compat[] = {
 DT_MACHINE_START(KIRKWOOD_DT, "Marvell Kirkwood (Flattened Device Tree)")
 	/* Maintainer: Jason Cooper <jason@lakedaemon.net> */
 	.map_io		= kirkwood_map_io,
-	.init_early	= kirkwood_init_early,
-	.init_irq	= orion_dt_init_irq,
-	.init_time	= kirkwood_timer_init,
+	.init_early	= kirkwood_dt_init_early,
+	.init_time	= kirkwood_dt_time_init,
 	.init_machine	= kirkwood_dt_init,
 	.restart	= kirkwood_restart,
 	.dt_compat	= kirkwood_dt_board_compat,
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* Re: [PATCH v5 5/7] ARM: kirkwood: convert to DT irqchip and clocksource
  2013-07-02 13:15     ` Sebastian Hesselbarth
@ 2013-07-02 13:36       ` Jason Cooper
  -1 siblings, 0 replies; 28+ messages in thread
From: Jason Cooper @ 2013-07-02 13:36 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Russell King, Andrew Lunn, Thomas Petazzoni, Gregory CLEMENT,
	linux-arm-kernel, linux-kernel

On Tue, Jul 02, 2013 at 03:15:07PM +0200, Sebastian Hesselbarth wrote:
> With recent support for true irqchip and clocksource drivers for Orion
> SoCs, now make use of it on DT enabled Kirkwood boards.
> 
> This also introduces a new Kconfig option for legacy (non-DT) Kirkwood
> where old code is moved out to and polishes DT board file a little bit.
> 
> Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
> --- 
> Changelog:
> v4->v5:
> - do not re-introduce already removed init_dma_coherent_pool_size
>   (Reported by Jason Cooper)
> 
> @Jason: I did a 'git grep init_dma_coherent_pool_size' and now there
> are no users of that function - as it was before. Patch 6/7 only differs
> in the 'index' diff line because of the rebase here. I will not resend that,
> it should still apply.

ok, great, thanks for turning that around.

thx,

Jason.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH v5 5/7] ARM: kirkwood: convert to DT irqchip and clocksource
@ 2013-07-02 13:36       ` Jason Cooper
  0 siblings, 0 replies; 28+ messages in thread
From: Jason Cooper @ 2013-07-02 13:36 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Jul 02, 2013 at 03:15:07PM +0200, Sebastian Hesselbarth wrote:
> With recent support for true irqchip and clocksource drivers for Orion
> SoCs, now make use of it on DT enabled Kirkwood boards.
> 
> This also introduces a new Kconfig option for legacy (non-DT) Kirkwood
> where old code is moved out to and polishes DT board file a little bit.
> 
> Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
> --- 
> Changelog:
> v4->v5:
> - do not re-introduce already removed init_dma_coherent_pool_size
>   (Reported by Jason Cooper)
> 
> @Jason: I did a 'git grep init_dma_coherent_pool_size' and now there
> are no users of that function - as it was before. Patch 6/7 only differs
> in the 'index' diff line because of the rebase here. I will not resend that,
> it should still apply.

ok, great, thanks for turning that around.

thx,

Jason.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH v4 0/7] ARM: mvebu: switch to DT probed irqchip and clocksource
  2013-07-02 11:03 ` Sebastian Hesselbarth
@ 2013-07-25 18:19   ` Jason Cooper
  -1 siblings, 0 replies; 28+ messages in thread
From: Jason Cooper @ 2013-07-25 18:19 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Thomas Petazzoni, Andrew Lunn, Russell King, linux-kernel,
	Gregory CLEMENT, linux-arm-kernel

On Tue, Jul 02, 2013 at 01:03:36PM +0200, Sebastian Hesselbarth wrote:
> This patch set converts Marvell Dove and Kirkwood DT enabled boards
> to probe irqchip and clocksource by DT. The corresponding irqchip and
> clocksource drivers have been taken by Thomas Gleixner and Daniel Lezcano
> respectively. This patch set is based on next-20130701 plus tip/core and
> timers/clockevents. Also, mv643xx_eth DT patches sent earlier are applied.
> 
> Unfortunately, the same compatible string is used by irqchip driver and
> irq DT stub in plat-orion/irq.c while reg layout is different. This patch
> set should be applied as a whole only, as device tree conversion breaks
> kernel boot until the corresponding second patch is applied. As this set
> is Marvell SoC related only, I suggest to take it all through Jason
> Cooper's branch.
> 
> Patch set version has been bumped to v4, but this only contains the
> remaining Marvell related patches. irqchip and clocksource drivers from
> v3 have already been taken by the respective maintainers.
> 
> The first three patches convert Dove, Kirkwood, and Orion5x DT files to
> the new reg layout. Patch 4 and 5 add the new clocksource and irqchip
> nodes. Patch 6 also removes an obsolete clock gate workaround from
> Kirkwood DT board setup. Patch 7 then updates the irq driver DT stub in
> plat-orion/irq to reflect the changed reg layout. The irq driver DT stub
> is still used on Orion5x until proper DT clk provider is available.
> 
> The patch set has been tested on Dove, and compile-tested on Kirkwood
> and Orion5x defconfig.
> 
> Sebastian Hesselbarth (7):
>   ARM: dove: move device tree nodes to DT irqchip and clocksource
>   ARM: kirkwood: move device tree nodes to DT irqchip and clocksource
>   ARM: orion5x: update intc device tree node to new reg layout
>   ARM: dove: convert to DT irqchip and clocksource
>   ARM: kirkwood: convert to DT irqchip and clocksource
>   ARM: kirkwood: remove obsolete SDIO clock gate workaround
>   ARM: plat-orion: add reg offset to DT irq driver stub
> 
>  arch/arm/boot/dts/dove.dtsi       |   21 +++++++++++++++++++--
>  arch/arm/boot/dts/kirkwood.dtsi   |   35 +++++++++++++++++++++++++++--------
>  arch/arm/boot/dts/orion5x.dtsi    |    5 +++--
>  arch/arm/mach-dove/Kconfig        |    2 ++
>  arch/arm/mach-dove/Makefile       |    4 ++--
>  arch/arm/mach-dove/board-dt.c     |   23 ++++++++++++++++-------
>  arch/arm/mach-kirkwood/Kconfig    |   22 ++++++++++++++++++++++
>  arch/arm/mach-kirkwood/Makefile   |    4 ++--
>  arch/arm/mach-kirkwood/board-dt.c |   28 +++++++++++++++++-----------
>  arch/arm/plat-orion/irq.c         |    2 +-
>  10 files changed, 111 insertions(+), 35 deletions(-)

Whole series (with v5 of #5) applied to mvebu/boards

thx,

Jason.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH v4 0/7] ARM: mvebu: switch to DT probed irqchip and clocksource
@ 2013-07-25 18:19   ` Jason Cooper
  0 siblings, 0 replies; 28+ messages in thread
From: Jason Cooper @ 2013-07-25 18:19 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Jul 02, 2013 at 01:03:36PM +0200, Sebastian Hesselbarth wrote:
> This patch set converts Marvell Dove and Kirkwood DT enabled boards
> to probe irqchip and clocksource by DT. The corresponding irqchip and
> clocksource drivers have been taken by Thomas Gleixner and Daniel Lezcano
> respectively. This patch set is based on next-20130701 plus tip/core and
> timers/clockevents. Also, mv643xx_eth DT patches sent earlier are applied.
> 
> Unfortunately, the same compatible string is used by irqchip driver and
> irq DT stub in plat-orion/irq.c while reg layout is different. This patch
> set should be applied as a whole only, as device tree conversion breaks
> kernel boot until the corresponding second patch is applied. As this set
> is Marvell SoC related only, I suggest to take it all through Jason
> Cooper's branch.
> 
> Patch set version has been bumped to v4, but this only contains the
> remaining Marvell related patches. irqchip and clocksource drivers from
> v3 have already been taken by the respective maintainers.
> 
> The first three patches convert Dove, Kirkwood, and Orion5x DT files to
> the new reg layout. Patch 4 and 5 add the new clocksource and irqchip
> nodes. Patch 6 also removes an obsolete clock gate workaround from
> Kirkwood DT board setup. Patch 7 then updates the irq driver DT stub in
> plat-orion/irq to reflect the changed reg layout. The irq driver DT stub
> is still used on Orion5x until proper DT clk provider is available.
> 
> The patch set has been tested on Dove, and compile-tested on Kirkwood
> and Orion5x defconfig.
> 
> Sebastian Hesselbarth (7):
>   ARM: dove: move device tree nodes to DT irqchip and clocksource
>   ARM: kirkwood: move device tree nodes to DT irqchip and clocksource
>   ARM: orion5x: update intc device tree node to new reg layout
>   ARM: dove: convert to DT irqchip and clocksource
>   ARM: kirkwood: convert to DT irqchip and clocksource
>   ARM: kirkwood: remove obsolete SDIO clock gate workaround
>   ARM: plat-orion: add reg offset to DT irq driver stub
> 
>  arch/arm/boot/dts/dove.dtsi       |   21 +++++++++++++++++++--
>  arch/arm/boot/dts/kirkwood.dtsi   |   35 +++++++++++++++++++++++++++--------
>  arch/arm/boot/dts/orion5x.dtsi    |    5 +++--
>  arch/arm/mach-dove/Kconfig        |    2 ++
>  arch/arm/mach-dove/Makefile       |    4 ++--
>  arch/arm/mach-dove/board-dt.c     |   23 ++++++++++++++++-------
>  arch/arm/mach-kirkwood/Kconfig    |   22 ++++++++++++++++++++++
>  arch/arm/mach-kirkwood/Makefile   |    4 ++--
>  arch/arm/mach-kirkwood/board-dt.c |   28 +++++++++++++++++-----------
>  arch/arm/plat-orion/irq.c         |    2 +-
>  10 files changed, 111 insertions(+), 35 deletions(-)

Whole series (with v5 of #5) applied to mvebu/boards

thx,

Jason.

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2013-07-25 18:19 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-02 11:03 [PATCH v4 0/7] ARM: mvebu: switch to DT probed irqchip and clocksource Sebastian Hesselbarth
2013-07-02 11:03 ` Sebastian Hesselbarth
2013-07-02 11:03 ` [PATCH v4 1/7] ARM: dove: move device tree nodes to DT " Sebastian Hesselbarth
2013-07-02 11:03   ` Sebastian Hesselbarth
2013-07-02 11:03 ` [PATCH v4 2/7] ARM: kirkwood: " Sebastian Hesselbarth
2013-07-02 11:03   ` Sebastian Hesselbarth
2013-07-02 11:03 ` [PATCH v4 3/7] ARM: orion5x: update intc device tree node to new reg layout Sebastian Hesselbarth
2013-07-02 11:03   ` Sebastian Hesselbarth
2013-07-02 11:03 ` [PATCH v4 4/7] ARM: dove: convert to DT irqchip and clocksource Sebastian Hesselbarth
2013-07-02 11:03   ` Sebastian Hesselbarth
2013-07-02 11:03 ` [PATCH v4 5/7] ARM: kirkwood: " Sebastian Hesselbarth
2013-07-02 11:03   ` Sebastian Hesselbarth
2013-07-02 11:53   ` Jason Cooper
2013-07-02 11:53     ` Jason Cooper
2013-07-02 12:51     ` Sebastian Hesselbarth
2013-07-02 12:51       ` Sebastian Hesselbarth
2013-07-02 13:00       ` Jason Cooper
2013-07-02 13:00         ` Jason Cooper
2013-07-02 13:15   ` [PATCH v5 " Sebastian Hesselbarth
2013-07-02 13:15     ` Sebastian Hesselbarth
2013-07-02 13:36     ` Jason Cooper
2013-07-02 13:36       ` Jason Cooper
2013-07-02 11:03 ` [PATCH v4 6/7] ARM: kirkwood: remove obsolete SDIO clock gate workaround Sebastian Hesselbarth
2013-07-02 11:03   ` Sebastian Hesselbarth
2013-07-02 11:03 ` [PATCH v4 7/7] ARM: plat-orion: add reg offset to DT irq driver stub Sebastian Hesselbarth
2013-07-02 11:03   ` Sebastian Hesselbarth
2013-07-25 18:19 ` [PATCH v4 0/7] ARM: mvebu: switch to DT probed irqchip and clocksource Jason Cooper
2013-07-25 18:19   ` Jason Cooper

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.