u-boot-brain/drivers/net
Vladimir Zapolskiy 79206c04a9 net: lpc32xx: fix ignored MDIO busy wait status on read
The change fixes PHY write operation, which incorrectly waits for
released busy state before issuing a write operation, this breaks
sequential write/read operation logic, because read operation
starts immediately on request and it completes, when busy state is
gone.

Instead of adding the second preceding busy state check to read
function, do busy state release check after issuing a write operation,
this method of operation is also recommended by the LPC32xx User's
Manual, see MII Mgmt Indicators Register notes:

  For PHY Write if scan is not used:
  1. Write 0 to MCMD
  2. Write PHY address and register address to MADR
  3. Write data to MWTD
  4. Wait for busy bit to be cleared in MIND

Reported-by: Alexandre Messier <amessier@tycoint.com>
Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Tested-by: Alexandre Messier <amessier@tycoint.com>
2016-01-13 21:05:25 -05:00
..
fm block: pass block dev not num to read/write/erase() 2016-01-13 21:05:18 -05:00
fsl-mc driver: net: fsl-mc: remove MC firmware version check 2015-12-17 08:52:18 +08:00
ldpaa_eth armv8: ls2085a: Add support of LS2085A SoC 2015-11-30 09:10:47 -08:00
phy block: pass block dev not num to read/write/erase() 2016-01-13 21:05:18 -05:00
4xx_enet.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
8390.h drivers/net : move net drivers to drivers/net 2007-11-25 18:35:17 +01:00
altera_tse.c altera_tse: change ioremap to map_physmem 2015-11-18 21:18:30 +08:00
altera_tse.h net: altera_tse: add mSG-DMA support 2015-11-12 08:26:59 +08:00
armada100_fec.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
armada100_fec.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
at91_emac.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
ax88180.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
ax88180.h AX88180: use standard I/O accessors 2010-07-12 00:14:29 -07:00
ax88796.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
ax88796.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
bcm-sf2-eth-gmac.c arm: bcm281xx: net: Add Ethernet Driver 2014-08-30 07:46:39 -04:00
bcm-sf2-eth-gmac.h arm: bcm281xx: net: Add Ethernet Driver 2014-08-30 07:46:39 -04:00
bcm-sf2-eth.c net: Update hardware MAC address if it changes in env 2015-05-19 13:33:21 -05:00
bcm-sf2-eth.h arm: bcm281xx: net: Add Ethernet Driver 2014-08-30 07:46:39 -04:00
bfin_mac.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
bfin_mac.h net: Fix remaining API interface breakage 2012-05-23 14:19:21 -05:00
calxedaxgmac.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
cpsw.c drivers: net: cpsw: convert driver to adopt device driver model 2015-10-22 14:18:35 -04:00
cs8900.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
cs8900.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
davinci_emac.c net: davinci_emac: don't teardown inactive rx channel 2015-08-11 13:35:45 -05:00
davinci_emac.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
dc2114x.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
designware.c dm: pci: Add a dm_ prefix to pci_get_bdf() 2016-01-12 10:19:09 -07:00
designware.h dm: net: Adjust designware driver to support driver model 2015-04-18 11:11:37 -06:00
dm9000x.c net: Remove all calls to net_random_ethaddr() 2015-05-20 11:07:27 -05:00
dm9000x.h dm9000 remove dead external phy support, gpio fix 2008-08-26 23:08:19 -07:00
dnet.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
dnet.h dnet: driver for Dave DNET ethernet controller 2009-02-10 00:16:27 +01:00
e1000_spi.c net: e1000: Mark _disable_wr() and _write_status() as __maybe_unused 2015-12-21 20:01:57 -06:00
e1000.c Merge git://git.denx.de/u-boot-net 2016-01-13 21:05:16 -05:00
e1000.h net: e1000: Remove dead codes wrapped by #if 0 2015-12-21 19:59:34 -06:00
eepro100.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
enc28j60.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
enc28j60.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
ep93xx_eth.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
ep93xx_eth.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
ethoc.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
fec_mxc.c net: fec_mxc: unregister mdio bus on probe error 2016-01-03 15:28:06 +01:00
fec_mxc.h net: fec_mxc: Add support for mx6 solo-lite 2013-09-20 17:55:36 +02:00
fsl_mcdmafec.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
fsl_mdio.c net: mdio: Use mb() to be compatible for both ARM and PowerPC 2014-09-08 10:30:33 -07:00
ftgmac100.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
ftgmac100.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
ftmac100.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
ftmac100.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
ftmac110.c net: Remove all calls to net_random_ethaddr() 2015-05-20 11:07:27 -05:00
ftmac110.h net: ftmac110: Update tx/rx descriptor format 2013-08-19 12:34:21 -05:00
greth.c sparc: Use microseconds instead of ticks for timeout 2015-12-03 13:15:49 +02:00
greth.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
Kconfig net: eth_designware: select PHYLIB in Kconfig 2015-12-22 04:42:27 +01:00
keystone_net.c Move console definitions into a new console.h file 2015-11-19 20:27:50 -07:00
ks8851_mll.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
ks8851_mll.h net: ks8851_mll: add ethernet support 2013-06-24 19:11:14 -05:00
lan91c96.c net: Remove all references to CONFIG_ETHADDR and friends 2015-05-19 13:33:21 -05:00
lan91c96.h arm: remove lubbock board support 2014-04-18 10:42:30 -04:00
lpc32xx_eth.c net: lpc32xx: fix ignored MDIO busy wait status on read 2016-01-13 21:05:25 -05:00
macb.c net: macb: add gmac multi-queue support 2015-08-11 13:27:15 -05:00
macb.h net: macb: add gmac multi-queue support 2015-08-11 13:27:15 -05:00
Makefile net/memac_phy: reuse driver for little endian SoCs 2015-04-23 08:55:57 -07:00
mcffec.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
mcfmii.c net: Use ARRAY_SIZE at appropriate places 2013-08-19 12:34:18 -05:00
mpc5xxx_fec.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
mpc5xxx_fec.h Move MPC5xxx_FEC driver to drivers/net 2008-08-29 13:58:07 -06:00
mpc512x_fec.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
mpc512x_fec.h MPC512x: remove include/mpc512x.h 2009-06-12 20:47:16 +02:00
mvgbe.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
mvgbe.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mvneta.c arm: mvebu: Enable NAND controller on MVEBU SoC's 2015-08-17 18:49:02 +02:00
natsemi.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
ne2000_base.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
ne2000_base.h Consolidate bool type 2013-04-01 16:33:52 -04:00
ne2000.c net: Use ARRAY_SIZE at appropriate places 2013-08-19 12:34:18 -05:00
ne2000.h NE2000: Fix regresssion introduced by e710185aae on non AX88796 2008-04-28 22:26:36 -07:00
netconsole.c video: Drop DEV_FLAGS_SYSTEM flag 2015-11-05 08:22:21 +01:00
ns8382x.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
pch_gbe.c dm: pci: Add a dm_ prefix to pci_get_bdf() 2016-01-12 10:19:09 -07:00
pch_gbe.h net: pch_gbe: Convert to driver model 2015-09-09 07:48:03 -06:00
pcnet.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
rtl8139.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
rtl8169.c dm: net: Convert rtl8169 to use DM PCI API 2016-01-12 10:19:09 -07:00
sandbox-raw.c dm: eth: Avoid blocking on packet reception 2015-07-21 17:39:40 -06:00
sandbox.c net: Fix delay in net_retry test 2016-01-07 12:18:58 -07:00
sh_eth.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
sh_eth.h net: sh-eth: Use memalign instead of orignal memroy alignment function 2014-11-04 09:27:40 +09:00
smc911x.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
smc911x.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
smc91111.c arm: Remove xaeniax board 2015-09-11 17:14:43 -04:00
smc91111.h arm: Remove xaeniax board 2015-09-11 17:14:43 -04:00
sunxi_emac.c dm: eth: Avoid blocking on packet reception 2015-07-21 17:39:40 -06:00
tsec.c ls102xa: etsec: Use proper settings for BE BDs 2015-09-01 21:39:03 -05:00
tsi108_eth.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
uli526x.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
vsc7385.c Move console definitions into a new console.h file 2015-11-19 20:27:50 -07:00
vsc9953.c drivers/net/vsc9953: Add GPL-2.0+ SPDX-License-Identifier 2015-09-21 08:29:48 -07:00
xilinx_axi_emac.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
xilinx_emaclite.c of: clean up OF_CONTROL ifdef conditionals 2015-08-18 13:46:05 -04:00
xilinx_ll_temac_fifo.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
xilinx_ll_temac_fifo.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
xilinx_ll_temac_mdio.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
xilinx_ll_temac_mdio.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
xilinx_ll_temac_sdma.c net: cosmetic: Fix var naming net <-> eth drivers 2015-04-18 11:11:33 -06:00
xilinx_ll_temac_sdma.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
xilinx_ll_temac.c net: ll_temac: Fix compilation warning because of phys_addr_t 2015-01-21 10:30:36 +01:00
xilinx_ll_temac.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
zynq_gem.c net: gem: Add driver dependencies to PHYLIB 2015-12-18 13:15:58 +01:00