Hi, On Wed, Jan 06, 2021 at 02:35:03PM +0800, Bin Meng wrote: > From: Bin Meng <bin.m...@windriver.com> > > At present, when booting U-Boot on QEMU sabrelite, we see: > > Net: Board Net Initialization Failed > No ethernet found. > > U-Boot scans PHY at address 4/5/6/7 (see board_eth_init() in the > U-Boot source: board/boundary/nitrogen6x/nitrogen6x.c). On the real > board, the Ethernet PHY is at address 6. Adjust this by updating the > "fec-phy-num" property of the fsl_imx6 SoC object. > > With this change, U-Boot sees the PHY but complains MAC address: > > Net: using phy at 6 > FEC [PRIME] > Error: FEC address not set. > > This is due to U-Boot tries to read the MAC address from the fuse, > which QEMU does not have any valid content filled in. However this > does not prevent the Ethernet from working in QEMU. We just need to > set up the MAC address later in the U-Boot command shell, by: > > => setenv ethaddr 00:11:22:33:44:55 >
With this patch in place, the standard Ethernet interface no longer works when booting sabrelite Linux images directly (without u-boot) using the following qemu command. qemu-system-arm -M sabrelite -kernel arch/arm/boot/zImage ... The Ethernet interface still instantiates, but packet transfer to the host no longer works. Reverting this patch fixes the problem for me. Is there a qemu command line parameter that is now necessary to instantiate the Ethernet interface when booting Linux ? Thanks, Guenter