android_kernel_samsung_a7y1.../drivers/net/ethernet
Marek Vasut 0b0f81a3cf net: ks8851-ml: Fix IO operations, again
commit 8262e6f9b1034ede34548a04dec4c302d92c9497 upstream.

This patch reverts 58292104832f ("net: ks8851-ml: Fix 16-bit IO operation")
and edacb098ea9c ("net: ks8851-ml: Fix 16-bit data access"), because it
turns out these were only necessary due to buggy hardware. This patch adds
a check for such a buggy hardware to prevent any such mistakes again.

While working further on the KS8851 driver, it came to light that the
KS8851-16MLL is capable of switching bus endianness by a hardware strap,
EESK pin. If this strap is incorrect, the IO accesses require such endian
swapping as is being reverted by this patch. Such swapping also impacts
the performance significantly.

Hence, in addition to removing it, detect that the hardware is broken,
report to user, and fail to bind with such hardware.

Fixes: 58292104832f ("net: ks8851-ml: Fix 16-bit IO operation")
Fixes: edacb098ea9c ("net: ks8851-ml: Fix 16-bit data access")
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: David S. Miller <davem@davemloft.net>
Cc: Lukas Wunner <lukas@wunner.de>
Cc: Petr Stetiar <ynezz@true.cz>
Cc: YueHaibing <yuehaibing@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-04-07 14:25:22 +02:00
..
3com
8390
adaptec
adi
aeroflex
agere
allwinner
alteon
altera
amd
apm
apple
arc
atheros atl1e: checking the status of atl1e_write_phy_reg 2020-04-07 12:42:36 +02:00
aurora
broadcom bnxt_en: reinitialize IRQs when MTU is modified 2020-04-07 14:11:00 +02:00
brocade
cadence net: macb: fix error format in dev_err() 2020-04-07 12:43:24 +02:00
calxeda
cavium
chelsio l2t_seq_next should increase position index 2020-04-07 13:49:04 +02:00
cirrus net: ep93xx_eth: fix mismatch of request_mem_region in remove 2020-04-07 12:44:12 +02:00
cisco enic: prevent waking up stopped tx queues over watchdog reset 2020-04-07 14:01:12 +02:00
davicom
dec net: tulip: Adjust indentation in {dmfe, uli526x}_init_module 2020-04-07 13:50:56 +02:00
dlink
emulex
ezchip
faraday
freescale net: fec: validate the new settings in fec_enet_set_coalesce() 2020-04-07 14:11:25 +02:00
fujitsu
hisilicon net: hisilicon: Fix signedness bug in hix5hd2_dev_probe() 2020-04-07 13:43:26 +02:00
hp
i825xx
ibm ehea: Fix a copy-paste err in ehea_init_port_res 2020-04-07 13:41:20 +02:00
intel ixgbe: Fix calculation of queue with VFs and flow director on interface flap 2020-04-07 13:48:37 +02:00
marvell
mellanox
micrel net: ks8851-ml: Fix IO operations, again 2020-04-07 14:25:22 +02:00
microchip
moxa
myricom
natsemi net/sonic: Quiesce SONIC before re-initializing descriptor memory 2020-04-07 13:49:00 +02:00
neterion
nuvoton
nvidia
nxp
octeon
oki-semi
packetengines
pasemi net: pasemi: fix an use-after-free in pasemi_mac_phy_init() 2020-04-07 13:42:29 +02:00
qlogic qlcnic: Fix CPU soft lockup while collecting firmware dump 2020-04-07 13:48:50 +02:00
qualcomm net: qca_spi: Move reset_count to struct qcaspi 2020-04-07 13:43:43 +02:00
rdc
realtek
renesas net: sh_eth: fix a missing check of of_get_phy_mode 2020-04-07 13:40:56 +02:00
rocker
samsung sxgbe: Fix off by one in samsung driver strncpy size arg 2020-04-07 14:24:05 +02:00
seeq
sfc sfc: initialise found bitmap in efx_ef10_mtd_probe 2020-04-07 12:43:00 +02:00
sgi
silan
sis
smsc net: smc911x: Adjust indentation in smc911x_phy_configure 2020-04-07 13:50:54 +02:00
stmicro net: stmmac: fix length of PTP clock's name string 2020-04-07 13:43:38 +02:00
sun
synopsys
tehuti
ti net: davinci_cpdma: use dma_addr_t for DMA address 2020-04-07 13:23:52 +02:00
tile
toshiba
tundra
via
wiznet
xilinx
xircom
xscale
dnet.c
dnet.h
ec_bhf.c
ethoc.c
fealnx.c
jme.c
jme.h
Kconfig
korina.c
lantiq_etop.c
Makefile
netx-eth.c