Re: [PATCH net-next 25/28] [RFC] net: dpaa: Convert to phylink

From: Sean Anderson
Date: Sat Jun 18 2022 - 11:58:55 EST


Hi Russell,

On 6/18/22 4:22 AM, Russell King (Oracle) wrote:
On Fri, Jun 17, 2022 at 08:45:38PM -0400, Sean Anderson wrote:
Hi Russell,

Thanks for the quick response.
...
Yes, I've been using the debug prints in phylink extensively as part of
debugging :)

In this case, I added a debug statement to phylink_resolve printing out
cur_link_state, link_state.link, and pl->phy_state.link. I could see that
the phy link state was up and the mac (pcs) state was down. By inspecting
the PCS's registers, I determined that this was because AN had not completed
(in particular, the link was up in BMSR). I believe that forcing in-band-status
(by setting ovr_an_inband) shouldn't be necessary, but I was unable to get a link
up on any interface without it. In particular, the pre-phylink implementation
disabled PCS AN only for fixed links (which you can see in patch 23).

I notice that prior to patch 23, the advertisment register was set to
0x4001, but in phylink_mii_c22_pcs_encode_advertisement() we set it to
0x0001 (bit 14 being the acknowledge bit from the PCS to the PHY, which
is normally managed by hardware.

It may be worth testing whether setting bit 14 changes the behaviour.

Thanks for the tip. I'll try that out on Monday.

--Sean