Subject: Re: [PATCH v3] net: dsa: qca8k: enable port flow control

From: Andrew Lunn <[email-masked]>
Date: Mon, 29 Jul 2019 15:23:42 +0200

> But our qca8k HW can auto sync the pause status to MAC from phy with the
> auto-negotiated result.
> So no need to set in qca8k_adjust_link, since there is one setting in
> qca8k_port_set_status: mask |= QCA8K_PORT_STATUS_LINK_AUTO;

How does the auto-sync actually work? Does the MAC make MDIO reads to
the PHY? That is generally unsafe, since some PHYs support pages, and
the PHY driver might be using a different page while the MAC tries to
access the auto-neg results.

Do any of the ports support an external PHY? The auto-sync might not
work in that condition as well. Different register layout, c45 not
c22, etc.

The safest option is to explicitly set the MAC flow configuration
based on the values in phydev.

      Andrew