Colibri iMX8X USB 3.0 host port

Hi all,
We have added the device tree source code for the USB3803 hub controller on the Colibri iMX8X module. it looks like there is an issue with the registration of the USB3803 I2C client.
The error message “Failed to register i2c client usb3803 at 0x08 (-16)” suggests that the I2C driver was unable to register the device with the I2C bus at address 0x08.
Attached the patch and error log below. Kindly help on this issue.
Thank you in advance.

Patch added:

diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
index 012520f02504..bf0b8eb25ad4 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
@@ -260,6 +260,26 @@
 	pinctrl-0 = <&pinctrl_i2c0>, <&pinctrl_sgtl5000_usb_clk>;
 	status = "okay";
 
+	/* USB HUB USB3803 */
+	usb-hub@8 {
+		compatible = "smsc,usb3803";
+		reg = <0x8>;
+		assigned-clocks = <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
+				  <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
+				  <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
+				  <&mclkout0_lpcg 0>;
+		assigned-clock-rates = <786432000>, <49152000>, <12000000>, <12000000>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_usb3503a>;
+		bypass-gpios = <&gpio_expander_43 5 GPIO_ACTIVE_LOW>;
+		clocks = <&mclkout0_lpcg 0>;
+		clock-names = "refclk";
+		disabled-ports = <2>;
+		initial-mode = <1>;
+		intn-gpios = <&lsio_gpio3 4 GPIO_ACTIVE_LOW>;
+		reset-gpios = <&gpio_expander_43 4 GPIO_ACTIVE_LOW>;
+	};
+
 	/* Touch controller */
 	ad7879_ts: touchscreen@2c {
 		compatible = "adi,ad7879-1";

**Error Log :- **
root@colibri-imx8x-07270357:~# dmesg | grep 3803
[ 2.234400] i2c i2c-16: Failed to register i2c client usb3803 at 0x08 (-16)
[ 2.241419] i2c i2c-16: of_i2c: Failure registering /bus@5a000000/i2c@5a800000/usb3803@8
[ 2.249542] i2c i2c-16: Failed to create I2C device for /bus@5a000000/i2c@5a800000/usb3803@8

Is an internal Colibri iMX8x bus I2C0. The Colibri IMX8X module has an internal usb3803 USB hub connected to I2C0.
How exactly your USB hub is connected to Colibri module? You can take this Device Tree part as an example and adjust it to I2C channel your hub connected to.

Hi alex,
I have re-initialized the above mentioned patch twice that’s why it’s throw that error now i removed and compiled it’s seems fine

Thank you i.