* [PATCH 0/6] Support TQMa8QM
@ 2025-12-18 15:20 Alexander Stein
2025-12-18 15:20 ` [PATCH 1/6] dt-bindings: clk: rs9: add clock-output-names property Alexander Stein
` (7 more replies)
0 siblings, 8 replies; 22+ messages in thread
From: Alexander Stein @ 2025-12-18 15:20 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut
Cc: Alexander Stein, devicetree, linux-kernel, linux-renesas-soc,
linux-clk, linux-usb, imx, linux-arm-kernel, linux
Hi,
this series adds support for TQ's TQMa8QM. The first 3 patches are prepatory:
1. Add support for clock-output-names for clk-renesas-pcie. This is necessary
as clk-imx8qxp-lpcg.c (driver for phyx1 phyx2 clock gating) reqiures that
property on the parent clock.
2. Add support for USB devices in cdns USB3 host controller, namely
onboard-devices as USB hubs. Implemented similarily to snps,dwc3-common.yaml.
3. Add DMA IRQ for PCIe controller. Similar to commit 0b4c46f9ad79c
("arm64: dts: imx8qm-ss-hsio: Wire up DMA IRQ for PCIe") which was only tested
on imx8qxp which just has one PCIe controller.
4 & 5. Device bindings and platform DT
6. Workaround for missing "ERR050104: Arm/A53: Cache coherency issue"
workaround. See [1] for details. Split into separate commit for easy revert
once an errata workaround has been integrated.
Best regards,
Alexander
[1] https://lore.kernel.org/all/20230420112952.28340-1-iivanov@suse.de/
Alexander Stein (6):
dt-bindings: clk: rs9: add clock-output-names property
dt-bindings: usb: cdns,usb3: support USB devices in DT
arm64: dts: imx8qm-ss-hsio: Wire up DMA IRQ for PCIe
dt-bindings: arm: fsl: add bindings for TQMa8x
arm64: dts: Add TQ imx8qm based board
arm64: dts: imx8qm-tqma8qm-mba8x: Disable Cortex-A72 cluster
.../devicetree/bindings/arm/fsl.yaml | 10 +
.../bindings/clock/renesas,9series.yaml | 37 +
.../devicetree/bindings/usb/cdns,usb3.yaml | 11 +
arch/arm64/boot/dts/freescale/Makefile | 1 +
.../boot/dts/freescale/imx8qm-ss-hsio.dtsi | 5 +-
.../dts/freescale/imx8qm-tqma8qm-mba8x.dts | 869 ++++++++++++++++++
.../boot/dts/freescale/imx8qm-tqma8qm.dtsi | 322 +++++++
7 files changed, 1253 insertions(+), 2 deletions(-)
create mode 100644 arch/arm64/boot/dts/freescale/imx8qm-tqma8qm-mba8x.dts
create mode 100644 arch/arm64/boot/dts/freescale/imx8qm-tqma8qm.dtsi
--
2.43.0
^ permalink raw reply [flat|nested] 22+ messages in thread
* [PATCH 1/6] dt-bindings: clk: rs9: add clock-output-names property
2025-12-18 15:20 [PATCH 0/6] Support TQMa8QM Alexander Stein
@ 2025-12-18 15:20 ` Alexander Stein
2025-12-18 15:26 ` Geert Uytterhoeven
2025-12-18 15:20 ` [PATCH 2/6] dt-bindings: usb: cdns,usb3: support USB devices in DT Alexander Stein
` (6 subsequent siblings)
7 siblings, 1 reply; 22+ messages in thread
From: Alexander Stein @ 2025-12-18 15:20 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut
Cc: Alexander Stein, devicetree, linux-kernel, linux-renesas-soc,
linux-clk, linux-usb, imx, linux-arm-kernel, linux
Add "clock-output-names" which is a standard property for clock
providers.
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
.../bindings/clock/renesas,9series.yaml | 37 +++++++++++++++++++
1 file changed, 37 insertions(+)
diff --git a/Documentation/devicetree/bindings/clock/renesas,9series.yaml b/Documentation/devicetree/bindings/clock/renesas,9series.yaml
index af6319697b1c0..5590f04147612 100644
--- a/Documentation/devicetree/bindings/clock/renesas,9series.yaml
+++ b/Documentation/devicetree/bindings/clock/renesas,9series.yaml
@@ -52,6 +52,10 @@ properties:
items:
- description: XTal input clock
+ clock-output-names:
+ minItems: 1
+ maxItems: 8
+
renesas,out-amplitude-microvolt:
enum: [ 600000, 700000, 800000, 900000 ]
description: Output clock signal amplitude
@@ -83,6 +87,38 @@ required:
additionalProperties: false
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - renesas,9fgv0241
+ then:
+ properties:
+ clock-output-names:
+ maxItems: 2
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - renesas,9fgv0441
+ then:
+ properties:
+ clock-output-names:
+ maxItems: 4
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - renesas,9fgv0841
+ then:
+ properties:
+ clock-output-names:
+ maxItems: 8
+
examples:
- |
/* 25MHz reference crystal */
@@ -101,6 +137,7 @@ examples:
compatible = "renesas,9fgv0241";
reg = <0x6a>;
#clock-cells = <1>;
+ clock-output-names = "DIF0";
clocks = <&ref25m>;
--
2.43.0
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [PATCH 2/6] dt-bindings: usb: cdns,usb3: support USB devices in DT
2025-12-18 15:20 [PATCH 0/6] Support TQMa8QM Alexander Stein
2025-12-18 15:20 ` [PATCH 1/6] dt-bindings: clk: rs9: add clock-output-names property Alexander Stein
@ 2025-12-18 15:20 ` Alexander Stein
2025-12-19 8:55 ` Alexander Stein
2025-12-29 23:35 ` Rob Herring
2025-12-18 15:20 ` [PATCH 3/6] arm64: dts: imx8qm-ss-hsio: Wire up DMA IRQ for PCIe Alexander Stein
` (5 subsequent siblings)
7 siblings, 2 replies; 22+ messages in thread
From: Alexander Stein @ 2025-12-18 15:20 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut
Cc: Alexander Stein, devicetree, linux-kernel, linux-renesas-soc,
linux-clk, linux-usb, imx, linux-arm-kernel, linux
Reference usb-hxci.yaml in host mode in order to support on-board USB
hubs.
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
Documentation/devicetree/bindings/usb/cdns,usb3.yaml | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/Documentation/devicetree/bindings/usb/cdns,usb3.yaml b/Documentation/devicetree/bindings/usb/cdns,usb3.yaml
index f454ddd9bbaa6..1f7f0adc3b1ed 100644
--- a/Documentation/devicetree/bindings/usb/cdns,usb3.yaml
+++ b/Documentation/devicetree/bindings/usb/cdns,usb3.yaml
@@ -85,6 +85,17 @@ required:
allOf:
- $ref: usb-drd.yaml#
+ - if:
+ properties:
+ dr_mode:
+ const: peripheral
+
+ required:
+ - dr_mode
+ then:
+ $ref: usb.yaml#
+ else:
+ $ref: usb-xhci.yaml#
unevaluatedProperties: false
--
2.43.0
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [PATCH 3/6] arm64: dts: imx8qm-ss-hsio: Wire up DMA IRQ for PCIe
2025-12-18 15:20 [PATCH 0/6] Support TQMa8QM Alexander Stein
2025-12-18 15:20 ` [PATCH 1/6] dt-bindings: clk: rs9: add clock-output-names property Alexander Stein
2025-12-18 15:20 ` [PATCH 2/6] dt-bindings: usb: cdns,usb3: support USB devices in DT Alexander Stein
@ 2025-12-18 15:20 ` Alexander Stein
2025-12-19 8:55 ` Alexander Stein
2025-12-18 15:20 ` [PATCH 4/6] dt-bindings: arm: fsl: add bindings for TQMa8x Alexander Stein
` (4 subsequent siblings)
7 siblings, 1 reply; 22+ messages in thread
From: Alexander Stein @ 2025-12-18 15:20 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut
Cc: Alexander Stein, devicetree, linux-kernel, linux-renesas-soc,
linux-clk, linux-usb, imx, linux-arm-kernel, linux
IRQ mapping is already present. Add the missing DMA interrupt. This is
similar to commit 0b4c46f9ad79c ("arm64: dts: imx8qm-ss-hsio: Wire up
DMA IRQ for PCIe")
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi b/arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi
index bd6e0aa27efe9..f2c94cdb682b9 100644
--- a/arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi
@@ -20,8 +20,9 @@ pcie0: pciea: pcie@5f000000 {
ranges = <0x81000000 0 0x00000000 0x4ff80000 0 0x00010000>,
<0x82000000 0 0x40000000 0x40000000 0 0x0ff00000>;
#interrupt-cells = <1>;
- interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "msi";
+ interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "msi", "dma";
#address-cells = <3>;
#size-cells = <2>;
clocks = <&pciea_lpcg IMX_LPCG_CLK_6>,
--
2.43.0
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [PATCH 4/6] dt-bindings: arm: fsl: add bindings for TQMa8x
2025-12-18 15:20 [PATCH 0/6] Support TQMa8QM Alexander Stein
` (2 preceding siblings ...)
2025-12-18 15:20 ` [PATCH 3/6] arm64: dts: imx8qm-ss-hsio: Wire up DMA IRQ for PCIe Alexander Stein
@ 2025-12-18 15:20 ` Alexander Stein
2025-12-20 2:06 ` Rob Herring (Arm)
2025-12-18 15:28 ` [PATCH 0/6] Support TQMa8QM Geert Uytterhoeven
` (3 subsequent siblings)
7 siblings, 1 reply; 22+ messages in thread
From: Alexander Stein @ 2025-12-18 15:20 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut
Cc: Alexander Stein, devicetree, linux-kernel, linux-renesas-soc,
linux-clk, linux-usb, imx, linux-arm-kernel, linux, Markus Niebel
TQMa8x is a SOM family using NXP i.MX8QM CPU family
MBa8x is an evaluation mainboard for this SOM.
Signed-off-by: Markus Niebel <Markus.Niebel@tq-group.com>
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
Documentation/devicetree/bindings/arm/fsl.yaml | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/fsl.yaml b/Documentation/devicetree/bindings/arm/fsl.yaml
index dfe9fa5c4dbc4..6384b36b6f385 100644
--- a/Documentation/devicetree/bindings/arm/fsl.yaml
+++ b/Documentation/devicetree/bindings/arm/fsl.yaml
@@ -1401,6 +1401,16 @@ properties:
- const: tq,imx8dxp-tqma8xdps # TQ-Systems GmbH TQMa8XDPS SOM
- const: fsl,imx8dxp
+ - description:
+ TQMa8x is a series of SOM featuring NXP i.MX8 system-on-chip
+ variants. It is designed to be clicked on different carrier boards
+ MBa8x is the starterkit
+ items:
+ - enum:
+ - tq,imx8qm-tqma8qm-mba8x # TQ-Systems GmbH TQMa8QM SOM on MBa8x
+ - const: tq,imx8qm-tqma8qm # TQ-Systems GmbH TQMa8QM SOM
+ - const: fsl,imx8qm
+
- description: i.MX8ULP based Boards
items:
- enum:
--
2.43.0
^ permalink raw reply related [flat|nested] 22+ messages in thread
* Re: [PATCH 1/6] dt-bindings: clk: rs9: add clock-output-names property
2025-12-18 15:20 ` [PATCH 1/6] dt-bindings: clk: rs9: add clock-output-names property Alexander Stein
@ 2025-12-18 15:26 ` Geert Uytterhoeven
2025-12-18 15:49 ` Krzysztof Kozlowski
2025-12-19 8:09 ` Alexander Stein
0 siblings, 2 replies; 22+ messages in thread
From: Geert Uytterhoeven @ 2025-12-18 15:26 UTC (permalink / raw)
To: Alexander Stein
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut, devicetree, linux-kernel, linux-renesas-soc,
linux-clk, linux-usb, imx, linux-arm-kernel, linux
Hi Alexander,
On Thu, 18 Dec 2025 at 16:21, Alexander Stein
<alexander.stein@ew.tq-group.com> wrote:
> Add "clock-output-names" which is a standard property for clock
> providers.
Why? Isn't that property sort of deprecated?
Will be replying to the cover letter next...
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 0/6] Support TQMa8QM
2025-12-18 15:20 [PATCH 0/6] Support TQMa8QM Alexander Stein
` (3 preceding siblings ...)
2025-12-18 15:20 ` [PATCH 4/6] dt-bindings: arm: fsl: add bindings for TQMa8x Alexander Stein
@ 2025-12-18 15:28 ` Geert Uytterhoeven
2025-12-19 8:52 ` Alexander Stein
2025-12-18 15:44 ` [PATCH 5/6] arm64: dts: Add TQ imx8qm based board Alexander Stein
` (2 subsequent siblings)
7 siblings, 1 reply; 22+ messages in thread
From: Geert Uytterhoeven @ 2025-12-18 15:28 UTC (permalink / raw)
To: Alexander Stein
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Michael Turquette,
Stephen Boyd, Peter Chen, Pawel Laszczak, Roger Quadros,
Greg Kroah-Hartman, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Magnus Damm, Marek Vasut,
devicetree, linux-kernel, linux-renesas-soc, linux-clk, linux-usb,
imx, linux-arm-kernel, linux
Hi Alexander,
On Thu, 18 Dec 2025 at 16:22, Alexander Stein
<alexander.stein@ew.tq-group.com> wrote:
> this series adds support for TQ's TQMa8QM. The first 3 patches are prepatory:
> 1. Add support for clock-output-names for clk-renesas-pcie. This is necessary
> as clk-imx8qxp-lpcg.c (driver for phyx1 phyx2 clock gating) reqiures that
> property on the parent clock.
Hmm, clock consumers should have no business with the names used by
clock providers, even less so whether those names are specified in DT
or not.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 22+ messages in thread
* [PATCH 5/6] arm64: dts: Add TQ imx8qm based board
2025-12-18 15:20 [PATCH 0/6] Support TQMa8QM Alexander Stein
` (4 preceding siblings ...)
2025-12-18 15:28 ` [PATCH 0/6] Support TQMa8QM Geert Uytterhoeven
@ 2025-12-18 15:44 ` Alexander Stein
2025-12-18 15:47 ` Fabio Estevam
` (2 more replies)
2025-12-18 15:44 ` [PATCH 6/6] arm64: dts: imx8qm-tqma8qm-mba8x: Disable Cortex-A72 cluster Alexander Stein
2025-12-19 16:49 ` [PATCH 0/6] Support TQMa8QM Rob Herring
7 siblings, 3 replies; 22+ messages in thread
From: Alexander Stein @ 2025-12-18 15:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut
Cc: Alexander Stein, devicetree, linux-kernel, linux-renesas-soc,
linux-clk, linux-usb, imx, linux-arm-kernel, linux
* TQMa8QM on MBa8x
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
arch/arm64/boot/dts/freescale/Makefile | 1 +
.../dts/freescale/imx8qm-tqma8qm-mba8x.dts | 908 ++++++++++++++++++
.../boot/dts/freescale/imx8qm-tqma8qm.dtsi | 315 ++++++
3 files changed, 1224 insertions(+)
create mode 100644 arch/arm64/boot/dts/freescale/imx8qm-tqma8qm-mba8x.dts
create mode 100644 arch/arm64/boot/dts/freescale/imx8qm-tqma8qm.dtsi
diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index dabc84be0c2e8..72f151a0cccfd 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -344,6 +344,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx8qm-apalis-v1.1-eval-v1.2.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8qm-apalis-v1.1-ixora-v1.1.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8qm-apalis-v1.1-ixora-v1.2.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8qm-mek.dtb
+dtb-$(CONFIG_ARCH_MXC) += imx8qm-tqma8qm-mba8x.dtb
imx8qm-mek-ov5640-csi0-dtbs := imx8qm-mek.dtb imx8qm-mek-ov5640-csi0.dtbo
dtb-${CONFIG_ARCH_MXC} += imx8qm-mek-ov5640-csi0.dtb
diff --git a/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm-mba8x.dts b/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm-mba8x.dts
new file mode 100644
index 0000000000000..ba19c3c17c496
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm-mba8x.dts
@@ -0,0 +1,908 @@
+// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT)
+/*
+ * Copyright (c) 2019-2025 TQ-Systems GmbH <linux@ew.tq-group.com>,
+ * D-82229 Seefeld, Germany.
+ * Author: Alexander Stein
+ */
+
+/dts-v1/;
+
+#include <dt-bindings/input/linux-event-codes.h>
+#include <dt-bindings/leds/common.h>
+#include <dt-bindings/net/ti-dp83867.h>
+#include <dt-bindings/pwm/pwm.h>
+
+#include "imx8qm-tqma8qm.dtsi"
+
+/ {
+ model = "TQ-Systems i.MX8QM TQMa8QM on MBa8x";
+ compatible = "tq,imx8qm-tqma8qm-mba8x", "tq,imx8qm-tqma8qm", "fsl,imx8qm";
+
+ aliases {
+ rtc0 = &pcf85063;
+ rtc1 = &rtc;
+ };
+
+ chosen {
+ stdout-path = &lpuart0;
+ };
+
+ adc {
+ compatible = "iio-hwmon";
+ io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>;
+ };
+
+ clk_xtal25: clk-xtal25 {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <25000000>;
+ };
+
+ fan0: pwm-fan {
+ compatible = "pwm-fan";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_pwmfan>;
+ fan-supply = <®_pwm_fan>;
+ #cooling-cells = <2>;
+ /* typical 25 kHz -> 40.000 nsec */
+ pwms = <&lsio_pwm3 0 40000 PWM_POLARITY_INVERTED>;
+ cooling-levels = <0 32 64 128 196 240>;
+ pulses-per-revolution = <2>;
+ interrupt-parent = <&lsio_gpio2>;
+ interrupts = <20 IRQ_TYPE_EDGE_FALLING>;
+ status = "disabled";
+ };
+
+ gpio-keys {
+ compatible = "gpio-keys";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_gpiokeys>;
+ autorepeat;
+
+ switch-1 {
+ label = "SWITCH_A";
+ linux,code = <BTN_0>;
+ gpios = <&lsio_gpio2 11 GPIO_ACTIVE_LOW>;
+ wakeup-source;
+ };
+
+ switch-2 {
+ label = "SWITCH_B";
+ linux,code = <BTN_1>;
+ gpios = <&lsio_gpio1 0 GPIO_ACTIVE_LOW>;
+ wakeup-source;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_gpioled>;
+
+ user-led0 {
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_HEARTBEAT;
+ gpios = <&lsio_gpio5 20 GPIO_ACTIVE_HIGH>;
+ linux,default-trigger = "heartbeat";
+ };
+
+ user-led1 {
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_STATUS;
+ gpios = <&lsio_gpio5 19 GPIO_ACTIVE_HIGH>;
+ default-state = "on";
+ };
+ };
+
+ reg_mba8x_v3v3: regulator-mba8x-v3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "V_3V3_MB";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ reg_mba8x_12v: regulator-mba8x-12v {
+ compatible = "regulator-fixed";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_reg_mba8x_12v>;
+ regulator-name = "MBa8x-V12";
+ regulator-min-microvolt = <12000000>;
+ regulator-max-microvolt = <12000000>;
+ enable-active-high;
+ gpio = <&lsio_gpio1 2 GPIO_ACTIVE_HIGH>;
+ };
+
+ reg_pwm_fan: regulator-pwm-fan {
+ compatible = "regulator-fixed";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_regpwmfan>;
+ regulator-name = "FAN_PWR";
+ regulator-min-microvolt = <12000000>;
+ regulator-max-microvolt = <12000000>;
+ gpio = <&lsio_gpio2 12 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ vin-supply = <®_mba8x_12v>;
+ };
+
+ reg_usb_phy: regulator-usb-phy {
+ compatible = "regulator-fixed";
+ regulator-max-microvolt = <3000000>;
+ regulator-min-microvolt = <3000000>;
+ regulator-name = "usb-phy-dummy";
+ };
+
+ reg_v1v5_pcie: regulator-v1v5-pcie {
+ compatible = "regulator-fixed";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_reg_pcie_v1v5>;
+ regulator-name = "V_1V5_MPCIE";
+ regulator-min-microvolt = <1500000>;
+ regulator-max-microvolt = <1500000>;
+ vin-supply = <®_mba8x_v3v3>;
+ enable-active-high;
+ gpio = <&lsio_gpio0 31 GPIO_ACTIVE_HIGH>;
+ regulator-always-on;
+ };
+
+ reg_vref_v1v8: regulator-vref-v1v8 {
+ compatible = "regulator-fixed";
+ regulator-name = "VREF_V1V8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ reg_v1v8: regulator-v1v8 {
+ compatible = "regulator-fixed";
+ regulator-name = "MBa8x-V1V8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ reg_v3v3_pcie: regulator-v3v3-pcie {
+ compatible = "regulator-fixed";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_reg_pcie_v3v3>;
+ regulator-name = "V_3V3_MPCIE";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ vin-supply = <®_mba8x_v3v3>;
+ enable-active-high;
+ gpio = <&lsio_gpio1 1 GPIO_ACTIVE_HIGH>;
+ regulator-always-on;
+ };
+
+ reg_v3v3_sd: regulator-v3v3-sd {
+ compatible = "regulator-fixed";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_reg_v3v3_sd>;
+ regulator-name = "V3V3_SD";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ vin-supply = <®_mba8x_v3v3>;
+ gpio = <&lsio_gpio4 7 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ regulator-boot-on;
+ off-on-delay-us = <200000>;
+ };
+
+ reserved-memory {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ decoder_boot: decoder-boot@84000000 {
+ reg = <0 0x84000000 0 0x2000000>;
+ no-map;
+ };
+
+ encoder1_boot: encoder1-boot@86000000 {
+ reg = <0 0x86000000 0 0x200000>;
+ no-map;
+ };
+
+ encoder2_boot: encoder2-boot@86200000 {
+ reg = <0 0x86200000 0 0x200000>;
+ no-map;
+ };
+
+ decoder_rpc: decoder-rpc@92000000 {
+ reg = <0 0x92000000 0 0x100000>;
+ no-map;
+ };
+
+ encoder1_rpc: encoder1-rpc@92100000 {
+ reg = <0 0x92100000 0 0x700000>;
+ no-map;
+ };
+
+ encoder2_rpc: encoder1-rpc@92800000 {
+ reg = <0 0x92800000 0 0x700000>;
+ no-map;
+ };
+
+ /*
+ * global autoconfigured region for contiguous allocations
+ * must not exceed memory size and region
+ */
+ linux,cma {
+ compatible = "shared-dma-pool";
+ reusable;
+ size = <0 0x3c000000>;
+ alloc-ranges = <0 0x96000000 0 0x3c000000>;
+ linux,cma-default;
+ };
+ };
+
+ sound {
+ compatible = "fsl,imx-audio-tlv320aic32x4";
+ model = "tqm-tlv320aic32";
+ ssi-controller = <&sai1>;
+ audio-codec = <&tlv320aic3x04>;
+ audio-routing =
+ "IN3_L", "Mic Jack",
+ "Mic Jack", "Mic Bias",
+ "IN1_L", "Line In Jack",
+ "IN1_R", "Line In Jack",
+ "Line Out Jack", "LOL",
+ "Line Out Jack", "LOR";
+ };
+
+ sound-hdmi {
+ compatible = "fsl,imx-audio-hdmi";
+ model = "imx-audio-dp";
+ audio-cpu = <&sai5>;
+ hdmi-out;
+ };
+
+ thermal-zones {
+ cpu0-thermal {
+ trips {
+ soc_active0_0: trip-active0 {
+ temperature = <40000>;
+ hysteresis = <5000>;
+ type = "active";
+ };
+
+ soc_active0_1: trip-active1 {
+ temperature = <48000>;
+ hysteresis = <3000>;
+ type = "active";
+ };
+
+ soc_active0_2: trip-active2 {
+ temperature = <60000>;
+ hysteresis = <10000>;
+ type = "active";
+ };
+ };
+
+ cooling-maps {
+ map1 {
+ trip = <&soc_active0_0>;
+ cooling-device = <&fan0 1 1>;
+ };
+
+ map2 {
+ trip = <&soc_active0_1>;
+ cooling-device = <&fan0 2 2>;
+ };
+
+ map3 {
+ trip = <&soc_active0_2>;
+ cooling-device = <&fan0 3 3>;
+ };
+ };
+ };
+
+ cpu1-thermal {
+ trips {
+ soc_active1_0: trip-active0 {
+ temperature = <40000>;
+ hysteresis = <5000>;
+ type = "active";
+ };
+
+ soc_active1_1: trip-active1 {
+ temperature = <48000>;
+ hysteresis = <3000>;
+ type = "active";
+ };
+
+ soc_active1_2: trip-active2 {
+ temperature = <60000>;
+ hysteresis = <10000>;
+ type = "active";
+ };
+ };
+
+ cooling-maps {
+ map1 {
+ trip = <&soc_active1_0>;
+ cooling-device = <&fan0 1 1>;
+ };
+
+ map2 {
+ trip = <&soc_active1_1>;
+ cooling-device = <&fan0 2 2>;
+ };
+
+ map3 {
+ trip = <&soc_active1_2>;
+ cooling-device = <&fan0 3 3>;
+ };
+ };
+ };
+ };
+};
+
+&fec1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_fec1>;
+ phy-mode = "rgmii-id";
+ phy-handle = <ðphy0>;
+ nvmem-cells = <&fec_mac0>;
+ nvmem-cell-names = "mac-address";
+ fsl,magic-packet;
+ status = "okay";
+
+ mdio {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ ethphy0: ethernet-phy@0 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <0>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_ethphy0>;
+ ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
+ ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
+ ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
+ ti,dp83867-rxctrl-strap-quirk;
+ ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>;
+ reset-gpios = <&lsio_gpio2 6 GPIO_ACTIVE_LOW>;
+ reset-assert-us = <500000>;
+ reset-deassert-us = <50000>;
+ enet-phy-lane-no-swap;
+ interrupt-parent = <&lsio_gpio2>;
+ interrupts = <8 IRQ_TYPE_LEVEL_LOW>;
+ };
+ };
+};
+
+&fec2 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_fec2>;
+ phy-mode = "rgmii-id";
+ phy-handle = <ðphy3>;
+ nvmem-cells = <&fec_mac1>;
+ nvmem-cell-names = "mac-address";
+ fsl,magic-packet;
+ status = "okay";
+
+ mdio {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ ethphy3: ethernet-phy@3 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <3>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_ethphy3>;
+ ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
+ ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
+ ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
+ ti,dp83867-rxctrl-strap-quirk;
+ ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>;
+ reset-gpios = <&lsio_gpio2 4 GPIO_ACTIVE_LOW>;
+ reset-assert-us = <500000>;
+ reset-deassert-us = <50000>;
+ enet-phy-lane-no-swap;
+ };
+ };
+};
+
+&flexcan1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_flexcan1>;
+ xceiver-supply = <®_mba8x_v3v3>;
+ status = "okay";
+};
+
+&flexcan2 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_flexcan2>;
+ xceiver-supply = <®_mba8x_v3v3>;
+ status = "okay";
+};
+
+&hsio_phy {
+ fsl,hsio-cfg = "pciea-pcieb-sata";
+ fsl,refclk-pad-mode = "input";
+ status = "okay";
+};
+
+/* no refclock gating */
+&hsio_refa_clk {
+ status = "disabled";
+};
+
+&hsio_refb_clk {
+ status = "disabled";
+};
+
+&i2c1 {
+ tlv320aic3x04: audio-codec@18 {
+ compatible = "ti,tlv320aic32x4";
+ reg = <0x18>;
+ clocks = <&mclkout0_lpcg IMX_LPCG_CLK_0>;
+ clock-names = "mclk";
+ 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 IMX_LPCG_CLK_0>;
+ assigned-clock-rates = <786432000>, <49152000>, <12288000>, <12288000>;
+ ldoin-supply = <®_mba8x_v3v3>;
+ iov-supply = <®_v1v8>;
+ };
+
+ sensor1: temperature-sensor@1c {
+ compatible = "nxp,se97b", "jedec,jc-42.4-temp";
+ reg = <0x1c>;
+ };
+
+ eeprom2: eeprom@54 {
+ compatible = "nxp,se97b", "atmel,24c02";
+ reg = <0x54>;
+ pagesize = <16>;
+ vcc-supply = <®_mba8x_v3v3>;
+ };
+
+ pcieclk: clock-generator@68 {
+ compatible = "renesas,9fgv0441";
+ reg = <0x68>;
+ clocks = <&clk_xtal25>;
+ #clock-cells = <1>;
+ clock-output-names = "DIF0", "DIF1", "DIF2", "DIF3";
+ };
+};
+
+&lpspi0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_lpspi0 &pinctrl_lpspi0_cs>;
+ cs-gpios = <&lsio_gpio3 5 GPIO_ACTIVE_LOW>, <&lsio_gpio3 6 GPIO_ACTIVE_LOW>;
+ status = "okay";
+};
+
+&lpspi1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_lpspi1 &pinctrl_lpspi1_cs>;
+ cs-gpios = <&lsio_gpio3 24 GPIO_ACTIVE_LOW>, <&lsio_gpio3 25 GPIO_ACTIVE_LOW>;
+ status = "okay";
+};
+
+&lpspi2 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_lpspi2 &pinctrl_lpspi2_cs>;
+ cs-gpios = <&lsio_gpio3 10 GPIO_ACTIVE_LOW>, <&lsio_gpio3 11 GPIO_ACTIVE_LOW>;
+ status = "okay";
+};
+
+&lpuart0 { /* console */
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_lpuart0>;
+ status = "okay";
+};
+
+&lpuart1 { /* X62 pin header */
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_lpuart1>;
+ status = "okay";
+};
+
+&lpuart2 { /* mikroBUS */
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_lpuart2>;
+ status = "okay";
+};
+
+&lsio_gpio2 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_gpio2>;
+ gpio-line-names = "", "", "", "",
+ "", "PCIE0_DISABLE#", "", "";
+
+ pcie0-wdisable1-hog {
+ gpio-hog;
+ gpios = <5 0>;
+ output-high;
+ line-name = "PCIE0_DISABLE#";
+ };
+
+ pcie-clk-pd-hog {
+ gpio-hog;
+ gpios = <10 0>;
+ output-high;
+ line-name = "PCIE_CLK_PD#";
+ };
+};
+
+&lsio_pwm3 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_lsio_pwm3>;
+ status = "okay";
+};
+
+&pciea {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_pciea>;
+ phys = <&hsio_phy 0 PHY_TYPE_PCIE 0>;
+ phy-names = "pcie-phy";
+ reset-gpio = <&lsio_gpio4 29 GPIO_ACTIVE_LOW>;
+ status = "okay";
+};
+
+&pcieb {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_pcieb>;
+ phys = <&hsio_phy 1 PHY_TYPE_PCIE 1>;
+ phy-names = "pcie-phy";
+ reset-gpio = <&lsio_gpio5 0 GPIO_ACTIVE_LOW>;
+ status = "okay";
+};
+
+&phyx1_lpcg {
+ clocks = <&pcieclk 0>, <&hsio_per_clk>,
+ <&pcieclk 0>, <&hsio_per_clk>;
+};
+
+&phyx2_lpcg {
+ clocks = <&pcieclk 0>, <&hsio_per_clk>,
+ <&pcieclk 0>, <&hsio_per_clk>;
+};
+
+&sai1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_sai1>;
+ 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>,
+ <&sai1_lpcg IMX_LPCG_CLK_0>;
+ assigned-clock-rates = <786432000>, <49152000>, <12288000>, <49152000>;
+ status = "okay";
+};
+
+&sai5 {
+ status = "okay";
+};
+
+&sai5_lpcg {
+ status = "okay";
+};
+
+&usbphy1 {
+ phy-3p0-supply = <®_usb_phy>;
+ status = "okay";
+};
+
+&usbotg1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_usbotg1>;
+ srp-disable;
+ hnp-disable;
+ adp-disable;
+ power-active-high;
+ over-current-active-low;
+ dr_mode = "otg";
+ status = "okay";
+};
+
+&usb3_phy {
+ status = "okay";
+};
+
+&usbotg3 {
+ /* over-current disabled by default */
+ status = "okay";
+};
+
+&usbotg3_cdns3 {
+ dr_mode = "host";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_usbhub>;
+ status = "okay";
+
+ hub_2_0: hub@1 {
+ compatible = "usb451,8142";
+ reg = <1>;
+ peer-hub = <&hub_3_0>;
+ reset-gpios = <&lsio_gpio2 7 GPIO_ACTIVE_LOW>;
+ vdd-supply = <®_mba8x_v3v3>;
+ };
+
+ hub_3_0: hub@2 {
+ compatible = "usb451,8140";
+ reg = <2>;
+ peer-hub = <&hub_2_0>;
+ reset-gpios = <&lsio_gpio2 7 GPIO_ACTIVE_LOW>;
+ vdd-supply = <®_mba8x_v3v3>;
+ };
+};
+
+&usdhc2 {
+ pinctrl-names = "default", "state_100mhz", "state_200mhz";
+ pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
+ pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
+ pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
+ bus-width = <4>;
+ cd-gpios = <&lsio_gpio5 22 GPIO_ACTIVE_LOW>;
+ wp-gpios = <&lsio_gpio5 21 GPIO_ACTIVE_HIGH>;
+ vmmc-supply = <®_v3v3_sd>;
+ no-mmc;
+ no-sdio;
+ status = "okay";
+};
+
+&iomuxc {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_gpio>;
+
+ pinctrl_adc0: adc0grp {
+ fsl,pins = <IMX8QM_ADC_IN1_DMA_ADC0_IN1 0x02000060>,
+ <IMX8QM_ADC_IN2_DMA_ADC0_IN2 0x02000060>;
+ };
+
+ pinctrl_ethphy0: ethphy0grp {
+ fsl,pins = <IMX8QM_ESAI1_SCKR_LSIO_GPIO2_IO06 0x00000041>,
+ <IMX8QM_ESAI1_TX0_LSIO_GPIO2_IO08 0x00000021>;
+ };
+
+ pinctrl_ethphy3: ethphy3grp {
+ fsl,pins = <IMX8QM_ESAI1_FSR_LSIO_GPIO2_IO04 0x00000041>;
+ };
+
+ pinctrl_fec1: fec1grp {
+ fsl,pins = <IMX8QM_COMP_CTL_GPIO_1V8_3V3_ENET_ENETB_PAD 0x000014a0>,
+ <IMX8QM_ENET0_MDC_CONN_ENET0_MDC 0x06000041>,
+ <IMX8QM_ENET0_MDIO_CONN_ENET0_MDIO 0x06000041>,
+ <IMX8QM_ENET0_RGMII_TX_CTL_CONN_ENET0_RGMII_TX_CTL 0x00000041>,
+ <IMX8QM_ENET0_RGMII_TXC_CONN_ENET0_RGMII_TXC 0x00000041>,
+ <IMX8QM_ENET0_RGMII_TXD0_CONN_ENET0_RGMII_TXD0 0x00000041>,
+ <IMX8QM_ENET0_RGMII_TXD1_CONN_ENET0_RGMII_TXD1 0x00000041>,
+ <IMX8QM_ENET0_RGMII_TXD2_CONN_ENET0_RGMII_TXD2 0x00000041>,
+ <IMX8QM_ENET0_RGMII_TXD3_CONN_ENET0_RGMII_TXD3 0x00000041>,
+ <IMX8QM_ENET0_RGMII_RXC_CONN_ENET0_RGMII_RXC 0x00000040>,
+ <IMX8QM_ENET0_RGMII_RX_CTL_CONN_ENET0_RGMII_RX_CTL 0x00000040>,
+ <IMX8QM_ENET0_RGMII_RXD0_CONN_ENET0_RGMII_RXD0 0x00000040>,
+ <IMX8QM_ENET0_RGMII_RXD1_CONN_ENET0_RGMII_RXD1 0x00000040>,
+ <IMX8QM_ENET0_RGMII_RXD2_CONN_ENET0_RGMII_RXD2 0x00000040>,
+ <IMX8QM_ENET0_RGMII_RXD3_CONN_ENET0_RGMII_RXD3 0x00000040>;
+ };
+
+ pinctrl_fec2: fec2grp {
+ fsl,pins = <IMX8QM_COMP_CTL_GPIO_1V8_3V3_ENET_ENETA_PAD 0x000014a0>,
+ <IMX8QM_ENET1_MDC_CONN_ENET1_MDC 0x06000041>,
+ <IMX8QM_ENET1_MDIO_CONN_ENET1_MDIO 0x06000041>,
+ <IMX8QM_ENET1_RGMII_TX_CTL_CONN_ENET1_RGMII_TX_CTL 0x00000041>,
+ <IMX8QM_ENET1_RGMII_TXC_CONN_ENET1_RGMII_TXC 0x00000041>,
+ <IMX8QM_ENET1_RGMII_TXD0_CONN_ENET1_RGMII_TXD0 0x00000041>,
+ <IMX8QM_ENET1_RGMII_TXD1_CONN_ENET1_RGMII_TXD1 0x00000041>,
+ <IMX8QM_ENET1_RGMII_TXD2_CONN_ENET1_RGMII_TXD2 0x00000041>,
+ <IMX8QM_ENET1_RGMII_TXD3_CONN_ENET1_RGMII_TXD3 0x00000041>,
+ <IMX8QM_ENET1_RGMII_RXC_CONN_ENET1_RGMII_RXC 0x00000040>,
+ <IMX8QM_ENET1_RGMII_RX_CTL_CONN_ENET1_RGMII_RX_CTL 0x00000040>,
+ <IMX8QM_ENET1_RGMII_RXD0_CONN_ENET1_RGMII_RXD0 0x00000040>,
+ <IMX8QM_ENET1_RGMII_RXD1_CONN_ENET1_RGMII_RXD1 0x00000040>,
+ <IMX8QM_ENET1_RGMII_RXD2_CONN_ENET1_RGMII_RXD2 0x00000040>,
+ <IMX8QM_ENET1_RGMII_RXD3_CONN_ENET1_RGMII_RXD3 0x00000040>;
+ };
+
+ pinctrl_flexcan1: flexcan0grp {
+ fsl,pins = <IMX8QM_FLEXCAN0_TX_DMA_FLEXCAN0_TX 0x00000021>,
+ <IMX8QM_FLEXCAN0_RX_DMA_FLEXCAN0_RX 0x00000021>;
+ };
+
+ pinctrl_flexcan2: flexcan1grp {
+ fsl,pins = <IMX8QM_FLEXCAN1_TX_DMA_FLEXCAN1_TX 0x00000021>,
+ <IMX8QM_FLEXCAN1_RX_DMA_FLEXCAN1_RX 0x00000021>;
+ };
+
+ pinctrl_gpio: pingpiogrp {
+ fsl,pins = /* GPIO0_05 on X62:26 */
+ <IMX8QM_SIM0_GPIO0_00_LSIO_GPIO0_IO05 0x00000021>,
+ /* GPIO1_14 on X64:21 */
+ <IMX8QM_LVDS1_I2C1_SCL_LSIO_GPIO1_IO14 0x00000021>,
+ /* GPIO1_15 on X64:23 */
+ <IMX8QM_LVDS1_I2C1_SDA_LSIO_GPIO1_IO15 0x00000021>,
+ /* GPIO2_17 on X63:37 */
+ <IMX8QM_SPI3_SCK_LSIO_GPIO2_IO17 0x00000021>,
+ /* GPIO2_21 on X63:39 */
+ <IMX8QM_SPI3_CS1_LSIO_GPIO2_IO21 0x00000021>,
+ /* GPIO4_12 on X61:24 */
+ <IMX8QM_USDHC2_CD_B_LSIO_GPIO4_IO12 0x00000021>,
+ /* GPIO4_11 on X61:26 */
+ <IMX8QM_USDHC2_WP_LSIO_GPIO4_IO11 0x00000021>,
+ /* GPIO4_10 on X61:28 */
+ <IMX8QM_USDHC2_VSELECT_LSIO_GPIO4_IO10 0x00000021>,
+ /* GPIO4_09 on X61:30 */
+ <IMX8QM_USDHC2_RESET_B_LSIO_GPIO4_IO09 0x00000021>,
+ /* GPIO5_23 on X62:24 */
+ <IMX8QM_USDHC1_STROBE_LSIO_GPIO5_IO23 0x00000021>,
+ /* GPIO5_24 on X61:15 */
+ <IMX8QM_USDHC2_CLK_LSIO_GPIO5_IO24 0x00000021>,
+ /* GPIO5_25 on X61:17 */
+ <IMX8QM_USDHC2_CMD_LSIO_GPIO5_IO25 0x00000021>,
+ /* GPIO5_26 on X61:19 */
+ <IMX8QM_USDHC2_DATA0_LSIO_GPIO5_IO26 0x00000021>,
+ /* GPIO5_27 on X61:21 */
+ <IMX8QM_USDHC2_DATA1_LSIO_GPIO5_IO27 0x00000021>,
+ /* GPIO5_28 on X61:23 */
+ <IMX8QM_USDHC2_DATA2_LSIO_GPIO5_IO28 0x00000021>,
+ /* GPIO5_29 on X61:25 */
+ <IMX8QM_USDHC2_DATA3_LSIO_GPIO5_IO29 0x00000021>;
+ };
+
+ pinctrl_gpio2: gpio2grp {
+ fsl,pins = <IMX8QM_ESAI1_FST_LSIO_GPIO2_IO05 0x00000021>,
+ <IMX8QM_ESAI1_TX2_RX3_LSIO_GPIO2_IO10 0x00000021>;
+ };
+
+ pinctrl_gpiokeys: gpiokeysgrp {
+ fsl,pins = <IMX8QM_ESAI1_TX3_RX2_LSIO_GPIO2_IO11 0x00000021>,
+ <IMX8QM_SCU_GPIO0_04_LSIO_GPIO1_IO00 0x00000021>;
+ };
+
+ pinctrl_gpioled: gpioledgrp {
+ fsl,pins = <IMX8QM_USDHC1_DATA4_LSIO_GPIO5_IO19 0x00000021>,
+ <IMX8QM_USDHC1_DATA5_LSIO_GPIO5_IO20 0x00000021>;
+ };
+
+ pinctrl_lpspi0: lpspi0grp {
+ fsl,pins = <IMX8QM_SPI0_SCK_DMA_SPI0_SCK 0x0600004d>,
+ <IMX8QM_SPI0_SDO_DMA_SPI0_SDO 0x0600004d>,
+ <IMX8QM_SPI0_SDI_DMA_SPI0_SDI 0x0600004d>;
+ };
+
+ pinctrl_lpspi0_cs: lpspi0csgrp {
+ fsl,pins = <IMX8QM_SPI0_CS0_LSIO_GPIO3_IO05 0x00000021>,
+ <IMX8QM_SPI0_CS1_LSIO_GPIO3_IO06 0x00000021>;
+ };
+
+ pinctrl_lpspi1: lpspi1grp {
+ fsl,pins = <IMX8QM_ADC_IN3_DMA_SPI1_SCK 0x0600004d>,
+ <IMX8QM_ADC_IN4_DMA_SPI1_SDO 0x0600004d>,
+ <IMX8QM_ADC_IN5_DMA_SPI1_SDI 0x0600004d>;
+ };
+
+ pinctrl_lpspi1_cs: lpspi1csgrp {
+ fsl,pins = <IMX8QM_ADC_IN6_LSIO_GPIO3_IO24 0x00000021>,
+ <IMX8QM_ADC_IN7_LSIO_GPIO3_IO25 0x00000021>;
+ };
+
+ pinctrl_lpspi2: lpspi2grp {
+ fsl,pins = <IMX8QM_SPI2_SCK_DMA_SPI2_SCK 0x0600004d>,
+ <IMX8QM_SPI2_SDO_DMA_SPI2_SDO 0x0600004d>,
+ <IMX8QM_SPI2_SDI_DMA_SPI2_SDI 0x0600004d>;
+ };
+
+ pinctrl_lpspi2_cs: lpspi2sgrp {
+ fsl,pins = <IMX8QM_SPI2_CS0_LSIO_GPIO3_IO10 0x00000021>,
+ <IMX8QM_SPI2_CS1_LSIO_GPIO3_IO11 0x00000021>;
+ };
+
+ pinctrl_lpuart0: lpuart0grp {
+ fsl,pins = <IMX8QM_UART0_RX_DMA_UART0_RX 0x06000021>,
+ <IMX8QM_UART0_TX_DMA_UART0_TX 0x06000021>,
+ <IMX8QM_UART0_CTS_B_DMA_UART0_CTS_B 0x00000021>,
+ <IMX8QM_UART0_RTS_B_DMA_UART0_RTS_B 0x00000021>;
+ };
+
+ pinctrl_lpuart1: lpuart1grp {
+ fsl,pins = <IMX8QM_UART1_RX_DMA_UART1_RX 0x06000021>,
+ <IMX8QM_UART1_TX_DMA_UART1_TX 0x06000021>,
+ <IMX8QM_UART1_CTS_B_DMA_UART1_CTS_B 0x00000021>,
+ <IMX8QM_UART1_RTS_B_DMA_UART1_RTS_B 0x00000021>;
+ };
+
+ pinctrl_lpuart2: lpuart2grp {
+ fsl,pins = <IMX8QM_LVDS0_I2C1_SDA_DMA_UART2_RX 0x06000021>,
+ <IMX8QM_LVDS0_I2C1_SCL_DMA_UART2_TX 0x06000021>;
+ };
+
+ pinctrl_lsio_pwm3: lsiopwm3grp {
+ fsl,pins = <IMX8QM_GPT0_COMPARE_LSIO_PWM3_OUT 0x00000021>;
+ };
+
+ pinctrl_pciea: pcieagrp {
+ fsl,pins = <IMX8QM_PCIE_CTRL0_PERST_B_LSIO_GPIO4_IO29 0x06000021>,
+ <IMX8QM_PCIE_CTRL0_CLKREQ_B_HSIO_PCIE0_CLKREQ_B 0x06000021>,
+ <IMX8QM_PCIE_CTRL0_WAKE_B_LSIO_GPIO4_IO28 0x04000021>;
+ };
+
+ pinctrl_pcieb: pciebgrp {
+ fsl,pins = <IMX8QM_PCIE_CTRL1_PERST_B_LSIO_GPIO5_IO00 0x06000021>,
+ <IMX8QM_PCIE_CTRL1_CLKREQ_B_HSIO_PCIE1_CLKREQ_B 0x06000021>,
+ <IMX8QM_PCIE_CTRL1_WAKE_B_LSIO_GPIO4_IO31 0x04000021>;
+ };
+
+ pinctrl_pwmfan: pwmfangrp {
+ fsl,pins = <IMX8QM_SPI3_CS0_LSIO_GPIO2_IO20 0x30>;
+ };
+
+ pinctrl_reg_mba8x_12v: mba12vgrp {
+ fsl,pins = <IMX8QM_SCU_GPIO0_06_LSIO_GPIO1_IO02 0x00000021>;
+ };
+
+ pinctrl_reg_pcie_v1v5: regpcie1v5grp {
+ fsl,pins = <IMX8QM_SCU_GPIO0_03_LSIO_GPIO0_IO31 0x00000021>;
+ };
+
+ pinctrl_reg_pcie_v3v3: regpcie3v3grp {
+ fsl,pins = <IMX8QM_SCU_GPIO0_05_LSIO_GPIO1_IO01 0x00000021>;
+ };
+
+ pinctrl_regpwmfan: regpwmfangrp {
+ fsl,pins = <IMX8QM_ESAI1_TX4_RX1_LSIO_GPIO2_IO12 0x00000021>;
+ };
+
+ pinctrl_reg_v3v3_sd: reg3v3sdgrp {
+ fsl,pins = <IMX8QM_USDHC1_RESET_B_LSIO_GPIO4_IO07 0x00000021>;
+ };
+
+ pinctrl_sai1: sai1grp {
+ fsl,pins = <IMX8QM_SAI1_RXD_AUD_SAI1_RXD 0x06000041>,
+ <IMX8QM_SAI1_RXC_AUD_SAI1_RXC 0x06000041>,
+ <IMX8QM_SAI1_RXFS_AUD_SAI1_RXFS 0x06000041>,
+ <IMX8QM_SAI1_TXD_AUD_SAI1_TXD 0x06000061>,
+ <IMX8QM_SAI1_TXC_AUD_SAI1_TXC 0x06000041>,
+ <IMX8QM_MCLK_OUT0_AUD_ACM_MCLK_OUT0 0x0600004d>;
+ };
+
+ pinctrl_usbotg1: usbotg1grp {
+ fsl,pins = <IMX8QM_USB_SS3_TC2_CONN_USB_OTG1_OC 0x00000021>,
+ <IMX8QM_USB_SS3_TC0_CONN_USB_OTG1_PWR 0x00000021>;
+ };
+
+ pinctrl_usbhub: usbhubgrp {
+ fsl,pins = <IMX8QM_ESAI1_SCKT_LSIO_GPIO2_IO07 0x00000021>;
+ };
+
+ pinctrl_usdhc2_gpio: usdhc2-gpiogrp {
+ fsl,pins = <IMX8QM_USDHC1_DATA6_LSIO_GPIO5_IO21 0x00000021>,
+ <IMX8QM_USDHC1_DATA7_LSIO_GPIO5_IO22 0x00000021>;
+ };
+
+ pinctrl_usdhc2: usdhc2grp {
+ fsl,pins = <IMX8QM_USDHC1_CLK_CONN_USDHC1_CLK 0x06000041>,
+ <IMX8QM_USDHC1_CMD_CONN_USDHC1_CMD 0x00000021>,
+ <IMX8QM_USDHC1_DATA0_CONN_USDHC1_DATA0 0x00000021>,
+ <IMX8QM_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000021>,
+ <IMX8QM_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000021>,
+ <IMX8QM_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000021>,
+ <IMX8QM_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000021>;
+ };
+
+ pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
+ fsl,pins = <IMX8QM_USDHC1_CLK_CONN_USDHC1_CLK 0x06000041>,
+ <IMX8QM_USDHC1_CMD_CONN_USDHC1_CMD 0x00000021>,
+ <IMX8QM_USDHC1_DATA0_CONN_USDHC1_DATA0 0x00000021>,
+ <IMX8QM_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000021>,
+ <IMX8QM_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000021>,
+ <IMX8QM_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000021>,
+ <IMX8QM_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000021>;
+ };
+
+ pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
+ fsl,pins = <IMX8QM_USDHC1_CLK_CONN_USDHC1_CLK 0x06000041>,
+ <IMX8QM_USDHC1_CMD_CONN_USDHC1_CMD 0x00000021>,
+ <IMX8QM_USDHC1_DATA0_CONN_USDHC1_DATA0 0x00000021>,
+ <IMX8QM_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000021>,
+ <IMX8QM_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000021>,
+ <IMX8QM_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000021>,
+ <IMX8QM_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000021>;
+ };
+};
diff --git a/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm.dtsi b/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm.dtsi
new file mode 100644
index 0000000000000..718c792259a65
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm.dtsi
@@ -0,0 +1,315 @@
+// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT)
+/*
+ * Copyright (c) 2019-2025 TQ-Systems GmbH <linux@ew.tq-group.com>,
+ * D-82229 Seefeld, Germany.
+ * Author: Alexander Stein
+ */
+
+#include "imx8qm.dtsi"
+
+/ {
+ model = "TQ-Systems i.MX8QM TQMa8QM";
+ compatible = "tq,imx8qm-tqma8qm", "fsl,imx8qm";
+
+ memory@80000000 {
+ device_type = "memory";
+ /*
+ * DRAM base addr, size : 1024 MiB DRAM
+ * should be corrected by bootloader
+ */
+ reg = <0x00000000 0x80000000 0 0x40000000>;
+ };
+
+ reg_tqma8x_v3v3: regulator-tqma8x-v3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "V_3V3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ /* SW7 controlled by SCU */
+ reg_1v8_io1: regulator-v1v8-io1 {
+ compatible = "regulator-fixed";
+ regulator-name = "V_1V8_IO1";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ /* LDO4 controlled by SCU */
+ reg_3v3_emmc: regulator-v3v3-emmc {
+ compatible = "regulator-fixed";
+ regulator-name = "V_3V3_EMMC";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+};
+
+&acm {
+ status = "okay";
+};
+
+&adc0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_adc0>;
+ vref-supply = <®_vref_v1v8>;
+ status = "okay";
+};
+
+/* TQMa8QM only uses industrial grade, reduce trip points accordingly */
+&cpu_alert0 {
+ temperature = <95000>;
+};
+
+&cpu_crit0 {
+ temperature = <100000>;
+};
+
+&cpu_alert1 {
+ temperature = <95000>;
+};
+
+&cpu_crit1 {
+ temperature = <100000>;
+};
+
+&gpu_alert0 {
+ temperature = <95000>;
+};
+
+&gpu_crit0 {
+ temperature = <100000>;
+};
+
+&gpu_alert1 {
+ temperature = <95000>;
+};
+
+&gpu_crit1 {
+ temperature = <100000>;
+};
+
+&drc_alert0 {
+ temperature = <95000>;
+};
+
+&drc_crit0 {
+ temperature = <100000>;
+};
+/* end of temperature grade adjustments */
+
+&flexspi0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_flexspi0>;
+ status = "okay";
+
+ flash0: flash@0 {
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <66000000>;
+ spi-tx-bus-width = <4>;
+ spi-rx-bus-width = <4>;
+ vcc-supply = <®_1v8_io1>;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ };
+ };
+};
+
+&i2c1 {
+ clock-frequency = <400000>;
+ pinctrl-names = "default", "gpio";
+ pinctrl-0 = <&pinctrl_lpi2c1>;
+ pinctrl-1 = <&pinctrl_lpi2c1gpio>;
+ scl-gpios = <&lsio_gpio0 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+ sda-gpios = <&lsio_gpio0 15 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+ status = "okay";
+
+ /* NXP SE97BTP with temperature sensor + eeprom */
+ se97: temperature-sensor@1b {
+ compatible = "nxp,se97b", "jedec,jc-42.4-temp";
+ reg = <0x1b>;
+ };
+
+ pcf85063: rtc@51 {
+ compatible = "nxp,pcf85063a";
+ reg = <0x51>;
+ quartz-load-femtofarads = <7000>;
+ };
+
+ at24c02: eeprom@53 {
+ compatible = "nxp,se97b", "atmel,24c02";
+ reg = <0x53>;
+ pagesize = <16>;
+ read-only;
+ vcc-supply = <®_tqma8x_v3v3>;
+ };
+
+ m24c64: eeprom@57 {
+ compatible = "atmel,24c64";
+ reg = <0x57>;
+ pagesize = <32>;
+ vcc-supply = <®_tqma8x_v3v3>;
+ };
+};
+
+&mu_m0 {
+ status = "okay";
+};
+
+&mu1_m0 {
+ status = "okay";
+};
+
+&mu2_m0 {
+ status = "okay";
+};
+
+&thermal_zones {
+ pmic0-thermal {
+ polling-delay-passive = <250>;
+ polling-delay = <2000>;
+ thermal-sensors = <&tsens IMX_SC_R_PMIC_0>;
+
+ trips {
+ pmic_alert0: trip0 {
+ temperature = <110000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+ pmic_crit0: trip1 {
+ temperature = <125000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+
+ cooling-maps {
+ map0 {
+ trip = <&pmic_alert0>;
+ cooling-device =
+ <&A53_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&A53_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&A53_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&A53_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&A72_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&A72_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
+ };
+};
+
+&usdhc1 {
+ pinctrl-names = "default", "state_100mhz", "state_200mhz";
+ pinctrl-0 = <&pinctrl_usdhc1>;
+ pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
+ pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
+ bus-width = <8>;
+ vmmc-supply = <®_3v3_emmc>;
+ vqmmc-supply = <®_1v8_io1>;
+ no-sd;
+ no-sdio;
+ non-removable;
+ status = "okay";
+};
+
+&vpu {
+ compatible = "nxp,imx8qm-vpu";
+ status = "okay";
+};
+
+&vpu_core0 {
+ memory-region = <&decoder_boot>, <&decoder_rpc>;
+ status = "okay";
+};
+
+&vpu_core1 {
+ memory-region = <&encoder1_boot>, <&encoder1_rpc>;
+ status = "okay";
+};
+
+&vpu_core2 {
+ memory-region = <&encoder2_boot>, <&encoder2_rpc>;
+ status = "okay";
+};
+
+&iomuxc {
+ pinctrl_lpi2c1: lpi2c1grp {
+ fsl,pins = <IMX8QM_GPT0_CAPTURE_DMA_I2C1_SDA 0x0600004d>,
+ <IMX8QM_GPT0_CLK_DMA_I2C1_SCL 0x0600004d>;
+ };
+
+ pinctrl_lpi2c1gpio: lpi2c1gpiogrp {
+ fsl,pins = <IMX8QM_GPT0_CAPTURE_LSIO_GPIO0_IO15 0x0600004d>,
+ <IMX8QM_GPT0_CLK_LSIO_GPIO0_IO14 0x0600004d>;
+ };
+
+ pinctrl_usdhc1: usdhc1grp {
+ fsl,pins = <IMX8QM_EMMC0_CLK_CONN_EMMC0_CLK 0x06000041>,
+ <IMX8QM_EMMC0_CMD_CONN_EMMC0_CMD 0x00000021>,
+ <IMX8QM_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000021>,
+ <IMX8QM_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000021>,
+ <IMX8QM_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000021>,
+ <IMX8QM_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000021>,
+ <IMX8QM_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000021>,
+ <IMX8QM_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000021>,
+ <IMX8QM_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000021>,
+ <IMX8QM_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000021>,
+ <IMX8QM_EMMC0_STROBE_CONN_EMMC0_STROBE 0x00000041>,
+ <IMX8QM_EMMC0_RESET_B_CONN_EMMC0_RESET_B 0x00000021>;
+ };
+
+ pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
+ fsl,pins = <IMX8QM_EMMC0_CLK_CONN_EMMC0_CLK 0x06000040>,
+ <IMX8QM_EMMC0_CMD_CONN_EMMC0_CMD 0x00000021>,
+ <IMX8QM_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000021>,
+ <IMX8QM_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000021>,
+ <IMX8QM_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000021>,
+ <IMX8QM_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000021>,
+ <IMX8QM_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000021>,
+ <IMX8QM_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000021>,
+ <IMX8QM_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000021>,
+ <IMX8QM_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000021>,
+ <IMX8QM_EMMC0_STROBE_CONN_EMMC0_STROBE 0x00000041>,
+ <IMX8QM_EMMC0_RESET_B_CONN_EMMC0_RESET_B 0x00000021>;
+ };
+
+ pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
+ fsl,pins = <IMX8QM_EMMC0_CLK_CONN_EMMC0_CLK 0x06000040>,
+ <IMX8QM_EMMC0_CMD_CONN_EMMC0_CMD 0x00000021>,
+ <IMX8QM_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000021>,
+ <IMX8QM_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000021>,
+ <IMX8QM_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000021>,
+ <IMX8QM_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000021>,
+ <IMX8QM_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000021>,
+ <IMX8QM_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000021>,
+ <IMX8QM_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000021>,
+ <IMX8QM_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000021>,
+ <IMX8QM_EMMC0_STROBE_CONN_EMMC0_STROBE 0x00000041>,
+ <IMX8QM_EMMC0_RESET_B_CONN_EMMC0_RESET_B 0x00000021>;
+ };
+
+ pinctrl_flexspi0: flexspi0grp {
+ fsl,pins = <IMX8QM_QSPI0A_DATA0_LSIO_QSPI0A_DATA0 0x0000004d>,
+ <IMX8QM_QSPI0A_DATA1_LSIO_QSPI0A_DATA1 0x0000004d>,
+ <IMX8QM_QSPI0A_DATA2_LSIO_QSPI0A_DATA2 0x0000004d>,
+ <IMX8QM_QSPI0A_DATA3_LSIO_QSPI0A_DATA3 0x0000004d>,
+ <IMX8QM_QSPI0A_DQS_LSIO_QSPI0A_DQS 0x0000004d>,
+ <IMX8QM_QSPI0A_SS0_B_LSIO_QSPI0A_SS0_B 0x0000004d>,
+ <IMX8QM_QSPI0A_SS1_B_LSIO_QSPI0A_SS1_B 0x0000004d>,
+ <IMX8QM_QSPI0A_SCLK_LSIO_QSPI0A_SCLK 0x0000004d>,
+ <IMX8QM_QSPI0B_SCLK_LSIO_QSPI0B_SCLK 0x0000004d>,
+ <IMX8QM_QSPI0B_DATA0_LSIO_QSPI0B_DATA0 0x0000004d>,
+ <IMX8QM_QSPI0B_DATA1_LSIO_QSPI0B_DATA1 0x0000004d>,
+ <IMX8QM_QSPI0B_DATA2_LSIO_QSPI0B_DATA2 0x0000004d>,
+ <IMX8QM_QSPI0B_DATA3_LSIO_QSPI0B_DATA3 0x0000004d>,
+ <IMX8QM_QSPI0B_DQS_LSIO_QSPI0B_DQS 0x0000004d>,
+ <IMX8QM_QSPI0B_SS0_B_LSIO_QSPI0B_SS0_B 0x0000004d>,
+ <IMX8QM_QSPI0B_SS1_B_LSIO_QSPI0B_SS1_B 0x0000004d>;
+ };
+};
--
2.43.0
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [PATCH 6/6] arm64: dts: imx8qm-tqma8qm-mba8x: Disable Cortex-A72 cluster
2025-12-18 15:20 [PATCH 0/6] Support TQMa8QM Alexander Stein
` (5 preceding siblings ...)
2025-12-18 15:44 ` [PATCH 5/6] arm64: dts: Add TQ imx8qm based board Alexander Stein
@ 2025-12-18 15:44 ` Alexander Stein
2025-12-19 16:49 ` [PATCH 0/6] Support TQMa8QM Rob Herring
7 siblings, 0 replies; 22+ messages in thread
From: Alexander Stein @ 2025-12-18 15:44 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut
Cc: Alexander Stein, devicetree, linux-kernel, linux-renesas-soc,
linux-clk, linux-usb, imx, linux-arm-kernel, linux
Due to missing workaround for "ERR050104: Arm/A53: Cache coherency issue"
disable the whole Cortex-A72 cluster.
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
.../dts/freescale/imx8qm-tqma8qm-mba8x.dts | 39 -------------------
.../boot/dts/freescale/imx8qm-tqma8qm.dtsi | 13 +++++--
2 files changed, 10 insertions(+), 42 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm-mba8x.dts b/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm-mba8x.dts
index ba19c3c17c496..4a5ab14ddc550 100644
--- a/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm-mba8x.dts
+++ b/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm-mba8x.dts
@@ -296,45 +296,6 @@ map3 {
};
};
};
-
- cpu1-thermal {
- trips {
- soc_active1_0: trip-active0 {
- temperature = <40000>;
- hysteresis = <5000>;
- type = "active";
- };
-
- soc_active1_1: trip-active1 {
- temperature = <48000>;
- hysteresis = <3000>;
- type = "active";
- };
-
- soc_active1_2: trip-active2 {
- temperature = <60000>;
- hysteresis = <10000>;
- type = "active";
- };
- };
-
- cooling-maps {
- map1 {
- trip = <&soc_active1_0>;
- cooling-device = <&fan0 1 1>;
- };
-
- map2 {
- trip = <&soc_active1_1>;
- cooling-device = <&fan0 2 2>;
- };
-
- map3 {
- trip = <&soc_active1_2>;
- cooling-device = <&fan0 3 3>;
- };
- };
- };
};
};
diff --git a/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm.dtsi b/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm.dtsi
index 718c792259a65..57d06817aab63 100644
--- a/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qm-tqma8qm.dtsi
@@ -11,6 +11,13 @@ / {
model = "TQ-Systems i.MX8QM TQMa8QM";
compatible = "tq,imx8qm-tqma8qm", "fsl,imx8qm";
+ /* Due to missing workaround for ERR050104 */
+ cpus {
+ /delete-node/ cpu-map;
+ /delete-node/ cpu@100;
+ /delete-node/ cpu@101;
+ };
+
memory@80000000 {
device_type = "memory";
/*
@@ -171,6 +178,8 @@ &mu2_m0 {
};
&thermal_zones {
+ /delete-node/ cpu1-thermal;
+
pmic0-thermal {
polling-delay-passive = <250>;
polling-delay = <2000>;
@@ -196,9 +205,7 @@ map0 {
<&A53_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&A53_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&A53_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
- <&A53_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
- <&A72_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
- <&A72_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ <&A53_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
--
2.43.0
^ permalink raw reply related [flat|nested] 22+ messages in thread
* Re: [PATCH 5/6] arm64: dts: Add TQ imx8qm based board
2025-12-18 15:44 ` [PATCH 5/6] arm64: dts: Add TQ imx8qm based board Alexander Stein
@ 2025-12-18 15:47 ` Fabio Estevam
2025-12-19 8:52 ` Alexander Stein
2025-12-18 15:49 ` Greg Kroah-Hartman
2025-12-18 16:24 ` Andrew Lunn
2 siblings, 1 reply; 22+ messages in thread
From: Fabio Estevam @ 2025-12-18 15:47 UTC (permalink / raw)
To: Alexander Stein
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Magnus Damm, Marek Vasut,
devicetree, linux-kernel, linux-renesas-soc, linux-clk, linux-usb,
imx, linux-arm-kernel, linux
On Thu, Dec 18, 2025 at 12:45 PM Alexander Stein
<alexander.stein@ew.tq-group.com> wrote:
>
> * TQMa8QM on MBa8x
This commit log should be improved by explaining the SoM and base
board in more detail, providing a URL, etc.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 1/6] dt-bindings: clk: rs9: add clock-output-names property
2025-12-18 15:26 ` Geert Uytterhoeven
@ 2025-12-18 15:49 ` Krzysztof Kozlowski
2025-12-19 8:09 ` Alexander Stein
1 sibling, 0 replies; 22+ messages in thread
From: Krzysztof Kozlowski @ 2025-12-18 15:49 UTC (permalink / raw)
To: Geert Uytterhoeven, Alexander Stein
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut, devicetree, linux-kernel, linux-renesas-soc,
linux-clk, linux-usb, imx, linux-arm-kernel, linux
On 18/12/2025 16:26, Geert Uytterhoeven wrote:
> Hi Alexander,
>
> On Thu, 18 Dec 2025 at 16:21, Alexander Stein
> <alexander.stein@ew.tq-group.com> wrote:
>> Add "clock-output-names" which is a standard property for clock
>> providers.
>
> Why? Isn't that property sort of deprecated?
>
> Will be replying to the cover letter next...
>
Yeah, the name is pretty pointless here and its presence in several
drivers is legacy and incorrect choice.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 5/6] arm64: dts: Add TQ imx8qm based board
2025-12-18 15:44 ` [PATCH 5/6] arm64: dts: Add TQ imx8qm based board Alexander Stein
2025-12-18 15:47 ` Fabio Estevam
@ 2025-12-18 15:49 ` Greg Kroah-Hartman
2025-12-18 16:24 ` Andrew Lunn
2 siblings, 0 replies; 22+ messages in thread
From: Greg Kroah-Hartman @ 2025-12-18 15:49 UTC (permalink / raw)
To: Alexander Stein
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Magnus Damm, Marek Vasut,
devicetree, linux-kernel, linux-renesas-soc, linux-clk, linux-usb,
imx, linux-arm-kernel, linux
On Thu, Dec 18, 2025 at 04:44:07PM +0100, Alexander Stein wrote:
> * TQMa8QM on MBa8x
I do not understand this changelog text at all, sorry.
Please be more verbose.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 5/6] arm64: dts: Add TQ imx8qm based board
2025-12-18 15:44 ` [PATCH 5/6] arm64: dts: Add TQ imx8qm based board Alexander Stein
2025-12-18 15:47 ` Fabio Estevam
2025-12-18 15:49 ` Greg Kroah-Hartman
@ 2025-12-18 16:24 ` Andrew Lunn
2 siblings, 0 replies; 22+ messages in thread
From: Andrew Lunn @ 2025-12-18 16:24 UTC (permalink / raw)
To: Alexander Stein
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut, devicetree, linux-kernel, linux-renesas-soc,
linux-clk, linux-usb, imx, linux-arm-kernel, linux
> +&fec1 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_fec1>;
> + phy-mode = "rgmii-id";
> + phy-handle = <ðphy0>;
> + nvmem-cells = <&fec_mac0>;
> + nvmem-cell-names = "mac-address";
> + fsl,magic-packet;
I might be repeating myself here...
Have you tested WoL? Does it work? Or is this just copy/paste from an
example?
We have a lot of DT blobs which suggest WoL should work, but it does
not. It is something we need to improve.
Thanks
Andrew
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 1/6] dt-bindings: clk: rs9: add clock-output-names property
2025-12-18 15:26 ` Geert Uytterhoeven
2025-12-18 15:49 ` Krzysztof Kozlowski
@ 2025-12-19 8:09 ` Alexander Stein
2025-12-20 2:04 ` Rob Herring
1 sibling, 1 reply; 22+ messages in thread
From: Alexander Stein @ 2025-12-19 8:09 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut, devicetree, linux-kernel, linux-renesas-soc,
linux-clk, linux-usb, imx, linux-arm-kernel, linux
Am Donnerstag, 18. Dezember 2025, 16:26:10 CET schrieb Geert Uytterhoeven:
> Hi Alexander,
>
> On Thu, 18 Dec 2025 at 16:21, Alexander Stein
> <alexander.stein@ew.tq-group.com> wrote:
> > Add "clock-output-names" which is a standard property for clock
> > providers.
>
> Why? Isn't that property sort of deprecated?
It is? Oh, I wasn't aware of that. Maybe the property should be
marked deprecated in dt schema then.
Thanks and best regards,
Alexander
>
> Will be replying to the cover letter next...
>
> > Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
>
> Gr{oetje,eeting}s,
>
> Geert
>
>
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 0/6] Support TQMa8QM
2025-12-18 15:28 ` [PATCH 0/6] Support TQMa8QM Geert Uytterhoeven
@ 2025-12-19 8:52 ` Alexander Stein
0 siblings, 0 replies; 22+ messages in thread
From: Alexander Stein @ 2025-12-19 8:52 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Michael Turquette,
Stephen Boyd, Peter Chen, Pawel Laszczak, Roger Quadros,
Greg Kroah-Hartman, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Magnus Damm, Marek Vasut,
devicetree, linux-kernel, linux-renesas-soc, linux-clk, linux-usb,
imx, linux-arm-kernel, linux
Am Donnerstag, 18. Dezember 2025, 16:28:39 CET schrieb Geert Uytterhoeven:
> Hi Alexander,
>
> On Thu, 18 Dec 2025 at 16:22, Alexander Stein
> <alexander.stein@ew.tq-group.com> wrote:
> > this series adds support for TQ's TQMa8QM. The first 3 patches are prepatory:
> > 1. Add support for clock-output-names for clk-renesas-pcie. This is necessary
> > as clk-imx8qxp-lpcg.c (driver for phyx1 phyx2 clock gating) reqiures that
> > property on the parent clock.
>
> Hmm, clock consumers should have no business with the names used by
> clock providers, even less so whether those names are specified in DT
> or not.
Well drivers/clk/imx/clk-imx8qxp-lpcg.c does exactly this. AFAIK not just
the ones references in DT, but also hard codes ones.
The root cause is that clock-hsio-refa and clock-hsio-refb in
arch/arm64/boot/dts/freescale/imx8-ss-hsio.dtsi are setting platform-specific
GPIOs in SoC .dtsi...
My current idea is to use fixed-factor-clock instead:
> &hsio_refa_clk {
> compatible = "fixed-factor-clock";
> clocks = <&pcieclk 0>;
> clock-div = <1>;
> clock-mult = <1>;
> /delete-property/ enable-gpios;
> };
>
> &hsio_refb_clk {
> compatible = "fixed-factor-clock";
> clocks = <&pcieclk 0>;
> clock-div = <1>;
> clock-mult = <1>;
> /delete-property/ enable-gpios;
> };
Best regards,
Alexander
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 5/6] arm64: dts: Add TQ imx8qm based board
2025-12-18 15:47 ` Fabio Estevam
@ 2025-12-19 8:52 ` Alexander Stein
0 siblings, 0 replies; 22+ messages in thread
From: Alexander Stein @ 2025-12-19 8:52 UTC (permalink / raw)
To: Fabio Estevam
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Magnus Damm, Marek Vasut,
devicetree, linux-kernel, linux-renesas-soc, linux-clk, linux-usb,
imx, linux-arm-kernel, linux
[-- Attachment #1: Type: text/plain, Size: 589 bytes --]
Hi Fabio,
Am Donnerstag, 18. Dezember 2025, 16:47:33 CET schrieb Fabio Estevam:
> On Thu, Dec 18, 2025 at 12:45 PM Alexander Stein
> <alexander.stein@ew.tq-group.com> wrote:
> >
> > * TQMa8QM on MBa8x
>
> This commit log should be improved by explaining the SoM and base
> board in more detail, providing a URL, etc.
>
Will do, thanks.
Best regards,
Alexander
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 2/6] dt-bindings: usb: cdns,usb3: support USB devices in DT
2025-12-18 15:20 ` [PATCH 2/6] dt-bindings: usb: cdns,usb3: support USB devices in DT Alexander Stein
@ 2025-12-19 8:55 ` Alexander Stein
2025-12-29 23:35 ` Rob Herring
1 sibling, 0 replies; 22+ messages in thread
From: Alexander Stein @ 2025-12-19 8:55 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut
Cc: devicetree, linux-kernel, linux-renesas-soc, linux-clk, linux-usb,
imx, linux-arm-kernel, linux
[-- Attachment #1: Type: text/plain, Size: 1427 bytes --]
Am Donnerstag, 18. Dezember 2025, 16:20:49 CET schrieb Alexander Stein:
> Reference usb-hxci.yaml in host mode in order to support on-board USB
> hubs.
>
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> ---
> Documentation/devicetree/bindings/usb/cdns,usb3.yaml | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/usb/cdns,usb3.yaml b/Documentation/devicetree/bindings/usb/cdns,usb3.yaml
> index f454ddd9bbaa6..1f7f0adc3b1ed 100644
> --- a/Documentation/devicetree/bindings/usb/cdns,usb3.yaml
> +++ b/Documentation/devicetree/bindings/usb/cdns,usb3.yaml
> @@ -85,6 +85,17 @@ required:
>
> allOf:
> - $ref: usb-drd.yaml#
> + - if:
> + properties:
> + dr_mode:
> + const: peripheral
> +
> + required:
> + - dr_mode
> + then:
> + $ref: usb.yaml#
> + else:
> + $ref: usb-xhci.yaml#
>
> unevaluatedProperties: false
>
>
This one is actually independent of the rest in this series and can be
picked on it's own, especially as I won't be able to work on the board
support until February. I just wanted to give some context / usage.
Best regards,
Alexander
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 3/6] arm64: dts: imx8qm-ss-hsio: Wire up DMA IRQ for PCIe
2025-12-18 15:20 ` [PATCH 3/6] arm64: dts: imx8qm-ss-hsio: Wire up DMA IRQ for PCIe Alexander Stein
@ 2025-12-19 8:55 ` Alexander Stein
0 siblings, 0 replies; 22+ messages in thread
From: Alexander Stein @ 2025-12-19 8:55 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut
Cc: devicetree, linux-kernel, linux-renesas-soc, linux-clk, linux-usb,
imx, linux-arm-kernel, linux
[-- Attachment #1: Type: text/plain, Size: 1696 bytes --]
Am Donnerstag, 18. Dezember 2025, 16:20:50 CET schrieb Alexander Stein:
> IRQ mapping is already present. Add the missing DMA interrupt. This is
> similar to commit 0b4c46f9ad79c ("arm64: dts: imx8qm-ss-hsio: Wire up
> DMA IRQ for PCIe")
>
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> ---
> arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi b/arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi
> index bd6e0aa27efe9..f2c94cdb682b9 100644
> --- a/arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi
> @@ -20,8 +20,9 @@ pcie0: pciea: pcie@5f000000 {
> ranges = <0x81000000 0 0x00000000 0x4ff80000 0 0x00010000>,
> <0x82000000 0 0x40000000 0x40000000 0 0x0ff00000>;
> #interrupt-cells = <1>;
> - interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
> - interrupt-names = "msi";
> + interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
> + interrupt-names = "msi", "dma";
> #address-cells = <3>;
> #size-cells = <2>;
> clocks = <&pciea_lpcg IMX_LPCG_CLK_6>,
>
This one is actually independent of the rest in this series and can be
picked on it's own, especially as I won't be able to work on the board
support until February. I just wanted to give some context / usage.
Best regards,
Alexander
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 0/6] Support TQMa8QM
2025-12-18 15:20 [PATCH 0/6] Support TQMa8QM Alexander Stein
` (6 preceding siblings ...)
2025-12-18 15:44 ` [PATCH 6/6] arm64: dts: imx8qm-tqma8qm-mba8x: Disable Cortex-A72 cluster Alexander Stein
@ 2025-12-19 16:49 ` Rob Herring
7 siblings, 0 replies; 22+ messages in thread
From: Rob Herring @ 2025-12-19 16:49 UTC (permalink / raw)
To: Alexander Stein
Cc: devicetree, Michael Turquette, linux-usb, Sascha Hauer,
linux-kernel, Shawn Guo, Stephen Boyd, linux-renesas-soc,
Krzysztof Kozlowski, linux, Conor Dooley, linux-arm-kernel,
Roger Quadros, Greg Kroah-Hartman, Fabio Estevam, Pawel Laszczak,
Geert Uytterhoeven, Peter Chen, imx, Pengutronix Kernel Team,
linux-clk, Marek Vasut, Magnus Damm
On Thu, 18 Dec 2025 16:20:47 +0100, Alexander Stein wrote:
> Hi,
>
> this series adds support for TQ's TQMa8QM. The first 3 patches are prepatory:
> 1. Add support for clock-output-names for clk-renesas-pcie. This is necessary
> as clk-imx8qxp-lpcg.c (driver for phyx1 phyx2 clock gating) reqiures that
> property on the parent clock.
>
> 2. Add support for USB devices in cdns USB3 host controller, namely
> onboard-devices as USB hubs. Implemented similarily to snps,dwc3-common.yaml.
>
> 3. Add DMA IRQ for PCIe controller. Similar to commit 0b4c46f9ad79c
> ("arm64: dts: imx8qm-ss-hsio: Wire up DMA IRQ for PCIe") which was only tested
> on imx8qxp which just has one PCIe controller.
>
> 4 & 5. Device bindings and platform DT
>
> 6. Workaround for missing "ERR050104: Arm/A53: Cache coherency issue"
> workaround. See [1] for details. Split into separate commit for easy revert
> once an errata workaround has been integrated.
>
> Best regards,
> Alexander
>
> [1] https://lore.kernel.org/all/20230420112952.28340-1-iivanov@suse.de/
>
> Alexander Stein (6):
> dt-bindings: clk: rs9: add clock-output-names property
> dt-bindings: usb: cdns,usb3: support USB devices in DT
> arm64: dts: imx8qm-ss-hsio: Wire up DMA IRQ for PCIe
> dt-bindings: arm: fsl: add bindings for TQMa8x
> arm64: dts: Add TQ imx8qm based board
> arm64: dts: imx8qm-tqma8qm-mba8x: Disable Cortex-A72 cluster
>
> .../devicetree/bindings/arm/fsl.yaml | 10 +
> .../bindings/clock/renesas,9series.yaml | 37 +
> .../devicetree/bindings/usb/cdns,usb3.yaml | 11 +
> arch/arm64/boot/dts/freescale/Makefile | 1 +
> .../boot/dts/freescale/imx8qm-ss-hsio.dtsi | 5 +-
> .../dts/freescale/imx8qm-tqma8qm-mba8x.dts | 869 ++++++++++++++++++
> .../boot/dts/freescale/imx8qm-tqma8qm.dtsi | 322 +++++++
> 7 files changed, 1253 insertions(+), 2 deletions(-)
> create mode 100644 arch/arm64/boot/dts/freescale/imx8qm-tqma8qm-mba8x.dts
> create mode 100644 arch/arm64/boot/dts/freescale/imx8qm-tqma8qm.dtsi
>
> --
> 2.43.0
>
>
>
My bot found new DTB warnings on the .dts files added or changed in this
series.
Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
are fixed by another series. Ultimately, it is up to the platform
maintainer whether these warnings are acceptable or not. No need to reply
unless the platform maintainer has comments.
If you already ran DT checks and didn't see these error(s), then
make sure dt-schema is up to date:
pip3 install dtschema --upgrade
This patch series was applied (using b4) to base:
Base: attempting to guess base-commit...
Base: tags/v6.18-rc7-1585-gfa10d5a2b8f9 (best guess, 3/5 blobs matched)
Base: tags/v6.18-rc7-1585-gfa10d5a2b8f9 (use --merge-base to override)
If this is not the correct base, please add 'base-commit' tag
(or use b4 which does this automatically)
New warnings running 'make CHECK_DTBS=y for arch/arm64/boot/dts/freescale/' for 20251218152058.1521806-1-alexander.stein@ew.tq-group.com:
Error: arch/arm64/boot/dts/freescale/imx8qm-tqma8qm.dtsi:180.1-15 Label or path thermal_zones not found
FATAL ERROR: Syntax error parsing input tree
make[3]: *** [scripts/Makefile.dtbs:132: arch/arm64/boot/dts/freescale/imx8qm-tqma8qm-mba8x.dtb] Error 1
make[2]: *** [scripts/Makefile.build:556: arch/arm64/boot/dts/freescale] Error 2
make[2]: Target 'arch/arm64/boot/dts/freescale/imx8qm-tqma8qm-mba8x.dtb' not remade because of errors.
make[1]: *** [/home/rob/proj/linux-dt-testing/Makefile:1478: freescale/imx8qm-tqma8qm-mba8x.dtb] Error 2
make: *** [Makefile:248: __sub-make] Error 2
make: Target 'freescale/imx8dx-colibri-eval-v3.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-var-som-symphony.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-nitrogen-enc-carrier-board.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1046a-qds.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-prt8mm.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1028a-kontron-sl28.dtb' not remade because of errors.
make: Target 'freescale/imx8qxp-tqma8xqp-mba8xx.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-beacon-kit.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-venice-gw73xx-2x.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-var-som-symphony.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-icore-mx8mp-edimm2.2.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-innocomm-wb15-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8qm-apalis-v1.1-eval.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-aristainetos3-proton2s.dtb' not remade because of errors.
make: Target 'freescale/imx8dx-colibri-iris-v2.dtb' not remade because of errors.
make: Target 'freescale/imx8mn-ddr3l-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-icore-mx8mm-edimm2.2.dtb' not remade because of errors.
make: Target 'freescale/imx8mn-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-dhcom-pdk3.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1028a-kontron-kbox-a-230-ls.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-phyboard-polis-rdk.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-venice-gw72xx-2x.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-venice-gw7901.dtb' not remade because of errors.
make: Target 'freescale/imx8mn-beacon-kit.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1028a-kontron-sl28-var1.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1028a-kontron-sl28-var3.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-debix-som-a-bmb-08.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-verdin-nonwifi-dahlia.dtb' not remade because of errors.
make: Target 'freescale/imx8qxp-ai_ml.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-verdin-wifi-dev.dtb' not remade because of errors.
make: Target 'freescale/s32v234-evb.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-skov-revb-lt6.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-phg.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-nitrogen-smarc-universal-board.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-venice-gw71xx-0x.dtb' not remade because of errors.
make: Target 'freescale/imx8ulp-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8qxp-colibri-iris.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-emtop-baseboard.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-hummingboard-pro.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1028a-kontron-sl28-var4.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-librem5-r4.dtb' not remade because of errors.
make: Target 'freescale/imx8dx-colibri-aster.dtb' not remade because of errors.
make: Target 'freescale/imx8mn-rve-gateway.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-venice-gw71xx-2x.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls2080a-rdb.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-pico-pi.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-verdin-wifi-mallow.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-msc-sm2s-ep1.dtb' not remade because of errors.
make: Target 'freescale/imx8dxl-evk.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1043a-qds.dtb' not remade because of errors.
make: Target 'freescale/s32g399a-rdb3.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-venice-gw72xx-0x.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-verdin-wifi-ivy.dtb' not remade because of errors.
make: Target 'freescale/imx8mn-bsh-smm-s2.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-aristainetos3-adpismarc.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-tx8p-ml81-moduline-display-106.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-verdin-nonwifi-mallow.dtb' not remade because of errors.
make: Target 'freescale/imx8qxp-tqma8xqps-mb-smarc-2.dtb' not remade because of errors.
make: Target 'freescale/imx8mn-dimonoff-gateway-evk.dtb' not remade because of errors.
make: Target 'freescale/imx93-tqma9352-mba93xxca.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-tqma8mq-mba8mx.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1012a-oxalis.dtb' not remade because of errors.
make: Target 'freescale/imx93-14x14-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8dx-colibri-iris.dtb' not remade because of errors.
make: Target 'freescale/imx8mn-var-som-symphony.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-kontron-smarc-eval-carrier.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls2080a-simu.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1046a-frwy.dtb' not remade because of errors.
make: Target 'freescale/imx93-9x9-qsb.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-verdin-wifi-yavia.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-verdin-nonwifi-yavia.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-verdin-wifi-mallow.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-debix-model-a.dtb' not remade because of errors.
make: Target 'freescale/imx8qm-apalis-v1.1-ixora-v1.2.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-icore-mx8mm-ctouch2.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-zii-ultra-rmb3.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-phygate-tauri-l.dtb' not remade because of errors.
make: Target 'freescale/imx8qm-apalis-v1.1-eval-v1.2.dtb' not remade because of errors.
make: Target 'freescale/fsl-lx2162a-clearfog.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-data-modul-edm-sbc.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-librem5-devkit.dtb' not remade because of errors.
make: Target 'freescale/fsl-lx2160a-tqmlx2160a-mblx2160a.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1012a-tqmls1012al-mbls1012al-emmc.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-cubox-m.dtb' not remade because of errors.
make: Target 'freescale/fsl-lx2160a-honeycomb.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-skov-revb-hdmi.dtb' not remade because of errors.
make: Target 'freescale/imx8qm-apalis-eval.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-venice-gw7904.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-skov-revb-mi1010ait-1cp1.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-navqp.dtb' not remade because of errors.
make: Target 'freescale/fsl-lx2160a-qds.dtb' not remade because of errors.
make: Target 'freescale/fsl-lx2160a-bluebox3.dtb' not remade because of errors.
make: Target 'freescale/imx93-var-som-symphony.dtb' not remade because of errors.
make: Target 'freescale/imx8dxp-tqma8xdps-mb-smarc-2.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-nitrogen-r2.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1028a-kontron-sl28-var3-ads2.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1046a-rdb.dtb' not remade because of errors.
make: Target 'freescale/imx93-tqma9352-mba91xxca.dtb' not remade because of errors.
make: Target 'freescale/imx95-tqma9596sa-mb-smarc-2.dtb' not remade because of errors.
make: Target 'freescale/imx8mn-ddr4-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8mn-bsh-smm-s2pro.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-phanbell.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-venice-gw7903.dtb' not remade because of errors.
make: Target 'freescale/s32g274a-evb.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-ddr4-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-dhcom-pdk2.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1012a-frdm.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1012a-qds.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1043a-rdb.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-phyboard-pollux-rdk.dtb' not remade because of errors.
make: Target 'freescale/imx8qm-mek.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1088a-qds.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1088a-rdb.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-verdin-wifi-dev.dtb' not remade because of errors.
make: Target 'freescale/imx8qm-apalis-v1.1-ixora-v1.1.dtb' not remade because of errors.
make: Target 'freescale/imx91-tqma9131-mba91xxca.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-hummingboard-mate.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-venice-gw75xx-0x.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-venice-gw74xx.dtb' not remade because of errors.
make: Target 'freescale/imx8qm-apalis-ixora-v1.1.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-aristainetos3-helios.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-skov-revc-bd500.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-verdin-nonwifi-dahlia.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-iot-gateway.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-librem5-r2.dtb' not remade because of errors.
make: Target 'freescale/imx95-libra-rdk-fpsc.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1088a-ten64.dtb' not remade because of errors.
make: Target 'freescale/imx8ulp-9x9-evk.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1028a-qds.dtb' not remade because of errors.
make: Target 'freescale/imx8qm-tqma8qm-mba8x.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-verdin-wifi-dahlia.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-beacon-kit.dtb' not remade because of errors.
make: Target 'freescale/fsl-lx2162a-qds.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1046a-tqmls1046a-mbls10xxa.dtb' not remade because of errors.
make: Target 'freescale/imx91-11x11-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-verdin-wifi-dahlia.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-evkb.dtb' not remade because of errors.
make: Target 'freescale/imx93-tqma9352-mba93xxla.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-emcon-avari.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-edm-g-wb.dtb' not remade because of errors.
make: Target 'freescale/imx93-11x11-evk.dtb' not remade because of errors.
make: Target 'freescale/imx95-19x19-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-hummingboard-ripple.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1012a-tqmls1012al-mbls1012al.dtb' not remade because of errors.
make: Target 'freescale/fsl-lx2160a-clearfog-cx.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-tqma8mqml-mba8mx.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-verdin-nonwifi-ivy.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-dhcom-drc02.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-toradex-smarc-dev.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-verdin-wifi-ivy.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-tqma8mpql-mba8mp-ras314.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-verdin-nonwifi-yavia.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1012a-rdb.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1012a-frwy.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1028a-kontron-sl28-var2.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-verdin-nonwifi-mallow.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-venice-gw73xx-0x.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1043a-tqmls1043a-mbls10xxa.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-kontron-bl-osm-s.dtb' not remade because of errors.
make: Target 'freescale/fsl-lx2160a-bluebox3-rev-a.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1088a-tqmls1088a-mbls10xxa.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-verdin-wifi-yavia.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-mx8menlo.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls2081a-rdb.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-mnt-reform2.dtb' not remade because of errors.
make: Target 'freescale/imx8qxp-colibri-iris-v2.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls2088a-rdb.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-zii-ultra-zest.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-tqma8mpql-mba8mpxl.dtb' not remade because of errors.
make: Target 'freescale/imx8qm-apalis-eval-v1.2.dtb' not remade because of errors.
make: Target 'freescale/s32g274a-rdb2.dtb' not remade because of errors.
make: Target 'freescale/imx93-phyboard-nash.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-verdin-nonwifi-dev.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-ultra-mach-sbc.dtb' not remade because of errors.
make: Target 'freescale/imx8mn-tqma8mqnl-mba8mx.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-kontron-bl-osm-s.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls2080a-qds.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-verdin-nonwifi-ivy.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-data-modul-edm-sbc.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-librem5-r3.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls2088a-qds.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-kontron-pitx-imx8m.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-venice-gw7902.dtb' not remade because of errors.
make: Target 'freescale/fsl-lx2160a-rdb.dtb' not remade because of errors.
make: Target 'freescale/imx95-19x19-evk-sof.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-venice-gw82xx-2x.dtb' not remade because of errors.
make: Target 'freescale/imx93-phyboard-segin.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-verdin-nonwifi-dev.dtb' not remade because of errors.
make: Target 'freescale/imx8mm-kontron-bl.dtb' not remade because of errors.
make: Target 'freescale/imx8dxp-tqma8xdp-mba8xx.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-hummingboard-pulse.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-libra-rdk-fpsc.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-venice-gw75xx-2x.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8qxp-colibri-eval-v3.dtb' not remade because of errors.
make: Target 'freescale/imx943-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8qxp-colibri-aster.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-nitrogen.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-skov-basic.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-thor96.dtb' not remade because of errors.
make: Target 'freescale/fsl-ls1028a-rdb.dtb' not remade because of errors.
make: Target 'freescale/imx8mq-hummingboard-pulse.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-iota2-lumpy.dtb' not remade because of errors.
make: Target 'freescale/imx8mn-venice-gw7902.dtb' not remade because of errors.
make: Target 'freescale/imx8qxp-mek.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-skov-revc-tian-g07017.dtb' not remade because of errors.
make: Target 'freescale/imx93-kontron-bl-osm-s.dtb' not remade because of errors.
make: Target 'freescale/imx95-15x15-evk.dtb' not remade because of errors.
make: Target 'freescale/imx8mp-dhcom-picoitx.dtb' not remade because of errors.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 1/6] dt-bindings: clk: rs9: add clock-output-names property
2025-12-19 8:09 ` Alexander Stein
@ 2025-12-20 2:04 ` Rob Herring
0 siblings, 0 replies; 22+ messages in thread
From: Rob Herring @ 2025-12-20 2:04 UTC (permalink / raw)
To: Alexander Stein
Cc: Geert Uytterhoeven, Krzysztof Kozlowski, Conor Dooley,
Geert Uytterhoeven, Michael Turquette, Stephen Boyd, Peter Chen,
Pawel Laszczak, Roger Quadros, Greg Kroah-Hartman, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Magnus Damm,
Marek Vasut, devicetree, linux-kernel, linux-renesas-soc,
linux-clk, linux-usb, imx, linux-arm-kernel, linux
On Fri, Dec 19, 2025 at 09:09:23AM +0100, Alexander Stein wrote:
> Am Donnerstag, 18. Dezember 2025, 16:26:10 CET schrieb Geert Uytterhoeven:
> > Hi Alexander,
> >
> > On Thu, 18 Dec 2025 at 16:21, Alexander Stein
> > <alexander.stein@ew.tq-group.com> wrote:
> > > Add "clock-output-names" which is a standard property for clock
> > > providers.
> >
> > Why? Isn't that property sort of deprecated?
>
> It is? Oh, I wasn't aware of that. Maybe the property should be
> marked deprecated in dt schema then.
I knew it was pointless, but not deprecated... I guess not much
difference.
Rob
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 4/6] dt-bindings: arm: fsl: add bindings for TQMa8x
2025-12-18 15:20 ` [PATCH 4/6] dt-bindings: arm: fsl: add bindings for TQMa8x Alexander Stein
@ 2025-12-20 2:06 ` Rob Herring (Arm)
0 siblings, 0 replies; 22+ messages in thread
From: Rob Herring (Arm) @ 2025-12-20 2:06 UTC (permalink / raw)
To: Alexander Stein
Cc: linux, Peter Chen, Pengutronix Kernel Team, Fabio Estevam,
Shawn Guo, linux-usb, Marek Vasut, Markus Niebel,
linux-renesas-soc, devicetree, Krzysztof Kozlowski,
Geert Uytterhoeven, linux-arm-kernel, Conor Dooley,
Michael Turquette, Stephen Boyd, Pawel Laszczak, Sascha Hauer,
imx, linux-kernel, Greg Kroah-Hartman, Roger Quadros, linux-clk,
Magnus Damm
On Thu, 18 Dec 2025 16:20:51 +0100, Alexander Stein wrote:
> TQMa8x is a SOM family using NXP i.MX8QM CPU family
> MBa8x is an evaluation mainboard for this SOM.
>
> Signed-off-by: Markus Niebel <Markus.Niebel@tq-group.com>
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> ---
> Documentation/devicetree/bindings/arm/fsl.yaml | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 2/6] dt-bindings: usb: cdns,usb3: support USB devices in DT
2025-12-18 15:20 ` [PATCH 2/6] dt-bindings: usb: cdns,usb3: support USB devices in DT Alexander Stein
2025-12-19 8:55 ` Alexander Stein
@ 2025-12-29 23:35 ` Rob Herring
1 sibling, 0 replies; 22+ messages in thread
From: Rob Herring @ 2025-12-29 23:35 UTC (permalink / raw)
To: Alexander Stein
Cc: Krzysztof Kozlowski, Conor Dooley, Geert Uytterhoeven,
Michael Turquette, Stephen Boyd, Peter Chen, Pawel Laszczak,
Roger Quadros, Greg Kroah-Hartman, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Magnus Damm, Marek Vasut,
devicetree, linux-kernel, linux-renesas-soc, linux-clk, linux-usb,
imx, linux-arm-kernel, linux
On Thu, Dec 18, 2025 at 04:20:49PM +0100, Alexander Stein wrote:
> Reference usb-hxci.yaml in host mode in order to support on-board USB
> hubs.
>
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> ---
> Documentation/devicetree/bindings/usb/cdns,usb3.yaml | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/usb/cdns,usb3.yaml b/Documentation/devicetree/bindings/usb/cdns,usb3.yaml
> index f454ddd9bbaa6..1f7f0adc3b1ed 100644
> --- a/Documentation/devicetree/bindings/usb/cdns,usb3.yaml
> +++ b/Documentation/devicetree/bindings/usb/cdns,usb3.yaml
> @@ -85,6 +85,17 @@ required:
>
> allOf:
> - $ref: usb-drd.yaml#
> + - if:
> + properties:
> + dr_mode:
> + const: peripheral
> +
> + required:
> + - dr_mode
> + then:
> + $ref: usb.yaml#
> + else:
> + $ref: usb-xhci.yaml#
I would just do:
allOf:
- $ref: usb-drd.yaml#
- $ref: usb-xhci.yaml# (includes usb.yaml)
2 reasons:
As I remember, 'dr_mode' is at least typically what the default mode is
rather than the only mode the h/w supports.
Even if you are peripheral only, I don't think it is too important to
disallow otherwise valid properties. (It's random, unspecified
properties I care about.)
Rob
^ permalink raw reply [flat|nested] 22+ messages in thread
end of thread, other threads:[~2025-12-29 23:35 UTC | newest]
Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-18 15:20 [PATCH 0/6] Support TQMa8QM Alexander Stein
2025-12-18 15:20 ` [PATCH 1/6] dt-bindings: clk: rs9: add clock-output-names property Alexander Stein
2025-12-18 15:26 ` Geert Uytterhoeven
2025-12-18 15:49 ` Krzysztof Kozlowski
2025-12-19 8:09 ` Alexander Stein
2025-12-20 2:04 ` Rob Herring
2025-12-18 15:20 ` [PATCH 2/6] dt-bindings: usb: cdns,usb3: support USB devices in DT Alexander Stein
2025-12-19 8:55 ` Alexander Stein
2025-12-29 23:35 ` Rob Herring
2025-12-18 15:20 ` [PATCH 3/6] arm64: dts: imx8qm-ss-hsio: Wire up DMA IRQ for PCIe Alexander Stein
2025-12-19 8:55 ` Alexander Stein
2025-12-18 15:20 ` [PATCH 4/6] dt-bindings: arm: fsl: add bindings for TQMa8x Alexander Stein
2025-12-20 2:06 ` Rob Herring (Arm)
2025-12-18 15:28 ` [PATCH 0/6] Support TQMa8QM Geert Uytterhoeven
2025-12-19 8:52 ` Alexander Stein
2025-12-18 15:44 ` [PATCH 5/6] arm64: dts: Add TQ imx8qm based board Alexander Stein
2025-12-18 15:47 ` Fabio Estevam
2025-12-19 8:52 ` Alexander Stein
2025-12-18 15:49 ` Greg Kroah-Hartman
2025-12-18 16:24 ` Andrew Lunn
2025-12-18 15:44 ` [PATCH 6/6] arm64: dts: imx8qm-tqma8qm-mba8x: Disable Cortex-A72 cluster Alexander Stein
2025-12-19 16:49 ` [PATCH 0/6] Support TQMa8QM Rob Herring
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).