[PATCH v3 12/14] dts: sdm845-db845c: add u-boot fixups

Caleb Connolly caleb.connolly at linaro.org
Wed Mar 20 13:33:33 CET 2024



On 19/03/2024 13:55, Sumit Garg wrote:
> On Tue, 19 Mar 2024 at 17:52, Caleb Connolly <caleb.connolly at linaro.org> wrote:
>>
>> The USB VBUS supply for the type-A port is enabled via a GPIO regulator.
>> This is incorrectly modelled in Linux where only the PCIe dependency is
>> expressed.
> 
> Can we send a fix for the Linux kernel DTS to correctly model it? We
> can then later get rid of this modification once that is accepted.

I spoke to Bjorn about this and apparently the correct way to model this
will be to have a usb-connector node with a vbus-supply property. There
is some work underway in Linux to support this kind of thing already.

In the mean time he suggested to just make the regulator always-on, so I
sent a patch to do that [1]. I actually hit this issue when booting from
USB as the PCIe drivers aren't available in the initramfs, so USB never
turns on, and the always-on hack fixes that.

In the mean time, we'll still need this vbus-supply reference as U-Boot
doesn't automatically probe regulators.
> 
> -Sumit
> 
>> Add a U-Boot specific dtsi snippet so that this supply will
>> get enabled when initialising USB.
>>
>> Signed-off-by: Caleb Connolly <caleb.connolly at linaro.org>
>> ---
>>  arch/arm/dts/sdm845-db845c-u-boot.dtsi | 8 ++++++++
>>  1 file changed, 8 insertions(+)
>>
>> diff --git a/arch/arm/dts/sdm845-db845c-u-boot.dtsi b/arch/arm/dts/sdm845-db845c-u-boot.dtsi
>> new file mode 100644
>> index 000000000000..3c83e21251c4
>> --- /dev/null
>> +++ b/arch/arm/dts/sdm845-db845c-u-boot.dtsi
>> @@ -0,0 +1,8 @@
>> +// SPDX-License-Identifier: GPL-2.0
>> +
>> +/* This GPIO must be turned on to enable the 5v VBUS
>> + * supply on the USB port.
>> + */
>> +&usb_2_dwc3 {
>> +       vbus-supply = <&pcie0_3p3v_dual>;
>> +};
>>
>> --
>> 2.44.0
>>

-- 
// Caleb (they/them)


More information about the U-Boot mailing list