* [PATCH] arm64: dts: hisilicon: hi3660-hikey960: move role-switch endpoint into connector
@ 2026-05-20 21:53 Akash Sukhavasi
2026-06-03 18:54 ` Akash Sukhavasi
0 siblings, 1 reply; 2+ messages in thread
From: Akash Sukhavasi @ 2026-05-20 21:53 UTC (permalink / raw)
To: xuwei5; +Cc: krzk+dt, robh, conor+dt, linux-arm-kernel, devicetree,
linux-kernel
The rt1711h Type-C controller on the HiKey960 has the USB role-switch
endpoint placed as a top-level 'port' node, outside the connector
subnode. This triggers two dtbs_check warnings against
richtek,rt1711h.yaml:
- 'port' does not match any of the regexes: '^pinctrl-[0-9]+$'
- connector:ports: 'port@0' is a required property
Move the role-switch endpoint into the connector's port@0, which is
where usb-connector.yaml expects it. Update the DWC3 remote-endpoint
phandle accordingly.
The TCPM core (tcpm.c) looks up the role switch starting from the
connector fwnode via fwnode_usb_role_switch_get(). With the endpoint
inside the connector's port@0, it is found through the primary lookup
path rather than the device-level fallback.
Cross-compiled for arm64. Verified with dt_binding_check and
dtbs_check. Not runtime-tested on hardware.
Signed-off-by: Akash Sukhavasi <akash.sukhavasi@gmail.com>
---
.../boot/dts/hisilicon/hi3660-hikey960.dts | 17 +++++++----------
1 file changed, 7 insertions(+), 10 deletions(-)
diff --git a/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts b/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts
index c6056a85c..27fb08d34 100644
--- a/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts
+++ b/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts
@@ -550,6 +550,12 @@ usb_con: connector {
ports {
#address-cells = <1>;
#size-cells = <0>;
+ port@0 {
+ reg = <0>;
+ usb_con_hs: endpoint {
+ remote-endpoint = <&dwc3_role_switch>;
+ };
+ };
port@1 {
reg = <1>;
usb_con_ss: endpoint {
@@ -558,15 +564,6 @@ usb_con_ss: endpoint {
};
};
};
- port {
- #address-cells = <1>;
- #size-cells = <0>;
-
- rt1711h_ep: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&dwc3_role_switch>;
- };
- };
};
adv7533: adv7533@39 {
@@ -683,7 +680,7 @@ port {
#size-cells = <0>;
dwc3_role_switch: endpoint@0 {
reg = <0>;
- remote-endpoint = <&rt1711h_ep>;
+ remote-endpoint = <&usb_con_hs>;
};
dwc3_ss: endpoint@1 {
--
2.54.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] arm64: dts: hisilicon: hi3660-hikey960: move role-switch endpoint into connector
2026-05-20 21:53 [PATCH] arm64: dts: hisilicon: hi3660-hikey960: move role-switch endpoint into connector Akash Sukhavasi
@ 2026-06-03 18:54 ` Akash Sukhavasi
0 siblings, 0 replies; 2+ messages in thread
From: Akash Sukhavasi @ 2026-06-03 18:54 UTC (permalink / raw)
To: xuwei5; +Cc: krzk+dt, robh, conor+dt, linux-arm-kernel, devicetree,
linux-kernel
On Wed, May 20, 2026 at 04:53:25PM -0500, Akash Sukhavasi wrote:
> The rt1711h Type-C controller on the HiKey960 has the USB role-switch
> endpoint placed as a top-level 'port' node, outside the connector
> subnode. This triggers two dtbs_check warnings against
> richtek,rt1711h.yaml:
>
> - 'port' does not match any of the regexes: '^pinctrl-[0-9]+$'
> - connector:ports: 'port@0' is a required property
>
> Move the role-switch endpoint into the connector's port@0, which is
> where usb-connector.yaml expects it. Update the DWC3 remote-endpoint
> phandle accordingly.
>
> The TCPM core (tcpm.c) looks up the role switch starting from the
> connector fwnode via fwnode_usb_role_switch_get(). With the endpoint
> inside the connector's port@0, it is found through the primary lookup
> path rather than the device-level fallback.
>
> Cross-compiled for arm64. Verified with dt_binding_check and
> dtbs_check. Not runtime-tested on hardware.
>
> Signed-off-by: Akash Sukhavasi <akash.sukhavasi@gmail.com>
> ---
> .../boot/dts/hisilicon/hi3660-hikey960.dts | 17 +++++++----------
> 1 file changed, 7 insertions(+), 10 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts b/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts
> index c6056a85c..27fb08d34 100644
> --- a/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts
> +++ b/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts
> @@ -550,6 +550,12 @@ usb_con: connector {
> ports {
> #address-cells = <1>;
> #size-cells = <0>;
> + port@0 {
> + reg = <0>;
> + usb_con_hs: endpoint {
> + remote-endpoint = <&dwc3_role_switch>;
> + };
> + };
> port@1 {
> reg = <1>;
> usb_con_ss: endpoint {
> @@ -558,15 +564,6 @@ usb_con_ss: endpoint {
> };
> };
> };
> - port {
> - #address-cells = <1>;
> - #size-cells = <0>;
> -
> - rt1711h_ep: endpoint@0 {
> - reg = <0>;
> - remote-endpoint = <&dwc3_role_switch>;
> - };
> - };
> };
>
> adv7533: adv7533@39 {
> @@ -683,7 +680,7 @@ port {
> #size-cells = <0>;
> dwc3_role_switch: endpoint@0 {
> reg = <0>;
> - remote-endpoint = <&rt1711h_ep>;
> + remote-endpoint = <&usb_con_hs>;
> };
>
> dwc3_ss: endpoint@1 {
> --
Hi Wei,
Friendly ping on this one.
Also, is the hikey960 board still actively taking fixes?
--
Thanks,
Akash
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-06-03 18:55 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-20 21:53 [PATCH] arm64: dts: hisilicon: hi3660-hikey960: move role-switch endpoint into connector Akash Sukhavasi
2026-06-03 18:54 ` Akash Sukhavasi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox