u-boot/drivers/net
Ryosuke Saito c5b42e3e9e net: sni_netsec: Add workaround for timeout error
The NETSEC GMAC occasionally falls into a weird state where
MAC_REG_DESC_SOFT_RST has never been cleared and shows errors like the
below when networking commands are issued:

    => ping 192.168.1.1
    ethernet@522d0000 Waiting for PHY auto negotiation to complete... done
    netsec_wait_while_busy: timeout
    Using ethernet@522d0000 device

    ARP Retry count exceeded; starting again
    ping failed; host 192.168.1.1 is not alive

It happens on not only 'ping' but also 'dhcp', 'tftp' and so on.

Luckily, restarting the NETSEC GMAC and trying again seems to fix the
problematic state. So first ensure that we haven't entered the state by
checking MAC_REG_DESC_SOFT_RST to be cleared; otherwise, restarting
NETSEC/PHY and trying again would work as a workaround.

Signed-off-by: Ryosuke Saito <ryosuke.saito@linaro.org>
Tested-by: Masahisa Kojima <masahisa.kojima@linaro.org>
2023-09-22 15:54:35 -04:00
..
bnxt net: Remove extraneous dependencies 2022-12-07 12:20:17 -05:00
fm global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
fsl-mc net: fsl-mc: sync remaining MC commands 2023-06-15 17:58:53 +08:00
ldpaa_eth net: fsl-mc: sync DPNI MC APIs 2023-06-15 17:58:53 +08:00
mscc_eswitch net: Remove extraneous dependencies 2022-12-07 12:20:17 -05:00
octeon global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
octeontx pci: Add mask parameter to dm_pci_map_bar() 2022-05-03 18:33:29 -04:00
octeontx2 cyclic: Use schedule() instead of WATCHDOG_RESET() 2022-09-18 10:26:33 +02:00
pfe_eth global: Use proper project name U-Boot 2023-06-12 13:24:31 +02:00
phy phy: adin: add readext and writeext support for mdio cmd 2023-07-27 14:32:12 -04:00
qe drivers: use dev_read_addr_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
ti net: ti: am65-cpsw-nuss: Get port mode register from standard "phys" property 2023-07-27 17:10:46 -04:00
ag7xxx.c global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
altera_tse.c net: altera_tsa: Switch to new U-Boot PHY API 2023-06-10 13:34:05 +02:00
altera_tse.h
aspeed_mdio.c drivers: net: add Aspeed MDIO driver 2021-11-23 09:57:56 +02:00
bcm-sf2-eth-gmac.c
bcm-sf2-eth-gmac.h
bcm-sf2-eth.c net: bcm-sf2: ensure mdiodev->name is NULL terminated after MDIO_NAME_LEN truncation 2021-09-28 18:50:56 +03:00
bcm-sf2-eth.h
bcm6348-eth.c treewide: Rename PHY_INTERFACE_MODE_NONE to PHY_INTERFACE_MODE_NA 2022-04-10 08:44:13 +03:00
bcm6368-eth.c net: bcm63xx: Don't check clk_free 2022-03-30 13:02:55 -04:00
bcmgenet.c bcmgenet, sun8i_emac: Don't connect PHY two times 2022-04-10 08:44:13 +03:00
calxedaxgmac.c WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
cortina_ni.c net: cortina_ni: buffer overrun 2021-02-24 16:51:49 -05:00
cortina_ni.h net: cortina_ni: Add eth support for Cortina Access CAxxxx SoCs 2021-01-27 10:47:44 -05:00
dc2114x.c net: dc2114x: Remove non-DM_ETH code 2022-12-07 16:04:16 -05:00
designware.c global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
designware.h global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
dm9000x.c drivers: use dev_read_addr_index_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
dm9000x.h
dsa_sandbox.c net: update NXP copyright text 2021-09-28 18:50:56 +03:00
dwc_eth_qos.c net: dwc_eth_qos: Add StarFive ethernet driver glue layer 2023-07-12 13:21:40 +08:00
dwc_eth_qos.h net: dwc_eth_qos: Add StarFive ethernet driver glue layer 2023-07-12 13:21:40 +08:00
dwc_eth_qos_imx.c net: dwc_eth_qos: Add board_interface_eth_init() for i.MX8M Plus 2023-03-30 13:47:04 +02:00
dwc_eth_qos_qcom.c net: dwc_eth_qos: Add Qcom ethernet driver glue layer 2023-02-10 12:50:00 -05:00
dwc_eth_qos_starfive.c net: dwc_eth_qos: Add StarFive ethernet driver glue layer 2023-07-12 13:21:40 +08:00
dwmac_meson8b.c drivers: use dev_read_addr_index_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
dwmac_s700.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
dwmac_socfpga.c
e1000.c net: e1000: Remove non-DM_ETH code 2022-12-07 16:04:17 -05:00
e1000.h net: e1000: Remove non-DM_ETH code 2022-12-07 16:04:17 -05:00
e1000_spi.c global: Convert simple_strtoul() with hex to hextoul() 2021-08-02 13:32:14 -04:00
eepro100.c global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
eth-phy-uclass.c net: phy: Handle reset-delay-us/reset-post-delay-us properties 2023-06-10 13:34:05 +02:00
ethoc.c net: ethoc: Switch to new U-Boot PHY API 2023-06-10 13:34:05 +02:00
fec_mxc.c net: fec_mxc: Add board_interface_eth_init() for i.MX8M Mini/Nano/Plus 2023-03-30 13:47:04 +02:00
fec_mxc.h net: fec_mxc: Remove non-DM_ETH code 2022-12-07 16:04:17 -05:00
fsl_enetc.c dm: core: Drop ofnode_is_available() 2022-09-29 16:11:31 -04:00
fsl_enetc.h blk: Rename if_type to uclass_id 2022-09-25 08:30:05 -06:00
fsl_enetc_mdio.c pci: Add mask parameter to dm_pci_map_bar() 2022-05-03 18:33:29 -04:00
fsl_ls_mdio.c drivers: net: fsl_ls_mdio: prevent a NULL pointer dereference 2023-02-02 14:44:53 -05:00
fsl_mcdmafec.c global: Move remaining CONFIG_SYS_* to CFG_SYS_* 2022-12-05 16:06:08 -05:00
fsl_mdio.c
ftgmac100.c net/ftgmac100: Add NC-SI mode support 2022-10-21 16:04:39 -04:00
ftgmac100.h
ftmac100.c net: ftmac100: add mii read and write callbacks 2023-02-10 13:41:07 -05:00
ftmac100.h net: ftmac100: add mii read and write callbacks 2023-02-10 13:41:07 -05:00
gmac_rockchip.c clk: Allow force setting clock defaults before relocation 2021-06-17 09:40:57 +08:00
higmacv300.c treewide: Rename PHY_INTERFACE_MODE_NONE to PHY_INTERFACE_MODE_NA 2022-04-10 08:44:13 +03:00
Kconfig net: dwc_eth_qos: Add StarFive ethernet driver glue layer 2023-07-12 13:21:40 +08:00
ks8851_mll.c net: ks8851_mll: Remove legacy non-DM_ETH code and callers 2022-08-20 21:18:15 -04:00
ks8851_mll.h
ksz9477.c net: ksz9477: add support for KSZ9893 GbE switch 2023-07-27 14:32:12 -04:00
liteeth.c liteeth: LiteX Ethernet device 2022-11-28 10:25:17 -05:00
macb.c net: macb: Remove non-DM_ETH code 2022-12-07 16:04:17 -05:00
macb.h
Makefile net: dwc_eth_qos: Add StarFive ethernet driver glue layer 2023-07-12 13:21:40 +08:00
mcffec.c global: Move remaining CONFIG_SYS_* to CFG_SYS_* 2022-12-05 16:06:08 -05:00
mcfmii.c global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
mdio-ipq4019.c
mdio_mux_i2creg.c
mdio_mux_meson_g12a.c net: add Amlogic Meson G12A MDIO MUX driver 2021-04-06 11:10:29 +02:00
mdio_mux_mmioreg.c net: add MMIO Register MDIO MUX driver 2021-04-06 11:10:29 +02:00
mdio_mux_sandbox.c treewide: use dm_mdio_read/write/reset() wrappers 2022-04-10 08:44:12 +03:00
mdio_sandbox.c
mpc8xx_fec.c net: mpc8xx_fec: Migrate to DM_ETH 2022-08-08 10:50:20 -04:00
mt7620-eth.c treewide: Rename PHY_INTERFACE_MODE_NONE to PHY_INTERFACE_MODE_NA 2022-04-10 08:44:13 +03:00
mt7628-eth.c global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
mtk_eth.c net: mediatek: add support for MediaTek MT7988 SoC 2023-08-03 09:40:50 -04:00
mtk_eth.h net: mediatek: add support for MediaTek MT7988 SoC 2023-08-03 09:40:50 -04:00
mv88e6xxx.c net: add MV88E6xxx DSA driver 2023-02-02 14:44:53 -05:00
mvgbe.c global: Remove unused CONFIG symbols 2022-12-22 10:31:48 -05:00
mvgbe.h global: Remove unused CONFIG symbols 2022-12-22 10:31:48 -05:00
mvmdio.c drivers: use dev_read_addr_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
mvneta.c Correct SPL uses of PHY_FIXED 2023-03-02 17:45:58 -05:00
mvpp2.c drivers: use devfdt_get_addr_index_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
netconsole.c global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
npcm750_eth.c global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
pch_gbe.c net: pch_gbe: Switch to new U-Boot PHY API 2023-06-10 13:34:05 +02:00
pch_gbe.h
pcnet.c net: pcnet: Remove non-DM_ETH code 2022-12-07 16:04:17 -05:00
pic32_eth.c treewide: Rename PHY_INTERFACE_MODE_NONE to PHY_INTERFACE_MODE_NA 2022-04-10 08:44:13 +03:00
pic32_eth.h
pic32_mdio.c
ravb.c net: ravb: Drop reset GPIO handling in favor of common code 2023-06-10 13:34:05 +02:00
rswitch.c net: rswitch: Add Renesas Ethernet Switch 2023-04-16 16:18:29 +02:00
rtl8139.c net: rtl8139: Remove non-DM_ETH code 2022-12-07 16:04:17 -05:00
rtl8169.c net: rtl8169: Add one device ID 0x8161 2023-08-02 11:02:32 +08:00
sandbox-raw-bus.c
sandbox-raw.c sandbox: net: Ensure host name is always a valid string 2021-07-15 18:42:05 -04:00
sandbox.c sandbox: net: Remove fake-host-hwaddr 2022-06-08 13:59:52 -04:00
sh_eth.c net: sh_eth: Fix RX error handling 2023-06-10 13:34:05 +02:00
sh_eth.h global: Migrate CONFIG_SH_ETHER_ALIGNE_SIZE to CFG 2022-12-23 10:15:12 -05:00
sja1105.c dm: core: Drop ofnode_is_available() 2022-09-29 16:11:31 -04:00
smc911x.c net: smc911x: Remove non-DM_ETH code 2022-12-07 16:04:17 -05:00
smc911x.h WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
sni_ave.c net: ave: Switch to new U-Boot PHY API 2023-06-10 13:34:05 +02:00
sni_netsec.c net: sni_netsec: Add workaround for timeout error 2023-09-22 15:54:35 -04:00
sun8i_emac.c net: sun8i-emac: Remove the SoC variant ID 2023-04-12 00:17:21 +01:00
sunxi_emac.c net: sunxi_emac: Switch to new U-Boot PHY API 2023-06-10 13:34:05 +02:00
tsec.c Merge branch 'next' 2023-01-09 11:30:08 -05:00
vsc7385.c global: Move remaining CONFIG_SYS_* to CFG_SYS_* 2022-12-05 16:06:08 -05:00
xilinx_axi_emac.c net: axi_emac: Change return value to -EAGAIN if RX is not ready 2023-07-21 09:00:39 +02:00
xilinx_axi_mrmac.c arm64: zynqmp: Switch to amd.com emails 2023-07-21 09:00:38 +02:00
xilinx_axi_mrmac.h arm64: zynqmp: Switch to amd.com emails 2023-07-21 09:00:38 +02:00
xilinx_emaclite.c net: emaclite: fix handling for IP packets with specific lengths 2022-10-05 11:36:54 +02:00
zynq_gem.c net: zynq_gem: Don't hardcode the MDC clock divisor 2023-07-21 09:00:38 +02:00