qemu-e2k/hw/net
Guenter Roeck df3f5efe10 hw/net/imx_fec: Support two Ethernet interfaces connected to single MDIO bus
The SOC on i.MX6UL and i.MX7 has 2 Ethernet interfaces. The PHY on each may
be connected to separate MDIO busses, or both may be connected on the same
MDIO bus using different PHY addresses. Commit 461c51ad42 ("Add a phy-num
property to the i.MX FEC emulator") added support for specifying PHY
addresses, but it did not provide support for linking the second PHY on
a given MDIO bus to the other Ethernet interface.

To be able to support two PHY instances on a single MDIO bus, two properties
are needed: First, there needs to be a flag indicating if the MDIO bus on
a given Ethernet interface is connected. If not, attempts to read from this
bus must always return 0xffff. Implement this property as phy-connected.
Second, if the MDIO bus on an interface is active, it needs a link to the
consumer interface to be able to provide PHY access for it. Implement this
property as phy-consumer.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Message-id: 20230315145248.1639364-2-linux@roeck-us.net
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2023-04-20 10:25:43 +01:00
..
can include/hw/pci: Split pci_device.h off pci.h 2023-01-08 01:54:22 -05:00
fsl_etsec fsl_etsec: Use hw/net/mii.h 2023-03-10 15:35:38 +08:00
rocker rocker: Tweak stubbed out monitor commands' error messages 2023-02-23 14:10:17 +01:00
allwinner_emac.c bulk: Rename TARGET_FMT_plx -> HWADDR_FMT_plx 2023-01-18 11:14:34 +01:00
allwinner-sun8i-emac.c bulk: Rename TARGET_FMT_plx -> HWADDR_FMT_plx 2023-01-18 11:14:34 +01:00
cadence_gem.c
dp8393x.c
e1000_common.h e1000: Split header files 2023-03-10 15:35:38 +08:00
e1000_regs.h e1000: Split header files 2023-03-10 15:35:38 +08:00
e1000.c e1000: Split header files 2023-03-10 15:35:38 +08:00
e1000e_core.c igb: Fix DMA requester specification for Tx packet 2023-03-28 13:10:55 +08:00
e1000e_core.h e1000e: Implement system clock 2023-03-10 15:35:38 +08:00
e1000e.c e1000: Split header files 2023-03-10 15:35:38 +08:00
e1000x_common.c e1000: Split header files 2023-03-10 15:35:38 +08:00
e1000x_common.h e1000: Split header files 2023-03-10 15:35:38 +08:00
e1000x_regs.h igb: add ICR_RXDW 2023-03-28 13:10:55 +08:00
eepro100.c include/hw/pci: Split pci_device.h off pci.h 2023-01-08 01:54:22 -05:00
etraxfs_eth.c
ftgmac100.c hw/net: Fix read of uninitialized memory in ftgmac100 2023-02-07 09:02:04 +01:00
i82596.c
i82596.h
igb_common.h Intrdocue igb device emulation 2023-03-10 15:35:38 +08:00
igb_core.c igb: respect VMVIR and VMOLR for VLAN 2023-03-28 13:10:55 +08:00
igb_core.h igb: implement VFRE and VFTE registers 2023-03-28 13:10:55 +08:00
igb_regs.h igb: implement VFRE and VFTE registers 2023-03-28 13:10:55 +08:00
igb.c igb: Save more Tx states 2023-03-28 13:10:55 +08:00
igbvf.c Intrdocue igb device emulation 2023-03-10 15:35:38 +08:00
imx_fec.c hw/net/imx_fec: Support two Ethernet interfaces connected to single MDIO bus 2023-04-20 10:25:43 +01:00
Kconfig Intrdocue igb device emulation 2023-03-10 15:35:38 +08:00
lan9118.c hw/net/lan9118: log [read|write]b when mode_16bit is enabled rather than abort 2023-02-17 13:31:33 +08:00
lance.c
lasi_i82596.c
mcf_fec.c
meson.build Intrdocue igb device emulation 2023-03-10 15:35:38 +08:00
mipsnet.c
msf2-emac.c
mv88w8618_eth.c
ne2000-isa.c
ne2000-pci.c include/hw/pci: Split pci_device.h off pci.h 2023-01-08 01:54:22 -05:00
ne2000.c
ne2000.h
net_rx_pkt.c net/eth: Introduce EthL4HdrProto 2023-03-10 15:35:38 +08:00
net_rx_pkt.h net/eth: Introduce EthL4HdrProto 2023-03-10 15:35:38 +08:00
net_tx_pkt.c hw/net/net_tx_pkt: Align l3_hdr 2023-03-28 13:10:55 +08:00
net_tx_pkt.h igb: Fix DMA requester specification for Tx packet 2023-03-28 13:10:55 +08:00
npcm7xx_emc.c
opencores_eth.c
pcnet-pci.c include/hw/pci: Split pci_device.h off pci.h 2023-01-08 01:54:22 -05:00
pcnet.c bulk: Rename TARGET_FMT_plx -> HWADDR_FMT_plx 2023-01-18 11:14:34 +01:00
pcnet.h
rtl8139.c include/hw/pci: Split pci_device.h off pci.h 2023-01-08 01:54:22 -05:00
smc91c111.c
spapr_llan.c
stellaris_enet.c
sungem.c include/hw/pci: Split pci_device.h off pci.h 2023-01-08 01:54:22 -05:00
sunhme.c include/hw/pci: Split pci_device.h off pci.h 2023-01-08 01:54:22 -05:00
trace-events igb: handle PF/VF reset properly 2023-03-28 13:10:55 +08:00
trace.h
tulip.c include/hw/pci: Split pci_device.h off pci.h 2023-01-08 01:54:22 -05:00
tulip.h
vhost_net-stub.c
vhost_net.c
virtio-net.c net/eth: Introduce EthL4HdrProto 2023-03-10 15:35:38 +08:00
vmware_utils.h
vmxnet3_defs.h include/hw/pci: Split pci_device.h off pci.h 2023-01-08 01:54:22 -05:00
vmxnet3.c igb: Fix DMA requester specification for Tx packet 2023-03-28 13:10:55 +08:00
vmxnet3.h
vmxnet_debug.h
xen_nic.c hw/xen: Use XEN_PAGE_SIZE in PV backend drivers 2023-03-07 17:04:30 +00:00
xgmac.c
xilinx_axienet.c Drop duplicate #include 2023-02-08 07:28:05 +01:00
xilinx_ethlite.c bulk: Rename TARGET_FMT_plx -> HWADDR_FMT_plx 2023-01-18 11:14:34 +01:00