linux_dsm_epyc7002/drivers/net/ethernet
David Ertman b20a774495 e1000e: Fix no connectivity when driver loaded with cable out
In commit da1e2046e5, the flow for enabling/disabling an Si errata
workaround (e1000_lv_jumbo_workaround_ich8lan) was changed to fix a problem
with iAMT connections dropping on interface down with jumbo frames set.
Part of this change was to move the function call disabling the workaround
to e1000e_down() from the e1000_setup_rctl() function.  The mechanic for
disabling of this workaround involves writing several MAC and PHY registers
back to hardware defaults.

After this commit, when the driver is loaded with the cable out, the PHY
registers are not programmed with the correct default values.  This causes
the device to be capable of transmitting packets, but is unable to recieve
them until this workaround is called.

The flow of e1000e's open code relies upon calling the above workaround to
expicitly program these registers either with jumbo frame appropriate settings
or h/w defaults on 82579 and newer hardware.

Fix this issue by adding logic to e1000_setup_rctl() that not only calls
e1000_lv_jumbo_workaround_ich8lan() when jumbo frames are set, to enable the
workaround, but also calls this function to explicitly disable the workaround
in the case that jumbo frames are not set.

Signed-off-by: Dave Ertman <davidx.m.ertman@intel.com>
Tested-by: Jeff Pieper <jeffrey.e.pieper@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2014-03-31 15:47:59 -07:00
..
3com 3c59x: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 15:17:22 -07:00
8390 8390: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 15:22:02 -07:00
adaptec net: starfire: remove unnecessary pci_set_drvdata() 2013-10-18 00:03:28 -04:00
adi bfin_mac: remove empty MDIO bus reset function 2014-03-28 01:38:02 -04:00
aeroflex net: greth: remove empty MDIO bus reset function 2014-03-28 01:38:01 -04:00
allwinner sun4i-emac: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:15:53 -07:00
alteon drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
altera altera: Remove casts of pointer to same type 2014-03-26 15:46:15 -04:00
amd pcnet32: Call dev_kfree_skb_any instead of dev_kfree_skb. 2014-03-24 21:18:53 -07:00
apple macmace: add missing platform_set_drvdata() in mace_probe() 2013-11-11 14:02:08 -05:00
arc Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-01-06 17:37:45 -05:00
atheros atl1e: remove open-coded skb_cow_head. 2014-03-29 17:49:47 -04:00
broadcom Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-03-29 18:48:54 -04:00
brocade bna: remove open-coded skb_cow_head. 2014-03-29 17:49:47 -04:00
cadence macb: remove empty MDIO bus reset function 2014-03-28 01:38:01 -04:00
calxeda xgmac: Call dev_kfree/consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:18:56 -07:00
chelsio cxgb4vf: Adds device Id for few more Chelsio adapters 2014-03-28 16:34:40 -04:00
cirrus cs89x0: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:18:58 -07:00
cisco enic: Call dev_kfree_skb_any instead of dev_kfree_skb. 2014-03-24 21:18:59 -07:00
davicom dm9000: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:18:59 -07:00
dec uli526x: Call dev_kfree/consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:00 -07:00
dlink sundance: Call dev_kfree_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:01 -07:00
emulex be2net: csum, tso and rss steering offload support for VxLAN 2014-03-28 14:24:54 -04:00
faraday net: ftgmac100: remove empty MDIO bus reset function 2014-03-28 01:38:02 -04:00
freescale net: fec: make sure to init MAC address 2014-03-31 16:34:19 -04:00
fujitsu drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
hp hp100: replace hardcoded name in /proc/interrupts with interface name 2013-09-27 17:38:32 -04:00
i825xx i825xx: Call dev_kfree_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:02 -07:00
ibm ibmveth: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:03 -07:00
icplus drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
intel e1000e: Fix no connectivity when driver loaded with cable out 2014-03-31 15:47:59 -07:00
marvell Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-03-29 18:48:54 -04:00
mellanox Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-03-29 18:48:54 -04:00
micrel Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-03-25 20:29:20 -04:00
microchip
moxa drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
myricom myri10ge: Use pci_enable_msix_range() instead of pci_enable_msix() 2014-02-18 15:33:32 -05:00
natsemi Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2014-01-25 11:17:34 -08:00
neterion vxge: Call dev_kfree_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:07 -07:00
nuvoton
nvidia forcedeth: Call dev_kfree_skb_any instead of kfree_skb. 2014-03-24 21:19:08 -07:00
nxp drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
octeon Merge branch 'for-linus-dma-masks' of git://git.linaro.org/people/rmk/linux-arm 2013-11-14 07:55:21 +09:00
oki-semi net: ptp: do not reimplement PTP/BPF classifier 2014-03-31 00:45:09 -04:00
packetengines net: packetengines: slight optimization of addr 2013-12-31 16:48:32 -05:00
pasemi drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
qlogic Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-03-29 18:48:54 -04:00
rdc r6040: remove empty MDIO bus reset function 2014-03-28 01:38:02 -04:00
realtek net: Replace u64_stats_fetch_begin_bh to u64_stats_fetch_begin_irq 2014-03-14 22:41:36 -04:00
renesas sh_eth: ensure pm_runtime cannot suspend the device during init 2014-03-28 15:59:44 -04:00
samsung net: sxgbe: fix potential null dereference 2014-03-28 14:42:24 -04:00
seeq drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
sfc ptp: drivers: set the number of programmable pins. 2014-03-21 14:21:14 -04:00
sgi drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
silan sc92031: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:08 -07:00
sis sis900: Call dev_kfree_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:09 -07:00
smsc smsc911x: No need to print driver version 2014-03-26 15:46:15 -04:00
stmicro net: stmmac: Add SOCFPGA glue driver 2014-03-28 15:06:32 -04:00
sun sungem: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:12 -07:00
tehuti net: Spelling s/transmition/transmission/ 2014-01-14 17:11:26 -08:00
ti net: ptp: do not reimplement PTP/BPF classifier 2014-03-31 00:45:09 -04:00
tile tilepro: Call dev_consume_skb_any instead of kfree_skb. 2014-03-24 21:19:12 -07:00
toshiba spider_net: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:13 -07:00
tundra drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
via Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-03-25 20:29:20 -04:00
wiznet net: w5100: Use devm_ioremap_resource() 2014-02-28 16:57:24 -05:00
xilinx net: emaclite: remove empty MDIO bus reset function 2014-03-28 01:38:02 -04:00
xircom ethernet: Fix FSF address in file headers 2013-12-06 12:37:55 -05:00
xscale net: ptp: do not reimplement PTP/BPF classifier 2014-03-31 00:45:09 -04:00
dnet.c dnet: remove empty MDIO bus reset function 2014-03-28 01:38:02 -04:00
dnet.h
ethoc.c net: ethoc: remove empty MDIO bus function 2014-03-28 01:38:02 -04:00
fealnx.c net: fealnx: remove unnecessary pci_set_drvdata() 2013-10-21 17:21:01 -04:00
jme.c jme: remove open-coded skb_cow_head. 2014-03-29 17:49:47 -04:00
jme.h jme: Remove unused #define PFX 2013-11-07 02:14:32 -05:00
Kconfig net: sxgbe: add basic framework for Samsung 10Gb ethernet driver 2014-03-26 16:49:31 -04:00
korina.c drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
lantiq_etop.c netdevice: add queue selection fallback handler for ndo_select_queue 2014-02-17 00:36:34 -05:00
Makefile net: sxgbe: add basic framework for Samsung 10Gb ethernet driver 2014-03-26 16:49:31 -04:00
netx-eth.c ethernet: Fix FSF address in file headers 2013-12-06 12:37:55 -05:00
s6gmac.c drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00