Re: earlyprintk=xdbc seems broken

From: Mathias Nyman
Date: Tue Jan 25 2022 - 12:19:39 EST


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