Re: [PATCH] arm64: dts: qcom: sc8280xp: Enable USB OTG on functional Type-C ports
From: Konrad Dybcio
Date: Wed Mar 25 2026 - 09:12:48 EST
On 3/19/26 3:45 PM, Konrad Dybcio wrote:
> On 3/13/26 3:37 PM, Dmitry Baryshkov wrote:
>> On Fri, Mar 13, 2026 at 03:08:03PM +0100, Konrad Dybcio wrote:
>>> From: Konrad Dybcio <konrad.dybcio@xxxxxxxxxxxxxxxx>
>>>
>>> The two non-multiport USB controllers present on the platform are
>>> role-switch capable, so mark them as such. They need no additional
>>> plumbing, as tested on the X13s.
>>>
>>> Enable OTG for all devices featuring a data-role provider in one fell
>>> swoop to prevent hitting the edge case where UCSI code would time out
>>> trying to get a reference to a struct usb_role_switch, which wouldn't
>>> be registered if dr_mode was set to anything other than (the default)
>>> OTG.
>>>
>>> Signed-off-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxxxxxxxx>
>>> ---
>>> arch/arm64/boot/dts/qcom/sc8280xp-crd.dts | 8 --------
>>> arch/arm64/boot/dts/qcom/sc8280xp-huawei-gaokun3.dts | 8 --------
>>> arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts | 8 --------
>>> arch/arm64/boot/dts/qcom/sc8280xp-microsoft-arcata.dts | 8 --------
>>> arch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dts | 8 --------
>>> arch/arm64/boot/dts/qcom/sc8280xp.dtsi | 4 ++++
>>> 6 files changed, 4 insertions(+), 40 deletions(-)
>>>
>>
>> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxxxxxxxx>
>
> Unfortunately it seems like that while it works, it makes the x13s crash
> upon resume
>
> It also crashes there if we flatten the DT node and I'm hoping the solution
> to that will fix both, but we have to hold it for now
More details: it's (again) USB_0 causing the issue, and only changing USB_1
to dual-role makes the QMPPHY phy_init time out upon resume, without a system
crash
Konrad