We cannot use eqos ethernet at singe ethernet.
Our board is custom board base on imx8mp-evk.
Custom board different from imx8mp-evk on eqos single ethernet.
My understanding is if we don't need to use fec, we just set status = "disabled"; in imx8mp-evk.dts.
The problem is if when I set fec disabled only use eqos port, Igot error "EQOS_DMA_MODE_SWR stuckFAILED: -110".
But fec status = "okay"; case was fine even if our board don't have fec phy chip.
please let me know about that reason.
I'm something wrong?
&fec {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_fec>;
phy-mode = "rgmii-id";
phy-handle = <ðphy1>;
fsl,magic-packet;
// status = "okay";
status = "disabled"; //Not use
mdio {
#address-cells = <1>;
#size-cells = <0>;
ethphy1: ethernet-phy@1 {
compatible = "ethernet-phy-ieee802.3-c22";
reg = <1>;
eee-broken-1000t;
};
};
};
uboot log
U-Boot 2022.04-dirty (Jul 26 2024 - 10:20:19 +0900)
CPU: i.MX8MP[6] rev1.1 1800 MHz (running at 1200 MHz)
CPU: Commercial temperature grade (0C to 95C) at 45C
Reset cause: POR
Model: NXP i.MX 8M Plus Based Custom Board
DRAM: 4 GiB
Core: 81 devices, 24 uclasses, devicetree: separate
MMC: FSL_SDHC: 0
Loading Environment from nowhere... OK
[*]-Video Link 0fail to find output device
probe video device failed, ret -19
[0] lcd-controller@32e80000, video
fail to find output device
probe video device failed, ret -19
In: serial
Out: serial
Err: serial
SEC0: RNG instantiated
BuildInfo:
- ATF 8dbe286
MMC Device 1 not found
no mmc device at slot 1
Detect USB boot. Will enter fastboot mode!
Net:
Warning: ethernet@30bf0000 (eth1) using random MAC address - 0a:ad:b2:b1:75:bd
eth1: ethernet@30bf0000 [PRIME]
Fastboot: Normal
Boot from USB for mfgtools
*** Warning - Use default environment for mfgtools
, using default environment
Run bootcmd_mfg: run mfgtool_args;if iminfo ${initrd_addr}; then if test ${tee} = yes; then bootm ${tee_addr} ${initrd_addr} ${fdt_addr}; else booti ${loadaddr} ${initrd_addr} ${fdt_addr}; fi; else echo "Run fastboot ..."; fastboot 0; fi;
Hit any key to stop autoboot: 0
## Checking Image at 43800000 ...
Unknown image format!
Run fastboot ...
u-boot=> env set ipaddr 192.168.xx.xx
u-boot=> env set netmask 255.255.0.0
u-boot=> ping 192.168.xx.xx
EQOS_DMA_MODE_SWR stuckFAILED: -110
Solved! Go to Solution.
There are several issues with Uboot and EQOS in older versions. I guess it was simply no uses case for devs to make it working as single ethernet. Best is you checkout a newer Uboot version. Things get better there. You can also address uboot mailing list.
Pretty sure there is no need to enable that FEC interface. But for that you need to change the board files - at least in this old 2204 version. You can read that init of this is coupled there, for no real reason. Which uboot version (mainline, nxp, version) are you using? Better go for a newer one, there are a lot of changes for the qos driver... But if this trick solves your problem, that is ok too.
I used u-boot branch lf_v2022.04(default).
I will try to use lf_v2024.04.
lf_v2024.04 dts file is so different from lf_v2022.04 dts file.
I will report later when I try to set fec "status = disabled" later.
lf_v2024.04 u-boot case, it is not so different from lf_v2022.04 results about fec status setting.
It still need set fes status="okay".
Thank you for your advice.
There are several issues with Uboot and EQOS in older versions. I guess it was simply no uses case for devs to make it working as single ethernet. Best is you checkout a newer Uboot version. Things get better there. You can also address uboot mailing list.
s_arendt-san,
Thank you tell me about reason from no uses case.
I think, that error also come from fec disabled.
So we must need fec set status = "okay"; even if we don't use fec.
But I need care of pinctrl because our custom board these fec port are non connection.
If these port active to fec port, it may occur some trouble by input pins.
So I decide to set bellow simple settings without pinctrl-0.
// Dummy settings for activate eqos
&fec {
pinctrl-names = "default";
phy-mode = "rgmii-id";
status = "okay";
};
this case, u-boot ping said that bellow. (Could not get PHY for FEC1: addr 1)
u-boot=> ping 192.168.xx.xx
Could not get PHY for FEC1: addr 1
ethernet@30bf0000 Waiting for PHY auto negotiation to complete....... done
Using ethernet@30bf0000 device
host 192.168.xx.xx is alive