* [PATCH 0/2] arm64: dts: imx8qm: Add USB HSIC support for Apalis iMX8
@ 2026-08-21 14:58 Franz Schnyder
2026-08-21 14:58 ` [PATCH 1/2] arm64: dts: imx8qm-ss-conn: Add USB HSIC related nodes Franz Schnyder
2026-08-21 14:58 ` [PATCH 2/2] arm64: dts: apalis-imx8: Add USB HSIC support Franz Schnyder
0 siblings, 2 replies; 6+ messages in thread
From: Franz Schnyder @ 2026-08-21 14:58 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Catalin Marinas, Will Deacon, Rafael J. Wysocki, Daniel Lezcano,
Zhang Rui, Lukasz Luba, Greg Kroah-Hartman, Francesco Dolcini
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, linux-pm,
linux-usb, Franz Schnyder
The Apalis iMX8QM/QP routes the second USB controller in HSIC mode to
the USB hub on the module. Add the HSIC host description for the
iMX8QM/QP SoCs and enable the HSIC path for the Apalis iMX8 modules.
The HSIC host node is added in the QM/QP specific dtsi to not conflict
with the address used by usbotg2 on the iMX8DXL variant. Therefore, it
can't be described in the shared iMX8 conn dtsi.
Tested on Apalis iMX8QM with the Apalis eval board.
Signed-off-by: Franz Schnyder <franz.schnyder@toradex.com>
---
Franz Schnyder (2):
arm64: dts: imx8qm-ss-conn: Add USB HSIC related nodes
arm64: dts: apalis-imx8: Add USB HSIC support
.../arm64/boot/dts/freescale/imx8-apalis-eval.dtsi | 6 ++++-
.../boot/dts/freescale/imx8-apalis-ixora-v1.1.dtsi | 6 ++++-
.../boot/dts/freescale/imx8-apalis-ixora-v1.2.dtsi | 6 ++++-
.../arm64/boot/dts/freescale/imx8-apalis-v1.1.dtsi | 16 ++++++++++++-
arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi | 9 ++++++++
arch/arm64/boot/dts/freescale/imx8qm-ss-conn.dtsi | 26 ++++++++++++++++++++++
6 files changed, 65 insertions(+), 4 deletions(-)
---
base-commit: eba4724641990bd9975ca10ababe726b6143f0b6
change-id: 20260821-add-apalis-imx8-usbhsic-84c9cc211d1f
Best regards,
--
Franz Schnyder <franz.schnyder@toradex.com>
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/2] arm64: dts: imx8qm-ss-conn: Add USB HSIC related nodes
2026-08-21 14:58 [PATCH 0/2] arm64: dts: imx8qm: Add USB HSIC support for Apalis iMX8 Franz Schnyder
@ 2026-08-21 14:58 ` Franz Schnyder
2026-08-21 15:23 ` Frank Li
2026-08-21 14:58 ` [PATCH 2/2] arm64: dts: apalis-imx8: Add USB HSIC support Franz Schnyder
1 sibling, 1 reply; 6+ messages in thread
From: Franz Schnyder @ 2026-08-21 14:58 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Catalin Marinas, Will Deacon, Rafael J. Wysocki, Daniel Lezcano,
Zhang Rui, Lukasz Luba, Greg Kroah-Hartman, Francesco Dolcini
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, linux-pm,
linux-usb, Franz Schnyder
From: Franz Schnyder <franz.schnyder@toradex.com>
Add the required nodes to support the iMX8QM/QP USB HSIC host controller.
Keep the HSIC host node in the QM/QP specific dtsi to not conflict with
the address used by usbotg2 on the iMX8DXL variant.
Signed-off-by: Franz Schnyder <franz.schnyder@toradex.com>
---
arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi | 9 ++++++++
arch/arm64/boot/dts/freescale/imx8qm-ss-conn.dtsi | 26 +++++++++++++++++++++++
2 files changed, 35 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi b/arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi
index 176e2e332f87c..44eee9abacfb1 100644
--- a/arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi
@@ -384,3 +384,12 @@ gpmi: nand-controller@5b812000 {
status = "disabled";
};
};
+
+usbphynop2: usbphynop2 {
+ compatible = "usb-nop-xceiv";
+ #phy-cells = <0>;
+ clocks = <&usb2_lpcg IMX_LPCG_CLK_7>;
+ clock-names = "main_clk";
+ power-domains = <&pd IMX_SC_R_USB_0_PHY>;
+ status = "disabled";
+};
diff --git a/arch/arm64/boot/dts/freescale/imx8qm-ss-conn.dtsi b/arch/arm64/boot/dts/freescale/imx8qm-ss-conn.dtsi
index ccf9f510e0f88..168f89eebeedb 100644
--- a/arch/arm64/boot/dts/freescale/imx8qm-ss-conn.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qm-ss-conn.dtsi
@@ -4,6 +4,32 @@
* Dong Aisheng <aisheng.dong@nxp.com>
*/
+&conn_subsys {
+ usbh1: usb@5b0e0000 {
+ compatible = "fsl,imx7ulp-usb", "fsl,imx6ul-usb", "fsl,imx27-usb";
+ reg = <0x5b0e0000 0x200>;
+ interrupt-parent = <&gic>;
+ interrupts = <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>;
+ phy_type = "hsic";
+ dr_mode = "host";
+ fsl,usbphy = <&usbphynop2>;
+ fsl,usbmisc = <&usbmisc2 0>;
+ clocks = <&usb2_lpcg IMX_LPCG_CLK_6>;
+ ahb-burst-config = <0x0>;
+ tx-burst-size-dword = <0x10>;
+ rx-burst-size-dword = <0x10>;
+ #stream-id-cells = <1>;
+ power-domains = <&pd IMX_SC_R_USB_1>;
+ status = "disabled";
+ };
+
+ usbmisc2: usbmisc@5b0e0200 {
+ compatible = "fsl,imx7ulp-usbmisc", "fsl,imx7d-usbmisc", "fsl,imx6q-usbmisc";
+ #index-cells = <1>;
+ reg = <0x5b0e0200 0x200>;
+ };
+};
+
&usbphy1 {
compatible = "fsl,imx8qm-usbphy", "fsl,imx7ulp-usbphy";
};
--
2.43.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 2/2] arm64: dts: apalis-imx8: Add USB HSIC support
2026-08-21 14:58 [PATCH 0/2] arm64: dts: imx8qm: Add USB HSIC support for Apalis iMX8 Franz Schnyder
2026-08-21 14:58 ` [PATCH 1/2] arm64: dts: imx8qm-ss-conn: Add USB HSIC related nodes Franz Schnyder
@ 2026-08-21 14:58 ` Franz Schnyder
1 sibling, 0 replies; 6+ messages in thread
From: Franz Schnyder @ 2026-08-21 14:58 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Catalin Marinas, Will Deacon, Rafael J. Wysocki, Daniel Lezcano,
Zhang Rui, Lukasz Luba, Greg Kroah-Hartman, Francesco Dolcini
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, linux-pm,
linux-usb, Franz Schnyder
From: Franz Schnyder <franz.schnyder@toradex.com>
Enable the USB HSIC host path on Apalis iMX8 modules.
Signed-off-by: Franz Schnyder <franz.schnyder@toradex.com>
---
arch/arm64/boot/dts/freescale/imx8-apalis-eval.dtsi | 6 +++++-
.../arm64/boot/dts/freescale/imx8-apalis-ixora-v1.1.dtsi | 6 +++++-
.../arm64/boot/dts/freescale/imx8-apalis-ixora-v1.2.dtsi | 6 +++++-
arch/arm64/boot/dts/freescale/imx8-apalis-v1.1.dtsi | 16 +++++++++++++++-
4 files changed, 30 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/imx8-apalis-eval.dtsi b/arch/arm64/boot/dts/freescale/imx8-apalis-eval.dtsi
index 6f5af37ba9af9..1d4e92f674f87 100644
--- a/arch/arm64/boot/dts/freescale/imx8-apalis-eval.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8-apalis-eval.dtsi
@@ -133,7 +133,11 @@ &spdif0 {
status = "okay";
};
-/* TODO: Apalis USBH2, Apalis USBH3 and on-module Wi-Fi via on-module HSIC Hub */
+/* Apalis USBH2, Apalis USBH3 and on-module Wi-Fi via on-module HSIC Hub */
+&usbh1 {
+ vbus-supply = <®_usb_host_vbus>;
+ status = "okay";
+};
/* Apalis USBO1 */
&usbotg1 {
diff --git a/arch/arm64/boot/dts/freescale/imx8-apalis-ixora-v1.1.dtsi b/arch/arm64/boot/dts/freescale/imx8-apalis-ixora-v1.1.dtsi
index 93f485140b20c..68fb2eb8c7e67 100644
--- a/arch/arm64/boot/dts/freescale/imx8-apalis-ixora-v1.1.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8-apalis-ixora-v1.1.dtsi
@@ -222,7 +222,11 @@ &spdif0 {
status = "okay";
};
-/* TODO: Apalis USBH2, Apalis USBH3 and on-module Wi-Fi via on-module HSIC Hub */
+/* Apalis USBH2, Apalis USBH3 and on-module Wi-Fi via on-module HSIC Hub */
+&usbh1 {
+ vbus-supply = <®_usb_host_vbus>;
+ status = "okay";
+};
/* Apalis USBO1 */
&usbotg1 {
diff --git a/arch/arm64/boot/dts/freescale/imx8-apalis-ixora-v1.2.dtsi b/arch/arm64/boot/dts/freescale/imx8-apalis-ixora-v1.2.dtsi
index 5c86bcee55fb7..baf09624fb27c 100644
--- a/arch/arm64/boot/dts/freescale/imx8-apalis-ixora-v1.2.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8-apalis-ixora-v1.2.dtsi
@@ -271,7 +271,11 @@ &spdif0 {
status = "okay";
};
-/* TODO: Apalis USBH2, Apalis USBH3 and on-module Wi-Fi via on-module HSIC Hub */
+/* Apalis USBH2, Apalis USBH3 and on-module Wi-Fi via on-module HSIC Hub */
+&usbh1 {
+ vbus-supply = <®_usb_host_vbus>;
+ status = "okay";
+};
/* Apalis USBO1 */
&usbotg1 {
diff --git a/arch/arm64/boot/dts/freescale/imx8-apalis-v1.1.dtsi b/arch/arm64/boot/dts/freescale/imx8-apalis-v1.1.dtsi
index 681f24810d52e..64604f91d5673 100644
--- a/arch/arm64/boot/dts/freescale/imx8-apalis-v1.1.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8-apalis-v1.1.dtsi
@@ -870,7 +870,21 @@ &spdif0 {
status = "okay";
};
-/* TODO: Apalis USBH2, Apalis USBH3 and on-module Wi-Fi via on-module HSIC Hub */
+/* Apalis USBH2, Apalis USBH3 and on-module Wi-Fi via on-module HSIC Hub */
+&usbh1 {
+ pinctrl-names = "idle", "active";
+ pinctrl-0 = <&pinctrl_usb_hsic_idle>;
+ pinctrl-1 = <&pinctrl_usb_hsic_active>;
+ adp-disable;
+ disable-over-current;
+ hnp-disable;
+ srp-disable;
+ status = "disabled";
+};
+
+&usbphynop2 {
+ status = "okay";
+};
/* Apalis USBH4 */
&usb3_phy {
--
2.43.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 1/2] arm64: dts: imx8qm-ss-conn: Add USB HSIC related nodes
2026-08-21 14:58 ` [PATCH 1/2] arm64: dts: imx8qm-ss-conn: Add USB HSIC related nodes Franz Schnyder
@ 2026-08-21 15:23 ` Frank Li
2026-08-24 7:19 ` Franz Schnyder
0 siblings, 1 reply; 6+ messages in thread
From: Frank Li @ 2026-08-21 15:23 UTC (permalink / raw)
To: Franz Schnyder
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Catalin Marinas, Will Deacon, Rafael J. Wysocki, Daniel Lezcano,
Zhang Rui, Lukasz Luba, Greg Kroah-Hartman, Francesco Dolcini,
devicetree, imx, linux-arm-kernel, linux-kernel, linux-pm,
linux-usb, Franz Schnyder
On Fri, Aug 21, 2026 at 04:58:57PM +0200, Franz Schnyder wrote:
> From: Franz Schnyder <franz.schnyder@toradex.com>
>
> Add the required nodes to support the iMX8QM/QP USB HSIC host controller.
>
> Keep the HSIC host node in the QM/QP specific dtsi to not conflict with
> the address used by usbotg2 on the iMX8DXL variant.
>
> Signed-off-by: Franz Schnyder <franz.schnyder@toradex.com>
> ---
I already post similar patch at
https://lore.kernel.org/imx/20260720212401.C2BD31F000E9@smtp.kernel.org/
Frank
> arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi | 9 ++++++++
> arch/arm64/boot/dts/freescale/imx8qm-ss-conn.dtsi | 26 +++++++++++++++++++++++
> 2 files changed, 35 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi b/arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi
> index 176e2e332f87c..44eee9abacfb1 100644
> --- a/arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi
> @@ -384,3 +384,12 @@ gpmi: nand-controller@5b812000 {
> status = "disabled";
> };
> };
> +
> +usbphynop2: usbphynop2 {
> + compatible = "usb-nop-xceiv";
> + #phy-cells = <0>;
> + clocks = <&usb2_lpcg IMX_LPCG_CLK_7>;
> + clock-names = "main_clk";
> + power-domains = <&pd IMX_SC_R_USB_0_PHY>;
> + status = "disabled";
> +};
> diff --git a/arch/arm64/boot/dts/freescale/imx8qm-ss-conn.dtsi b/arch/arm64/boot/dts/freescale/imx8qm-ss-conn.dtsi
> index ccf9f510e0f88..168f89eebeedb 100644
> --- a/arch/arm64/boot/dts/freescale/imx8qm-ss-conn.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8qm-ss-conn.dtsi
> @@ -4,6 +4,32 @@
> * Dong Aisheng <aisheng.dong@nxp.com>
> */
>
> +&conn_subsys {
> + usbh1: usb@5b0e0000 {
> + compatible = "fsl,imx7ulp-usb", "fsl,imx6ul-usb", "fsl,imx27-usb";
> + reg = <0x5b0e0000 0x200>;
> + interrupt-parent = <&gic>;
> + interrupts = <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>;
> + phy_type = "hsic";
> + dr_mode = "host";
> + fsl,usbphy = <&usbphynop2>;
> + fsl,usbmisc = <&usbmisc2 0>;
> + clocks = <&usb2_lpcg IMX_LPCG_CLK_6>;
> + ahb-burst-config = <0x0>;
> + tx-burst-size-dword = <0x10>;
> + rx-burst-size-dword = <0x10>;
> + #stream-id-cells = <1>;
> + power-domains = <&pd IMX_SC_R_USB_1>;
> + status = "disabled";
> + };
> +
> + usbmisc2: usbmisc@5b0e0200 {
> + compatible = "fsl,imx7ulp-usbmisc", "fsl,imx7d-usbmisc", "fsl,imx6q-usbmisc";
> + #index-cells = <1>;
> + reg = <0x5b0e0200 0x200>;
> + };
> +};
> +
> &usbphy1 {
> compatible = "fsl,imx8qm-usbphy", "fsl,imx7ulp-usbphy";
> };
>
> --
> 2.43.0
>
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 1/2] arm64: dts: imx8qm-ss-conn: Add USB HSIC related nodes
2026-08-21 15:23 ` Frank Li
@ 2026-08-24 7:19 ` Franz Schnyder
2026-08-24 15:02 ` Frank Li
0 siblings, 1 reply; 6+ messages in thread
From: Franz Schnyder @ 2026-08-24 7:19 UTC (permalink / raw)
To: Frank Li
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Catalin Marinas, Will Deacon, Rafael J. Wysocki, Daniel Lezcano,
Zhang Rui, Lukasz Luba, Greg Kroah-Hartman, Francesco Dolcini,
devicetree, imx, linux-arm-kernel, linux-kernel, linux-pm,
linux-usb, Franz Schnyder
On Fri, Aug 21, 2026 at 10:23:02AM -0500, Frank Li wrote:
> On Fri, Aug 21, 2026 at 04:58:57PM +0200, Franz Schnyder wrote:
> > From: Franz Schnyder <franz.schnyder@toradex.com>
> >
> > Add the required nodes to support the iMX8QM/QP USB HSIC host controller.
> >
> > Keep the HSIC host node in the QM/QP specific dtsi to not conflict with
> > the address used by usbotg2 on the iMX8DXL variant.
> >
> > Signed-off-by: Franz Schnyder <franz.schnyder@toradex.com>
> > ---
>
> I already post similar patch at
>
> https://lore.kernel.org/imx/20260720212401.C2BD31F000E9@smtp.kernel.org/
>
> Frank
Hi Frank,
I somehow missed that imx/dt64-intend branch.
Do you want a V2 with only the changes for Apalis?
Or will you just drop this imx8qm-ss-conn patch from the series?
Franz
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 1/2] arm64: dts: imx8qm-ss-conn: Add USB HSIC related nodes
2026-08-24 7:19 ` Franz Schnyder
@ 2026-08-24 15:02 ` Frank Li
0 siblings, 0 replies; 6+ messages in thread
From: Frank Li @ 2026-08-24 15:02 UTC (permalink / raw)
To: Franz Schnyder
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Catalin Marinas, Will Deacon, Rafael J. Wysocki, Daniel Lezcano,
Zhang Rui, Lukasz Luba, Greg Kroah-Hartman, Francesco Dolcini,
devicetree, imx, linux-arm-kernel, linux-kernel, linux-pm,
linux-usb, Franz Schnyder
On Mon, Aug 24, 2026 at 09:19:58AM +0200, Franz Schnyder wrote:
> On Fri, Aug 21, 2026 at 10:23:02AM -0500, Frank Li wrote:
> > On Fri, Aug 21, 2026 at 04:58:57PM +0200, Franz Schnyder wrote:
> > > From: Franz Schnyder <franz.schnyder@toradex.com>
> > >
> > > Add the required nodes to support the iMX8QM/QP USB HSIC host controller.
> > >
> > > Keep the HSIC host node in the QM/QP specific dtsi to not conflict with
> > > the address used by usbotg2 on the iMX8DXL variant.
> > >
> > > Signed-off-by: Franz Schnyder <franz.schnyder@toradex.com>
> > > ---
> >
> > I already post similar patch at
> >
> > https://lore.kernel.org/imx/20260720212401.C2BD31F000E9@smtp.kernel.org/
> >
> > Frank
>
> Hi Frank,
>
> I somehow missed that imx/dt64-intend branch.
> Do you want a V2 with only the changes for Apalis?
> Or will you just drop this imx8qm-ss-conn patch from the series?
I can handle it when apply.
Frank
>
> Franz
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2026-08-24 15:03 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-21 14:58 [PATCH 0/2] arm64: dts: imx8qm: Add USB HSIC support for Apalis iMX8 Franz Schnyder
2026-08-21 14:58 ` [PATCH 1/2] arm64: dts: imx8qm-ss-conn: Add USB HSIC related nodes Franz Schnyder
2026-08-21 15:23 ` Frank Li
2026-08-24 7:19 ` Franz Schnyder
2026-08-24 15:02 ` Frank Li
2026-08-21 14:58 ` [PATCH 2/2] arm64: dts: apalis-imx8: Add USB HSIC support Franz Schnyder
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox