1 // SPDX-License-Identifier: GPL-2.0+
3 * Copyright 2019~2020, 2022 NXP
6 #include <dt-bindings/clock/imx8-clock.h>
7 #include <dt-bindings/firmware/imx/rsrc.h>
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/interrupt-controller/arm-gic.h>
10 #include <dt-bindings/input/input.h>
11 #include <dt-bindings/pinctrl/pads-imx8dxl.h>
12 #include <dt-bindings/thermal/thermal.h>
15 interrupt-parent = <&gic>;
37 /* We have 1 clusters with 2 Cortex-A35 cores */
40 compatible = "arm,cortex-a35";
42 enable-method = "psci";
43 next-level-cache = <&A35_L2>;
44 clocks = <&clk IMX_SC_R_A35 IMX_SC_PM_CLK_CPU>;
46 operating-points-v2 = <&a35_opp_table>;
51 compatible = "arm,cortex-a35";
53 enable-method = "psci";
54 next-level-cache = <&A35_L2>;
55 clocks = <&clk IMX_SC_R_A35 IMX_SC_PM_CLK_CPU>;
57 operating-points-v2 = <&a35_opp_table>;
67 a35_opp_table: opp-table {
68 compatible = "operating-points-v2";
72 opp-hz = /bits/ 64 <900000000>;
73 opp-microvolt = <1000000>;
74 clock-latency-ns = <150000>;
78 opp-hz = /bits/ 64 <1200000000>;
79 opp-microvolt = <1100000>;
80 clock-latency-ns = <150000>;
85 gic: interrupt-controller@51a00000 {
86 compatible = "arm,gic-v3";
87 reg = <0x0 0x51a00000 0 0x10000>, /* GIC Dist */
88 <0x0 0x51b00000 0 0xc0000>; /* GICR (RD_base + SGI_base) */
89 #interrupt-cells = <3>;
91 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
99 dsp_reserved: dsp@92400000 {
100 reg = <0 0x92400000 0 0x2000000>;
106 compatible = "arm,armv8-pmuv3";
107 interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>;
111 compatible = "arm,psci-1.0";
116 compatible = "fsl,imx-scu";
120 mboxes = <&lsio_mu1 0 0
124 pd: power-controller {
125 compatible = "fsl,imx8dl-scu-pd", "fsl,scu-pd";
126 #power-domain-cells = <1>;
129 clk: clock-controller {
130 compatible = "fsl,imx8dxl-clk", "fsl,scu-clk";
135 compatible = "fsl,imx8qxp-sc-gpio";
141 compatible = "fsl,imx8dxl-iomuxc";
145 compatible = "fsl,imx8qxp-scu-ocotp";
146 #address-cells = <1>;
159 compatible = "fsl,imx8qxp-sc-rtc";
163 compatible = "fsl,imx8qxp-sc-key", "fsl,imx-sc-key";
164 linux,keycodes = <KEY_POWER>;
169 compatible = "fsl,imx8dxl-sc-wdt", "fsl,imx-sc-wdt";
173 tsens: thermal-sensor {
174 compatible = "fsl,imx8dxl-sc-thermal", "fsl,imx-sc-thermal";
175 #thermal-sensor-cells = <1>;
180 compatible = "arm,armv8-timer";
181 interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, /* Physical Secure */
182 <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, /* Physical Non-Secure */
183 <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, /* Virtual */
184 <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; /* Hypervisor */
187 thermal_zones: thermal-zones {
189 polling-delay-passive = <250>;
190 polling-delay = <2000>;
191 thermal-sensors = <&tsens IMX_SC_R_SYSTEM>;
195 temperature = <107000>;
200 temperature = <127000>;
208 trip = <&cpu_alert0>;
210 <&A35_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
211 <&A35_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
217 /* The two values below cannot be changed by the board */
218 xtal32k: clock-xtal32k {
219 compatible = "fixed-clock";
221 clock-frequency = <32768>;
222 clock-output-names = "xtal_32KHz";
225 xtal24m: clock-xtal24m {
226 compatible = "fixed-clock";
228 clock-frequency = <24000000>;
229 clock-output-names = "xtal_24MHz";
232 /* sorted in register address */
233 #include "imx8-ss-adma.dtsi"
234 #include "imx8-ss-conn.dtsi"
235 #include "imx8-ss-ddr.dtsi"
236 #include "imx8-ss-lsio.dtsi"
239 #include "imx8dxl-ss-adma.dtsi"
240 #include "imx8dxl-ss-conn.dtsi"
241 #include "imx8dxl-ss-lsio.dtsi"
242 #include "imx8dxl-ss-ddr.dtsi"