]> git.dujemihanovic.xyz Git - u-boot.git/commit
eth: asix88179: Fix ASIX AX88179A PHY hang
authorKhoa Hoang <admin@khoahoang.com>
Fri, 8 Nov 2024 05:51:35 +0000 (21:51 -0800)
committerMarek Vasut <marex@denx.de>
Mon, 25 Nov 2024 18:11:19 +0000 (19:11 +0100)
commit9713c15d2e62d51b154f43c70632e9f5f7ef1ff8
treeb59faa733afe2480b416f7cb7570e75817084148
parent52c0e5f8a39ef022ee5ab2dfd67661d1d34941c7
eth: asix88179: Fix ASIX AX88179A PHY hang

The ASIX AX88179A locks up when the ADVERTISE_NPAGE bit is set in the
MII_ADVERTISE register, suggesting that this feature may be broken or
unsupported on this chip. In the Linux kernel, this bit is not set,
and enabling it also causes the PHY to lock up and stay in a
link-down state.

Additionally, the AX88179 and AX88179A variants do not appear to
support the ADVERTISE_LPACK bit, as setting it consistently reads
back as 0.

This patch removes the ADVERTISE_NPAGE and ADVERTISE_LPACK bits from
the MII_ADVERTISE register configuration. It also resets the PHY
before modifying the MII_ADVERTISE register, then restarts
auto-negotiation, following the same flow used in the U-Boot asix.c
driver.

Signed-off-by: Khoa Hoang <admin@khoahoang.com>
Reviewed-by: Marek Vasut <marex@denx.de>
drivers/usb/eth/asix88179.c