On 12/4/2024 11:38 PM, Russell King (Oracle) wrote:
On Wed, Dec 04, 2024 at 10:43:56PM +0800, Lei Wei wrote:
+static int ipq_pcs_link_up_config_usxgmii(struct ipq_pcs *qpcs, int speed)
+{
...
+ /* USXGMII only support full duplex mode */
+ val |= XPCS_DUPLEX_FULL;
Again... this restriction needs to be implemented in .pcs_validate() by
knocking out the half-duplex link modes when using USXGMII mode.
.pcs_validate() needs to be implemented whenever the PCS has
restrictions beyond what is standard for the PHY interface mode.
Currently, it seems there is no phylink_validate() call in
phylink_resolve(), to validate the resolved duplex/speed which is
notified by phydev when the PHY is linked up. So I am thinking to add
this duplex check in this link_up op, and return an appropriate error in
case of half-duplex. (Kindly correct me if I am wrong).
Thanks.