On 25.1.2022 16.01, Sven Schnelle wrote: > Peter Zijlstra <peterz@xxxxxxxxxxxxx> writes: > >> On Tue, Jan 25, 2022 at 02:09:18PM +0100, Sven Schnelle wrote: >>> Peter Zijlstra <peterz@xxxxxxxxxxxxx> writes: >>> >>>> Now the documentation states we need this super speed A<->A cable, but >>>> could you also update the documentation for usb-c ? There's a fair >>>> number of usb-c only devices out there now. >>> >>> Stupid beginners question: Would every USB3 A-A cable work, or are the >>> debug cables special? I've read the RX/TX pairs have to be swapped, but >>> to me it looks like that's always the case? >> >> I'm using a random USB3 A-A cable (it came with an HDMI frame grabber of >> of AliExpress). The official one has a wire missing I think, to avoid >> ground loops or something like that. >> >> The easiest thing to do is try the runtime DBC option: >> >> echo enable > /sys/bus/pci/devices/0000:00:14.0/dbc >> >> If that works you can see what it takes to make the earlyprintk one >> working. This thread seems to have much of that covered. > > Thanks, the sysfs test works for me. I have two A-A cables, one is from > a cheap PCI-e extender, the other one from a KVM switch. Both work, > which is great. So i assume that most A-A cable would work. I'm building > a new kernel now with the patch on top, lets see. > I enabled runtime dbc on a Tigerlake 0000:00:0d.0 xhci, and connected the USB-C port to a host using a USB-C to A adapter, and a cheap USB3 A-to-A cable. Worked for me, but can't make any official recommendation. I'm guessing the USB-C port works as long as the USB-C TX/RX pins are muxed to a xhci. With additional dbc patches it's possible to have dbc connected on both xhci controllers at the same time (runtime via sysfs). -Mathias