All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 1/1] sunxi: Fix A20-OLinuXino-MICRO dts for LAN8710
@ 2017-09-27  7:19 Stefan Mavrodiev
  2017-09-27 13:19 ` Maxime Ripard
  0 siblings, 1 reply; 4+ messages in thread
From: Stefan Mavrodiev @ 2017-09-27  7:19 UTC (permalink / raw)
  To: u-boot

From revision J the board uses new phy chip LAN8710. Compared
with RTL8201, RA17 pin is TXERR. It has pullup which causes phy
not to work. To fix this PA17 is muxed with GMAC function. This
makes the pin output-low.

Signed-off-by: Stefan Mavrodiev <stefan@olimex.com>
---
 arch/arm/dts/sun7i-a20-olinuxino-micro.dts | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/arch/arm/dts/sun7i-a20-olinuxino-micro.dts b/arch/arm/dts/sun7i-a20-olinuxino-micro.dts
index 7e3006f..0bc5ea9 100644
--- a/arch/arm/dts/sun7i-a20-olinuxino-micro.dts
+++ b/arch/arm/dts/sun7i-a20-olinuxino-micro.dts
@@ -95,7 +95,7 @@
 
 &gmac {
 	pinctrl-names = "default";
-	pinctrl-0 = <&gmac_pins_mii_a>;
+	pinctrl-0 = <&gmac_pins_mii_a>,<&gmac_txerr>;
 	phy = <&phy1>;
 	phy-mode = "mii";
 	status = "okay";
@@ -226,6 +226,13 @@
 };
 
 &pio {
+	gmac_txerr: gmac_txerr at 0 {
+		allwinner,pins = "PA17";
+		allwinner,function = "gpio_out";
+		allwinner,drive = <SUN4I_PINCTRL_10_MA>;
+		allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
+	};
+
 	mmc3_cd_pin_olinuxinom: mmc3_cd_pin at 0 {
 		allwinner,pins = "PH11";
 		allwinner,function = "gpio_in";
-- 
2.7.4

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

* [U-Boot] [PATCH 1/1] sunxi: Fix A20-OLinuXino-MICRO dts for LAN8710
  2017-09-27  7:19 [U-Boot] [PATCH 1/1] sunxi: Fix A20-OLinuXino-MICRO dts for LAN8710 Stefan Mavrodiev
@ 2017-09-27 13:19 ` Maxime Ripard
  2017-09-27 13:58   ` Stefan Mavrodiev
  0 siblings, 1 reply; 4+ messages in thread
From: Maxime Ripard @ 2017-09-27 13:19 UTC (permalink / raw)
  To: u-boot

Hi Stefan,

You should also put Jagan Teki as recipients.

On Wed, Sep 27, 2017 at 07:19:10AM +0000, Stefan Mavrodiev wrote:
> From revision J the board uses new phy chip LAN8710. Compared
> with RTL8201, RA17 pin is TXERR. It has pullup which causes phy
> not to work. To fix this PA17 is muxed with GMAC function. This
> makes the pin output-low.
> 
> Signed-off-by: Stefan Mavrodiev <stefan@olimex.com>
> ---
>  arch/arm/dts/sun7i-a20-olinuxino-micro.dts | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/dts/sun7i-a20-olinuxino-micro.dts b/arch/arm/dts/sun7i-a20-olinuxino-micro.dts
> index 7e3006f..0bc5ea9 100644
> --- a/arch/arm/dts/sun7i-a20-olinuxino-micro.dts
> +++ b/arch/arm/dts/sun7i-a20-olinuxino-micro.dts
> @@ -95,7 +95,7 @@
>  
>  &gmac {
>  	pinctrl-names = "default";
> -	pinctrl-0 = <&gmac_pins_mii_a>;
> +	pinctrl-0 = <&gmac_pins_mii_a>,<&gmac_txerr>;
>  	phy = <&phy1>;
>  	phy-mode = "mii";
>  	status = "okay";
> @@ -226,6 +226,13 @@
>  };
>  
>  &pio {
> +	gmac_txerr: gmac_txerr at 0 {
> +		allwinner,pins = "PA17";
> +		allwinner,function = "gpio_out";
> +		allwinner,drive = <SUN4I_PINCTRL_10_MA>;
> +		allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
> +	};
> +

There's two issues with that patch:
  - In general we try to sync the DT with Linux when we can, and the
    patch that ended up in Linux wasn't this one.
  - And we don't have any pinctrl support in U-Boot, that patch will
    basically do nothing

The code that changes the muxing is here:
http://git.denx.de/?p=u-boot.git;a=blob;f=board/sunxi/gmac.c#l34

Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170927/d2dccb30/attachment.sig>

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

* [U-Boot] [PATCH 1/1] sunxi: Fix A20-OLinuXino-MICRO dts for LAN8710
  2017-09-27 13:19 ` Maxime Ripard
@ 2017-09-27 13:58   ` Stefan Mavrodiev
  2017-09-28 14:34     ` Maxime Ripard
  0 siblings, 1 reply; 4+ messages in thread
From: Stefan Mavrodiev @ 2017-09-27 13:58 UTC (permalink / raw)
  To: u-boot

On 09/27/2017 04:19 PM, Maxime Ripard wrote:
> Hi Stefan,
>
> You should also put Jagan Teki as recipients.
>
> On Wed, Sep 27, 2017 at 07:19:10AM +0000, Stefan Mavrodiev wrote:
>>  From revision J the board uses new phy chip LAN8710. Compared
>> with RTL8201, RA17 pin is TXERR. It has pullup which causes phy
>> not to work. To fix this PA17 is muxed with GMAC function. This
>> makes the pin output-low.
>>
>> Signed-off-by: Stefan Mavrodiev <stefan@olimex.com>
>> ---
>>   arch/arm/dts/sun7i-a20-olinuxino-micro.dts | 9 ++++++++-
>>   1 file changed, 8 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/dts/sun7i-a20-olinuxino-micro.dts b/arch/arm/dts/sun7i-a20-olinuxino-micro.dts
>> index 7e3006f..0bc5ea9 100644
>> --- a/arch/arm/dts/sun7i-a20-olinuxino-micro.dts
>> +++ b/arch/arm/dts/sun7i-a20-olinuxino-micro.dts
>> @@ -95,7 +95,7 @@
>>   
>>   &gmac {
>>   	pinctrl-names = "default";
>> -	pinctrl-0 = <&gmac_pins_mii_a>;
>> +	pinctrl-0 = <&gmac_pins_mii_a>,<&gmac_txerr>;
>>   	phy = <&phy1>;
>>   	phy-mode = "mii";
>>   	status = "okay";
>> @@ -226,6 +226,13 @@
>>   };
>>   
>>   &pio {
>> +	gmac_txerr: gmac_txerr at 0 {
>> +		allwinner,pins = "PA17";
>> +		allwinner,function = "gpio_out";
>> +		allwinner,drive = <SUN4I_PINCTRL_10_MA>;
>> +		allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
>> +	};
>> +
> There's two issues with that patch:
>    - In general we try to sync the DT with Linux when we can, and the
>      patch that ended up in Linux wasn't this one.
I'm little confused. If I sync the DT with the one from mainline linux,
doesn't this counts as dangerous? I mean it will be the only one that is 
synced.
This could corrupt building if sun7i-a20.dtsi is not synced for example.
>    - And we don't have any pinctrl support in U-Boot, that patch will
>      basically do nothing
>
> The code that changes the muxing is here:
> http://git.denx.de/?p=u-boot.git;a=blob;f=board/sunxi/gmac.c#l34
Again, since this is common for all boards, doesn't it counts as dangerous?
This is feature only on our board.

> Maxime
>

Best regards,
Stefan Mavrodiev

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

* [U-Boot] [PATCH 1/1] sunxi: Fix A20-OLinuXino-MICRO dts for LAN8710
  2017-09-27 13:58   ` Stefan Mavrodiev
@ 2017-09-28 14:34     ` Maxime Ripard
  0 siblings, 0 replies; 4+ messages in thread
From: Maxime Ripard @ 2017-09-28 14:34 UTC (permalink / raw)
  To: u-boot

Hi,

On Wed, Sep 27, 2017 at 01:58:45PM +0000, Stefan Mavrodiev wrote:
> On 09/27/2017 04:19 PM, Maxime Ripard wrote:
> > Hi Stefan,
> > 
> > You should also put Jagan Teki as recipients.
> > 
> > On Wed, Sep 27, 2017 at 07:19:10AM +0000, Stefan Mavrodiev wrote:
> > >  From revision J the board uses new phy chip LAN8710. Compared
> > > with RTL8201, RA17 pin is TXERR. It has pullup which causes phy
> > > not to work. To fix this PA17 is muxed with GMAC function. This
> > > makes the pin output-low.
> > > 
> > > Signed-off-by: Stefan Mavrodiev <stefan@olimex.com>
> > > ---
> > >   arch/arm/dts/sun7i-a20-olinuxino-micro.dts | 9 ++++++++-
> > >   1 file changed, 8 insertions(+), 1 deletion(-)
> > > 
> > > diff --git a/arch/arm/dts/sun7i-a20-olinuxino-micro.dts b/arch/arm/dts/sun7i-a20-olinuxino-micro.dts
> > > index 7e3006f..0bc5ea9 100644
> > > --- a/arch/arm/dts/sun7i-a20-olinuxino-micro.dts
> > > +++ b/arch/arm/dts/sun7i-a20-olinuxino-micro.dts
> > > @@ -95,7 +95,7 @@
> > >   &gmac {
> > >   	pinctrl-names = "default";
> > > -	pinctrl-0 = <&gmac_pins_mii_a>;
> > > +	pinctrl-0 = <&gmac_pins_mii_a>,<&gmac_txerr>;
> > >   	phy = <&phy1>;
> > >   	phy-mode = "mii";
> > >   	status = "okay";
> > > @@ -226,6 +226,13 @@
> > >   };
> > >   &pio {
> > > +	gmac_txerr: gmac_txerr at 0 {
> > > +		allwinner,pins = "PA17";
> > > +		allwinner,function = "gpio_out";
> > > +		allwinner,drive = <SUN4I_PINCTRL_10_MA>;
> > > +		allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
> > > +	};
> > > +
> > There's two issues with that patch:
> >    - In general we try to sync the DT with Linux when we can, and the
> >      patch that ended up in Linux wasn't this one.
>
> I'm little confused. If I sync the DT with the one from mainline linux,
> doesn't this counts as dangerous? I mean it will be the only one that is
> synced.
> This could corrupt building if sun7i-a20.dtsi is not synced for example.

I'm not sure what's dangerous about this. If the device tree is
working in Linux, it should be working in U-Boot, right?

> >    - And we don't have any pinctrl support in U-Boot, that patch will
> >      basically do nothing
> > 
> > The code that changes the muxing is here:
> > http://git.denx.de/?p=u-boot.git;a=blob;f=board/sunxi/gmac.c#l34
>
> Again, since this is common for all boards, doesn't it counts as
> dangerous?  This is feature only on our board.

We can probably solve this through a Kconfig option.

But then, if it's working in u-boot right now, I'm not really sure
what it's trying to fix?

Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170928/b5ad1538/attachment.sig>

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

end of thread, other threads:[~2017-09-28 14:34 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-27  7:19 [U-Boot] [PATCH 1/1] sunxi: Fix A20-OLinuXino-MICRO dts for LAN8710 Stefan Mavrodiev
2017-09-27 13:19 ` Maxime Ripard
2017-09-27 13:58   ` Stefan Mavrodiev
2017-09-28 14:34     ` Maxime Ripard

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.