Re: [PATCH net-next v2 4/8] net: usb: asix: ax88772: add phylib support
From: Marek Szyprowski <m.szyprowski@samsung.com>
Date: 2021-06-18 10:57:20
Also in:
lkml, netdev
On 18.06.2021 12:45, Marek Szyprowski wrote:
On 18.06.2021 12:13, Oleksij Rempel wrote:quoted
thank you for your feedback. On Fri, Jun 18, 2021 at 10:39:12AM +0200, Marek Szyprowski wrote:quoted
On 07.06.2021 10:27, Oleksij Rempel wrote:quoted
To be able to use ax88772 with external PHYs and use advantage of existing PHY drivers, we need to port at least ax88772 part of asix driver to the phylib framework. Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>I found one more issue with this patch. On one of my test boards (Samsung Exynos5250 SoC based Arndale) system fails to establish network connection just after starting the kernel when the driver is build-in. --->8--- # dmesg | grep asix [ 2.761928] usbcore: registered new interface driver asix [ 5.003110] asix 1-3.2.4:1.0 (unnamed net_device) (uninitialized): invalid hw address, using random [ 6.065400] asix 1-3.2.4:1.0 eth0: register 'asix' at usb-12110000.usb-3.2.4, ASIX AX88772 USB 2.0 Ethernet, 7a:9b:9a:f2:94:8e [ 14.043868] asix 1-3.2.4:1.0 eth0: Link is Up - 100Mbps/Full - flow control off # ping -c2 host PING host (192.168.100.1) 56(84) bytes of data. From 192.168.100.20 icmp_seq=1 Destination Host Unreachable From 192.168.100.20 icmp_seq=2 Destination Host Unreachable--- host ping statistics ---2 packets transmitted, 0 received, +2 errors, 100% packet loss, time 59ms --->8---Hm... it looks like different chip variant. My is registered as "ASIX AX88772B USB", yours is "ASIX AX88772 USB 2.0" - "B" is the difference. Can you please tell me more about this adapter and if possible open tell the real part name.Well, currently I have only remote access to that board. The network chip is soldered on board. Maybe you can read something from the photo on the wiki page: https://en.wikipedia.org/wiki/Arndale_Boardquoted
I can imagine that this adapter may using generic PHY driver. Can you please confirm it by dmesg | grep PHY? In my case i'll get: Asix Electronics AX88772C usb-001:003:10: attached PHY driver (mii_bus:phy_addr=usb-001:003:10, irq=POLL)# dmesg | grep PHY [ 5.700274] Asix Electronics AX88772A usb-001:004:10: attached PHY driver (mii_bus:phy_addr=usb-001:004:10, irq=POLL)quoted
If you have a different PHY, can you please send me the PHY id: cat /sys/bus/mdio_bus/devices/usb-001\:003\:10/phy_id Your usb path will probably be different.# cat /sys/bus/mdio_bus/devices/usb-001\:004\:10/phy_id 0x003b1861quoted
...
Just for the record, I also have a board with external USB Ethernet dongle based on ASIX chip, which works fine with this patch, both when driver is built-in or as a module. Here is the log: # dmesg | grep -i Asix [ 1.718349] usbcore: registered new interface driver asix [ 2.608596] usb 3-1: Manufacturer: ASIX Elec. Corp. [ 3.876279] libphy: Asix MDIO Bus: probed [ 3.958105] Asix Electronics AX88772C usb-003:002:10: attached PHY driver (mii_bus:phy_addr=usb-003:002:10, irq=POLL) [ 3.962728] asix 3-1:1.0 eth0: register 'asix' at usb-xhci-hcd.6.auto-1, ASIX AX88772B USB 2.0 Ethernet, 00:50:b6:18:92:f0 [ 17.488532] asix 3-1:1.0 eth0: Link is Down [ 19.557233] asix 3-1:1.0 eth0: Link is Up - 100Mbps/Full - flow control off # cat /sys/bus/mdio_bus/devices/usb-003\:002\:10/phy_id 0x003b1881 Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland