* [PATCH] arm: dts: imx7d-sdb: Fix enet by setting soft spi mode to 3 for extended io
@ 2021-02-19 7:23 Christian Bräuner Sørensen
2021-02-19 13:44 ` Fabio Estevam
0 siblings, 1 reply; 2+ messages in thread
From: Christian Bräuner Sørensen @ 2021-02-19 7:23 UTC (permalink / raw)
To: u-boot
This patch sets SPI MODE 3 for the fairchild 74HC595 device that is used
to reset the ethernet device, which fixes ethernet.
Reasoning:
The imx7dsabresd board uses SPI for setting the extended IO.
One of the purposes of this extended IO, is having the ability to set
ENET_RST i.e. reset the ethernet PHY. Without proper reset of the PHY,
ethernet does not work.
commit 0e146993bb3d ("spi: add support for all spi modes with soft spi")
broke network support for boards using imx7d-sdb, since it actually
corrected default SPI mode setting for the software emulated soft_spi to 0,
i.e. CPHA to 0 and CPOL to 0.
Previously, the driver defaulted to CPHA 1 and CPOL 1 (i.e. spi mode 3).
After the default SPI mode is now 0 (which is the correct default value)
we now need to actively set CPHA and CPOL to 1 for the specific devices
that actually needs this.
Signed-off-by: Christian Br?uner S?rensen <yocto@bsorensen.net>
---
arch/arm/dts/imx7d-sdb.dts | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm/dts/imx7d-sdb.dts b/arch/arm/dts/imx7d-sdb.dts
index 8191ac7c33..6ed21ce8b0 100644
--- a/arch/arm/dts/imx7d-sdb.dts
+++ b/arch/arm/dts/imx7d-sdb.dts
@@ -58,6 +58,8 @@
reg = <0>;
registers-number = <1>;
spi-max-frequency = <100000>;
+ spi-cpha;
+ spi-cpol;
};
};
--
2.25.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [PATCH] arm: dts: imx7d-sdb: Fix enet by setting soft spi mode to 3 for extended io
2021-02-19 7:23 [PATCH] arm: dts: imx7d-sdb: Fix enet by setting soft spi mode to 3 for extended io Christian Bräuner Sørensen
@ 2021-02-19 13:44 ` Fabio Estevam
0 siblings, 0 replies; 2+ messages in thread
From: Fabio Estevam @ 2021-02-19 13:44 UTC (permalink / raw)
To: u-boot
Hi Christian,
On Fri, Feb 19, 2021 at 10:32 AM Christian Br?uner S?rensen
<yocto@bsorensen.net> wrote:
>
> This patch sets SPI MODE 3 for the fairchild 74HC595 device that is used
> to reset the ethernet device, which fixes ethernet.
>
> Reasoning:
> The imx7dsabresd board uses SPI for setting the extended IO.
> One of the purposes of this extended IO, is having the ability to set
> ENET_RST i.e. reset the ethernet PHY. Without proper reset of the PHY,
> ethernet does not work.
>
> commit 0e146993bb3d ("spi: add support for all spi modes with soft spi")
> broke network support for boards using imx7d-sdb, since it actually
Shouldn't this commit be reverted then?
I suppose it introduced regressions on other boards too.
> corrected default SPI mode setting for the software emulated soft_spi to 0,
> i.e. CPHA to 0 and CPOL to 0.
> Previously, the driver defaulted to CPHA 1 and CPOL 1 (i.e. spi mode 3).
> After the default SPI mode is now 0 (which is the correct default value)
> we now need to actively set CPHA and CPOL to 1 for the specific devices
> that actually needs this.
>
> Signed-off-by: Christian Br?uner S?rensen <yocto@bsorensen.net>
> ---
>
> arch/arm/dts/imx7d-sdb.dts | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/arch/arm/dts/imx7d-sdb.dts b/arch/arm/dts/imx7d-sdb.dts
> index 8191ac7c33..6ed21ce8b0 100644
> --- a/arch/arm/dts/imx7d-sdb.dts
> +++ b/arch/arm/dts/imx7d-sdb.dts
> @@ -58,6 +58,8 @@
> reg = <0>;
> registers-number = <1>;
> spi-max-frequency = <100000>;
> + spi-cpha
> + spi-cpol;
It is not good that we deviate from the devicetree used in Linux.
Johannes/Jagan,
Any suggestions as to how to properly fix the regression?
Thanks
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-02-19 13:44 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-19 7:23 [PATCH] arm: dts: imx7d-sdb: Fix enet by setting soft spi mode to 3 for extended io Christian Bräuner Sørensen
2021-02-19 13:44 ` Fabio Estevam
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.