Messages in this thread | | | Date | Thu, 15 Feb 2024 11:14:27 +0800 | Subject | Re: [PATCH net-next v4 06/11] net: stmmac: resetup XPCS according to the new interface mode | From | Choong Yong Liang <> |
| |
On 2/2/2024 4:50 pm, Russell King (Oracle) wrote: >> 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.
>> 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/). > > 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.
| |