the pi4 has 3 usb controllers
first, you have the crusty old dwc2 from past models
second, you have the broadcom xhci
third, you have the via labs vl805 pcie<->xhci
the vl805 on the pcie bus handles the 4 main usb ports, including usb3, you need to bring the pcie bus online, and use a special mailbox to bootstrap its firmware
dtoverlay=dwc2 will enable the dwc2 controller and route it to the usb-c port, allowing both host and device
otg_mode=1 will enable the broadcom xhci, and route it to the usb-c port, its host only
if you try to use a controller that isnt enabled in config.txt, the system will crash hard
first, you have the crusty old dwc2 from past models
second, you have the broadcom xhci
third, you have the via labs vl805 pcie<->xhci
the vl805 on the pcie bus handles the 4 main usb ports, including usb3, you need to bring the pcie bus online, and use a special mailbox to bootstrap its firmware
dtoverlay=dwc2 will enable the dwc2 controller and route it to the usb-c port, allowing both host and device
otg_mode=1 will enable the broadcom xhci, and route it to the usb-c port, its host only
if you try to use a controller that isnt enabled in config.txt, the system will crash hard
Statistics: Posted by cleverca22 — Sat Mar 09, 2024 1:51 am