linux_dsm_epyc7002/drivers/net/ethernet
Bryan Whitehead 662a14d0c7 lan743x: Provide Read/Write Access to on chip OTP
The LAN743x includes on chip One-Time-Programmable (OTP) memory.

This patch extends the ethtool EEPROM read/write interface to
access OTP memory space.

The currently existing interface is limited, as it does not
allow OTP read, and OTP writes are restricted to
offset==0, length==512, and data[0]==0xF3.

This patch removes these restrictions and adds a private flag
called OTP_ACCESS, which is used to switch between EEPROM, and
OTP modes.

The private flag OTP_ACCESS is configurable through the
  ethtool --set-priv-flags command.
And visible through the
  ethtool --show-priv-flags command.

By default OTP_ACCESS is false, and there for previously existing
EEPROM commands will work exactly the same. However now access to
OTP requires one extra step of setting OTP_ACCESS to true. This
flag controls the read, write, and length reporting, functions
of ethtool.

EEPROM presence is not checked when setting or clearing this flag.
If the EEPROM is not present, the user, as before, will need to
diagnose that using existing read and write function of ethtool,
while OTP_ACCESS is false.

Updates for V2:
Added comments as to why this patch is needed.
Added comments explaining that EEPROM presence is not check
  when setting or clearing the OTP_ACCESS flag.
Added length checking to all otp/eeprom read/write functions.

Signed-off-by: Bryan Whitehead <Bryan.Whitehead@microchip.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-26 09:35:21 -08:00
..
3com net: 3c509: mark expected switch fall-throughs 2019-01-23 09:06:36 -08:00
8390
adaptec
aeroflex cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
agere
alacritech cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
allwinner
alteon
altera
amazon cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
amd net: amd8111e: clean up two minor indentation issues 2019-01-24 22:06:36 -08:00
apm cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
apple
aquantia Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-12-09 21:43:31 -08:00
arc
atheros cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
aurora
broadcom broadcom: Mark expected switch fall-throughs 2019-01-23 09:06:36 -08:00
brocade bna: Mark expected switch fall-throughs 2019-01-23 09:06:36 -08:00
cadence net: macb: remove unnecessary code 2019-01-04 12:59:09 -08:00
calxeda
cavium cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
chelsio cxgb4/cxgb4vf: Link management changes 2019-01-22 20:41:48 -08:00
cirrus net: documentation: build a directory structure for drivers 2018-12-05 11:30:06 -08:00
cisco net: core: dev: Add extack argument to dev_open() 2018-12-06 13:26:06 -08:00
cortina net: gemini: Fix copy/paste error 2018-11-23 22:35:38 -08:00
davicom davicom: Annotate implicit fall through in dm9000_set_io 2019-01-17 15:08:17 -08:00
dec net: documentation: build a directory structure for drivers 2018-12-05 11:30:06 -08:00
dlink net: documentation: build a directory structure for drivers 2018-12-05 11:30:06 -08:00
emulex cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
ezchip
faraday cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
freescale enetc: Add RFS and RSS support 2019-01-24 21:55:53 -08:00
fujitsu
hisilicon net: hns3: don't allow vf to enable promisc mode 2019-01-26 09:33:31 -08:00
hp
huawei hinic: Add pci device ids 2019-01-22 14:54:08 -08:00
i825xx
ibm cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
intel i40e: clean up several indentation issues 2019-01-22 08:42:03 -08:00
marvell Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2019-01-16 05:13:36 +12:00
mediatek Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2019-01-16 05:13:36 +12:00
mellanox net/mlx5e: Reuse fold sw stats in representors 2019-01-25 12:16:15 -08:00
micrel
microchip lan743x: Provide Read/Write Access to on chip OTP 2019-01-26 09:35:21 -08:00
moxa
mscc net: Add extack argument to ndo_fdb_add() 2019-01-17 15:18:47 -08:00
myricom cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
natsemi
neterion net: vxge: fix indentation issue 2019-01-18 14:02:32 -08:00
netronome nfp: flower: enable MAC address sharing for offloadable devs 2019-01-16 15:23:15 -08:00
ni cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
nuvoton w90p910_ether: remove incorrect __init annotation 2018-12-14 14:42:51 -08:00
nvidia
nxp net: lpc_eth: fix trivial comment typo 2018-11-21 16:17:32 -08:00
oki-semi cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
packetengines
pasemi cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
qlogic qed: Mark expected switch fall-through 2019-01-23 09:06:36 -08:00
qualcomm cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
rdc
realtek r8169: enable EEE per default on RTL8168f 2019-01-26 09:19:39 -08:00
renesas ravb: Clean up duplex handling 2018-11-23 11:14:47 -08:00
rocker switchdev: Add extack argument to call_switchdev_notifiers() 2019-01-17 15:18:47 -08:00
samsung cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
seeq
sfc sfc: extend MTD support for newer hardware 2019-01-17 12:10:14 -08:00
sgi cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
silan
sis ethernet/sis: Replace synchronize_sched() with synchronize_rcu() 2018-11-27 09:21:36 -08:00
smsc Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2018-12-27 13:04:52 -08:00
socionext cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
stmicro net: stmmac: Fix return value check in qcom_ethqos_probe() 2019-01-24 22:13:03 -08:00
sun net: sungem: fix indentation, remove a tab 2019-01-16 14:04:59 -08:00
synopsys
tehuti
ti net: ethernet: ti: cpsw-phy-sel: remove unneeded semicolon 2019-01-17 22:05:16 -08:00
toshiba
tundra cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
via net: via: via-velocity: fix spelling mistake "alignement" -> "alignment" 2018-11-27 16:22:23 -08:00
wiznet
xilinx cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
xircom
xscale
dnet.c
dnet.h
ec_bhf.c
ethoc.c
fealnx.c
jme.c net: jme: fix indentation issues 2019-01-18 14:02:55 -08:00
jme.h
Kconfig
korina.c
lantiq_etop.c
lantiq_xrx200.c net: lantiq: Fix returned value in case of error in 'xrx200_probe()' 2018-11-16 19:46:49 -08:00
Makefile
netx-eth.c