Hello,
I am working on a custom board based on imx8mp, and I am using the eqos eth interface with at broadcom bcm54213pe phy.
Everything works perfecly fine: I am able to configure and bring up the interface and the interface works perfectly (iperf3 benchmarks very close to 1 Gbps).
But... I have a big problem when I try to bring down the interface (via ifdown)...
This is what happens almost always:
root@myboard:~# ifdown eth0
[ 1380.106871] imx-dwmac 30bf0000.ethernet eth0: Link is Down
[ 1380.132249] imx-dwmac 30bf0000.ethernet eth0: FPE workqueue stop
[ 1406.211325] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[ 1406.217430] rcu: 1-...0: (5 ticks this GP) idle=53a4/1/0x4000000000000000 softirq=6359/6360 fqs=2243
[ 1406.226652] (detected by 0, t=5252 jiffies, g=7889, q=16 ncpus=4)
[ 1406.232833] Task dump for CPU 1:
[ 1406.236060] task:ip state:R running task stack:0 pid:1606 ppid:1592 flags:0x0000000e
[ 1406.245977] Call trace:
[ 1406.248422] __switch_to+0xf0/0x170
[ 1406.251917] 0x0
But sometimes it simply hangs (and I have to reboot)... other times it complains about the fact that the system can't set the CPU voltage...
The OS results from a Yocto compilation; I basically use the standard im8mp.dtsi as a base and then I wrote my own dts (attached here).
I really do not know how to debug further or what to attempt...
Any ideas?
Thanks + regards,
/Morix