[PATCH v2] arm64: zynqmp: Update the usb5744 hub node as per binding

Michal Simek michal.simek at amd.com
Thu Dec 5 14:29:47 CET 2024



On 11/29/24 12:06, Venkatesh Yadav Abbarapu wrote:
> Updating the usb5744 hub node as per the latest upstream DT binding
> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
> tree/Documentation/devicetree/bindings/usb/microchip,usb5744.yaml?h=v6.8.8
> 
> Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu at amd.com>
> Acked-by: Michal Simek <michal.simek at amd.com>
> ---
> Changes in v2:
> - Updated the hub node for KD board.
> - Removed the #if code.
> ---
>   arch/arm/dts/zynqmp-sck-kd-g-revA.dtso | 37 +++++++++-----
>   arch/arm/dts/zynqmp-sck-kr-g-revA.dtso | 67 ++++++++++++++++++-------
>   arch/arm/dts/zynqmp-sck-kr-g-revB.dtso | 68 ++++++++++++++++++--------
>   arch/arm/dts/zynqmp-sck-kv-g-revA.dtso | 24 ++++++---
>   arch/arm/dts/zynqmp-sck-kv-g-revB.dtso | 33 +++++++++----
>   5 files changed, 162 insertions(+), 67 deletions(-)
> 
> diff --git a/arch/arm/dts/zynqmp-sck-kd-g-revA.dtso b/arch/arm/dts/zynqmp-sck-kd-g-revA.dtso
> index 4de29d5d3f..d56e863ce1 100644
> --- a/arch/arm/dts/zynqmp-sck-kd-g-revA.dtso
> +++ b/arch/arm/dts/zynqmp-sck-kd-g-revA.dtso
> @@ -80,7 +80,10 @@
>   				  "", "";
>   	};
>   
> -	/* usb5744 at 2d */
> +	hub: usb-hub at 2d { /* u36 */
> +		compatible = "microchip,usb5744";
> +		reg = <0x2d>;
> +	};
>   };
>   
>   /* USB 3.0 */
> @@ -99,18 +102,6 @@
>   	phys = <&psgtr 2 PHY_TYPE_USB3 0 2>;
>   	reset-gpios = <&slg7xl45106 0 GPIO_ACTIVE_LOW>;
>   	assigned-clock-rates = <250000000>, <20000000>;
> -#if 0
> -	usbhub0: usb-hub { /* u36 */
> -		i2c-bus = <&i2c1>;
> -		compatible = "microchip,usb5744";
> -		reset-gpios = <&slg7xl45106 3 GPIO_ACTIVE_LOW>;
> -	};
> -
> -	usb2244: usb-sd { /* u41 */
> -		compatible = "microchip,usb2244";
> -		reset-gpios = <&slg7xl45106 2 GPIO_ACTIVE_LOW>;
> -	};
> -#endif
>   };
>   
>   &dwc3_0 {
> @@ -118,6 +109,26 @@
>   	dr_mode = "host";
>   	snps,usb3_lpm_capable;
>   	maximum-speed = "super-speed";
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	/* 2.0 hub on port 1 */
> +	hub_2_0: hub at 1 {
> +		compatible = "usb424,2744";
> +		reg = <1>;
> +		peer-hub = <&hub_3_0>;
> +		i2c-bus = <&hub>;
> +		reset-gpios = <&slg7xl45106 3 GPIO_ACTIVE_LOW>;
> +	};
> +
> +	/* 3.0 hub on port 2 */
> +	hub_3_0: hub at 2 {
> +		compatible = "usb424,5744";
> +		reg = <2>;
> +		peer-hub = <&hub_2_0>;
> +		i2c-bus = <&hub>;
> +		reset-gpios = <&slg7xl45106 3 GPIO_ACTIVE_LOW>;
> +	};
>   };
>   
>   &gem1 { /* mdio mio50/51 */
> diff --git a/arch/arm/dts/zynqmp-sck-kr-g-revA.dtso b/arch/arm/dts/zynqmp-sck-kr-g-revA.dtso
> index 6349a0e108..9d0c0c2885 100644
> --- a/arch/arm/dts/zynqmp-sck-kr-g-revA.dtso
> +++ b/arch/arm/dts/zynqmp-sck-kr-g-revA.dtso
> @@ -105,11 +105,19 @@
>   			#address-cells = <1>;
>   			#size-cells = <0>;
>   			reg = <0>;
> +			hub_1: usb-hub at 2d {
> +				compatible = "microchip,usb5744";
> +				reg = <0x2d>;
> +			};
>   		};
>   		usbhub_i2c1: i2c at 1 {
>   			#address-cells = <1>;
>   			#size-cells = <0>;
>   			reg = <1>;
> +			hub_2: usb-hub at 2d {
> +				compatible = "microchip,usb5744";
> +				reg = <0x2d>;
> +			};
>   		};
>   		/* Bus 2/3 are not connected */
>   	};
> @@ -145,18 +153,6 @@
>   	phys = <&psgtr 2 PHY_TYPE_USB3 0 2>;
>   	reset-gpios = <&slg7xl45106 0 GPIO_ACTIVE_LOW>;
>   	assigned-clock-rates = <250000000>, <20000000>;
> -#if 0
> -	usbhub0: usb-hub { /* u43 */
> -		i2c-bus = <&usbhub_i2c0>;
> -		compatible = "microchip,usb5744";
> -		reset-gpios = <&slg7xl45106 3 GPIO_ACTIVE_LOW>;
> -	};
> -
> -	usb2244: usb-sd { /* u38 */
> -		compatible = "microchip,usb2244";
> -		reset-gpios = <&slg7xl45106 2 GPIO_ACTIVE_LOW>;
> -	};
> -#endif
>   };
>   
>   &dwc3_0 {
> @@ -164,6 +160,26 @@
>   	dr_mode = "host";
>   	snps,usb3_lpm_capable;
>   	maximum-speed = "super-speed";
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	/* 2.0 hub on port 1 */
> +	hub_2_0: hub at 1 {
> +		compatible = "usb424,2744";
> +		reg = <1>;
> +		peer-hub = <&hub_3_0>;
> +		i2c-bus = <&hub_1>;
> +		reset-gpios = <&slg7xl45106 3 GPIO_ACTIVE_LOW>;
> +	};
> +
> +	/* 3.0 hub on port 2 */
> +	hub_3_0: hub at 2 {
> +		compatible = "usb424,5744";
> +		reg = <2>;
> +		peer-hub = <&hub_2_0>;
> +		i2c-bus = <&hub_1>;
> +		reset-gpios = <&slg7xl45106 3 GPIO_ACTIVE_LOW>;
> +	};
>   };
>   
>   &usb1 { /* mio64 - mio75 */
> @@ -174,13 +190,6 @@
>   	phys = <&psgtr 3 PHY_TYPE_USB3 1 2>;
>   	reset-gpios = <&slg7xl45106 1 GPIO_ACTIVE_LOW>;
>   	assigned-clock-rates = <250000000>, <20000000>;
> -#if 0
> -	usbhub1: usb-hub { /* u84 */
> -		i2c-bus = <&usbhub_i2c1>;
> -		compatible = "microchip,usb5744";
> -		reset-gpios = <&slg7xl45106 4 GPIO_ACTIVE_LOW>;
> -	};
> -#endif
>   };
>   
>   &dwc3_1 {
> @@ -188,6 +197,26 @@
>   	dr_mode = "host";
>   	snps,usb3_lpm_capable;
>   	maximum-speed = "super-speed";
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	/* 2.0 hub on port 1 */
> +	hub1_2_0: hub at 1 {
> +		compatible = "usb424,2744";
> +		reg = <1>;
> +		peer-hub = <&hub1_3_0>;
> +		i2c-bus = <&hub_2>;
> +		reset-gpios = <&slg7xl45106 4 GPIO_ACTIVE_LOW>;
> +	};
> +
> +	/* 3.0 hub on port 2 */
> +	hub1_3_0: hub at 2 {
> +		compatible = "usb424,5744";
> +		reg = <2>;
> +		peer-hub = <&hub1_2_0>;
> +		i2c-bus = <&hub_2>;
> +		reset-gpios = <&slg7xl45106 4 GPIO_ACTIVE_LOW>;
> +	};
>   };
>   
>   &gem0 { /* mdio mio50/51 */
> diff --git a/arch/arm/dts/zynqmp-sck-kr-g-revB.dtso b/arch/arm/dts/zynqmp-sck-kr-g-revB.dtso
> index b0d737d3ca..0d915d496c 100644
> --- a/arch/arm/dts/zynqmp-sck-kr-g-revB.dtso
> +++ b/arch/arm/dts/zynqmp-sck-kr-g-revB.dtso
> @@ -117,11 +117,19 @@
>   			#address-cells = <1>;
>   			#size-cells = <0>;
>   			reg = <0>;
> +			hub_1: usb-hub at 2d {
> +				compatible = "microchip,usb5744";
> +				reg = <0x2d>;
> +			};
>   		};
>   		usbhub_i2c1: i2c at 1 {
>   			#address-cells = <1>;
>   			#size-cells = <0>;
>   			reg = <1>;
> +			hub_2: usb-hub at 2d {
> +				compatible = "microchip,usb5744";
> +				reg = <0x2d>;
> +			};
>   		};
>   		/* Bus 2/3 are not connected */
>   	};
> @@ -165,18 +173,6 @@
>   	phys = <&psgtr 2 PHY_TYPE_USB3 0 2>;
>   	reset-gpios = <&slg7xl45106 0 GPIO_ACTIVE_LOW>;
>   	assigned-clock-rates = <250000000>, <20000000>;
> -#if 0
> -	usbhub0: usb-hub { /* u43 */
> -		i2c-bus = <&usbhub_i2c0>;
> -		compatible = "microchip,usb5744";
> -		reset-gpios = <&slg7xl45106 3 GPIO_ACTIVE_LOW>;
> -	};
> -
> -	usb2244: usb-sd { /* u38 */
> -		compatible = "microchip,usb2244";
> -		reset-gpios = <&slg7xl45106 2 GPIO_ACTIVE_LOW>;
> -	};
> -#endif
>   };
>   
>   &dwc3_0 {
> @@ -184,6 +180,26 @@
>   	dr_mode = "host";
>   	snps,usb3_lpm_capable;
>   	maximum-speed = "super-speed";
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	/* 2.0 hub on port 1 */
> +	hub_2_0: hub at 1 {
> +		compatible = "usb424,2744";
> +		reg = <1>;
> +		peer-hub = <&hub_3_0>;
> +		i2c-bus = <&hub_1>;
> +		reset-gpios = <&slg7xl45106 3 GPIO_ACTIVE_LOW>;
> +	};
> +
> +	/* 3.0 hub on port 2 */
> +	hub_3_0: hub at 2 {
> +		compatible = "usb424,5744";
> +		reg = <2>;
> +		peer-hub = <&hub_2_0>;
> +		i2c-bus = <&hub_1>;
> +		reset-gpios = <&slg7xl45106 3 GPIO_ACTIVE_LOW>;
> +	};
>   };
>   
>   &usb1 { /* mio64 - mio75 */
> @@ -194,14 +210,6 @@
>   	phys = <&psgtr 3 PHY_TYPE_USB3 1 2>;
>   	reset-gpios = <&slg7xl45106 1 GPIO_ACTIVE_LOW>;
>   	assigned-clock-rates = <250000000>, <20000000>;
> -
> -#if 0
> -	usbhub1: usb-hub { /* u84 */
> -		i2c-bus = <&usbhub_i2c1>;
> -		compatible = "microchip,usb5744";
> -		reset-gpios = <&slg7xl45106 4 GPIO_ACTIVE_LOW>;
> -	};
> -#endif
>   };
>   
>   &dwc3_1 {
> @@ -209,6 +217,26 @@
>   	dr_mode = "host";
>   	snps,usb3_lpm_capable;
>   	maximum-speed = "super-speed";
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	/* 2.0 hub on port 1 */
> +	hub1_2_0: hub at 1 {
> +		compatible = "usb424,2744";
> +		reg = <1>;
> +		peer-hub = <&hub1_3_0>;
> +		i2c-bus = <&hub_2>;
> +		reset-gpios = <&slg7xl45106 4 GPIO_ACTIVE_LOW>;
> +	};
> +
> +	/* 3.0 hub on port 2 */
> +	hub1_3_0: hub at 2 {
> +		compatible = "usb424,5744";
> +		reg = <2>;
> +		peer-hub = <&hub1_2_0>;
> +		i2c-bus = <&hub_2>;
> +		reset-gpios = <&slg7xl45106 4 GPIO_ACTIVE_LOW>;
> +	};
>   };
>   
>   &gem0 { /* mdio mio50/51 */
> diff --git a/arch/arm/dts/zynqmp-sck-kv-g-revA.dtso b/arch/arm/dts/zynqmp-sck-kv-g-revA.dtso
> index 561b546e37..a98a888d13 100644
> --- a/arch/arm/dts/zynqmp-sck-kv-g-revA.dtso
> +++ b/arch/arm/dts/zynqmp-sck-kv-g-revA.dtso
> @@ -129,12 +129,6 @@
>   	pinctrl-0 = <&pinctrl_usb0_default>;
>   	phy-names = "usb3-phy";
>   	phys = <&psgtr 2 PHY_TYPE_USB3 0 1>;
> -#if 0
> -	usbhub: usb5744 { /* u43 */
> -		compatible = "microchip,usb5744";
> -		reset-gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
> -	};
> -#endif
>   };
>   
>   &dwc3_0 {
> @@ -142,6 +136,24 @@
>   	dr_mode = "host";
>   	snps,usb3_lpm_capable;
>   	maximum-speed = "super-speed";
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	/* 2.0 hub on port 1 */
> +	hub_2_0: hub at 1 {
> +		compatible = "usb424,2744";
> +		reg = <1>;
> +		peer-hub = <&hub_3_0>;
> +		reset-gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
> +	};
> +
> +	/* 3.0 hub on port 2 */
> +	hub_3_0: hub at 2 {
> +		compatible = "usb424,5744";
> +		reg = <2>;
> +		peer-hub = <&hub_2_0>;
> +		reset-gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
> +	};
>   };
>   
>   &sdhci1 { /* on CC with tuned parameters */
> diff --git a/arch/arm/dts/zynqmp-sck-kv-g-revB.dtso b/arch/arm/dts/zynqmp-sck-kv-g-revB.dtso
> index 64683e0ccb..7490efea98 100644
> --- a/arch/arm/dts/zynqmp-sck-kv-g-revB.dtso
> +++ b/arch/arm/dts/zynqmp-sck-kv-g-revB.dtso
> @@ -92,7 +92,10 @@
>   		label = "ina260-u14";
>   		reg = <0x40>;
>   	};
> -	/* u43 - 0x2d - USB hub */
> +	hub: usb-hub at 2d {
> +		compatible = "microchip,usb5744";
> +		reg = <0x2d>;
> +	};
>   	/* u27 - 0xe0 - STDP4320 DP/HDMI splitter */
>   };
>   
> @@ -131,14 +134,6 @@
>   	phy-names = "usb3-phy";
>   	phys = <&psgtr 2 PHY_TYPE_USB3 0 1>;
>   	assigned-clock-rates = <250000000>, <20000000>;
> -#if 0
> -	usb5744: usb-hub { /* u43 */
> -		status = "okay";
> -		compatible = "microchip,usb5744";
> -		i2c-bus = <&i2c1>;
> -		reset-gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
> -	};
> -#endif
>   };
>   
>   &dwc3_0 {
> @@ -146,6 +141,26 @@
>   	dr_mode = "host";
>   	snps,usb3_lpm_capable;
>   	maximum-speed = "super-speed";
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	/* 2.0 hub on port 1 */
> +	hub_2_0: hub at 1 {
> +		compatible = "usb424,2744";
> +		reg = <1>;
> +		peer-hub = <&hub_3_0>;
> +		i2c-bus = <&hub>;
> +		reset-gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
> +	};
> +
> +	/* 3.0 hub on port 2 */
> +	hub_3_0: hub at 2 {
> +		compatible = "usb424,5744";
> +		reg = <2>;
> +		peer-hub = <&hub_2_0>;
> +		i2c-bus = <&hub>;
> +		reset-gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
> +	};
>   };
>   
>   &sdhci1 { /* on CC with tuned parameters */

This has been applied already.

M



More information about the U-Boot mailing list