diff mbox

ARM: dts: kirkwood: Fix SATA pinmux-ing for TS419

Message ID 20170218003251.GC4152@decadent.org.uk (mailing list archive)
State New, archived
Headers show

Commit Message

Ben Hutchings Feb. 18, 2017, 12:32 a.m. UTC
The old board code for the TS419 assigns MPP pins 15 and 16 as SATA
activity signals (and none as SATA presence signals).  Currently the
device tree assigns the SoC's default pinmux groups for SATA, which
conflict with the second Ethernet port.

Reported-by: gmbh@gazeta.pl
Tested-by: gmbh@gazeta.pl
References: https://bugs.debian.org/855017
Cc: stable@vger.kernel.org # 3.15+
Fixes: 934b524b3f49 ("ARM: Kirkwood: Add DT description of QNAP 419")
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
 arch/arm/boot/dts/kirkwood-ts419.dtsi | 8 ++++++++
 1 file changed, 8 insertions(+)

Comments

Thomas Petazzoni Feb. 20, 2017, 12:59 p.m. UTC | #1
Hello,

Adding in Cc all the maintainers of the Kirkwood platforms.

On Sat, 18 Feb 2017 00:32:51 +0000, Ben Hutchings wrote:

> +&pmx_sata0 {
> +	marvell,pins = "mpp15";
> +};
> +
> +&pmx_sata1 {
> +	marvell,pins = "mpp16";
> +};

This is not only muxing mpp15 as sata0 and mpp16 as sata1, but also
removes the muxing of sata0/sata1 pins described in kirkwood-6282.dtsi:

                        pmx_sata0: pmx-sata0 {
                                marvell,pins = "mpp5", "mpp21", "mpp23";
                                marvell,function = "sata0";
                        };
                        pmx_sata1: pmx-sata1 {
                                marvell,pins = "mpp4", "mpp20", "mpp22";
                                marvell,function = "sata1";
                        };

So it means that MPP 4, 5, 20, 21, 22 and 23 will no longer be muxed as
sata0/sata1. Is this really what you want?

Best regards,

Thomas
Ben Hutchings Feb. 20, 2017, 4:40 p.m. UTC | #2
On Mon, 2017-02-20 at 13:59 +0100, Thomas Petazzoni wrote:
> Hello,
> 
> Adding in Cc all the maintainers of the Kirkwood platforms.
> 
> On Sat, 18 Feb 2017 00:32:51 +0000, Ben Hutchings wrote:
> 
> > +&pmx_sata0 {
> > +	marvell,pins = "mpp15";
> > +};
> > +
> > +&pmx_sata1 {
> > +	marvell,pins = "mpp16";
> > +};
> 
> This is not only muxing mpp15 as sata0 and mpp16 as sata1, but also
> removes the muxing of sata0/sata1 pins described in kirkwood-6282.dtsi:
> 
>                         pmx_sata0: pmx-sata0 {
>                                 marvell,pins = "mpp5", "mpp21", "mpp23";
>                                 marvell,function = "sata0";
>                         };
>                         pmx_sata1: pmx-sata1 {
>                                 marvell,pins = "mpp4", "mpp20", "mpp22";
>                                 marvell,function = "sata1";
>                         };
> 
> So it means that MPP 4, 5, 20, 21, 22 and 23 will no longer be muxed as
> sata0/sata1. Is this really what you want?

That is precisely what I intended.  20-23 are used by the second
Ethernet port.  The old board code doesn't assign 4 or 5 at all.

Ben.
Thomas Petazzoni Feb. 20, 2017, 4:50 p.m. UTC | #3
Hello,

On Mon, 20 Feb 2017 16:40:25 +0000, Ben Hutchings wrote:

> That is precisely what I intended.  20-23 are used by the second
> Ethernet port.  The old board code doesn't assign 4 or 5 at all.

Then I believe it would be more explicit to have separate pin muxing
configurations for SATA on this board.

Thomas
diff mbox

Patch

diff --git a/arch/arm/boot/dts/kirkwood-ts419.dtsi b/arch/arm/boot/dts/kirkwood-ts419.dtsi
index 02bd53762705..532506cb0f4a 100644
--- a/arch/arm/boot/dts/kirkwood-ts419.dtsi
+++ b/arch/arm/boot/dts/kirkwood-ts419.dtsi
@@ -73,3 +73,11 @@ 
 		phy-handle = <&ethphy1>;
 	};
 };
+
+&pmx_sata0 {
+	marvell,pins = "mpp15";
+};
+
+&pmx_sata1 {
+	marvell,pins = "mpp16";
+};