[OpenWrt-Devel] ar8216: phy_init and bug report 18415

Heiner Kallweit hkallweit1 at gmail.com
Fri Nov 28 05:23:21 EST 2014

This bug report relates to a device using the AR8216 switch chip and a
trunk version where the additional phy reset in 3.14 was still enabled.

Seems like there was an issue with autoneg. This is not fully clear to me
as after the first phy reset in the kernel phy code we do the hw_init in
the driver and set BMCR_RESET | BMCR_ANENABLE.
This seems to re-establish autoneg support for other members of the AR8xxx
switch chip family but not for AR8216.
For AR8216 the BMCR_ANENABLE flag seems to be ignored.
However I can't test this as I have no 8216-based device and no datasheet.

Maybe to make AR8216 happy we have to enable autoneg explicitely like this
before resetting?
mdiobus_write(bus, i, MII_BMCR, BMCR_ANENABLE);
mdiobus_write(bus, i, MII_BMCR, BMCR_RESET | BMCR_ANENABLE);
For the other AR8xxx switches this isn't needed but doesn't disturb.

Anybody with a 8216-based device who can test this?

However changeset 43410 disabled the additional phy reset. This makes
8216-based devices work properly again so there's no uregent need to check

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.infradead.org/pipermail/openwrt-devel/attachments/20141128/f5069692/attachment.htm>
-------------- next part --------------
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org

More information about the openwrt-devel mailing list