Re: [PATCH v2 2/2] arm64: dts: qcom: lemans-evk: Enable the tertiary USB controller

From: Bjorn Andersson

Date: Thu Feb 12 2026 - 08:24:03 EST


On Tue, Feb 10, 2026 at 06:23:48PM +0530, Swati Agarwal wrote:
> Enable the tertiary usb controller connected to micro usb port in OTG mode
> on Lemans EVK platform.
>
> Signed-off-by: Swati Agarwal <swati.agarwal@xxxxxxxxxxxxxxxx>
> ---
> arch/arm64/boot/dts/qcom/lemans-evk.dts | 52 +++++++++++++++++++++++++
> arch/arm64/boot/dts/qcom/lemans.dtsi | 7 ++++
> 2 files changed, 59 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/lemans-evk.dts b/arch/arm64/boot/dts/qcom/lemans-evk.dts
> index 265bdad10ae4..6f8b0d067256 100644
> --- a/arch/arm64/boot/dts/qcom/lemans-evk.dts
> +++ b/arch/arm64/boot/dts/qcom/lemans-evk.dts
> @@ -107,6 +107,25 @@ usb1_ss_in: endpoint {
> };
> };
>
> + connector-2 {
> + compatible = "gpio-usb-b-connector", "usb-b-connector";
> + label = "micro-USB";
> + type = "micro";
> +
> + id-gpios = <&pmm8654au_2_gpios 11 GPIO_ACTIVE_HIGH>;
> + vbus-gpios = <&expander3 3 GPIO_ACTIVE_HIGH>;
> + vbus-supply = <&vbus_supply_regulator_2>;
> +
> + pinctrl-names = "default";
> + pinctrl-0 = <&usb2_id>;
> +
> + port {
> + usb2_con_hs_ep: endpoint {
> + remote-endpoint = <&usb_2_dwc3_hs>;
> + };
> + };
> + };
> +
> edp0-connector {
> compatible = "dp-connector";
> label = "EDP0";
> @@ -190,6 +209,15 @@ vbus_supply_regulator_1: regulator-vbus-supply-1 {
> enable-active-high;
> };
>
> + vbus_supply_regulator_2: vbus-supply-regulator-2 {

Please follow
https://docs.kernel.org/devicetree/bindings/dts-coding-style.html#order-of-nodes
point 2. "Nodes without unit addresses shall be ordered
alpha-numerically by the node name."

You have regulator-vbus- above and regulator-vmmc- below, so this seems
to be the right place.

> + compatible = "regulator-fixed";
> + regulator-name = "vbus_supply_2";

Please confirm that this really is what this supply is named in the
schematics.

> + gpio = <&pmm8654au_1_gpios 9 GPIO_ACTIVE_HIGH>;
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + enable-active-high;
> + };
> +
> vmmc_sdc: regulator-vmmc-sdc {
> compatible = "regulator-fixed";
>
> @@ -809,6 +837,14 @@ usb1_intr: usb1-intr-state {
> bias-pull-up;
> power-source = <0>;
> };
> +
> + usb2_id: usb2-id-state {
> + pins = "gpio11";
> + function = "normal";
> + input-enable;
> + bias-pull-up;
> + power-source = <0>;
> + };
> };
>
> &qup_i2c19_default {
> @@ -1174,6 +1210,22 @@ &usb_1_qmpphy {
> status = "okay";
> };
>
> +&usb_2 {
> + status = "okay";
> +};
> +
> +&usb_2_dwc3_hs {
> + remote-endpoint = <&usb2_con_hs_ep>;
> +};
> +
> +&usb_2_hsphy {
> + vdda-pll-supply = <&vreg_l7a>;
> + vdda18-supply = <&vreg_l6c>;
> + vdda33-supply = <&vreg_l9a>;
> +
> + status = "okay";
> +};
> +
> &xo_board_clk {
> clock-frequency = <38400000>;
> };
> diff --git a/arch/arm64/boot/dts/qcom/lemans.dtsi b/arch/arm64/boot/dts/qcom/lemans.dtsi
> index 808827b83553..d0e63336be6b 100644
> --- a/arch/arm64/boot/dts/qcom/lemans.dtsi
> +++ b/arch/arm64/boot/dts/qcom/lemans.dtsi
> @@ -4270,7 +4270,14 @@ usb_2: usb@a400000 {
> snps,dis-u1-entry-quirk;
> snps,dis-u2-entry-quirk;
>
> + usb-role-switch;

This changes the behavior of two other boards, not only the EVK. So
please keep this in a separate commit.

Regards,
Bjorn

> +
> status = "disabled";
> +
> + port {
> + usb_2_dwc3_hs: endpoint {
> + };
> + };
> };
>
> tcsr_mutex: hwlock@1f40000 {
> --
> 2.34.1
>