[PATCH v1] ARM: protonic: disable on-die termination to fix PHY bootstrapping

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



If on-die termination is enabled, the RXC pin of iMX6 will be pulled
high. Since we already have an 10K pull-down on board, the RXC level on
PHY reset will be ~800mV, which is mostly interpreted as 1. On some
reboots we get 0 instead and kernel can't detect the PHY properly.

Since the default 0x020e07ac value is 0, it is sufficient to remove this
entry from the affected imxcfg files.

Since we get stable 0 on pin PHYADDR[2], the PHY address is changed from
4 to 0.

Fixes: 00adc1e33ef8 ("ARM: add imx6 based Protonic boads")
Signed-off-by: Oleksij Rempel <o.rempel@xxxxxxxxxxxxxx>
---
 arch/arm/boards/protonic-imx6/flash-header-prti6q.imxcfg  | 1 -
 arch/arm/boards/protonic-imx6/flash-header-vicut1q.imxcfg | 1 -
 arch/arm/boards/protonic-imx6/flash-header-vicutp.imxcfg  | 1 -
 arch/arm/dts/imx6q-prti6q.dts                             | 2 +-
 arch/arm/dts/imx6q-vicut1.dts                             | 2 +-
 5 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/arch/arm/boards/protonic-imx6/flash-header-prti6q.imxcfg b/arch/arm/boards/protonic-imx6/flash-header-prti6q.imxcfg
index 68b7909f82..029edc248a 100644
--- a/arch/arm/boards/protonic-imx6/flash-header-prti6q.imxcfg
+++ b/arch/arm/boards/protonic-imx6/flash-header-prti6q.imxcfg
@@ -120,4 +120,3 @@ wm 32 0x020e0614 0x000130b0
 
 /* RGMII config */
 wm 32 0x020e0790 0x00080000 /* 1V2 DDR IO */
-wm 32 0x020e07ac 0x00000200 /* 60 Ohm ODT */
diff --git a/arch/arm/boards/protonic-imx6/flash-header-vicut1q.imxcfg b/arch/arm/boards/protonic-imx6/flash-header-vicut1q.imxcfg
index a73a2c6fd0..f7e75b47bf 100644
--- a/arch/arm/boards/protonic-imx6/flash-header-vicut1q.imxcfg
+++ b/arch/arm/boards/protonic-imx6/flash-header-vicut1q.imxcfg
@@ -124,4 +124,3 @@ wm 32 0x020e0614 0x000130b0
 
 /* RGMII config */
 wm 32 0x020e0790 0x00080000 /* 1V2 DDR IO */
-wm 32 0x020e07ac 0x00000200 /* 60 Ohm ODT */
diff --git a/arch/arm/boards/protonic-imx6/flash-header-vicutp.imxcfg b/arch/arm/boards/protonic-imx6/flash-header-vicutp.imxcfg
index 13887ade0b..e218279239 100644
--- a/arch/arm/boards/protonic-imx6/flash-header-vicutp.imxcfg
+++ b/arch/arm/boards/protonic-imx6/flash-header-vicutp.imxcfg
@@ -171,4 +171,3 @@ wm 32 0x020e0614 0x000130b0
 
 /* RGMII config */
 wm 32 0x020e0790 0x00080000 /* 1V2 DDR IO */
-wm 32 0x020e07ac 0x00000200 /* 60 Ohm ODT */
diff --git a/arch/arm/dts/imx6q-prti6q.dts b/arch/arm/dts/imx6q-prti6q.dts
index acdb7b22d9..21e24222a0 100644
--- a/arch/arm/dts/imx6q-prti6q.dts
+++ b/arch/arm/dts/imx6q-prti6q.dts
@@ -204,7 +204,7 @@
 
 		/* Microchip KSZ9031RNX PHY */
 		rgmii_phy: ethernet-phy@4 {
-			reg = <4>;
+			reg = <0>;
 			interrupts-extended = <&gpio1 28 IRQ_TYPE_LEVEL_LOW>;
 			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
 			reset-assert-us = <10000>;
diff --git a/arch/arm/dts/imx6q-vicut1.dts b/arch/arm/dts/imx6q-vicut1.dts
index 9747b3c62e..9d1d6fa550 100644
--- a/arch/arm/dts/imx6q-vicut1.dts
+++ b/arch/arm/dts/imx6q-vicut1.dts
@@ -29,7 +29,7 @@
 
 		/* Microchip KSZ9031RNX PHY */
 		rgmii_phy: ethernet-phy@4 {
-			reg = <4>;
+			reg = <0>;
 			interrupts-extended = <&gpio1 28 IRQ_TYPE_LEVEL_LOW>;
 			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
 			reset-assert-us = <10000>;
-- 
2.28.0


_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox



[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux