Re: [PATCH net-next v4 06/11] net: stmmac: resetup XPCS according to the new interface mode
From: Choong Yong Liang <hidden>
Date: 2024-02-15 03:14:40
Also in:
bpf, linux-hwmon, lkml, netdev, platform-driver-x86
On 2/2/2024 4:50 pm, Russell King (Oracle) wrote:
quoted
Thank you for taking the time to review, got your concerns, and I'll address the following concerns before submitting a new patch series: 1. Remove allow_switch_interface and have the PHY driver fill in phydev->possible_interfaces.Yes please.
Hi Russell, I regret to inform you that I didn't implement everything exactly as proposed in the new patch series. My intention was to simplify the series, focusing solely on managing SGMII and 2500BASE-X interface mode switching. The recommendation to have the PHY driver fill in "phydev->possible_interfaces" will be addressed in a separate patch submission. I hope this is acceptable. In the new patch series, I removed "allow_switch_interface" patches. The current solution continues to work with PHYs that are C45 and follow the legacy path, such as Marvell Alaska 88E2110. For the upcoming patch series, I will implement "phydev->possible_interfaces" for C22 and C45 PHYs.
quoted
2. Rework on the PCS to have similar implementation with the following patch "net: macb: use .mac_select_pcs() interface" (https://lore.kernel.org/netdev/E1n568J-002SZX-Gr@rmk-PC.armlinux.org.uk/T/ (local)).mac_select_pcs() is about returning to phylink the PCS that the MAC needs to use for the specified interface mode, or NULL if no PCS is required, nothing more, nothing less. Plase do not copy that mac_select_pcs() implementation - changing the "ops" underneath phylink is no longer permitted.
Upon further examination, I discovered that no change is required for the "mac_select_pcs()" function; we can still use the same PCS. According to the XPCS datasheet, a soft reset is necessary to re-initiate Clause 37 auto-negotiation when switching to SGMII interface mode. This is the only setting required for properly configuring the SGMII interface mode, and nothing extra is needed for 2500BASE-X configuration. In the new patch series, I removed "mac_select_pcs()" related patches and added a "xpcs_soft_reset()" patch for the XPCS. _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel