mirror_ubuntu-kernels/drivers/net
Alex Elder 6b51f802d6 net: ipa: ensure hardware has power in ipa_start_xmit()
We need to ensure the hardware is powered when we transmit a packet.
But if it's not, we can't block to wait for it.  So asynchronously
request power in ipa_start_xmit(), and only proceed if the return
value indicates the power state is active.

If the hardware is not active, a runtime resume request will have
been initiated.  In that case, stop the network stack from further
transmit attempts until the resume completes.  Return NETDEV_TX_BUSY,
to retry sending the packet once the queue is restarted.

If the power request returns an error (other than -EINPROGRESS,
which just means a resume requested elsewhere isn't complete), just
drop the packet.

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2021-08-14 14:13:38 +01:00
..
appletalk make legacy ISA probe optional 2021-08-03 13:05:26 +01:00
arcnet
bonding net, bonding: Disallow vlan+srcmac with XDP 2021-08-13 14:03:28 -07:00
caif Networking fixes for 5.14-rc2, including fixes from bpf and netfilter. 2021-07-14 09:24:32 -07:00
can Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-08-13 06:41:22 -07:00
dsa ethernet: fix PTP_1588_CLOCK dependencies 2021-08-13 17:49:05 -07:00
ethernet net: hns3: remove always exist devlink pointer check 2021-08-14 13:59:10 +01:00
fddi fddi: use ndo_siocdevprivate 2021-07-27 20:11:43 +01:00
fjes
hamradio hamradio: use ndo_siocdevprivate 2021-07-27 20:11:44 +01:00
hippi hippi: use ndo_siocdevprivate 2021-07-27 20:11:44 +01:00
hyperv
ieee802154
ipa net: ipa: ensure hardware has power in ipa_start_xmit() 2021-08-14 14:13:38 +01:00
ipvlan ipvlan: Add handling of NETDEV_UP events 2021-07-29 22:17:37 +01:00
mctp mctp: Add initial driver infrastructure 2021-07-29 15:06:50 +01:00
mdio
netdevsim devlink: Set device as early as possible 2021-08-09 10:21:40 +01:00
pcs net: pcs: xpcs: fix error handling on failed to allocate memory 2021-08-11 14:50:54 -07:00
phy ethernet: fix PTP_1588_CLOCK dependencies 2021-08-13 17:49:05 -07:00
plip slip/plip: use ndo_siocdevprivate 2021-07-27 20:11:44 +01:00
ppp Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-08-13 06:41:22 -07:00
slip slip/plip: use ndo_siocdevprivate 2021-07-27 20:11:44 +01:00
team
usb net: hso: drop unused function argument 2021-08-13 16:04:38 -07:00
vmxnet3 vmxnet3: update to version 6 2021-07-16 17:32:14 -07:00
wan wan: hostess_sv11: use module_init/module_exit helpers 2021-08-03 13:05:26 +01:00
wireguard
wireless Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-07-31 09:14:46 -07:00
wwan Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-08-13 06:41:22 -07:00
xen-netback
bareudp.c bareudp: Fix invalid read beyond skb's linear data 2021-08-09 15:37:43 -07:00
dummy.c
eql.c eql: use ndo_siocdevprivate 2021-07-27 20:11:43 +01:00
geneve.c
gtp.c
ifb.c
Kconfig net: Kconfig: remove obsolete reference to config MICROBLAZE_64K_PAGES 2021-08-13 16:30:35 -07:00
LICENSE.SRC
loopback.c
macsec.c
macvlan.c dev_ioctl: split out ndo_eth_ioctl 2021-07-27 20:11:45 +01:00
macvtap.c
Makefile net: mhi: Remove MBIM protocol 2021-08-04 10:10:12 +01:00
mdio.c
mhi_net.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-08-05 15:08:47 -07:00
mii.c
net_failover.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c sb1000: use ndo_siocdevprivate 2021-07-27 20:11:44 +01:00
Space.c wan: remove sbni/granch driver 2021-08-03 13:05:26 +01:00
sungem_phy.c
tap.c
thunderbolt.c
tun.c
veth.c veth: use skb_prepare_for_gro() 2021-07-29 12:18:12 +01:00
virtio_net.c virtio_net: Replace deprecated CPU-hotplug functions. 2021-08-04 13:47:33 -07:00
vrf.c vrf: fix NULL dereference in vrf_finish_output() 2021-08-06 15:40:37 -07:00
vsockmon.c
vxlan.c
xen-netfront.c