Subject: Re: [PATCH] arm64: dts: hisilicon: hi3660-hikey960: move role-switch endpoint into connector

From: Akash Sukhavasi <[email-masked]>
Date: Wed, 3 Jun 2026 13:54:59 -0500

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 <[email-masked]>
> ---
>  .../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