• Jiawen Wu's avatar
    net: pcs: xpcs: support to switch mode for Wangxun NICs · f629acc6
    Jiawen Wu authored
    According to chapter 6 of DesignWare Cores Ethernet PCS (version 3.20a)
    and custom design manual, add a configuration flow for switching interface
    mode.
    
    If the interface changes, the following setting is required:
    1. wait VR_XS_PCS_DIG_STS bit(4, 2) [PSEQ_STATE] = 100b (Power-Good)
    2. write SR_XS_PCS_CTRL2 to select various PCS type
    3. write SR_PMA_CTRL1 and/or SR_XS_PCS_CTRL1 for link speed
    4. program PMA registers
    5. write VR_XS_PCS_DIG_CTRL1 bit(15) [VR_RST] = 1b (Vendor-Specific
       Soft Reset)
    6. wait for VR_XS_PCS_DIG_CTRL1 bit(15) [VR_RST] to get cleared
    
    Only 10GBASE-R/SGMII/1000BASE-X modes are planned for the current Wangxun
    devices. And there is a quirk for Wangxun devices to switch mode although
    the interface in phylink state has not changed, since PCS will change to
    default 10GBASE-R when the ethernet driver(txgbe) do LAN reset.
    Signed-off-by: default avatarJiawen Wu <jiawenwu@trustnetic.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    f629acc6
pcs-xpcs-wx.c 7.13 KB