linux_dsm_epyc7002/drivers/net
Fugang Duan 37d6017b84 net: fec: Workaround for imx6sx enet tx hang when enable three queues
When enable three queues on imx6sx enet, and then do tx performance
test with iperf tool, after some time running, tx hang.

Found that:
	If uDMA is running, software set TDAR may cause tx hang.
	If uDMA is in idle, software set TDAR don't cause tx hang.

There is a TDAR race condition for mutliQ when the software sets TDAR
and the UDMA clears TDAR simultaneously or in a small window (2-4 cycles).
This will cause the udma_tx and udma_tx_arbiter state machines to hang.
The issue exist at i.MX6SX enet IP.

So, the Workaround is checking TDAR status four time, if TDAR cleared by
hardware and then write TDAR, otherwise don't set TDAR.

The patch is only one Workaround for the issue ERR007885.

Signed-off-by: Fugang Duan <B38611@freescale.com>
Signed-off-by: Frank Li <Frank.Li@freescale.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-19 15:36:50 -04:00
..
appletalk
arcnet PCI changes for the v3.17 merge window (part 2): 2014-08-14 18:10:33 -06:00
bonding bonding: consolidate ASSERT_RTNL()s and remove the unnecessary 2014-09-15 17:19:50 -04:00
caif
can Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-08-23 11:12:08 -07:00
cris
dsa dsa: Replace mii_bus with a generic host device 2014-09-15 17:24:20 -04:00
ethernet net: fec: Workaround for imx6sx enet tx hang when enable three queues 2014-09-19 15:36:50 -04:00
fddi drivers/net/fddi/skfp/h/skfbi.h: Remove useless PCI_BASE_2ND macros 2014-09-05 14:51:09 -07:00
hamradio
hippi PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
hyperv hyperv: NULL dereference on error 2014-09-05 17:29:22 -07:00
ieee802154
irda irda: vlsi_ir: use %*ph specifier 2014-09-09 20:10:44 -07:00
phy dp83640: Make use of skb_queue_purge instead of reimplementing the code 2014-09-08 14:24:35 -07:00
plip
ppp
slip
team team: set IFF_TEAM_PORT priv_flag after rx_handler is registered 2014-08-25 17:35:44 -07:00
usb r8152: support VLAN 2014-09-13 16:49:09 -04:00
vmxnet3 VMXNET3: Check for map error in vmxnet3_set_mc 2014-09-05 11:50:39 -07:00
wan net: Pass a "more" indication down into netdev_start_xmit() code paths. 2014-09-01 17:39:55 -07:00
wimax
wireless drivers/net: Convert remaining uses of pr_warning to pr_warn 2014-09-09 20:37:08 -07:00
xen-netback xen-netback: move netif_napi_add before binding interrupt 2014-08-25 17:31:42 -07:00
dummy.c
eql.c
ifb.c
Kconfig
LICENSE.SRC
loopback.c
macvlan.c macvlan: Allow setting multicast filter on all macvlan types 2014-08-21 16:54:25 -07:00
macvtap.c
Makefile
mdio.c
mii.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c sungem: Fix global namespace pollution of phy accessors. 2014-08-27 23:07:12 -07:00
tun.c
veth.c
virtio_net.c virtio_net: pass well-formed sgs to virtqueue_add_*() 2014-09-13 12:50:46 -04:00
vxlan.c vxlan: Enable checksum unnecessary conversions for vxlan/UDP sockets 2014-09-01 21:36:28 -07:00
xen-netfront.c xen-netfront: Fix handling packets on compound pages with skb_linearize 2014-08-11 14:46:41 -07:00