[PATCH 3/3] arm64: dts: freescale: imx8x-colibri: Add Cortex-M4 UART overlay

Ernest Van Hoecke ernestvanhoecke at gmail.com
Thu Oct 1 01:43:12 PDT 2026


From: Ernest Van Hoecke <ernest.vanhoecke at toradex.com>

Reserve the Cortex-M4 UART and its LPCG clock provider for firmware.
The UART is already disabled in the base tree, but its clock provider
can still probe and participate in Linux clock and power management.
Mark both devices "reserved" rather than "disabled", as they remain
operational but are owned by the Cortex-M4 firmware. Firmware must
configure the UART and its pads for the intended MCU application.

Add a combination with Colibri iMX8QXP on Evaluation Board V3 to
validate the ownership changes against a supported base.

The overlay supports both Colibri iMX8DX and iMX8QXP modules.

Signed-off-by: Ernest Van Hoecke <ernest.vanhoecke at toradex.com>
---
 arch/arm64/boot/dts/freescale/Makefile                 |  5 +++++
 .../boot/dts/freescale/imx8x-colibri-uart-m4.dtso      | 18 ++++++++++++++++++
 2 files changed, 23 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index 2732b223eb3d..61dbab287a35 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -832,9 +832,14 @@ dtb-$(CONFIG_ARCH_MXC) += imx8qp-apalis-v1.1-ixora-v1.2.dtb
 
 dtb-$(CONFIG_ARCH_MXC) += imx8qxp-ai_ml.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8qxp-colibri-aster.dtb
+dtb-$(CONFIG_ARCH_MXC) += imx8qxp-colibri-eval-v3-uart-m4.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8qxp-colibri-eval-v3.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8qxp-colibri-iris.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8qxp-colibri-iris-v2.dtb
+dtb-$(CONFIG_ARCH_MXC) += imx8x-colibri-uart-m4.dtbo
+
+imx8qxp-colibri-eval-v3-uart-m4-dtbs := imx8qxp-colibri-eval-v3.dtb imx8x-colibri-uart-m4.dtbo
+
 dtb-$(CONFIG_ARCH_MXC) += imx8qxp-mek.dtb
 
 imx8qxp-mek-pcie-ep-dtbs += imx8qxp-mek.dtb imx-pcie0-ep.dtbo
diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-uart-m4.dtso b/arch/arm64/boot/dts/freescale/imx8x-colibri-uart-m4.dtso
new file mode 100644
index 000000000000..c43be136a46d
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-uart-m4.dtso
@@ -0,0 +1,18 @@
+// SPDX-License-Identifier: GPL-2.0-only OR MIT
+/*
+ * Copyright (c) Toradex
+ *
+ * Colibri iMX8X Cortex-M4 UART, reserved for firmware and not used by Linux
+ */
+
+/dts-v1/;
+/plugin/;
+
+/* Cortex-M4 UART */
+&cm40_lpuart {
+	status = "reserved";
+};
+
+&cm40_uart_lpcg {
+	status = "reserved";
+};

-- 
2.43.0




More information about the linux-arm-kernel mailing list