Hi,
I've just started looking at the LS1043ARDB board to evalute performance. I'm using LSDK20.04 and booting from SD Card using the image spit out by `flex-installer -i mksdcard -m ls1043ardb`. This combines the default 5.4 kernel w/ the ubuntu_main rootfs image.
This seems to boot ok, but I've noticed that the USB generates errors at boot even when no devices are attached and the system generates around 59000 interrupts/s from two of the USB interrupts.
root@lsarm43:~# grep usb /proc/interrupts
46: 1 0 0 0 GICv2 92 Level xhci-hcd:usb1
47: 3057969 0 0 0 GICv2 93 Level xhci-hcd:usb3
48: 2024969 0 0 0 GICv2 95 Level xhci-hcd:usb5
root@lsarm43:~# uptime
15:38:49 up 1 min, 1 user, load average: 0.38, 0.20, 0.08
(5Million USB interrupts in the first minute of system boot from an idle system with nothing attached to USB)
I swapped the "bootpartition" for the 4.19 version (also built by NXP - just no longer the default in the mksdcard operation) and I see the same behaviour.
I see the following errors the the `dmesg` log, but I'm not sure if they're related:
[ 3.067550] dwc3 2f00000.usb3: Failed to get clk 'ref': -2
[ 3.073918] dwc3 3000000.usb3: Failed to get clk 'ref': -2
[ 3.079875] dwc3 3100000.usb3: Failed to get clk 'ref': -2
...more messages about USB buses being registered
[ 3.632556] usb usb5-port1: over-current condition
[ 3.648546] usb usb6-port1: over-current condition
It doesn't seem to matter if a USB device is attached or not. The behaviour is the same.
If I boot from the TinyDistro install in NOR flash (4.9.35 kernel) I don't see the same USB interrupt issues. (but this distro doesn't have the tools I need to evaluate the board easily).
Any ideas?
Solved! Go to Solution.
Hi,
I tried the provided recipe for generating the images. I encountered the same results.
I then realized that I was only booting the OS from SD. The RCW and
U-boot were both coming from the SPI flash. I flipped the SW4/5
jumpers to bootstrap the board from SD and that resolved my problem.
The firmware I'm running now was assembled from binaries downloaded
from NXP with:
flex-installer -i auto:lsdk2012 -m ls1043ardb -d /dev/sdb
This all seemed to work correctly:
root@localhost:~# dmesg | grep 'Linux version'
[ 0.000000] Linux version 5.4.47 (jenkins@saturn) (gcc version 7.5.0 (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04)) #3 SMP PREEMPT Fri Dec 11 04:27:52 CST 2020
root@localhost:~# uptime
16:50:35 up 5 min, 1 user, load average: 0.00, 0.06, 0.03
root@localhost:~# grep usb /proc/interrupts
46: 1 0 0 0 GICv2 92 Level xhci-hcd:usb1
47: 1 0 0 0 GICv2 93 Level xhci-hcd:usb3
this patch can fix LS1043 LSDK18 old uboot + linux 5.4 kernel USB high interrupts BUG
http://patchwork.ozlabs.org/project/uboot/patch/20190920093429.40435-1-ran.wang_1@nxp.com/
Hi,
I tried the provided recipe for generating the images. I encountered the same results.
I then realized that I was only booting the OS from SD. The RCW and
U-boot were both coming from the SPI flash. I flipped the SW4/5
jumpers to bootstrap the board from SD and that resolved my problem.
The firmware I'm running now was assembled from binaries downloaded
from NXP with:
flex-installer -i auto:lsdk2012 -m ls1043ardb -d /dev/sdb
This all seemed to work correctly:
root@localhost:~# dmesg | grep 'Linux version'
[ 0.000000] Linux version 5.4.47 (jenkins@saturn) (gcc version 7.5.0 (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04)) #3 SMP PREEMPT Fri Dec 11 04:27:52 CST 2020
root@localhost:~# uptime
16:50:35 up 5 min, 1 user, load average: 0.00, 0.06, 0.03
root@localhost:~# grep usb /proc/interrupts
46: 1 0 0 0 GICv2 92 Level xhci-hcd:usb1
47: 1 0 0 0 GICv2 93 Level xhci-hcd:usb3
There is the following message dump for this copmmand on our LS1043ARDB board:
NXP LSDK 2004 main
localhost login: root
Password:
Last login: Wed Jan 20 10:39:24 UTC 2021 on tty7
Welcome to NXP LSDK 2004 main (GNU/Linux 5.4.3 aarch64)
* Support: https://www.nxp.com/lsdk
* Documentation: https://lsdk.github.io/document
* Licensing: https://lsdk.github.io/eula
The programs included with the NXP LSDK are free software, the exact distribution
terms of some programs are described in the individual files in /usr/share/doc.
NXP LSDK comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law.
By using this LSDK, you indicate that you accept the terms of the Agreement in
the link above and you acknowledge that you have the authority, for yourself
or on behalf of your company, to bind your company to these terms.
root@localhost:~# grep usb /proc/interrupts
45: 1 0 GICv2 92 Level xhci-hcd:usb1
46: 1 0 GICv2 93 Level xhci-hcd:usb3
47: 1 0 GICv2 95 Level xhci-hcd:usb5
This image was prepared using the following commands:
Test your board using similar command sequence.