BoneBlack buggy usb0 with kernel 4.14.256-bone53


We are having problems with the usb0/1 interfaces with latest bone 4.14.256-bone53 kernel. It is possible to connect to usb0, for example, but after some seconds everything is frozen or heavily delayed. Doing an ls may take a lot of seconds.

Here there some background…
We are trying to find a combination of kernel, distro and uboot that can be upgraded to the most updated revisions, as we need to have the maximum CVE applied. After some investigation it seems the following make sense:

  • Debian 10/11

  • Kernel 4.14.x bone

  • uboot 2021.10

We started off from the latest stable bone-debian-10.3-console-armhf-2020-04-06-1gb.img.xz
Everything works fine, that means:

  • HW access: uart, gpios, etc
  • usb0 interface
  • All other regular stuff

The next step was to change the kernel branch from ti 4.19.x to bone 4.14.x, as the ti 4.19 branch is not active anymore. And the 5.x kernels have other issues at the moment. It seems the same happens with bone 4.19.x branch.

(Additional tests were done with different uboot versions, the results were not affected by uboot version)

So we changed the kernel and everything seems fine but the usb0/1 interfaces started having this effect.
Actually the kernel 4.14 branch used to work, as we have been using 4.14.142-bone28 for a long time without problems. It seems the configfs-gadget could be related, as we keep having messages like follows. This doesn’t happen when the usb0 work fine.

[  823.240034] configfs-gadget gadget: high-speed config #1: c
[  871.634308] configfs-gadget gadget: high-speed config #1: c
[ 1069.198701] configfs-gadget gadget: high-speed config #1: c

This effect has been seen against a Debian 11 PC system

Has anyone experienced something similar?

Here is our output.

root@beaglebone:/home/debian# /opt/scripts/tools/
dogtag:[ Debian Buster Console Image 2020-04-06]
bootloader:[microSD-(push-button)]:[/dev/mmcblk0]:[U-Boot 2019.04-00002-g07d5700e21]:[location: dd MBR]
UBOOT: Booted Device-Tree:[am335x-boneblack-uboot-univ.dts]
UBOOT: Loaded Overlay:[BB-BONE-eMMC1-01-00A0]
/boot/uEnv.txt Settings:
pkg check: to individually upgrade run: [sudo apt install --only-upgrade <pkg>]
groups:[debian : debian adm kmem dialout cdrom floppy audio dip video plugdev users systemd-journal bluetooth netdev gpio pwm eqep remoteproc admin spi iio i2c docker tisdk weston-launch xenomai cloud9ide]
cmdline:[console=ttyO0,115200n8 bone_capemgr.uboot_capemgr_enabled=1 root=/dev/mmcblk0p1 ro rootfstype=ext4 rootwait coherent_pool=1M net.ifnames=0 lpj=1990656 rng_core.default_quality=100 splash]
dmesg | grep remote
[    2.359914] remoteproc remoteproc0: wkup_m3 is available
[    2.547951] remoteproc remoteproc0: powering up wkup_m3
[    2.553398] remoteproc remoteproc0: Booting fw image am335x-pm-firmware.elf, size 217148
[    2.573438] remoteproc remoteproc0: remote processor wkup_m3 is now up
dmesg | grep pru
dmesg | grep pinctrl-single
[    0.698514] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
dmesg | grep gpio-of-helper
[    0.708675] gpio-of-helper ocp:cape-universal: ready

Thanks in advance


We tracked down the issue to be between linux-image-4.14.226-bone49_1buster_armhf and

Starting off from bone-debian-10.3-console-armhf-2020-04-06-1gb.img.xz, upgrading the defaults ti kernel to bone49 keep the usb0 working as expected, upgrading to bone50 breaks it.


Hi @avives this is the diff between those two…

Other than the 4.14.226 → 4.14.232 diff…