Hello everyone !
Recently, i have an issue with my Rpi4 and my ASM1051E USB controller.
The USB controller is not detected at boot time.
To confirm the problem, I have installed a vanilla archlinux distrib (ArchLinuxARM-rpi-aarch64-latest.tar.gz) in an uSD card and boot my system with the USB controller pluged in.
After boot, the controller is not detected :
$this->bbcode_second_pass_code('', '
$ uname -a
Linux alarm 5.15.5-1-ARCH #1 SMP Wed Dec 1 01:26:36 UTC 2021 aarch64 GNU/Linux
$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ dmesg | grep -e hcd -e usb
[ 1.634476] usbcore: registered new interface driver usbfs
[ 1.634529] usbcore: registered new interface driver hub
[ 1.634572] usbcore: registered new device driver usb
[ 1.634762] usb_phy_generic phy: supply vcc not found, using dummy regulator
[ 3.417327] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 3.438210] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 3.454501] uhci_hcd: USB Universal Host Controller Interface driver
[ 3.461556] SPI driver max3421-hcd has no spi_device_id for maxim,max3421
[ 3.468713] usbcore: registered new interface driver uas
[ 3.474167] usbcore: registered new interface driver usb-storage
[ 3.480320] usbcore: registered new interface driver ums-alauda
[ 3.486371] usbcore: registered new interface driver ums-cypress
[ 3.492508] usbcore: registered new interface driver ums-datafab
[ 3.498643] usbcore: registered new interface driver ums_eneub6250
[ 3.504955] usbcore: registered new interface driver ums-freecom
[ 3.511100] usbcore: registered new interface driver ums-isd200
[ 3.517146] usbcore: registered new interface driver ums-jumpshot
[ 3.523369] usbcore: registered new interface driver ums-karma
[ 3.529354] usbcore: registered new interface driver ums-onetouch
[ 3.535588] usbcore: registered new interface driver ums-realtek
[ 3.541723] usbcore: registered new interface driver ums-sddr09
[ 3.547776] usbcore: registered new interface driver ums-sddr55
[ 3.553826] usbcore: registered new interface driver ums-usbat
[ 3.559844] usbcore: registered new interface driver usbserial_generic
[ 3.566511] usbserial: USB Serial support registered for generic
[ 3.645162] usbcore: registered new interface driver usbhid
[ 3.650834] usbhid: USB HID core driver
[ 3.972156] dwc2 fe980000.usb: supply vusb_d not found, using dummy regulator
[ 3.979513] dwc2 fe980000.usb: supply vusb_a not found, using dummy regulator
[ 4.087172] dwc2 fe980000.usb: EPs: 8, dedicated fifos, 4080 entries in SPRAM
[ 4.482866] xhci_hcd 0000:01:00.0: enabling device (0000 -> 0002)
[ 4.489126] xhci_hcd 0000:01:00.0: xHCI Host Controller
[ 4.494632] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 1
[ 4.502498] xhci_hcd 0000:01:00.0: hcc params 0x002841eb hci version 0x100 quirks 0x0000040000000890
[ 4.512326] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.15
[ 4.520751] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 4.528094] usb usb1: Product: xHCI Host Controller
[ 4.533046] usb usb1: Manufacturer: Linux 5.15.5-1-ARCH xhci-hcd
[ 4.539139] usb usb1: SerialNumber: 0000:01:00.0
[ 4.552409] xhci_hcd 0000:01:00.0: xHCI Host Controller
[ 4.557845] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 2
[ 4.565378] xhci_hcd 0000:01:00.0: Host supports USB 3.0 SuperSpeed
[ 4.571909] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.15
[ 4.580309] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 4.587639] usb usb2: Product: xHCI Host Controller
[ 4.592586] usb usb2: Manufacturer: Linux 5.15.5-1-ARCH xhci-hcd
[ 4.598678] usb usb2: SerialNumber: 0000:01:00.0
[ 4.825117] usb 1-1: new high-speed USB device number 2 using xhci_hcd
[ 4.961710] usb 1-1: New USB device found, idVendor=2109, idProduct=3431, bcdDevice= 4.21
[ 4.970039] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[ 4.977288] usb 1-1: Product: USB2.0 Hub
[ 5.272121] usb 1-1.1: new full-speed USB device number 3 using xhci_hcd
[ 5.344308] usb 1-1.1: device descriptor read/64, error -32
[ 5.520307] usb 1-1.1: device descriptor read/64, error -32
[ 5.696098] usb 1-1.1: new full-speed USB device number 4 using xhci_hcd
[ 5.768317] usb 1-1.1: device descriptor read/64, error -32
[ 5.952307] usb 1-1.1: device descriptor read/64, error -32
[ 6.063450] usb 1-1-port1: attempt power cycle
[ 6.652113] usb 1-1.1: new full-speed USB device number 5 using xhci_hcd
[ 6.659179] usb 1-1.1: Device not responding to setup address.
[ 6.891364] usb 1-1.1: Device not responding to setup address.
[ 7.103134] usb 1-1.1: device not accepting address 5, error -71
[ 7.174095] usb 1-1.1: new full-speed USB device number 6 using xhci_hcd
[ 7.187515] usb 1-1.1: Device not responding to setup address.
[ 7.401929] usb 1-1.1: Device not responding to setup address.
[ 7.615101] usb 1-1.1: device not accepting address 6, error -71
[ 7.621600] usb 1-1-port1: unable to enumerate USB device
[ 7.832485] usbcore: registered new interface driver brcmfmac
[ 8.288032] Bluetooth: hci0: BCM4345C0 'brcm/BCM4345C0.hcd' Patch
')
Then, i have unplugged and pluged in the USB device and now it is correctly detected
$this->bbcode_second_pass_code('', '
$ lsusb
[b]Bus 002 Device 002: ID 174c:55aa ASMedia Technology Inc. ASM1051E SATA 6Gb/s bridge, ASM1053E SATA 6Gb/s bridge, ASM1153 SATA 3Gb/s bridge, ASM1153E SATA 6Gb/s bridge[/b]
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ lsusb -t
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
|__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=uas, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
$ dmesg
[ 537.981429] usb 2-1: new SuperSpeed USB device number 2 using xhci_hcd
[ 538.001418] usb 2-1: New USB device found, idVendor=174c, idProduct=55aa, bcdDevice= 1.00
[ 538.009734] usb 2-1: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[ 538.016983] usb 2-1: Product: ASM105x
[ 538.020703] usb 2-1: Manufacturer: ASMT
[ 538.024597] usb 2-1: SerialNumber: 00000000000000000000
[ 538.037611] scsi host0: uas
[ 538.041407] scsi 0:0:0:0: Direct-Access ASMT 2115 0 PQ: 0 ANSI: 6
[ 538.050810] sd 0:0:0:0: Attached scsi generic sg0 type 0
[ 538.051163] sd 0:0:0:0: [sda] Spinning up disk...
[ 539.115106] ..ready
[ 540.143350] sd 0:0:0:0: [sda] 976773168 512-byte logical blocks: (500 GB/466 GiB)
[ 540.150951] sd 0:0:0:0: [sda] 4096-byte physical blocks
[ 540.156389] sd 0:0:0:0: [sda] Write Protect is off
[ 540.161260] sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00
[ 540.161464] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 540.171206] sd 0:0:0:0: [sda] Optimal transfer size 33553920 bytes not a multiple of physical block size (4096 bytes)
[ 540.208749] sda: sda1
[ 540.212291] sd 0:0:0:0: [sda] Attached SCSI disk
')
This issue is recent, maybe since linux 5.15 upgrade
I have also made another attempt: i have updated the /etc/mkinitcpio.conf to add additionnal drivers (the one i used in my custom archlinux to boot on USB) and the USB controller is still not detected:
$this->bbcode_second_pass_code('', 'MODULES=(pcie_brcmstb bcm_phy_lib broadcom genet)')
is this issue linked to https://bbs.archlinux.org/viewtopic.php?id=270795 ?
any clue ?
kind regards,
César