Colibri IMX6ULL USB devices not detected in yocto branch zeus with linux-toradex-mainline

Dear Community,

Currently our Colibri iMX6ULL does not detect any USB devices when using linux-toradex-mainline kernel in yocto branch zeus. We have tested several storage usb sticks as well as wifi sticks.

We build the console-tdx-image as follows:

  1. repo init -u Index of /toradex-bsp-platform.git -b LinuxImage4.0
  2. repo sync
  3. . export
  4. Set PREFERRED_PROVIDER_virtual/kernel_colibri-imx6ull = “linux-toradex-mainline” and MACHINE=“colibri-imx6ull” in conf/local.conf.
  5. bitbake console-tdx-image
    (Output of uname -r: 5.4.6-4.0.0-devel+git.a592a95575cd)

Reproduce problem:

  1. Boot device and login
  2. Plugin any usb device
  3. It will not show in lsusb and there is no message in dmesg indicating that something has been plugged in.

Output of lsusb always remains:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

We are looking forward to your opinion on this!

Best regards
Corinna

Could you provide dmsg output after USB device insertion?

The output before and after inserting an usb device is the same. It looks as follows:

[    0.000000] Booting Linux on physical CPU 0x0                                
[    0.000000] Linux version 5.4.6-4.0.0-devel+git.a592a95575cd (oe-user@oe-host
) (gcc version 9.2.0 (GCC)) #1 Tue Apr 14 10:36:33 UTC 2020                     
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=50c53c7d  
[    0.000000] CPU: div instructions available: patching division code          
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instructio
n cache                                                                         
[    0.000000] OF: fdt: Machine model: Toradex Colibri iMX6ULL 512MB on Colibri 
Evaluation Board V3                                                             
[    0.000000] Memory policy: Data cache writeback                              
[    0.000000] efi: Getting EFI parameters from FDT:                            
[    0.000000] efi: UEFI not found.                                             
[    0.000000] cma: Reserved 64 MiB at 0x9c000000                               
[    0.000000] On node 0 totalpages: 131072                                     
[    0.000000]   Normal zone: 1152 pages used for memmap                        
[    0.000000]   Normal zone: 0 pages reserved                                  
[    0.000000]   Normal zone: 131072 pages, LIFO batch:31                       
[    0.000000] CPU: All CPU(s) started in SVC mode.                             
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768                    
[    0.000000] pcpu-alloc: [0] 0                                                
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 129920    
[    0.000000] Kernel command line: user_debug=30 nfsrootdebug root=/dev/nfs rw 
nfsroot=192.168.10.34:/rootfs,v4,tcp,clientaddr=0.0.0.0 ip=192.168.10.2:192.168.
10.34:192.168.10.34:255.255.255.0:toradex::off console=tty1 console=ttymxc0,1152
00n8 consoleblank=0 video=mxsfb:640x480M-16@60                                  
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes, l
inear)                                                                          
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes, li
near)                                                                           
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off          
[    0.000000] Memory: 438840K/524288K available (7168K kernel code, 884K rwdata
, 3848K rodata, 1024K init, 418K bss, 19912K reserved, 65536K cma-reserved, 0K h
ighmem)                                                                         
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1       
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16                  
[    0.000000] random: get_random_bytes called from start_kernel+0x27b/0x3f4 wit
h crng_init=0                                                                   
[    0.000000] Switching to timer-based delay loop, resolution 41ns             
[    0.000014] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478
484971ns                                                                        
[    0.000049] clocksource: mxc_timer1: mask: 0xffffffff max_cycles: 0xffffffff,
 max_idle_ns: 79635851949 ns                                                    
[    0.002350] Console: colour dummy device 80x30                               
[    0.003031] printk: console [tty1] enabled                                   
[    0.003104] Calibrating delay loop (skipped), value calculated using timer fr
equency.. 48.00 BogoMIPS (lpj=240000)                                           
[    0.003170] pid_max: default: 32768 minimum: 301                             
[    0.003626] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linea
r)                                                                              
[    0.003691] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, 
linear)                                                                         
[    0.005279] CPU: Testing write buffer coherency: ok                          
[    0.006408] Setting up static identity map for 0x80100000 - 0x80100054       
[    0.012920] EFI services will not be available.                              
[    0.013555] devtmpfs: initialized                                            
[    0.026622] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7
 rev 5                                                                          
[    0.027134] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, ma
x_idle_ns: 19112604462750000 ns                                                 
[    0.027208] futex hash table entries: 256 (order: -1, 3072 bytes, linear)    
[    0.032291] pinctrl core: initialized pinctrl subsystem                      
[    0.034283] NET: Registered protocol family 16                               
[    0.048230] DMA: preallocated 256 KiB pool for atomic coherent allocations   
[    0.050407] cpuidle: using governor ladder                                   
[    0.050459] cpuidle: using governor menu                                     
[    0.060336] vdd3p0: supplied by regulator-dummy                              
[    0.061394] cpu: supplied by regulator-dummy                                 
[    0.062396] vddsoc: supplied by regulator-dummy                              
[    0.079394] No ATAGs?                                                        
[    0.079426] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint 
registers.                                                                      
[    0.079506] hw-breakpoint: maximum watchpoint size is 8 bytes.               
[    0.080604] imx6ul-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver    
[    0.082018] imx6ul-pinctrl 2290000.iomuxc-snvs: initialized IMX pinctrl drive
r                                                                               
[    0.082677] Serial: AMBA PL011 UART driver                                   
[    0.104432] cryptd: max_cpu_qlen set to 1000                                 
[    0.142644] mxs-dma 1804000.dma-apbh: initialized                            
[    0.146098] regulator-usbh-vbus GPIO handle specifies active low - ignored   
[    0.146223] VCC_USB[1-4]: supplied by 5V                                     
[    0.148165] vgaarb: loaded                                                   
[    0.149211] SCSI subsystem initialized                                       
[    0.149621] libata version 3.00 loaded.                                      
[    0.150131] usbcore: registered new interface driver usbfs                   
[    0.150277] usbcore: registered new interface driver hub                     
[    0.150406] usbcore: registered new device driver usb                        
[    0.152732] i2c i2c-0: IMX I2C adapter registered                            
[    0.154002] i2c i2c-1: IMX I2C adapter registered                            
[    0.154505] pps_core: LinuxPPS API ver. 1 registered                         
[    0.154547] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giome
tti                                                          
[    0.154627] PTP clock support registered                                     
[    0.155145] Advanced Linux Sound Architecture Driver Initialized.            
[    0.156692] Bluetooth: Core ver 2.22                                         
[    0.156826] NET: Registered protocol family 31                               
[    0.156863] Bluetooth: HCI device and connection manager initialized         
[    0.156915] Bluetooth: HCI socket layer initialized                          
[    0.156953] Bluetooth: L2CAP socket layer initialized                        
[    0.157005] Bluetooth: SCO socket layer initialized                          
[    0.158192] clocksource: Switched to clocksource mxc_timer1                  
[    1.313703] VFS: Disk quotas dquot_6.6.0                                     
[    1.313846] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)  
[    1.330186] thermal_sys: Registered thermal governor 'step_wise'             
[    1.330762] NET: Registered protocol family 2                                
[    1.332004] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 
bytes, linear)                                                                  
[    1.332112] TCP established hash table entries: 4096 (order: 2, 16384 bytes, 
linear)                                                                         
[    1.332240] TCP bind hash table entries: 4096 (order: 2, 16384 bytes, linear)
[    1.332369] TCP: Hash tables configured (established 4096 bind 4096)         
[    1.332556] UDP hash table entries: 256 (order: 0, 4096 bytes, linear)       
[    1.332624] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes, linear)  
[    1.333001] NET: Registered protocol family 1                                
[    1.333996] RPC: Registered named UNIX socket transport module.              
[    1.334050] RPC: Registered udp transport module.                            
[    1.334081] RPC: Registered tcp transport module.                            
[    1.334109] RPC: Registered tcp NFSv4.1 backchannel transport module.        
[    1.334153] PCI: CLS 0 bytes, default 64                                     
[    1.335425] hw perfevents: enabled with armv7_cortex_a7 PMU driver, 5 counter
s available                                                                     
[    1.344663] Initialise system trusted keyrings                               
[    1.345040] workingset: timestamp_bits=14 max_order=17 bucket_order=3        
[    1.358788] NFS: Registering the id_resolver key type                        
[    1.358889] Key type id_resolver registered                                  
[    1.358924] Key type id_legacy registered                                    
[    1.462297] NET: Registered protocol family 38                               
[    1.462363] Key type asymmetric registered                                   
[    1.462395] Asymmetric key parser 'x509' registered                          
[    1.462523] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 2
47)                                                                             
[    1.462815] io scheduler mq-deadline registered                              
[    1.462861] io scheduler kyber registered                                    
[    1.570878] 2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 23, base_baud = 
5000000) is a IMX                                                               
[    2.183856] printk: console [ttymxc0] enabled                                
[    2.190168] 21e8000.serial: ttymxc1 at MMIO 0x21e8000 (irq = 62, base_baud = 
5000000) is a IMX                                                               
[    2.200250] 21f4000.serial: ttymxc4 at MMIO 0x21f4000 (irq = 63, base_baud = 
5000000) is a IMX                                                               
[    2.222497] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).      
[    2.229265] [drm] No driver support for vblank timestamp query.              
[    2.236415] [drm] Initialized mxsfb-drm 1.0.0 20160824 for 21c8000.lcdif on m
inor 0                                                                          
[    2.261487] Console: switching to colour frame buffer device 80x30           
[    2.285472] mxsfb 21c8000.lcdif: fb0: mxsfb-drmdrmfb frame buffer device     
[    2.319644] brd: module loaded                                               
[    2.343911] loop: module loaded                                              
[    2.359946] libphy: Fixed MDIO Bus: probed                                   
[    2.374233] pps pps0: new PPS source ptp0                                    
[    2.386766] libphy: fec_enet_mii_bus: probed                                 
[    2.400514] fec 20b4000.ethernet eth0: registered PHC device 0               
[    2.414624] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver       
[    2.428730] ehci-pci: EHCI PCI platform driver                               
[    2.440638] ehci-mxc: Freescale On-Chip EHCI Host driver                     
[    2.454830] usbcore: registered new interface driver usb-storage             
[    2.468420] usbcore: registered new interface driver usbserial_generic       
[    2.482350] usbserial: USB Serial support registered for generic             
[    2.498866] imx_usb 2184000.usb: No over current polarity defined            
[    2.512279] imx_usb 2184000.usb: 2184000.usb supply vbus not found, using dum
my regulator                                                                    
[    2.540887] imx_usb 2184200.usb: No over current polarity defined            
[    2.555330] random: fast init done                                           
[    2.568864] ci_hdrc ci_hdrc.1: EHCI Host Controller                          
[    2.580666] ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1 
[    2.618268] ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00                    
[    2.631963] hub 1-0:1.0: USB hub found                                       
[    2.642454] hub 1-0:1.0: 1 port detected                                     
[    2.660200] snvs_rtc 20cc000.snvs:snvs-rtc-lp: registered as rtc0            
[    2.673095] i2c /dev entries driver                                          
[    2.686153] imx2-wdt 20bc000.wdog: timeout 60 sec (nowayout=0)               
[    2.700043] sdhci: Secure Digital Host Controller Interface driver           
[    2.712784] sdhci: Copyright(c) Pierre Ossman                                
[    2.723701] Synopsys Designware Multimedia Card Interface Driver             
[    2.737123] sdhci-pltfm: SDHCI platform and OF driver helper                 
[    2.752399] sdhci-esdhc-imx 2190000.usdhc: Got CD GPIO                       
[    2.800104] mmc0: SDHCI controller on 2190000.usdhc [2190000.usdhc] using ADM
A                                                                               
[    2.821767] sdhci-esdhc-imx 2194000.usdhc: allocated mmc-pwrseq              
[    2.868313] mmc1: SDHCI controller on 2194000.usdhc [2194000.usdhc] using ADM
A                                                                               
[    2.892104] usbcore: registered new interface driver usbhid                  
[    2.904997] usbhid: USB HID core driver                                      
[    2.920144] usbcore: registered new interface driver snd-usb-audio           
[    2.941089] NET: Registered protocol family 10                               
[    2.954743] Segment Routing with IPv6                                        
[    2.965580] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver              
[    2.979682] NET: Registered protocol family 17                               
[    2.991309] Key type dns_resolver registered                                 
[    3.013405] registered taskstats version 1                                   
[    3.021077] Loading compiled-in X.509 certificates                           
[    3.048514] imx_thermal tempmon: Industrial CPU temperature grade - max:105C 
critical:100C passive:95C                                                       
[    3.068587] snvs_rtc 20cc000.snvs:snvs-rtc-lp: setting system clock to 1970-0
1-01T00:04:33 UTC (273)                                                         
[    3.087747] Micrel KSZ8041 20b4000.ethernet-1:02: attached PHY driver [Micrel
 KSZ8041] (mii_bus:phy_addr=20b4000.ethernet-1:02, irq=POLL)                    
[    3.241352] mmc1: new high speed SDIO card at address 0001                   
[    5.211986] fec 20b4000.ethernet eth0: Link is Up - 100Mbps/Full - flow contr
ol rx/tx                                                                        
[    5.250833] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready          
[    5.280593] IP-Config: Complete:                                             
[    5.287724]      device=eth0, hwaddr=00:14:2d:61:a4:08, ipaddr=192.168.10.2, 
mask=255.255.255.0, gw=192.168.10.34                                            
[    5.305893]      host=toradex, domain=, nis-domain=(none)                    
[    5.315197]      bootserver=192.168.10.34, rootserver=192.168.10.34, rootpath
=                                                                               
[    5.330560] ALSA device list:                                                
[    5.337363]   No soundcards found.                                           
[    5.426656] VFS: Mounted root (nfs4 filesystem) on device 0:17.              
[    5.444491] devtmpfs: mounted                                                
[    5.458464] Freeing unused kernel memory: 1024K                              
[    5.471703] Run /sbin/init as init process                                   
[    6.490167] systemd[1]: System time before build time, advancing clock.      
[    6.615108] systemd[1]: systemd 243.2+ running in system mode. (+PAM -AUDIT -
SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT -GNUTLS +AC
L +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN2 -IDN -PCRE2 default-hierarchy=h
ybrid)                                                                          
[    6.670105] systemd[1]: Detected architecture arm.                           
[    6.779867] systemd[1]: Set hostname to .                   
[    9.064630] systemd[1]: /lib/systemd/system/dbus.socket:5: ListenStream= refe
rences a path below legacy directory /var/run/, updating /var/run/dbus/system_bu
s_socket → /run/dbus/system_bus_socket; please update the unit file according  l
y.                                                                              
[   10.218269] systemd[1]: /lib/systemd/system/rpcbind.socket:5: ListenStream= r
eferences a path below legacy directory /var/run/, updating /var/run/rpcbind.soc
k → /run/rpcbind.sock; please update the unit file accordingly.                 
[   10.320430] random: systemd: uninitialized urandom read (16 bytes read)      
[   10.340999] systemd[1]: Created slice system-getty.slice.                    
[   10.391055] random: systemd: uninitialized urandom read (16 bytes read)      
[   10.407524] systemd[1]: Created slice system-serial\x2dgetty.slice.          
[   10.461117] random: systemd: uninitialized urandom read (16 bytes read)      
[   10.477566] systemd[1]: Created slice User and Session Slice.                
[   10.531632] systemd[1]: Started Dispatch Password Requests to Console Directo
ry Watch.                                                                       
[   10.591816] systemd[1]: Started Forward Password Requests to Wall Directory W
atch.                                                                           
[   11.651075] systemd[1]: Condition check resulted in File System Check on Root
 Device being skipped.                                                          
[   11.689493] systemd[1]: Starting Journal Service...                          
[   11.759455] systemd[1]: Condition check resulted in Load Kernel Modules being
 skipped.                                                                       
[   11.787993] systemd[1]: Condition check resulted in FUSE Control File System 
being skipped.                                                                  
[   11.828866] systemd[1]: Mounting Kernel Configuration File System...         
[   11.914880] systemd[1]: Starting Remount Root and Kernel File Systems...     
[   11.966070] systemd[1]: Starting Apply Kernel Variables...                   
[   12.054372] systemd[1]: Starting udev Coldplug all Devices...                
[   12.134099] systemd[1]: Mounted POSIX Message Queue File System.             
[   12.209604] systemd[1]: Mounted Kernel Debug File System.                    
[   12.802440] systemd-journald[201]: Received client request to flush runtime j
ournal.                                                                         
[   16.399911] spi_imx 2008000.spi: probed                                      
[   16.521417] imx-sdma 20ec000.sdma: loaded firmware 3.5                       
[   16.607421] random: crng init done                                           
[   16.614666] random: 7 urandom warning(s) missed due to ratelimiting          
[   16.759305] mc: Linux media interface: v0.10                                 
[   16.971450] videodev: Linux video capture interface: v2.00                   
[   17.040526] Bluetooth: vendor=0x2df, device=0x9142, class=255, fn=2          
[   17.075176] cfg80211: Loading compiled-in X.509 certificates for regulatory d
atabase                                                                         
[   17.283253] btmrvl_sdio mmc1:0001:2: Direct firmware load for mrvl/sd8997_uap
sta.bin failed with error -2                                                    
[   17.300374] Bluetooth: request_firmware(firmware) failed, error code = -2    
[   17.311029] Bluetooth: Failed to download firmware!                          
[   17.319689] Bluetooth: Downloading firmware failed!                          
[   17.469271] pxp 21cc000.pxp: Device registered as /dev/video0                
[   18.221963] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'       
[   18.560700] mwifiex_sdio mmc1:0001:1: Direct firmware load for mrvl/sd8997_ua
psta.bin failed with error -2                                                   
[   18.577705] mwifiex_sdio mmc1:0001:1: Failed to get firmware mrvl/sd8997_uaps
ta.bin                                                                          
[   18.592880] mwifiex_sdio mmc1:0001:1: info: _mwifiex_fw_dpc: unregister devic
e

This simply has not yet been released in such a combination. BSP 4.0 Zeus stuff, for now, would need to be built off the integration.xml using the following override in your local.conf:

MACHINEOVERRIDES =. "use-head-next:"

You may also simply install any of them latest nightly builds off the CI feed using the Toradex Easy Installer.

Thanks for your reply!

I did build the image with your suggested changes (-m integration.xml and MACHINEOVERRIDES =. “use-head-next:”) but it still does not recognize USB devices.
Do you know when this is supposed to be released?

Best regards!

Hi Corinna

The first release will happen in May. Did you try one of the latest nightly builds as @marcel.tx suggested?

Best regards,
Jaski

Hi Jaski,

No, I only built it myself from Branch LinuxImage4.0, using MACHINEOVERRIDES =. “use-head-next:” in local.conf and using integration.xml-Manifest. I will wait for your release for further experiments. Where would I find the information that it was published?

Best regards,
Corinna

Hi Corinna

The Bsp Release Information are published here.

Best regards,
Jaski

Hi Jaski,

Thank you for the link. I’m regularly checking it. However it doesn’t seem like the release you mentioned in your comment from April the 30th has already been published. I’m not quite sure whether I’m interpreting the table correctly. What do I have to look out for to see that it was published?

Thank you and best regards
Corinna

Hi Corinna

Currently the Monthly release for Bsp 4.0 is not done yet. We are finishing the LTS release 2.8.7 and the next release will be Bsp 4.0 Monthly release.

For your experiments, I would suggest you to install a Nightly Build from CI Feeds. What exactly do you want to do?

Best regards,
Jaski

Hi Jaski,

Thanks for your answer!

I want to use a USB modem on an image built from branch LinuxImage4.0 using the mainline kernel. There I came across the problem that it does not detect USB devices at all in this setting. But I’m fine with waiting for your release. I just wanted to know how I can deduct from the table you referenced that it was published.

Thanks and best regards
Corinna

What exact hardware (module and carrier board) and software versions of things are you talking about? Which exact USB receptacle on which exact carrier board are you trying to use?