Re: [PATCH 0/3] ARM: dts: bcm2711-rpi-cm4-io: Enable xHCI host

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Phil,

Hi Justin,

[add Phil]

Am 27.11.23 um 07:02 schrieb Justin Chen:
On 11/25/23 6:56 PM, Stefan Wahren wrote:
In contrast to the Raspberry Pi 4, the Compute Module 4 or the IO board
does not have a VL805 USB 3.0 host controller, which is connected via
PCIe. Instead, the BCM2711 on the Compute Module provides the built-in
xHCI.

Does this work? I maintain this built-in xHCI controller internally. I
wasn't aware the Compute Module uses this block.
i successful tested this with a CM4 (arm 32 bit,
multi_v7_lpae_defconfig) with eMMC. Before this series the USB devices
(mouse, keyboard) connected to the host interface didn't work. After
comparing vendor DTS with mainline i noticed the missing xHCI block [1].
Unfortunately i wasn't able to get further information from the public
datasheets. I don't know if the VideoCore does some magic tricks on the
xHCI or i missed some downstream xHCI changes.

This block is held in reset and needs a bit toggled to get things
going. Florian, just to confirm, this is our "brcm,xhci-brcm-v2" block
correct?

Justin
[1]  -
https://github.com/raspberrypi/linux/blob/rpi-6.1.y/arch/arm/boot/dts/bcm2711-rpi-ds.dtsi#L119
What's the question here? Does the XHCI block present in the
raspberrypi/linux dtsi file really exist? Yes it does.
since i don't have any documentation about the xHCI block, i assumed the
compatible generic-xhci is correct. But Justin seems to suggest that the
xHCI block needs some special treatment and we need a specific compatible.

Did i missed some xHCI driver changes?
Does the VC firmware something to the xHCI especially on CM4?
The firmware switches the on-board USB pins from DWC-OTG to XHCI if
otg_mode=1 is set in config.txt, or if booting over USB MSD.
is this pinctrl/pinmux available from ARM via 0x7e200000 or a different
IO address?

Thanks
This also
triggers the enabling of the node with the label or alias "xhci".

CM4 is not handled any differently to the other 2711-based devices in
this regard.

Phil






[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux