linux_dsm_epyc7002/drivers/net
Neill Whillans 3b80456433 net: ethernet: altera_tse: add support for SGMII PCS
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: Neill Whillans <neill.whillans@codethink.co.uk>
Reviewed-by: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-12-02 10:36:47 -05:00
..
appletalk
arcnet
bonding netns: make struct pernet_operations::id unsigned int 2016-11-18 10:59:15 -05:00
caif
can
cris net: cris: make eth_v10.c explicitly non-modular 2016-10-31 20:58:34 -04:00
dsa net: dsa: mv88e6xxx: Fix mv88e6xxx_g1_irq_free() interrupt count 2016-11-28 15:59:40 -05:00
ethernet net: ethernet: altera_tse: add support for SGMII PCS 2016-12-02 10:36:47 -05:00
fddi
fjes
hamradio
hippi
hyperv hv_netvsc: remove excessive logging on MTU change 2016-11-29 20:50:07 -05:00
ieee802154 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-11-26 23:42:21 -05:00
ipvlan driver: ipvlan: Remove useless member mtu_adj of struct ipvl_dev 2016-11-30 15:01:32 -05:00
irda
phy net: phy: vitesse: add support for VSC8572 2016-12-02 10:36:47 -05:00
plip
ppp netns: make struct pernet_operations::id unsigned int 2016-11-18 10:59:15 -05:00
slip
team
usb lan78xx: relocate mdix setting to phy driver 2016-11-18 13:57:33 -05:00
vmxnet3
wan
wimax
wireless wireless-drivers-next patches for 4.10 2016-11-27 20:26:59 -05:00
xen-netback xen-netback: prefer xenbus_scanf() over xenbus_gather() 2016-11-09 20:24:35 -05:00
dummy.c
eql.c
geneve.c geneve: fix ip_hdr_len reserved for geneve6 tunnel. 2016-11-28 16:14:49 -05:00
gtp.c netns: make struct pernet_operations::id unsigned int 2016-11-18 10:59:15 -05:00
ifb.c
Kconfig
LICENSE.SRC
loopback.c
macsec.c
macvlan.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-11-26 23:42:21 -05:00
macvtap.c macvtap: replace printk with netdev_err 2016-11-30 12:40:48 -05:00
Makefile
mdio.c
mii.c net: mii: report 0 for unknown lp_advertising 2016-11-09 20:26:58 -05:00
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tun.c tuntap: remove unnecessary sk_receive_queue length check during xmit 2016-11-24 16:06:56 -05:00
veth.c
virtio_net.c virtio-net: enable multiqueue by default 2016-11-28 13:17:40 -05:00
vrf.c net: Enable support for VRF with ipv4 multicast 2016-11-01 11:54:26 -04:00
vxlan.c netns: make struct pernet_operations::id unsigned int 2016-11-18 10:59:15 -05:00
xen-netfront.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-11-15 10:54:36 -05:00