devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer
@ 2025-03-28  8:41 Johan Hovold
  2025-03-28  9:22 ` Abel Vesa
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Johan Hovold @ 2025-03-28  8:41 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Jens Glathe,
	Abel Vesa, Stephan Gerhold, linux-arm-msm, devicetree,
	linux-kernel, Johan Hovold

Jens reported that the sanity checks added to the new ps883x USB retimer
driver breaks USB and display on the HP X14. Turns out the X14 only has
a retimer on one of the ports, but this initially went unnoticed due to
the missing sanity check (and error handling) in the retimer driver.

Drop the non-existing retimer from the devicetree to enable the second
USB port and the display subsystem.

Note that this also matches the ACPI tables.

Fixes: 6f18b8d4142c ("arm64: dts: qcom: x1e80100-hp-x14: dt for HP Omnibook X Laptop 14")
Cc: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
---

The devicetree went upstream before the retimer driver so the display
would already be broken in 6.14 and there's no need to backport this
one (but it should go into 6.15).

Note that the SBU mux can be added later when/if someone figures out how
it is connected.

Johan


 .../dts/qcom/x1e80100-hp-omnibook-x14.dts     | 146 +-----------------
 1 file changed, 2 insertions(+), 144 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/x1e80100-hp-omnibook-x14.dts b/arch/arm64/boot/dts/qcom/x1e80100-hp-omnibook-x14.dts
index 05ad07d90b97..03bbebff4576 100644
--- a/arch/arm64/boot/dts/qcom/x1e80100-hp-omnibook-x14.dts
+++ b/arch/arm64/boot/dts/qcom/x1e80100-hp-omnibook-x14.dts
@@ -150,15 +150,7 @@ port@1 {
 					reg = <1>;
 
 					pmic_glink_ss1_ss_in: endpoint {
-						remote-endpoint = <&retimer_ss1_ss_out>;
-					};
-				};
-
-				port@2 {
-					reg = <2>;
-
-					pmic_glink_ss1_con_sbu_in: endpoint {
-						remote-endpoint = <&retimer_ss1_con_sbu_out>;
+						remote-endpoint = <&usb_1_ss1_qmpphy_out>;
 					};
 				};
 			};
@@ -370,54 +362,6 @@ vreg_rtmr0_3p3: regulator-rtmr0-3p3 {
 		regulator-boot-on;
 	};
 
-	vreg_rtmr1_1p15: regulator-rtmr1-1p15 {
-		compatible = "regulator-fixed";
-
-		regulator-name = "VREG_RTMR1_1P15";
-		regulator-min-microvolt = <1150000>;
-		regulator-max-microvolt = <1150000>;
-
-		gpio = <&tlmm 188 GPIO_ACTIVE_HIGH>;
-		enable-active-high;
-
-		pinctrl-0 = <&usb1_pwr_1p15_reg_en>;
-		pinctrl-names = "default";
-
-		regulator-boot-on;
-	};
-
-	vreg_rtmr1_1p8: regulator-rtmr1-1p8 {
-		compatible = "regulator-fixed";
-
-		regulator-name = "VREG_RTMR1_1P8";
-		regulator-min-microvolt = <1800000>;
-		regulator-max-microvolt = <1800000>;
-
-		gpio = <&tlmm 175 GPIO_ACTIVE_HIGH>;
-		enable-active-high;
-
-		pinctrl-0 = <&usb1_pwr_1p8_reg_en>;
-		pinctrl-names = "default";
-
-		regulator-boot-on;
-	};
-
-	vreg_rtmr1_3p3: regulator-rtmr1-3p3 {
-		compatible = "regulator-fixed";
-
-		regulator-name = "VREG_RTMR1_3P3";
-		regulator-min-microvolt = <3300000>;
-		regulator-max-microvolt = <3300000>;
-
-		gpio = <&tlmm 186 GPIO_ACTIVE_HIGH>;
-		enable-active-high;
-
-		pinctrl-0 = <&usb1_pwr_3p3_reg_en>;
-		pinctrl-names = "default";
-
-		regulator-boot-on;
-	};
-
 	vreg_vph_pwr: regulator-vph-pwr {
 		compatible = "regulator-fixed";
 
@@ -1027,64 +971,6 @@ eusb3_repeater: redriver@47 {
 	};
 };
 
-&i2c7 {
-	clock-frequency = <400000>;
-
-	status = "okay";
-
-	typec-mux@8 {
-		compatible = "parade,ps8830";
-		reg = <0x8>;
-
-		clocks = <&rpmhcc RPMH_RF_CLK4>;
-
-		vdd-supply = <&vreg_rtmr1_1p15>;
-		vdd33-supply = <&vreg_rtmr1_3p3>;
-		vdd33-cap-supply = <&vreg_rtmr1_3p3>;
-		vddar-supply = <&vreg_rtmr1_1p15>;
-		vddat-supply = <&vreg_rtmr1_1p15>;
-		vddio-supply = <&vreg_rtmr1_1p8>;
-
-		reset-gpios = <&tlmm 176 GPIO_ACTIVE_LOW>;
-
-		pinctrl-0 = <&rtmr1_default>;
-		pinctrl-names = "default";
-
-		orientation-switch;
-		retimer-switch;
-
-		ports {
-			#address-cells = <1>;
-			#size-cells = <0>;
-
-			port@0 {
-				reg = <0>;
-
-				retimer_ss1_ss_out: endpoint {
-					remote-endpoint = <&pmic_glink_ss1_ss_in>;
-				};
-			};
-
-			port@1 {
-				reg = <1>;
-
-				retimer_ss1_ss_in: endpoint {
-					remote-endpoint = <&usb_1_ss1_qmpphy_out>;
-				};
-			};
-
-			port@2 {
-				reg = <2>;
-
-				retimer_ss1_con_sbu_out: endpoint {
-					remote-endpoint = <&pmic_glink_ss1_con_sbu_in>;
-				};
-			};
-
-		};
-	};
-};
-
 &i2c8 {
 	clock-frequency = <400000>;
 
@@ -1519,13 +1405,6 @@ wake-n-pins {
 		};
 	};
 
-	rtmr1_default: rtmr1-reset-n-active-state {
-		pins = "gpio176";
-		function = "gpio";
-		drive-strength = <2>;
-		bias-disable;
-	};
-
 	tpad_default: tpad-default-state {
 		pins = "gpio3";
 		function = "gpio";
@@ -1547,27 +1426,6 @@ reset-n-pins {
 		};
 	};
 
-	usb1_pwr_1p15_reg_en: usb1-pwr-1p15-reg-en-state {
-		pins = "gpio188";
-		function = "gpio";
-		drive-strength = <2>;
-		bias-disable;
-	};
-
-	usb1_pwr_1p8_reg_en: usb1-pwr-1p8-reg-en-state {
-		pins = "gpio175";
-		function = "gpio";
-		drive-strength = <2>;
-		bias-disable;
-	};
-
-	usb1_pwr_3p3_reg_en: usb1-pwr-3p3-reg-en-state {
-		pins = "gpio186";
-		function = "gpio";
-		drive-strength = <2>;
-		bias-disable;
-	};
-
 	wcd_default: wcd-reset-n-active-state {
 		pins = "gpio191";
 		function = "gpio";
@@ -1670,7 +1528,7 @@ &usb_1_ss1_dwc3_hs {
 };
 
 &usb_1_ss1_qmpphy_out {
-	remote-endpoint = <&retimer_ss1_ss_in>;
+	remote-endpoint = <&pmic_glink_ss1_ss_in>;
 };
 
 &usb_mp {
-- 
2.48.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer
  2025-03-28  8:41 [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer Johan Hovold
@ 2025-03-28  9:22 ` Abel Vesa
  2025-04-01 10:27 ` Konrad Dybcio
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Abel Vesa @ 2025-03-28  9:22 UTC (permalink / raw)
  To: Johan Hovold
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Jens Glathe, Stephan Gerhold, linux-arm-msm,
	devicetree, linux-kernel

On 25-03-28 09:41:54, Johan Hovold wrote:
> Jens reported that the sanity checks added to the new ps883x USB retimer
> driver breaks USB and display on the HP X14. Turns out the X14 only has
> a retimer on one of the ports, but this initially went unnoticed due to
> the missing sanity check (and error handling) in the retimer driver.
> 
> Drop the non-existing retimer from the devicetree to enable the second
> USB port and the display subsystem.
> 
> Note that this also matches the ACPI tables.
> 
> Fixes: 6f18b8d4142c ("arm64: dts: qcom: x1e80100-hp-x14: dt for HP Omnibook X Laptop 14")
> Cc: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
> Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
 
Reviewed-by: Abel Vesa <abel.vesa@linaro.org>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer
  2025-03-28  8:41 [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer Johan Hovold
  2025-03-28  9:22 ` Abel Vesa
@ 2025-04-01 10:27 ` Konrad Dybcio
  2025-04-01 11:46   ` Johan Hovold
  2025-04-02 13:54 ` Juerg Haefliger
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 7+ messages in thread
From: Konrad Dybcio @ 2025-04-01 10:27 UTC (permalink / raw)
  To: Johan Hovold, Bjorn Andersson, Konrad Dybcio
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Jens Glathe,
	Abel Vesa, Stephan Gerhold, linux-arm-msm, devicetree,
	linux-kernel

On 3/28/25 9:41 AM, Johan Hovold wrote:
> Jens reported that the sanity checks added to the new ps883x USB retimer
> driver breaks USB and display on the HP X14. Turns out the X14 only has
> a retimer on one of the ports, but this initially went unnoticed due to
> the missing sanity check (and error handling) in the retimer driver.
> 
> Drop the non-existing retimer from the devicetree to enable the second
> USB port and the display subsystem.
> 
> Note that this also matches the ACPI tables.
> 
> Fixes: 6f18b8d4142c ("arm64: dts: qcom: x1e80100-hp-x14: dt for HP Omnibook X Laptop 14")
> Cc: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
> Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
> ---
> 
> The devicetree went upstream before the retimer driver so the display
> would already be broken in 6.14 and there's no need to backport this
> one (but it should go into 6.15).
> 
> Note that the SBU mux can be added later when/if someone figures out how
> it is connected.

I am shocked, but this product photo [1] (is this the right laptop? there's a
bunch with similar naming) on the HP website suggests that indeed only one port
has a USB-40Gbps marking on it, with the other type-C only being supposed to do
10Gbps

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>

Konrad

[1] https://ssl-product-images.www8-hp.com/digmedialib/prodimg/lowres/c08993265.png


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer
  2025-04-01 10:27 ` Konrad Dybcio
@ 2025-04-01 11:46   ` Johan Hovold
  0 siblings, 0 replies; 7+ messages in thread
From: Johan Hovold @ 2025-04-01 11:46 UTC (permalink / raw)
  To: Konrad Dybcio
  Cc: Johan Hovold, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Jens Glathe, Abel Vesa,
	Stephan Gerhold, linux-arm-msm, devicetree, linux-kernel

On Tue, Apr 01, 2025 at 12:27:55PM +0200, Konrad Dybcio wrote:
> On 3/28/25 9:41 AM, Johan Hovold wrote:
> > Jens reported that the sanity checks added to the new ps883x USB retimer
> > driver breaks USB and display on the HP X14. Turns out the X14 only has
> > a retimer on one of the ports, but this initially went unnoticed due to
> > the missing sanity check (and error handling) in the retimer driver.
> > 
> > Drop the non-existing retimer from the devicetree to enable the second
> > USB port and the display subsystem.
> > 
> > Note that this also matches the ACPI tables.
> > 
> > Fixes: 6f18b8d4142c ("arm64: dts: qcom: x1e80100-hp-x14: dt for HP Omnibook X Laptop 14")
> > Cc: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
> > Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
> > ---
> > 
> > The devicetree went upstream before the retimer driver so the display
> > would already be broken in 6.14 and there's no need to backport this
> > one (but it should go into 6.15).
> > 
> > Note that the SBU mux can be added later when/if someone figures out how
> > it is connected.
> 
> I am shocked, but this product photo [1] (is this the right laptop? there's a
> bunch with similar naming) on the HP website suggests that indeed only one port
> has a USB-40Gbps marking on it, with the other type-C only being supposed to do
> 10Gbps

Yeah, I found a photo like that on their web page too, and the specs
also mention it:

	1 USB Type-C® 10Gbps signaling rate (USB Power Delivery,
	DisplayPort™ 1.4a, HP Sleep and Charge); 1 USB Type-C® 40Gbps
	signaling rate (USB Power Delivery, DisplayPort™ 1.4a, HP Sleep
	and Charge)

	https://www.hp.com/us-en/shop/pdp/hp-omnibook-x-laptop-ai-pc-14-fe000-14-9j1h6av-1#techSpecs

> [1] https://ssl-product-images.www8-hp.com/digmedialib/prodimg/lowres/c08993265.png

Johan

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer
  2025-03-28  8:41 [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer Johan Hovold
  2025-03-28  9:22 ` Abel Vesa
  2025-04-01 10:27 ` Konrad Dybcio
@ 2025-04-02 13:54 ` Juerg Haefliger
  2025-04-10 10:33 ` Jens Glathe
  2025-05-17  5:57 ` Bjorn Andersson
  4 siblings, 0 replies; 7+ messages in thread
From: Juerg Haefliger @ 2025-04-02 13:54 UTC (permalink / raw)
  To: Johan Hovold
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Jens Glathe, Abel Vesa, Stephan Gerhold,
	linux-arm-msm, devicetree, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 920 bytes --]

On Fri, 28 Mar 2025 09:41:54 +0100
Johan Hovold <johan+linaro@kernel.org> wrote:

> Jens reported that the sanity checks added to the new ps883x USB retimer
> driver breaks USB and display on the HP X14. Turns out the X14 only has
> a retimer on one of the ports, but this initially went unnoticed due to
> the missing sanity check (and error handling) in the retimer driver.
> 
> Drop the non-existing retimer from the devicetree to enable the second
> USB port and the display subsystem.
> 
> Note that this also matches the ACPI tables.
> 
> Fixes: 6f18b8d4142c ("arm64: dts: qcom: x1e80100-hp-x14: dt for HP Omnibook X Laptop 14")
> Cc: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
> Signed-off-by: Johan Hovold <johan+linaro@kernel.org>

Tested on an HP EliteBook Ultra which is the same HW but in a more
expensive (?) packaging.

Tested-by: Juerg Haefliger <juerg.haefliger@canonical.com>

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer
  2025-03-28  8:41 [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer Johan Hovold
                   ` (2 preceding siblings ...)
  2025-04-02 13:54 ` Juerg Haefliger
@ 2025-04-10 10:33 ` Jens Glathe
  2025-05-17  5:57 ` Bjorn Andersson
  4 siblings, 0 replies; 7+ messages in thread
From: Jens Glathe @ 2025-04-10 10:33 UTC (permalink / raw)
  To: Johan Hovold, Bjorn Andersson, Konrad Dybcio
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Abel Vesa,
	Stephan Gerhold, linux-arm-msm, devicetree, linux-kernel

On 28.03.25 09:41, Johan Hovold wrote:
> Note that the SBU mux can be added later when/if someone figures out how
> it is connected.

Tested-by: Jens Glathe <jens.glathe@oldschoolsolutions.biz>

I have added a patch for the gpio-sbu-mux on the 10Gbps connector. [1].

[1]:
https://lore.kernel.org/lkml/20250410-hp-x14-v2-0-d36414704a0a@oldschoolsolutions.biz/

with best regards,

Jens


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer
  2025-03-28  8:41 [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer Johan Hovold
                   ` (3 preceding siblings ...)
  2025-04-10 10:33 ` Jens Glathe
@ 2025-05-17  5:57 ` Bjorn Andersson
  4 siblings, 0 replies; 7+ messages in thread
From: Bjorn Andersson @ 2025-05-17  5:57 UTC (permalink / raw)
  To: Konrad Dybcio, Johan Hovold
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Jens Glathe,
	Abel Vesa, Stephan Gerhold, linux-arm-msm, devicetree,
	linux-kernel


On Fri, 28 Mar 2025 09:41:54 +0100, Johan Hovold wrote:
> Jens reported that the sanity checks added to the new ps883x USB retimer
> driver breaks USB and display on the HP X14. Turns out the X14 only has
> a retimer on one of the ports, but this initially went unnoticed due to
> the missing sanity check (and error handling) in the retimer driver.
> 
> Drop the non-existing retimer from the devicetree to enable the second
> USB port and the display subsystem.
> 
> [...]

Applied, thanks!

[1/1] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer
      commit: 9c6ee9a760c52207eae64cb6b20cd1d93c3761ff

Best regards,
-- 
Bjorn Andersson <andersson@kernel.org>

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2025-05-17  5:57 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-28  8:41 [PATCH] arm64: dts: qcom: x1e80100-hp-x14: drop bogus USB retimer Johan Hovold
2025-03-28  9:22 ` Abel Vesa
2025-04-01 10:27 ` Konrad Dybcio
2025-04-01 11:46   ` Johan Hovold
2025-04-02 13:54 ` Juerg Haefliger
2025-04-10 10:33 ` Jens Glathe
2025-05-17  5:57 ` Bjorn Andersson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).