u-boot-brain/drivers/net
Andre Przywara 4f0278dac5 net: sun8i-emac: Lower MDIO frequency
When sending a command via the MDIO bus, the Designware MAC expects some
bits in the CMD register to describe the clock divider value between
the main clock and the MDIO clock.
So far we were omitting these bits, resulting in setting "00", which
means "/ 16", so ending up with an MDIO frequency of either 18.75 or
12.5 MHz.
All the internal PHYs in the H3/H5/H6 SoCs as well as the Gbit Realtek
PHYs seem to be fine with that - although it looks like to be severly
overclocked (the MDIO spec limits the frequency to 2.5 MHz).
However the external 100Mbit PHY on the Pine64 (non-plus) board is
not happy with that, Ethernet was actually never working there, as the
PHY didn't probe.

As we set the EMAC clock (via AHB2) to 300 MHz in ATF (on the 64-bit
SoCs), and use 200 MHz on the H3, we need the highest divider of 128
to let the MDIO clock end up below the required 2.5 MHz.

This enables Ethernet on the Pine64(non-plus).

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Acked-by: Maxime Ripard <mripard@kernel.org>
Tested-by: Amit Singh Tomar <amittomer25@gmail.com> # Pine64+
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
2020-10-21 23:45:39 +05:30
..
fm driver: net: fm: add support for XFI 2020-09-24 20:57:32 +05:30
fsl-mc treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
ldpaa_eth net: ldpaa_eth: Include device_compat.h 2020-10-15 18:36:56 -04:00
mscc_eswitch common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
octeontx net: Add NIC controller driver for OcteonTX 2020-10-14 07:55:56 +02:00
octeontx2 net: Add NIC controller driver for OcteonTX2 2020-10-14 07:55:56 +02:00
pfe_eth net: pfe_eth: Remove non-DM code check from pfe_spi_flash_init 2020-09-24 20:57:32 +05:30
phy Merge branch 'next' 2020-10-05 14:10:59 -04:00
qe net, qe: add DM support for QE UEC ethernet 2020-09-17 06:09:53 +02:00
ti net: ti: cpsw: Fix not calling dev_dbg with a device 2020-09-30 08:53:26 -04:00
8390.h drivers/net : move net drivers to drivers/net 2007-11-25 18:35:17 +01:00
ag7xxx.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
altera_tse.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
altera_tse.h common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
armada100_fec.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
armada100_fec.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
at91_emac.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
ax88180.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
ax88180.h AX88180: use standard I/O accessors 2010-07-12 00:14:29 -07:00
ax88796.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
ax88796.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
bcm-sf2-eth-gmac.c common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
bcm-sf2-eth-gmac.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
bcm-sf2-eth.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
bcm-sf2-eth.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
bcm6348-eth.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
bcm6368-eth.c net: bcm6368: Fix not calling dev_info with a device 2020-09-30 08:53:04 -04:00
bcmgenet.c bcmgenet: Add support for rgmii-rxid 2020-09-08 16:43:48 +02:00
calxedaxgmac.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
cs8900.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
cs8900.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dc2114x.c net: dc2114x: Add DM support 2020-07-25 14:20:56 +02:00
designware.c dm: add cells_count parameter in *_count_phandle_with_args 2020-10-06 09:07:54 -06:00
designware.h common: Drop net.h from common header 2020-05-18 17:33:31 -04:00
dm9000x.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
dm9000x.h dm9000 remove dead external phy support, gpio fix 2008-08-26 23:08:19 -07:00
dnet.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
dnet.h dnet: driver for Dave DNET ethernet controller 2009-02-10 00:16:27 +01:00
dwc_eth_qos.c net: dwc_eth_qos: Convert to use APIs which support live DT 2020-09-30 16:48:18 -04:00
dwmac_s700.c net: designware: s700: Add glue code for S700 mac 2020-07-07 17:11:58 -04:00
dwmac_socfpga.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
e1000_spi.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
e1000.c net: e1000: add defaults for i210 TX/RX PBSIZE 2020-10-14 11:16:34 -04:00
e1000.h net: e1000: add defaults for i210 TX/RX PBSIZE 2020-10-14 11:16:34 -04:00
eepro100.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
ep93xx_eth.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
ep93xx_eth.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
eth-phy-uclass.c net: Add eth phy generic driver for shared MDIO 2020-05-10 13:24:48 +02:00
ethoc.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
fec_mxc.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
fec_mxc.h treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
fsl_enetc_mdio.c drivers: net: fsl_enetc_mdio: return with time-out if HW is stuck 2019-12-09 09:47:43 -06:00
fsl_enetc.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
fsl_enetc.h common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
fsl_ls_mdio.c drivers: net: add Layerscape mEMAC MDIO driver 2020-04-29 10:49:20 +05:30
fsl_mcdmafec.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
fsl_mdio.c net: fsl_mdio: Correct the MII management register block address 2020-09-24 08:27:44 -04:00
ftgmac100.c net: ftgmac100: Add support for board specific PHY interface address 2020-09-30 16:48:18 -04:00
ftgmac100.h common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
ftmac100.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
ftmac100.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
ftmac110.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
ftmac110.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
gmac_rockchip.c common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
higmacv300.c common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
Kconfig net: Add NIC controller driver for OcteonTX2 2020-10-14 07:55:56 +02:00
ks8851_mll.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
ks8851_mll.h net: ks8851_mll: add ethernet support 2013-06-24 19:11:14 -05:00
lan91c96.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
lan91c96.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
lpc32xx_eth.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
macb.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
macb.h net: macb: add support for faster clk rates 2019-07-25 13:13:30 -05:00
Makefile net: Add NIC controller driver for OcteonTX2 2020-10-14 07:55:56 +02:00
mcffec.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
mcfmii.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
mdio_mux_i2creg.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
mdio_mux_sandbox.c test: dm: add a test for MDIO MUX DM uclass 2019-07-18 16:37:13 -05:00
mdio_sandbox.c test: dm_mdio: avoid out of bounds access 2019-09-04 11:37:19 -05:00
mpc8xx_fec.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
mt7628-eth.c common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
mtk_eth.c eth: mtk-eth: enable mt7629 sgmii mode support in mediatek eth driver 2020-07-28 22:44:00 -04:00
mtk_eth.h eth: mtk-eth: enable mt7629 sgmii mode support in mediatek eth driver 2020-07-28 22:44:00 -04:00
mvgbe.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
mvgbe.h net: mvgbe: convert to DM 2018-07-26 14:08:21 -05:00
mvmdio.c common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
mvneta.c net: mvneta: Convert netdev_xxx to dev_xxx 2020-09-30 08:53:14 -04:00
mvpp2.c net: mvpp2: Convert netdev_xxx to dev_xxx 2020-09-30 08:53:18 -04:00
natsemi.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
ne2000_base.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
ne2000_base.h common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
ne2000.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
ne2000.h NE2000: Fix regresssion introduced by e710185aae on non AX88796 2008-04-28 22:26:36 -07:00
netconsole.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
ns8382x.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
pch_gbe.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
pch_gbe.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
pcnet.c net: Drop duplicate include of dm.h in pcnet.c 2020-08-03 22:19:54 -04:00
pic32_eth.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
pic32_eth.h common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
pic32_mdio.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
ravb.c net: ravb: Remove writeext function call 2020-09-26 17:25:44 +02:00
rtl8139.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
rtl8169.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
sandbox-raw-bus.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
sandbox-raw.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
sandbox.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
sh_eth.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
sh_eth.h net: sh_eth: Fix 64bit build warnings 2019-08-09 23:15:01 +02:00
smc911x.c Revert "net: smc911x: Automatically Update ethaddr with MAC" 2020-10-01 14:51:58 -04:00
smc911x.h common: Drop net.h from common header 2020-05-18 17:33:31 -04:00
smc91111.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
smc91111.h common: Drop net.h from common header 2020-05-18 17:33:31 -04:00
sni_ave.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
sun8i_emac.c net: sun8i-emac: Lower MDIO frequency 2020-10-21 23:45:39 +05:30
sunxi_emac.c net: sunxi: Fix not calling dev_xxx with a device 2020-09-30 08:53:22 -04:00
tsec.c net: tsec: Add the compatible string "gianfar" support 2020-09-24 08:27:44 -04:00
uli526x.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
vsc7385.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
vsc9953.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
xilinx_axi_emac.c net: xilinx: axi_emac: Typecast flush_cache arguments 2020-09-23 10:31:40 +02:00
xilinx_emaclite.c treewide: convert devfdt_get_addr() to dev_read_addr() 2020-07-25 14:46:57 -06:00
zynq_gem.c net: gem: Add support for more PHYs on MDIO bus 2020-09-23 10:31:40 +02:00