linux/drivers/net/usb
Oliver Neukum eb47c274d8 net: cdc_ncm: record speed in status method
Until very recently, the usbnet framework only had support functions
for devices which reported the link speed by explicitly querying the
PHY over a MDIO interface. However, the cdc_ncm devices send
notifications when the link state or link speeds change and do not
expose the PHY (or modem) directly.

Support funtions (e.g. usbnet_get_link_ksettings_internal()) to directly
query state recorded by the cdc_ncm driver were added in a previous patch.

So instead of cdc_ncm spewing the link speed into the dmesg buffer,
record the link speed encoded in these notifications and tell the
usbnet framework to use the new functions to get link speed/state.
Link speed/state is now available via ethtool.

This is especially useful given all current RTL8156 devices emit
a connection/speed status notification every 32ms and this would
fill the dmesg buffer. This implementation replaces the one
recently submitted in de658a195e :
   "net: usb: cdc_ncm: don't spew notifications"

v2: rebased on upstream
v3: changed variable names
v4: rewrote commit message

Signed-off-by: Oliver Neukum <oneukum@suse.com>
Tested-by: Roland Dreier <roland@kernel.org>
Signed-off-by: Grant Grundler <grundler@chromium.org>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
2021-04-06 16:22:36 -07:00
..
aqc111.c net: usb: switch to dev_get_tstats64 and remove usbnet_get_stats64 alias 2020-11-12 14:58:27 -08:00
aqc111.h
asix_common.c
asix_devices.c usbnet: add _mii suffix to usbnet_set/get_link_ksettings 2021-04-06 16:22:36 -07:00
asix.h
ax88172a.c net: usb: switch to dev_get_tstats64 and remove usbnet_get_stats64 alias 2020-11-12 14:58:27 -08:00
ax88179_178a.c net: usb: ax88179_178a: initialize local variables before use 2021-04-01 16:09:37 -07:00
catc.c
cdc_eem.c
cdc_ether.c net: usb: cdc_ether: added support for Thales Cinterion PLSx3 modem family. 2021-01-28 13:01:27 -08:00
cdc_mbim.c net: usb: switch to dev_get_tstats64 and remove usbnet_get_stats64 alias 2020-11-12 14:58:27 -08:00
cdc_ncm.c net: cdc_ncm: record speed in status method 2021-04-06 16:22:36 -07:00
cdc_subset.c
cdc-phonet.c net: cdc-phonet: fix data-interface release on probe failure 2021-03-18 19:45:37 -07:00
ch9200.c
cx82310_eth.c cx82310_eth: fix error return code in cx82310_bind() 2020-11-16 15:23:44 -08:00
dm9601.c usbnet: add _mii suffix to usbnet_set/get_link_ksettings 2021-04-06 16:22:36 -07:00
gl620a.c
hso.c net: usb: hso: use new tasklet API 2021-02-02 15:51:18 -08:00
huawei_cdc_ncm.c
int51x1.c net: usb: switch to dev_get_tstats64 and remove usbnet_get_stats64 alias 2020-11-12 14:58:27 -08:00
ipheth.c usbnet: ipheth: fix connectivity with iOS 14 2020-11-21 14:01:34 -08:00
kalmia.c
kaweth.c
Kconfig nt: usb: USB_RTL8153_ECM should not default to y 2021-01-14 10:51:06 -08:00
lan78xx.c net: usb: lan78xx: remove unused including <linux/version.h> 2021-03-25 16:55:33 -07:00
lan78xx.h
lg-vl600.c
Makefile r8153_ecm: avoid to be prior to r8152 driver 2020-11-19 08:23:46 -08:00
mcs7830.c usbnet: add _mii suffix to usbnet_set/get_link_ksettings 2021-04-06 16:22:36 -07:00
net1080.c net: usb: net1080: Remove in_interrupt() comment 2020-09-29 14:02:54 -07:00
pegasus.c net: usb: pegasus: use new tasklet API 2021-02-02 15:51:18 -08:00
pegasus.h
plusb.c
qmi_wwan.c net: usb: qmi_wwan: allow qmimux add/del with master up 2021-03-04 14:20:21 -08:00
r8152.c r8152: limit the RX buffer size of RTL8153A for USB 2.0 2021-03-19 11:55:09 -07:00
r8153_ecm.c r8153_ecm: Add Lenovo Powered USB-C Hub as a fallback of r8152 2021-01-12 20:00:51 -08:00
rndis_host.c rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request 2021-01-11 17:54:40 -08:00
rtl8150.c net: usb: rtl8150: use new tasklet API 2021-02-02 15:51:18 -08:00
sierra_net.c usbnet: add _mii suffix to usbnet_set/get_link_ksettings 2021-04-06 16:22:36 -07:00
smsc75xx.c usbnet: add _mii suffix to usbnet_set/get_link_ksettings 2021-04-06 16:22:36 -07:00
smsc75xx.h
smsc95xx.c net: usb: switch to dev_get_tstats64 and remove usbnet_get_stats64 alias 2020-11-12 14:58:27 -08:00
smsc95xx.h
sr9700.c usbnet: add _mii suffix to usbnet_set/get_link_ksettings 2021-04-06 16:22:36 -07:00
sr9700.h
sr9800.c usbnet: add _mii suffix to usbnet_set/get_link_ksettings 2021-04-06 16:22:36 -07:00
sr9800.h
usbnet.c usbnet: add method for reporting speed without MII 2021-04-06 16:22:36 -07:00
zaurus.c