[PATCH] arm: dts: imx7d-sdb: Fix enet by setting soft spi mode to 3 for extended io

Christian Bräuner Sørensen yocto at bsorensen.net
Fri Feb 19 08:23:58 CET 2021


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 at 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



More information about the U-Boot mailing list