Re: [PATCH] arm64: defconfig: Change CONFIG_AT803X_PHY from m to y

From: Oliver Graute
Date: Thu Nov 28 2019 - 09:36:07 EST


On 28/11/19, Marc Gonzalez wrote:
> 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:
>
> &eth0 {
> phy-connection-type = "rgmii-id";
> phy-handle = <&eth0_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

yes this file is not yet added to Shawn Guos next tree.
Latest patch can be found here:

https://patchwork.kernel.org/patch/11248331/

>
> In your patch:
> https://patchwork.kernel.org/patch/11211567/
>
> +&fec1 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_fec1>;
> + phy-mode = "rgmii-txid";
> + phy-handle = <&ethphy0>;
> + 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

thx for this hint.

Best regards,

Oliver