Messages in this thread | | | Subject | Re: [PATCH] arm64: defconfig: Change CONFIG_AT803X_PHY from m to y | From | Marc Gonzalez <> | Date | Thu, 28 Nov 2019 10:11:51 +0100 |
| |
On 27/11/2019 13:46, Oliver Graute wrote:
> On 27/11/19, Marc Gonzalez wrote: > >> On 26/11/2019 15:54, Oliver Graute wrote: >> >>> this patch broke my imx8qm nfs setup. With the generic phy driver my >>> board is booting fine. But with the AT803X_PHY=y enabled I'm running >>> into the following phy issue. So on my side it looks inverse as on >>> yours. What is the best proposal to fix this? >>> >>> [ 5.550442] fec 5b040000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off >>> [ 5.573206] Sending DHCP requests ...... timed out! >>> [ 95.339702] IP-Config: Retrying forever (NFS root)... >>> [ 95.348873] Atheros 8035 ethernet 5b040000.ethernet-1:06: attached PHY driver [Atheros 8035 ethernet] (mii_bus:phy_addr=5b040000.ethernet-1:06, irq=POLL) >>> [ 99.438443] fec 5b040000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off >>> [ 99.461206] Sending DHCP requests ...... timed out! >> >> Which DTS are you using? > > I'am using this DTS which I'am currently working on: > > https://lists.infradead.org/pipermail/linux-arm-kernel/2019-October/689501.html >> >> I bet one dollar that 6d4cd041f0af triggered a latent bug in the DTS. > > So what should I fix in my device tree?
In the board DTS I used to work on, I had this:
ð0 { phy-connection-type = "rgmii-id"; phy-handle = <ð0_phy>; #address-cells = <1>; #size-cells = <0>;
/* Atheros AR8035 */ eth0_phy: ethernet-phy@4 { compatible = "ethernet-phy-id004d.d072", "ethernet-phy-ieee802.3-c22"; interrupts = <37 IRQ_TYPE_EDGE_RISING>; reg = <4>; }; };
In your DTS, you #include "imx8qm.dtsi" I found no such file: $ git ls-files | grep imx8qm drivers/pinctrl/freescale/pinctrl-imx8qm.c include/dt-bindings/pinctrl/pads-imx8qm.h
In your patch: https://patchwork.kernel.org/patch/11211567/
+&fec1 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_fec1>; + phy-mode = "rgmii-txid"; + phy-handle = <ðphy0>; + fsl,magic-packet; + fsl,rgmii_rxc_dly; + status = "okay"; + + mdio { + #address-cells = <1>; + #size-cells = <0>; + + ethphy0: ethernet-phy@0 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <4>; + at803x,eee-disabled; + at803x,vddio-1p8v; + }; + }; +};
Try all possible 'phy-mode' (rgmii, rgmii-id, rgmii-rxid, rgmii-txid) Investigate 'fsl,rgmii_rxc_dly' (it's not a standard Linux DT prop) Documentation/devicetree/bindings/net/ethernet-controller.yaml
Regards.
| |