Package: src:linux
Version: 5.6.7-1
Severity: wishlist

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Dear Maintainer,

Please enable CONFIG_PCIE_BRCMSTB on arm64.

The Raspberry Pi 4 has a VL805 xhci controller connected to the
PCIe bus on the SoC.  All USB ports are connected to this controller.
CONFIG_PCIE_BRCMSTB is therefore necessary for USB support.

I tested rebuilding the current Debian 5.6 kernel in sid with just
this change, and it is enough to enable the USB port on the RPi4:

root@buster-rpi4:~# lspci -nn
00:00.0 PCI bridge [0604]: Broadcom Limited Device [14e4:2711] (rev 10)
01:00.0 USB controller [0c03]: VIA Technologies, Inc. VL805 USB 3.0 Host 
Controller [1106:3483] (rev 01)
root@buster-rpi4:~# 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

root@buster-rpi4:~# dmesg |egrep -i 'pci|usb|xhci'
[    0.877939] PCI: CLS 0 bytes, default 64
[    1.359321] shpchp: Standard Hot Plug PCI Controller Driver version: 0.4
[    1.359879] brcm-pcie fd500000.pcie: host bridge /scb/pcie@7d500000 ranges:
[    1.359905] brcm-pcie fd500000.pcie:   No bus range found for 
/scb/pcie@7d500000, using [bus 00-ff]
[    1.359943] brcm-pcie fd500000.pcie:      MEM 0x0600000000..0x0603ffffff -> 
0x00f8000000
[    1.359978] brcm-pcie fd500000.pcie:   IB MEM 0x0000000000..0x00bfffffff -> 
0x0000000000
[    1.409038] brcm-pcie fd500000.pcie: link up, 5 GT/s x1 (SSC)
[    1.409257] brcm-pcie fd500000.pcie: PCI host bridge to bus 0000:00
[    1.409277] pci_bus 0000:00: root bus resource [bus 00-ff]
[    1.409296] pci_bus 0000:00: root bus resource [mem 0x600000000-0x603ffffff] 
(bus address [0xf8000000-0xfbffffff])
[    1.409340] pci 0000:00:00.0: [14e4:2711] type 01 class 0x060400
[    1.409442] pci 0000:00:00.0: PME# supported from D0 D3hot
[    1.411585] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), 
reconfiguring
[    1.411761] pci 0000:01:00.0: [1106:3483] type 00 class 0x0c0330
[    1.411849] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x00000fff 64bit]
[    1.412028] pci 0000:01:00.0: PME# supported from D0 D3cold
[    1.424884] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    1.424924] pci 0000:00:00.0: BAR 14: assigned [mem 0x600000000-0x6000fffff]
[    1.424947] pci 0000:01:00.0: BAR 0: assigned [mem 0x600000000-0x600000fff 
64bit]
[    1.424975] pci 0000:00:00.0: PCI bridge to [bus 01]
[    1.424991] pci 0000:00:00.0:   bridge window [mem 0x600000000-0x6000fffff]
[    1.425165] pcieport 0000:00:00.0: enabling device (0000 -> 0002)
[    1.425312] pcieport 0000:00:00.0: PME: Signaling with IRQ 40
[    1.425631] pcieport 0000:00:00.0: AER: enabled with IRQ 40
[    1.425806] pci 0000:01:00.0: enabling device (0000 -> 0002)
[    3.189692] usb_phy_generic phy: phy supply vcc not found, using dummy 
regulator
[    3.278169] usbcore: registered new interface driver usbfs
[    3.284814] usbcore: registered new interface driver hub
[    3.291153] usbcore: registered new device driver usb
[    3.336101] dwc2 fe980000.usb: fe980000.usb supply vusb_d not found, using 
dummy regulator
[    3.344668] dwc2 fe980000.usb: fe980000.usb supply vusb_a not found, using 
dummy regulator
[    3.459118] dwc2 fe980000.usb: EPs: 8, dedicated fifos, 4080 entries in SPRAM
[   15.946055] xhci_hcd 0000:01:00.0: xHCI Host Controller
[   15.954077] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus 
number 1
[   15.967736] xhci_hcd 0000:01:00.0: hcc params 0x002841eb hci version 0x100 
quirks 0x0000000000000090
[   15.989621] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, 
bcdDevice= 5.06
[   15.998076] usb usb1: New USB device strings: Mfr=3, Product=2, 
SerialNumber=1
[   16.005520] usb usb1: Product: xHCI Host Controller
[   16.010535] usb usb1: Manufacturer: Linux 5.6.0-2-arm64 xhci-hcd
[   16.016722] usb usb1: SerialNumber: 0000:01:00.0
[   16.023171] hub 1-0:1.0: USB hub found
[   16.033311] xhci_hcd 0000:01:00.0: xHCI Host Controller
[   16.039381] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus 
number 2
[   16.039400] xhci_hcd 0000:01:00.0: Host supports USB 3.0 SuperSpeed
[   16.039510] usb usb2: We don't know the algorithms for LPM for this host, 
disabling LPM.
[   16.039578] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, 
bcdDevice= 5.06
[   16.039581] usb usb2: New USB device strings: Mfr=3, Product=2, 
SerialNumber=1
[   16.039584] usb usb2: Product: xHCI Host Controller
[   16.039587] usb usb2: Manufacturer: Linux 5.6.0-2-arm64 xhci-hcd
[   16.039589] usb usb2: SerialNumber: 0000:01:00.0
[   16.039938] hub 2-0:1.0: USB hub found
[   16.197384] usbcore: registered new interface driver brcmfmac
[   16.443015] usb 1-1: new high-speed USB device number 2 using xhci_hcd
[   16.601666] usb 1-1: New USB device found, idVendor=2109, idProduct=3431, 
bcdDevice= 4.21
[   16.613530] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[   16.613535] usb 1-1: Product: USB2.0 Hub
[   16.635572] hub 1-1:1.0: USB hub found

(I'm reporting this from another system, so I deleted all the irrelevant
data collected there)


root@buster-rpi4:~# dmesg |egrep -i 'pci|usb|xhci'
[    0.877939] PCI: CLS 0 bytes, default 64
[    1.359321] shpchp: Standard Hot Plug PCI Controller Driver version: 0.4
[    1.359879] brcm-pcie fd500000.pcie: host bridge /scb/pcie@7d500000 ranges:
[    1.359905] brcm-pcie fd500000.pcie:   No bus range found for 
/scb/pcie@7d500000, using [bus 00-ff]
[    1.359943] brcm-pcie fd500000.pcie:      MEM 0x0600000000..0x0603ffffff -> 
0x00f8000000
[    1.359978] brcm-pcie fd500000.pcie:   IB MEM 0x0000000000..0x00bfffffff -> 
0x0000000000
[    1.409038] brcm-pcie fd500000.pcie: link up, 5 GT/s x1 (SSC)
[    1.409257] brcm-pcie fd500000.pcie: PCI host bridge to bus 0000:00
[    1.409277] pci_bus 0000:00: root bus resource [bus 00-ff]
[    1.409296] pci_bus 0000:00: root bus resource [mem 0x600000000-0x603ffffff] 
(bus address [0xf8000000-0xfbffffff])
[    1.409340] pci 0000:00:00.0: [14e4:2711] type 01 class 0x060400
[    1.409442] pci 0000:00:00.0: PME# supported from D0 D3hot
[    1.411585] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), 
reconfiguring
[    1.411761] pci 0000:01:00.0: [1106:3483] type 00 class 0x0c0330
[    1.411849] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x00000fff 64bit]
[    1.412028] pci 0000:01:00.0: PME# supported from D0 D3cold
[    1.424884] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    1.424924] pci 0000:00:00.0: BAR 14: assigned [mem 0x600000000-0x6000fffff]
[    1.424947] pci 0000:01:00.0: BAR 0: assigned [mem 0x600000000-0x600000fff 
64bit]
[    1.424975] pci 0000:00:00.0: PCI bridge to [bus 01]
[    1.424991] pci 0000:00:00.0:   bridge window [mem 0x600000000-0x6000fffff]
[    1.425165] pcieport 0000:00:00.0: enabling device (0000 -> 0002)
[    1.425312] pcieport 0000:00:00.0: PME: Signaling with IRQ 40
[    1.425631] pcieport 0000:00:00.0: AER: enabled with IRQ 40
[    1.425806] pci 0000:01:00.0: enabling device (0000 -> 0002)
[    3.189692] usb_phy_generic phy: phy supply vcc not found, using dummy 
regulator
[    3.278169] usbcore: registered new interface driver usbfs
[    3.284814] usbcore: registered new interface driver hub
[    3.291153] usbcore: registered new device driver usb
[    3.336101] dwc2 fe980000.usb: fe980000.usb supply vusb_d not found, using 
dummy regulator
[    3.344668] dwc2 fe980000.usb: fe980000.usb supply vusb_a not found, using 
dummy regulator
[    3.459118] dwc2 fe980000.usb: EPs: 8, dedicated fifos, 4080 entries in SPRAM
[   15.946055] xhci_hcd 0000:01:00.0: xHCI Host Controller
[   15.954077] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus 
number 1
[   15.967736] xhci_hcd 0000:01:00.0: hcc params 0x002841eb hci version 0x100 
quirks 0x0000000000000090
[   15.989621] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, 
bcdDevice= 5.06
[   15.998076] usb usb1: New USB device strings: Mfr=3, Product=2, 
SerialNumber=1
[   16.005520] usb usb1: Product: xHCI Host Controller
[   16.010535] usb usb1: Manufacturer: Linux 5.6.0-2-arm64 xhci-hcd
[   16.016722] usb usb1: SerialNumber: 0000:01:00.0
[   16.023171] hub 1-0:1.0: USB hub found
[   16.033311] xhci_hcd 0000:01:00.0: xHCI Host Controller
[   16.039381] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus 
number 2
[   16.039400] xhci_hcd 0000:01:00.0: Host supports USB 3.0 SuperSpeed
[   16.039510] usb usb2: We don't know the algorithms for LPM for this host, 
disabling LPM.
[   16.039578] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, 
bcdDevice= 5.06
[   16.039581] usb usb2: New USB device strings: Mfr=3, Product=2, 
SerialNumber=1
[   16.039584] usb usb2: Product: xHCI Host Controller
[   16.039587] usb usb2: Manufacturer: Linux 5.6.0-2-arm64 xhci-hcd
[   16.039589] usb usb2: SerialNumber: 0000:01:00.0
[   16.039938] hub 2-0:1.0: USB hub found
[   16.197384] usbcore: registered new interface driver brcmfmac
[   16.443015] usb 1-1: new high-speed USB device number 2 using xhci_hcd
[   16.601666] usb 1-1: New USB device found, idVendor=2109, idProduct=3431, 
bcdDevice= 4.21
[   16.613530] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[   16.613535] usb 1-1: Product: USB2.0 Hub
[   16.635572] hub 1-1:1.0: USB hub found


Bjørn

-----BEGIN PGP SIGNATURE-----

iGwEARECACwWIQR3fjfc8EF8nPbC0aDXSuqSjBsiyQUCXrb5+g4cYmpvcm5AbW9y
ay5ubwAKCRDXSuqSjBsiybgfAJ4xKRmfaM3d02ovWd2Z66/bUT004QCgh3id5j9T
jtJ/BrjfTI1eKsweySo=
=WTcB
-----END PGP SIGNATURE-----

Reply via email to