Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH/RFC repost] arm64: dts: renesas: ebisu, draak: Limit EtherAVB to 100Mbps
@ 2019-07-17 12:57 Simon Horman
  2019-07-17 13:24 ` Kieran Bingham
  2019-07-17 13:26 ` Wolfram Sang
  0 siblings, 2 replies; 9+ messages in thread
From: Simon Horman @ 2019-07-17 12:57 UTC (permalink / raw)
  To: Geert Uytterhoeven, linux-renesas-soc
  Cc: Andrew Lunn, Simon Horman, Magnus Damm, linux-arm-kernel, Wolfram Sang

* According to the R-Car Gen3 Hardware Manual Errata for Rev 1.00 of
  August 24, 2018, the TX clock internal delay mode isn't supported
  on R-Car E3 (r8a77990) and D3 (r8a77995).

* TX clock internal delay mode is required for reliable 1Gbps communication
  using the KSZ9031RNX phy present on the Ebisu and Draak boards.

Thus, the E3 based Ebisu and D3 based Draak boards reliably use 1Gbps and
the speed should be limited to 100Mbps.

Based on work by Kazuya Mizuguchi.

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>

---

This is a repost of this change.

In earlier review Andrew Lunn suggested that we may be able to take a
different approach to this problem by using delays provided by the
KSZ9031RNX PHY. In particular MMD address 2h, Register 8h -
RGMII Clock Pad Skew.

I have consulted with Renesas regarding this suggestion, however,
unfortunately it appears that the delays provided by this solution
would be insufficient to allow for reliable 1Gbps communication.

At this point I believe the safest option is to apply this patch.
---
 arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts | 1 +
 arch/arm64/boot/dts/renesas/r8a77995-draak.dts | 1 +
 2 files changed, 2 insertions(+)

diff --git a/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts b/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts
index 83fc13ac3fa1..3d3d6d438a05 100644
--- a/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts
+++ b/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts
@@ -271,6 +271,7 @@
 		interrupt-parent = <&gpio2>;
 		interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
 		reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
+		max-speed = <100>;
 	};
 };
 
diff --git a/arch/arm64/boot/dts/renesas/r8a77995-draak.dts b/arch/arm64/boot/dts/renesas/r8a77995-draak.dts
index 0711170b26b1..eb153323ed13 100644
--- a/arch/arm64/boot/dts/renesas/r8a77995-draak.dts
+++ b/arch/arm64/boot/dts/renesas/r8a77995-draak.dts
@@ -175,6 +175,7 @@
 		reg = <0>;
 		interrupt-parent = <&gpio5>;
 		interrupts = <19 IRQ_TYPE_LEVEL_LOW>;
+		max-speed = <100>;
 	};
 };
 
-- 
2.11.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH/RFC repost] arm64: dts: renesas: ebisu, draak: Limit EtherAVB to 100Mbps
  2019-07-17 12:57 [PATCH/RFC repost] arm64: dts: renesas: ebisu, draak: Limit EtherAVB to 100Mbps Simon Horman
@ 2019-07-17 13:24 ` Kieran Bingham
  2019-07-24 10:52   ` Simon Horman
  2019-07-17 13:26 ` Wolfram Sang
  1 sibling, 1 reply; 9+ messages in thread
From: Kieran Bingham @ 2019-07-17 13:24 UTC (permalink / raw)
  To: Simon Horman, Geert Uytterhoeven, linux-renesas-soc
  Cc: Andrew Lunn, Magnus Damm, linux-arm-kernel, Wolfram Sang

Hi Simon,

On 17/07/2019 13:57, Simon Horman wrote:
> * According to the R-Car Gen3 Hardware Manual Errata for Rev 1.00 of
>   August 24, 2018, the TX clock internal delay mode isn't supported
>   on R-Car E3 (r8a77990) and D3 (r8a77995).
> 
> * TX clock internal delay mode is required for reliable 1Gbps communication
>   using the KSZ9031RNX phy present on the Ebisu and Draak boards.
> 
> Thus, the E3 based Ebisu and D3 based Draak boards reliably use 1Gbps and
> the speed should be limited to 100Mbps.

I believe you might mean 'can not' reliable use 1Gbps here :-)

Regards

Kieran


> 
> Based on work by Kazuya Mizuguchi.
> 
> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
> 
> ---
> 
> This is a repost of this change.
> 
> In earlier review Andrew Lunn suggested that we may be able to take a
> different approach to this problem by using delays provided by the
> KSZ9031RNX PHY. In particular MMD address 2h, Register 8h -
> RGMII Clock Pad Skew.
> 
> I have consulted with Renesas regarding this suggestion, however,
> unfortunately it appears that the delays provided by this solution
> would be insufficient to allow for reliable 1Gbps communication.
> 
> At this point I believe the safest option is to apply this patch.
> ---
>  arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts | 1 +
>  arch/arm64/boot/dts/renesas/r8a77995-draak.dts | 1 +
>  2 files changed, 2 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts b/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts
> index 83fc13ac3fa1..3d3d6d438a05 100644
> --- a/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts
> +++ b/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts
> @@ -271,6 +271,7 @@
>  		interrupt-parent = <&gpio2>;
>  		interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
>  		reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
> +		max-speed = <100>;
>  	};
>  };
>  
> diff --git a/arch/arm64/boot/dts/renesas/r8a77995-draak.dts b/arch/arm64/boot/dts/renesas/r8a77995-draak.dts
> index 0711170b26b1..eb153323ed13 100644
> --- a/arch/arm64/boot/dts/renesas/r8a77995-draak.dts
> +++ b/arch/arm64/boot/dts/renesas/r8a77995-draak.dts
> @@ -175,6 +175,7 @@
>  		reg = <0>;
>  		interrupt-parent = <&gpio5>;
>  		interrupts = <19 IRQ_TYPE_LEVEL_LOW>;
> +		max-speed = <100>;
>  	};
>  };
>  
> 


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH/RFC repost] arm64: dts: renesas: ebisu, draak: Limit EtherAVB to 100Mbps
  2019-07-17 12:57 [PATCH/RFC repost] arm64: dts: renesas: ebisu, draak: Limit EtherAVB to 100Mbps Simon Horman
  2019-07-17 13:24 ` Kieran Bingham
@ 2019-07-17 13:26 ` Wolfram Sang
  2019-07-24 10:52   ` Simon Horman
  1 sibling, 1 reply; 9+ messages in thread
From: Wolfram Sang @ 2019-07-17 13:26 UTC (permalink / raw)
  To: Simon Horman
  Cc: linux-renesas-soc, Andrew Lunn, Magnus Damm, linux-arm-kernel,
	Geert Uytterhoeven

[-- Attachment #1.1: Type: text/plain, Size: 700 bytes --]

On Wed, Jul 17, 2019 at 02:57:39PM +0200, Simon Horman wrote:
> * According to the R-Car Gen3 Hardware Manual Errata for Rev 1.00 of
>   August 24, 2018, the TX clock internal delay mode isn't supported
>   on R-Car E3 (r8a77990) and D3 (r8a77995).
> 
> * TX clock internal delay mode is required for reliable 1Gbps communication
>   using the KSZ9031RNX phy present on the Ebisu and Draak boards.
> 
> Thus, the E3 based Ebisu and D3 based Draak boards reliably use 1Gbps and
> the speed should be limited to 100Mbps.
> 
> Based on work by Kazuya Mizuguchi.
> 
> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>

What about adding a short comment explaining the situation?


[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH/RFC repost] arm64: dts: renesas: ebisu, draak: Limit EtherAVB to 100Mbps
  2019-07-17 13:26 ` Wolfram Sang
@ 2019-07-24 10:52   ` Simon Horman
  2019-07-24 21:04     ` Wolfram Sang
  0 siblings, 1 reply; 9+ messages in thread
From: Simon Horman @ 2019-07-24 10:52 UTC (permalink / raw)
  To: Wolfram Sang
  Cc: linux-renesas-soc, Andrew Lunn, Magnus Damm, linux-arm-kernel,
	Geert Uytterhoeven

On Wed, Jul 17, 2019 at 03:26:07PM +0200, Wolfram Sang wrote:
> On Wed, Jul 17, 2019 at 02:57:39PM +0200, Simon Horman wrote:
> > * According to the R-Car Gen3 Hardware Manual Errata for Rev 1.00 of
> >   August 24, 2018, the TX clock internal delay mode isn't supported
> >   on R-Car E3 (r8a77990) and D3 (r8a77995).
> > 
> > * TX clock internal delay mode is required for reliable 1Gbps communication
> >   using the KSZ9031RNX phy present on the Ebisu and Draak boards.
> > 
> > Thus, the E3 based Ebisu and D3 based Draak boards reliably use 1Gbps and
> > the speed should be limited to 100Mbps.
> > 
> > Based on work by Kazuya Mizuguchi.
> > 
> > Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
> 
> What about adding a short comment explaining the situation?

Do you mean in the DT itself?


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH/RFC repost] arm64: dts: renesas: ebisu, draak: Limit EtherAVB to 100Mbps
  2019-07-17 13:24 ` Kieran Bingham
@ 2019-07-24 10:52   ` Simon Horman
  0 siblings, 0 replies; 9+ messages in thread
From: Simon Horman @ 2019-07-24 10:52 UTC (permalink / raw)
  To: Kieran Bingham
  Cc: Andrew Lunn, Geert Uytterhoeven, Wolfram Sang, Magnus Damm,
	linux-renesas-soc, linux-arm-kernel

On Wed, Jul 17, 2019 at 02:24:51PM +0100, Kieran Bingham wrote:
> Hi Simon,
> 
> On 17/07/2019 13:57, Simon Horman wrote:
> > * According to the R-Car Gen3 Hardware Manual Errata for Rev 1.00 of
> >   August 24, 2018, the TX clock internal delay mode isn't supported
> >   on R-Car E3 (r8a77990) and D3 (r8a77995).
> > 
> > * TX clock internal delay mode is required for reliable 1Gbps communication
> >   using the KSZ9031RNX phy present on the Ebisu and Draak boards.
> > 
> > Thus, the E3 based Ebisu and D3 based Draak boards reliably use 1Gbps and
> > the speed should be limited to 100Mbps.
> 
> I believe you might mean 'can not' reliable use 1Gbps here :-)

Yes, indeed.
Thanks for noticing.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH/RFC repost] arm64: dts: renesas: ebisu, draak: Limit EtherAVB to 100Mbps
  2019-07-24 10:52   ` Simon Horman
@ 2019-07-24 21:04     ` Wolfram Sang
  2019-07-25  5:57       ` Simon Horman
  0 siblings, 1 reply; 9+ messages in thread
From: Wolfram Sang @ 2019-07-24 21:04 UTC (permalink / raw)
  To: Simon Horman
  Cc: linux-renesas-soc, Andrew Lunn, Magnus Damm, linux-arm-kernel,
	Geert Uytterhoeven

[-- Attachment #1.1: Type: text/plain, Size: 228 bytes --]


> > What about adding a short comment explaining the situation?
> 
> Do you mean in the DT itself?

Yes, so we don't forget why it is there. Or do you think this is not
needed? I'd think it is useful but won't insist.


[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH/RFC repost] arm64: dts: renesas: ebisu, draak: Limit EtherAVB to 100Mbps
  2019-07-24 21:04     ` Wolfram Sang
@ 2019-07-25  5:57       ` Simon Horman
  2019-07-25  7:35         ` Wolfram Sang
  0 siblings, 1 reply; 9+ messages in thread
From: Simon Horman @ 2019-07-25  5:57 UTC (permalink / raw)
  To: Wolfram Sang
  Cc: linux-renesas-soc, Andrew Lunn, Magnus Damm, linux-arm-kernel,
	Geert Uytterhoeven

On Wed, Jul 24, 2019 at 11:04:41PM +0200, Wolfram Sang wrote:
> 
> > > What about adding a short comment explaining the situation?
> > 
> > Do you mean in the DT itself?
> 
> Yes, so we don't forget why it is there. Or do you think this is not
> needed? I'd think it is useful but won't insist.

Sure, how about something like this:

                /* TX clock internal delay mode is required for reliable
                 * 1Gbps communication using the KSZ9031RNX phy present on
                 * the Ebisu board, however, TX clock internal delay mode
                 * isn't supported on r8a77990.  Thus, limit speed to
                 * 100Mbps for reliable communication.
                 */
		max-speed = <100>;

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH/RFC repost] arm64: dts: renesas: ebisu, draak: Limit EtherAVB to 100Mbps
  2019-07-25  5:57       ` Simon Horman
@ 2019-07-25  7:35         ` Wolfram Sang
  2019-07-25  9:51           ` Simon Horman
  0 siblings, 1 reply; 9+ messages in thread
From: Wolfram Sang @ 2019-07-25  7:35 UTC (permalink / raw)
  To: Simon Horman
  Cc: linux-renesas-soc, Andrew Lunn, Magnus Damm, linux-arm-kernel,
	Geert Uytterhoeven

[-- Attachment #1.1: Type: text/plain, Size: 557 bytes --]


> Sure, how about something like this:
> 
>                 /* TX clock internal delay mode is required for reliable
>                  * 1Gbps communication using the KSZ9031RNX phy present on
>                  * the Ebisu board, however, TX clock internal delay mode
>                  * isn't supported on r8a77990.  Thus, limit speed to
>                  * 100Mbps for reliable communication.
>                  */
> 		max-speed = <100>;

Yes, I like it. If DTs have kernel coding style, there should be a blank
'/*' at the beginning.


[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH/RFC repost] arm64: dts: renesas: ebisu, draak: Limit EtherAVB to 100Mbps
  2019-07-25  7:35         ` Wolfram Sang
@ 2019-07-25  9:51           ` Simon Horman
  0 siblings, 0 replies; 9+ messages in thread
From: Simon Horman @ 2019-07-25  9:51 UTC (permalink / raw)
  To: Wolfram Sang, Simon Horman
  Cc: linux-renesas-soc, Andrew Lunn, Magnus Damm, linux-arm-kernel,
	Geert Uytterhoeven



On 25 July 2019 09:35:30 CEST, Wolfram Sang <wsa@the-dreams.de> wrote:
>
>> Sure, how about something like this:
>> 
>>                 /* TX clock internal delay mode is required for
>reliable
>>                  * 1Gbps communication using the KSZ9031RNX phy
>present on
>>                  * the Ebisu board, however, TX clock internal delay
>mode
>>                  * isn't supported on r8a77990.  Thus, limit speed to
>>                  * 100Mbps for reliable communication.
>>                  */
>> 		max-speed = <100>;
>
>Yes, I like it. If DTs have kernel coding style, there should be a
>blank
>'/*' at the beginning.

Thanks, I'll fix that.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

end of thread, back to index

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-17 12:57 [PATCH/RFC repost] arm64: dts: renesas: ebisu, draak: Limit EtherAVB to 100Mbps Simon Horman
2019-07-17 13:24 ` Kieran Bingham
2019-07-24 10:52   ` Simon Horman
2019-07-17 13:26 ` Wolfram Sang
2019-07-24 10:52   ` Simon Horman
2019-07-24 21:04     ` Wolfram Sang
2019-07-25  5:57       ` Simon Horman
2019-07-25  7:35         ` Wolfram Sang
2019-07-25  9:51           ` Simon Horman

Linux-ARM-Kernel Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-arm-kernel/0 linux-arm-kernel/git/0.git
	git clone --mirror https://lore.kernel.org/linux-arm-kernel/1 linux-arm-kernel/git/1.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-arm-kernel linux-arm-kernel/ https://lore.kernel.org/linux-arm-kernel \
		linux-arm-kernel@lists.infradead.org infradead-linux-arm-kernel@archiver.kernel.org
	public-inbox-index linux-arm-kernel


Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.infradead.lists.linux-arm-kernel


AGPL code for this site: git clone https://public-inbox.org/ public-inbox