Message ID | 20201012071816.22434-1-o.rempel@pengutronix.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v1] ARM: dts: protonic prti6q: fix PHY address | expand |
On Mon, Oct 12, 2020 at 09:18:16AM +0200, Oleksij Rempel wrote: > Due to bug in the bootloader, the PHY has floating address and may > randomly change on each PHY reset. To avoid it, the updated bootloader > with the following patch[0] should be used: > > | ARM: protonic: disable on-die termination to fix PHY bootstrapping > | > | 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. > > With latest bootloader update, the PHY address will be fixed to "0". > > [0] https://git.pengutronix.de/cgit/barebox/commit/?id=93f7dcf631edfcda19e7757b28d66017ea274b81 > > Fixes: 0d446a50559 ("ARM: dts: add Protonic PRTI6Q board") > Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Changed subject prefix to 'ARM: dts: imx6q-prti6q: ' and applied the patch. Shawn
diff --git a/arch/arm/boot/dts/imx6q-prti6q.dts b/arch/arm/boot/dts/imx6q-prti6q.dts index de6cbaab8b49..671bb3a6665d 100644 --- a/arch/arm/boot/dts/imx6q-prti6q.dts +++ b/arch/arm/boot/dts/imx6q-prti6q.dts @@ -213,8 +213,8 @@ mdio { #size-cells = <0>; /* Microchip KSZ9031RNX PHY */ - rgmii_phy: ethernet-phy@4 { - reg = <4>; + rgmii_phy: ethernet-phy@0 { + reg = <0>; interrupts-extended = <&gpio1 28 IRQ_TYPE_LEVEL_LOW>; reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; reset-assert-us = <10000>;
Due to bug in the bootloader, the PHY has floating address and may randomly change on each PHY reset. To avoid it, the updated bootloader with the following patch[0] should be used: | ARM: protonic: disable on-die termination to fix PHY bootstrapping | | 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. With latest bootloader update, the PHY address will be fixed to "0". [0] https://git.pengutronix.de/cgit/barebox/commit/?id=93f7dcf631edfcda19e7757b28d66017ea274b81 Fixes: 0d446a50559 ("ARM: dts: add Protonic PRTI6Q board") Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> --- arch/arm/boot/dts/imx6q-prti6q.dts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)