• Neill Whillans's avatar
    net: ethernet: altera_tse: add support for SGMII PCS · 3b804564
    Neill Whillans authored
    Add support for the (optional) SGMII PCS functionality of the Altera
    TSE MAC. If the phy-mode is set to 'sgmii' then we attempt to discover
    and initialise the PCS so that the MAC can communicate to the PHY.
    
    The PCS IP block provides a scratch register for testing presence of
    the PCS, which is mapped into one of the two MDIO spaces present in
    the MAC's register space.  Once we have determined that the scratch
    register is functioning, we attempt to initialise the PCS to
    auto-negotiate an SGMII link with the PHY. There is no need to monitor
    or manage the SGMII link beyond this, since the normal PHY MDIO will
    then be used to monitor the media layer.
    
    The Altera TSE MAC has only one way in which it can be configured with an
    SGMII PCS, and as such, this patch only looks to the phy-mode to select
    whether or not to attempt to initialise the PCS registers.  During
    initialisation, we report the PCS's equivalent of a PHY ID register.
    This can be parameterised during the IP instantiation and is often left
    as '0x00000000' which is not an error.
    Signed-off-by: default avatarNeill Whillans <neill.whillans@codethink.co.uk>
    Reviewed-by: default avatarDaniel Silverstone <daniel.silverstone@codethink.co.uk>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    3b804564
altera_tse_main.c 44.3 KB