No USB with CM4 module

Mario Lombardo ml at akamo.de
Tue Mar 14 15:17:12 CET 2023


Dear u-boot list members,

I just experience issues with the RPi CM4 Module and U-Boot.

I try to migrate a linux (Raspi Bullseye) from direct loading to use U-Boot as loader. When I load the CM4 direct using the PI-loader (config.txt), everything works. But when I change the kernel to “u-boot.bin” in the config.txt, no USB is working at all (neither within U-Boot nor within Linux).

U-Boot> version
U-Boot 2022.10 (Mar 14 2023 - 14:47:34 +0100)

arm-linux-gnueabihf-gcc (Debian 10.2.1-6) 10.2.1 20210110
GNU ld (GNU Binutils for Debian) 2.35.2
U-Boot> usb start
starting USB…
No working controllers found
U-Boot>

The U-Boot is compiled as rpi_4_32b_defconfig with DWC2 enabled:
[…]
CONFIG_USB_DWC2=y
CONFIG_USB_DWC2_BUFFER_SIZE=64
[…]

Now when I start Linux as follows:

fdt addr ${fdt_addr}
fdt get value bootargs /chosen bootargs
setexpr bootargs sub "console=ttyAMA0" "console=ttyS0" “$bootargs”
fatload mmc 0:1 ${kernel_addr_r} “kernel7l.img”
bootz ${kernel_addr_r} - ${fdt_addr}

I´m able to login using the serial console. But I can not any USB Device:

pi:~# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

The Device Tree seems to be identical to the version without U-Boot:

pi:~# dtc -I fs -O dts /sys/firmware/devicetree/base/soc/usb at 7e980000/ -f
/dts-v1/;

/ {
         power-domains = <0x13 0x06>;
         compatible = "brcm,bcm2835-usb”;
         clocks = <0x19>;
         clock-names = “otg”;
         phy-names = "usb2-phy”;
         g-rx-fifo-size = <0x22e>;
         status = “okay”;
         #address-cells = <0x01>;
         interrupts = <0x00 0x49 0x04 0x00 0x28 0x04>;
         #size-cells = <0x00>;
         phandle = <0xb7>;
         phys = <0x1a>;
         reg = <0x7e980000 0x10000 0x7e00b200 0x200>;
         dr_mode = “host”;
         g-tx-fifo-size = <0x200 0x200 0x200 0x200 0x200 0x100 0x100>;
         interrupt-names = "usb\0soft”;
         g-np-tx-fifo-size = <0x20>;
         name = “usb”;
};

However I cannot see any USB Devices using U-Boot.

Any ideas? What is U-Boot doing different during boot compared to the default boot process?

Thank you very much.

Mario


More information about the U-Boot mailing list