[PATCH 2/2] dt-bindings: usb: snps,dwc3: Fix downstream port numbering
Konrad Dybcio
konrad.dybcio at oss.qualcomm.com
Wed Oct 21 02:44:31 PDT 2026
On 10/15/26 11:00 AM, Chen-Yu Tsai wrote:
> (Cc-ed Mathias, the xHCI driver maintainer in case I misunderstood xHCI.)
>
> On Thu, Oct 15, 2026 at 4:44 PM Neil Armstrong
> <neil.armstrong at linaro.org> wrote:
>>
>> On 10/14/26 18:36, Konrad Dybcio wrote:
>>> On 10/14/26 11:44 AM, Neil Armstrong wrote:
>>>> On 10/14/26 11:29, Chen-Yu Tsai wrote:
>>>>> On Wed, Oct 14, 2026 at 5:28 PM Neil Armstrong
>>>>> <neil.armstrong at linaro.org> wrote:
[...]
>> How about the USB4, does it use the USB3.0 port ?
>
> I'm not familiar with USB4. A quick search says that it can tunnel
> USB 3.x, DP, and PCIe, and it doesn't have its own USB HCI defined.
>
> So I'm thinking the USB4 controller would be more like a nexus node
> or multiplexing node, or perhaps like a USB C connector. It has input
> ports for all the protocols it can tunnel, connected to their respective
> controllers (XHCI, DP, PCIe). The binding probably would be very messy
> if one controller supported multiple outgoing ports, as each downstream
> port has a 3-to-1 relationship with its respective upstream protocol
> interfaces.
Yeah that is more or less it.
There needs to be a connection between the USB4 router and the native
(USB3 *port*, not hub | PCIe *port*, not RC | DPTX) protocol adapter
where the tunneled packets end up at to create a PM devlink between it
and the USB4 router.
ACPI does that by adding a `usb4-host-interface = &reference_to_router`
property, for DT that's still undecided:
https://github.com/devicetree-org/dt-schema/pull/196
As far as the Qualcomm implementation goes, I was hoping we could
go forward with base1 numbering as the DWC3 is an XHCI controller:
https://lore.kernel.org/linux-usb/20260929-topic-dwc3_tunneling_state-v4-0-63e296346d57@oss.qualcomm.com/
Konrad
More information about the linux-riscv
mailing list