The 11/18/2021 09:59, Russell King (Oracle) wrote:
On Thu, Nov 18, 2021 at 10:57:03AM +0100, Horatiu Vultur wrote:
quoted
quoted
quoted
+static void decode_sgmii_word(u16 lp_abil, struct lan966x_port_status *status)
+{
+ status->an_complete = true;
+ if (!(lp_abil & LPA_SGMII_LINK)) {
+ status->link = false;
+ return;
+ }
+
+ switch (lp_abil & LPA_SGMII_SPD_MASK) {
+ case LPA_SGMII_10:
+ status->speed = SPEED_10;
+ break;
+ case LPA_SGMII_100:
+ status->speed = SPEED_100;
+ break;
+ case LPA_SGMII_1000:
+ status->speed = SPEED_1000;
+ break;
+ default:
+ status->link = false;
+ return;
+ }
+ if (lp_abil & LPA_SGMII_FULL_DUPLEX)
+ status->duplex = DUPLEX_FULL;
+ else
+ status->duplex = DUPLEX_HALF;
+}
The above mentioned function will also handle SGMII as well.
I noticed that you have phylink_decode_sgmii_work(), so I will try to
export it also.
Another approach would be to split phylink_mii_c22_pcs_decode_state()
so that the appropriate decode function is selected depending on the
interface state, which may be a better idea.
I have tried to look for phylink_mii_c22_pcs_decode_state() and I
have found it only here [1], and seems that it depends on [2]. But not
much activity happened to these series since October.
Do you think they will still get in?
[1] https://patchwork.kernel.org/project/netdevbpf/patch/20211022160959.3350916-1-sean.anderson@seco.com/
[2] https://lore.kernel.org/netdev/20211022155914.3347672-1-sean.anderson@seco.com/ (local)
--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!
--
/Horatiu