linux_dsm_epyc7002/drivers/net/ethernet
Sunil Goutham 83abb7d7c9 net: thunderx: Fix IOMMU translation faults
ACPI support has been added to ARM IOMMU driver in 4.10 kernel
and that has resulted in VNIC interfaces throwing translation
faults when kernel is booted with ACPI as driver was not using
DMA API. This patch fixes the issue by using DMA API which inturn
will create translation tables when IOMMU is enabled.

Also VNIC doesn't have a seperate receive buffer ring per receive
queue, so there is no 1:1 descriptor index matching between CQE_RX
and the index in buffer ring from where a buffer has been used for
DMA'ing. Unlike other NICs, here it's not possible to maintain dma
address to virt address mappings within the driver. This leaves us
no other choice but to use IOMMU's IOVA address conversion API to
get buffer's virtual address which can be given to network stack
for processing.

Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-03-09 13:12:41 -08:00
..
3com drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
8390
adaptec net: adaptec: starfire: add checks for dma mapping errors 2017-01-29 19:04:11 -05:00
adi scripts/spelling.txt: add "overwritting" pattern and fix typo instances 2017-02-27 18:43:47 -08:00
aeroflex aeroflex/greth: use napi_complete_done() 2017-02-05 16:11:57 -05:00
agere drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
alacritech net: make ndo_get_stats64 a void function 2017-01-08 17:51:44 -05:00
allwinner
alteon
altera drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
amazon net: ena: remove superfluous check in ena_remove() 2017-02-20 10:22:59 -05:00
amd drivers: net: ethernet: remove incorrect __exit markups 2017-03-02 14:33:49 -08:00
apm drivers: net: xgene: Fix crash on DT systems 2017-03-02 12:47:23 -08:00
apple
aquantia net: ethernet: aquantia: Copying tx buffers is not needed. 2017-02-20 17:11:09 -05:00
arc drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
atheros atl1e: add GRO support 2017-02-03 11:13:17 -05:00
aurora
broadcom bnx2x: add missing configuration of VF VLAN filters 2017-03-07 13:47:15 -08:00
brocade drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
cadence lib/vsprintf.c: remove %Z support 2017-02-27 18:43:47 -08:00
calxeda drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
cavium net: thunderx: Fix IOMMU translation faults 2017-03-09 13:12:41 -08:00
chelsio Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-03-04 17:31:39 -08:00
cirrus ep93xx_eth: add GRO support 2017-02-05 16:11:57 -05:00
cisco enic: add vxlan offload on tx path 2017-02-09 17:24:29 -05:00
davicom
dec drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
dlink net: dlink: sundance: use new api ethtool_{get|set}_link_ksettings 2017-01-02 16:59:10 -05:00
emulex be2net: get rid of custom busy poll code 2017-02-03 16:06:55 -05:00
ezchip drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
faraday drivers: net: ethernet: remove incorrect __exit markups 2017-03-02 14:33:49 -08:00
freescale dpaa_eth: implement ioctl() for PHY-related ops 2017-02-20 22:21:23 -05:00
fujitsu
hisilicon net: hip04: Omit private ndo_get_stats function 2017-02-14 15:03:21 -05:00
hp
i825xx
ibm net: ibm: emac: fix regression caused by emac_dt_phy_probe() 2017-03-08 22:15:46 -08:00
intel ixgbe: Limit use of 2K buffers on architectures with 256B or larger cache lines 2017-03-02 18:03:39 -08:00
marvell net: mvpp2: enable building on 64-bit platforms 2017-02-21 13:16:17 -05:00
mediatek Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-01-28 10:33:06 -05:00
mellanox mlxsw: spectrum_flower: Remove bogus warns in mlxsw_sp_flower_destroy 2017-03-08 23:15:58 -08:00
micrel scripts/spelling.txt: add "overrided" pattern and fix typo instances 2017-02-27 18:43:47 -08:00
microchip net: microchip: encx24j600: use new api ethtool_{get|set}_link_ksettings 2017-02-12 22:32:17 -05:00
moxa drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
myricom net: myricom: myri10ge: use new api ethtool_{get|set}_link_ksettings 2017-02-12 22:32:17 -05:00
natsemi net: natsemi: ns83820: use new api ethtool_{get|set}_link_ksettings 2017-02-12 22:32:17 -05:00
neterion net: s2io: fix typo argumnet argument 2017-02-26 11:57:58 -05:00
netronome nfp: correct DMA direction in XDP DMA sync 2017-03-03 09:46:53 -08:00
nuvoton net: nuvoton: w90p910: use new api ethtool_{get|set}_link_ksettings 2017-02-12 22:32:17 -05:00
nvidia forcedeth: Remove return from a void function 2017-02-23 10:55:07 -05:00
nxp drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
oki-semi net: oki-semi: pch_gbe: use new api ethtool_{get|set}_link_ksettings 2017-02-17 12:00:14 -05:00
packetengines net: hamachi: use new api ethtool_{get|set}_link_ksettings 2017-02-17 14:06:41 -05:00
pasemi drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
qlogic Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-02-28 10:00:39 -08:00
qualcomm net: qualcomm: qca: use new api ethtool_{get|set}_link_ksettings 2017-02-20 22:19:08 -05:00
rdc
realtek 8139cp: use napi_complete_done() 2017-02-05 16:11:57 -05:00
renesas sh_eth: fix wakeup event reporting from MagicPacket 2017-02-01 12:53:59 -05:00
rocker drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
samsung drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
seeq drivers: net: ethernet: remove incorrect __exit markups 2017-03-02 14:33:49 -08:00
sfc Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-03-04 17:31:39 -08:00
sgi drivers: net: ethernet: remove incorrect __exit markups 2017-03-02 14:33:49 -08:00
silan
sis scripts/spelling.txt: add "comsume(r)" pattern and fix typo instances 2017-02-27 18:43:47 -08:00
smsc net: Revert ksettings conversions. 2017-03-08 22:17:10 -08:00
stmicro net: stmmac: unify registers dumps methods 2017-02-24 11:42:33 -05:00
sun net: Revert ksettings conversions. 2017-03-08 22:17:10 -08:00
tehuti drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
ti net: ethernet: ti: cpsw: correct ale dev to cpsw 2017-02-17 11:12:32 -05:00
tile drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
toshiba net: Revert ksettings conversions. 2017-03-08 22:17:10 -08:00
tundra drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
via drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
wiznet drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
xilinx Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-02-16 19:34:01 -05:00
xircom
xscale
dnet.c drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
dnet.h
ec_bhf.c net: make ndo_get_stats64 a void function 2017-01-08 17:51:44 -05:00
ethoc.c net: ethoc: Use eth_hw_addr_random() 2017-02-17 12:42:24 -05:00
fealnx.c net: fealnx: use new api ethtool_{get|set}_link_ksettings 2017-01-02 16:59:10 -05:00
jme.c net: jme: use new api ethtool_{get|set}_link_ksettings 2017-01-17 11:44:27 -05:00
jme.h net: jme: use new api ethtool_{get|set}_link_ksettings 2017-01-17 11:44:27 -05:00
Kconfig net: ethernet: aquantia: Integrate AQtion 2.5/5 GB NIC driver 2017-01-24 15:03:41 -05:00
korina.c drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
lantiq_etop.c drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
Makefile net: ethernet: aquantia: Integrate AQtion 2.5/5 GB NIC driver 2017-01-24 15:03:41 -05:00
netx-eth.c