diff mbox series

[v2,10/10] arm64: dts: marvell: armada-cp110: Switch to per-port SATA interrupts

Message ID 20190306102146.13005-11-miquel.raynal@bootlin.com
State New, archived
Headers show
Series Enable per-port SATA interrupts and drop an hack in the IRQ subsystem | expand

Commit Message

Miquel Raynal March 6, 2019, 10:21 a.m. UTC
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

There are two SATA ports per CP110. Each of them has a dedicated
interrupt. Describe the real hardware by adding two SATA ports to the
CP110 SATA node and enabling them in all the DTs including it
(7040-db/8040-db/8040-clearfog).

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
---
 arch/arm64/boot/dts/marvell/armada-7040-db.dts   |  7 ++++++-
 .../dts/marvell/armada-8040-clearfog-gt-8k.dts   |  5 ++++-
 arch/arm64/boot/dts/marvell/armada-8040-db.dts   | 14 ++++++++++++--
 arch/arm64/boot/dts/marvell/armada-cp110.dtsi    | 16 ++++++++++++++--
 4 files changed, 36 insertions(+), 6 deletions(-)

Comments

Baruch Siach March 6, 2019, 10:30 a.m. UTC | #1
Hi Miquel,

On Wed, Mar 06, 2019 at 11:21:46AM +0100, Miquel Raynal wrote:
> From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> 
> There are two SATA ports per CP110. Each of them has a dedicated
> interrupt. Describe the real hardware by adding two SATA ports to the
> CP110 SATA node and enabling them in all the DTs including it
> (7040-db/8040-db/8040-clearfog).
> 
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
> ---
>  arch/arm64/boot/dts/marvell/armada-7040-db.dts   |  7 ++++++-
>  .../dts/marvell/armada-8040-clearfog-gt-8k.dts   |  5 ++++-
>  arch/arm64/boot/dts/marvell/armada-8040-db.dts   | 14 ++++++++++++--
>  arch/arm64/boot/dts/marvell/armada-cp110.dtsi    | 16 ++++++++++++++--

What about armada-8040-mcbin.dtsi?

baruch
Miquel Raynal March 6, 2019, 10:34 a.m. UTC | #2
Hi Baruch,

Baruch Siach <baruch@tkos.co.il> wrote on Wed, 6 Mar 2019 12:30:39
+0200:

> Hi Miquel,
> 
> On Wed, Mar 06, 2019 at 11:21:46AM +0100, Miquel Raynal wrote:
> > From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> > 
> > There are two SATA ports per CP110. Each of them has a dedicated
> > interrupt. Describe the real hardware by adding two SATA ports to the
> > CP110 SATA node and enabling them in all the DTs including it
> > (7040-db/8040-db/8040-clearfog).
> > 
> > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> > Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
> > ---
> >  arch/arm64/boot/dts/marvell/armada-7040-db.dts   |  7 ++++++-
> >  .../dts/marvell/armada-8040-clearfog-gt-8k.dts   |  5 ++++-
> >  arch/arm64/boot/dts/marvell/armada-8040-db.dts   | 14 ++++++++++++--
> >  arch/arm64/boot/dts/marvell/armada-cp110.dtsi    | 16 ++++++++++++++--  
> 
> What about armada-8040-mcbin.dtsi?
> 

I only checked final .dts files but indeed the SATA node is enabled in
the mcbin .dtsi. I will wait a bit for other reviews, if there is no
need to send a v3 for the SATA patches I will just resend the DT
patches for Gregory in a v3.


Thanks,
Miquèl
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/marvell/armada-7040-db.dts b/arch/arm64/boot/dts/marvell/armada-7040-db.dts
index 412efdb46e7c..54c1c0ddc813 100644
--- a/arch/arm64/boot/dts/marvell/armada-7040-db.dts
+++ b/arch/arm64/boot/dts/marvell/armada-7040-db.dts
@@ -194,7 +194,12 @@ 
 };
 
 &cp0_sata0 {
-	status = "okay";
+	sata-port@0 {
+		status = "okay";
+	};
+	sata-port@1 {
+		status = "okay";
+	};
 };
 
 &cp0_usb3_0 {
diff --git a/arch/arm64/boot/dts/marvell/armada-8040-clearfog-gt-8k.dts b/arch/arm64/boot/dts/marvell/armada-8040-clearfog-gt-8k.dts
index 5b4a9609e31f..16fc76ef7804 100644
--- a/arch/arm64/boot/dts/marvell/armada-8040-clearfog-gt-8k.dts
+++ b/arch/arm64/boot/dts/marvell/armada-8040-clearfog-gt-8k.dts
@@ -335,7 +335,10 @@ 
 
 &cp1_sata0 {
 	pinctrl-0 = <&cp0_pci1_reset_pins>;
-	status = "okay";
+
+	sata-port@1 {
+		status = "okay";
+	};
 };
 
 &cp1_mdio {
diff --git a/arch/arm64/boot/dts/marvell/armada-8040-db.dts b/arch/arm64/boot/dts/marvell/armada-8040-db.dts
index 1bac437369a1..988cc7dc15d9 100644
--- a/arch/arm64/boot/dts/marvell/armada-8040-db.dts
+++ b/arch/arm64/boot/dts/marvell/armada-8040-db.dts
@@ -147,7 +147,12 @@ 
 
 /* CON4 on CP0 expansion */
 &cp0_sata0 {
-	status = "okay";
+	sata-port@0 {
+		status = "okay";
+	};
+	sata-port@1 {
+		status = "okay";
+	};
 };
 
 /* CON9 on CP0 expansion */
@@ -279,7 +284,12 @@ 
 
 /* CON4 on CP1 expansion */
 &cp1_sata0 {
-	status = "okay";
+	sata-port@0 {
+		status = "okay";
+	};
+	sata-port@1 {
+		status = "okay";
+	};
 };
 
 /* CON9 on CP1 expansion */
diff --git a/arch/arm64/boot/dts/marvell/armada-cp110.dtsi b/arch/arm64/boot/dts/marvell/armada-cp110.dtsi
index b9d9f31e3ba1..f27edddcacd1 100644
--- a/arch/arm64/boot/dts/marvell/armada-cp110.dtsi
+++ b/arch/arm64/boot/dts/marvell/armada-cp110.dtsi
@@ -292,10 +292,22 @@ 
 			"generic-ahci";
 			reg = <0x540000 0x30000>;
 			dma-coherent;
-			interrupts = <107 IRQ_TYPE_LEVEL_HIGH>;
 			clocks = <&CP110_LABEL(clk) 1 15>,
 				 <&CP110_LABEL(clk) 1 16>;
-			status = "disabled";
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			sata-port@0 {
+				reg = <0>;
+				interrupts = <109 IRQ_TYPE_LEVEL_HIGH>;
+				status = "disabled";
+			};
+
+			sata-port@1 {
+				reg = <1>;
+				interrupts = <107 IRQ_TYPE_LEVEL_HIGH>;
+				status = "disabled";
+			};
 		};
 
 		CP110_LABEL(xor0): xor@6a0000 {