1f537ee7fSShenwei Wang// SPDX-License-Identifier: GPL-2.0+ 2f537ee7fSShenwei Wang/* 3f537ee7fSShenwei Wang * Copyright 2019~2020, 2022 NXP 4f537ee7fSShenwei Wang */ 5f537ee7fSShenwei Wang 6f537ee7fSShenwei Wang#include <dt-bindings/clock/imx8-clock.h> 7f537ee7fSShenwei Wang#include <dt-bindings/firmware/imx/rsrc.h> 8f537ee7fSShenwei Wang#include <dt-bindings/gpio/gpio.h> 9f537ee7fSShenwei Wang#include <dt-bindings/interrupt-controller/arm-gic.h> 10f537ee7fSShenwei Wang#include <dt-bindings/input/input.h> 11f537ee7fSShenwei Wang#include <dt-bindings/pinctrl/pads-imx8dxl.h> 12f537ee7fSShenwei Wang#include <dt-bindings/thermal/thermal.h> 13f537ee7fSShenwei Wang 14f537ee7fSShenwei Wang/ { 15f537ee7fSShenwei Wang interrupt-parent = <&gic>; 16f537ee7fSShenwei Wang #address-cells = <2>; 17f537ee7fSShenwei Wang #size-cells = <2>; 18f537ee7fSShenwei Wang 19f537ee7fSShenwei Wang aliases { 20f537ee7fSShenwei Wang ethernet0 = &fec1; 21f537ee7fSShenwei Wang ethernet1 = &eqos; 22f537ee7fSShenwei Wang gpio0 = &lsio_gpio0; 23f537ee7fSShenwei Wang gpio1 = &lsio_gpio1; 24f537ee7fSShenwei Wang gpio2 = &lsio_gpio2; 25f537ee7fSShenwei Wang gpio3 = &lsio_gpio3; 26f537ee7fSShenwei Wang gpio4 = &lsio_gpio4; 27f537ee7fSShenwei Wang gpio5 = &lsio_gpio5; 28f537ee7fSShenwei Wang gpio6 = &lsio_gpio6; 29f537ee7fSShenwei Wang gpio7 = &lsio_gpio7; 30f537ee7fSShenwei Wang mu1 = &lsio_mu1; 31f537ee7fSShenwei Wang }; 32f537ee7fSShenwei Wang 33f537ee7fSShenwei Wang cpus: cpus { 34f537ee7fSShenwei Wang #address-cells = <2>; 35f537ee7fSShenwei Wang #size-cells = <0>; 36f537ee7fSShenwei Wang 37f537ee7fSShenwei Wang /* We have 1 clusters with 2 Cortex-A35 cores */ 38f537ee7fSShenwei Wang A35_0: cpu@0 { 39f537ee7fSShenwei Wang device_type = "cpu"; 40f537ee7fSShenwei Wang compatible = "arm,cortex-a35"; 41f537ee7fSShenwei Wang reg = <0x0 0x0>; 42f537ee7fSShenwei Wang enable-method = "psci"; 43f537ee7fSShenwei Wang next-level-cache = <&A35_L2>; 44f537ee7fSShenwei Wang clocks = <&clk IMX_SC_R_A35 IMX_SC_PM_CLK_CPU>; 45f537ee7fSShenwei Wang #cooling-cells = <2>; 46f537ee7fSShenwei Wang operating-points-v2 = <&a35_opp_table>; 47f537ee7fSShenwei Wang }; 48f537ee7fSShenwei Wang 49f537ee7fSShenwei Wang A35_1: cpu@1 { 50f537ee7fSShenwei Wang device_type = "cpu"; 51f537ee7fSShenwei Wang compatible = "arm,cortex-a35"; 52f537ee7fSShenwei Wang reg = <0x0 0x1>; 53f537ee7fSShenwei Wang enable-method = "psci"; 54f537ee7fSShenwei Wang next-level-cache = <&A35_L2>; 55f537ee7fSShenwei Wang clocks = <&clk IMX_SC_R_A35 IMX_SC_PM_CLK_CPU>; 56f537ee7fSShenwei Wang #cooling-cells = <2>; 57f537ee7fSShenwei Wang operating-points-v2 = <&a35_opp_table>; 58f537ee7fSShenwei Wang }; 59f537ee7fSShenwei Wang 60f537ee7fSShenwei Wang A35_L2: l2-cache0 { 61f537ee7fSShenwei Wang compatible = "cache"; 623b450831SPierre Gondois cache-level = <2>; 63f537ee7fSShenwei Wang cache-unified; 64f537ee7fSShenwei Wang }; 65f537ee7fSShenwei Wang }; 66f537ee7fSShenwei Wang 67f537ee7fSShenwei Wang a35_opp_table: opp-table { 68f537ee7fSShenwei Wang compatible = "operating-points-v2"; 69f537ee7fSShenwei Wang opp-shared; 70f537ee7fSShenwei Wang 71f537ee7fSShenwei Wang opp-900000000 { 72f537ee7fSShenwei Wang opp-hz = /bits/ 64 <900000000>; 73f537ee7fSShenwei Wang opp-microvolt = <1000000>; 74f537ee7fSShenwei Wang clock-latency-ns = <150000>; 75f537ee7fSShenwei Wang }; 76f537ee7fSShenwei Wang 77f537ee7fSShenwei Wang opp-1200000000 { 78f537ee7fSShenwei Wang opp-hz = /bits/ 64 <1200000000>; 79f537ee7fSShenwei Wang opp-microvolt = <1100000>; 80f537ee7fSShenwei Wang clock-latency-ns = <150000>; 81f537ee7fSShenwei Wang opp-suspend; 82f537ee7fSShenwei Wang }; 83f537ee7fSShenwei Wang }; 84f537ee7fSShenwei Wang 85f537ee7fSShenwei Wang gic: interrupt-controller@51a00000 { 86f537ee7fSShenwei Wang compatible = "arm,gic-v3"; 87f537ee7fSShenwei Wang reg = <0x0 0x51a00000 0 0x10000>, /* GIC Dist */ 88f537ee7fSShenwei Wang <0x0 0x51b00000 0 0xc0000>; /* GICR (RD_base + SGI_base) */ 89f537ee7fSShenwei Wang #interrupt-cells = <3>; 90f537ee7fSShenwei Wang interrupt-controller; 91f537ee7fSShenwei Wang interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 92f537ee7fSShenwei Wang }; 93f537ee7fSShenwei Wang 94f537ee7fSShenwei Wang reserved-memory { 95f537ee7fSShenwei Wang #address-cells = <2>; 96f537ee7fSShenwei Wang #size-cells = <2>; 97f537ee7fSShenwei Wang ranges; 98f537ee7fSShenwei Wang 99f537ee7fSShenwei Wang dsp_reserved: dsp@92400000 { 100f537ee7fSShenwei Wang reg = <0 0x92400000 0 0x2000000>; 101f537ee7fSShenwei Wang no-map; 102f537ee7fSShenwei Wang }; 103f537ee7fSShenwei Wang }; 104f537ee7fSShenwei Wang 105f537ee7fSShenwei Wang pmu { 106f537ee7fSShenwei Wang compatible = "arm,armv8-pmuv3"; 107f537ee7fSShenwei Wang interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>; 108f537ee7fSShenwei Wang }; 109f537ee7fSShenwei Wang 110f537ee7fSShenwei Wang psci { 111f537ee7fSShenwei Wang compatible = "arm,psci-1.0"; 112f537ee7fSShenwei Wang method = "smc"; 113f537ee7fSShenwei Wang }; 114f537ee7fSShenwei Wang 115f537ee7fSShenwei Wang system-controller { 116f537ee7fSShenwei Wang compatible = "fsl,imx-scu"; 117f537ee7fSShenwei Wang mbox-names = "tx0", 118f537ee7fSShenwei Wang "rx0", 119f537ee7fSShenwei Wang "gip3"; 120f537ee7fSShenwei Wang mboxes = <&lsio_mu1 0 0 121f537ee7fSShenwei Wang &lsio_mu1 1 0 122f537ee7fSShenwei Wang &lsio_mu1 3 3>; 123f537ee7fSShenwei Wang 124f537ee7fSShenwei Wang pd: power-controller { 125f537ee7fSShenwei Wang compatible = "fsl,scu-pd"; 126f537ee7fSShenwei Wang #power-domain-cells = <1>; 127f537ee7fSShenwei Wang wakeup-irq = <160 163 235 236 237 228 229 230 231 238 128f537ee7fSShenwei Wang 239 240 166 169>; 129f537ee7fSShenwei Wang }; 130f537ee7fSShenwei Wang 131f537ee7fSShenwei Wang clk: clock-controller { 132f537ee7fSShenwei Wang compatible = "fsl,imx8dxl-clk", "fsl,scu-clk"; 133f537ee7fSShenwei Wang #clock-cells = <2>; 134f537ee7fSShenwei Wang }; 135b202ac0cSShenwei Wang 136b202ac0cSShenwei Wang scu_gpio: gpio { 137b202ac0cSShenwei Wang compatible = "fsl,imx8qxp-sc-gpio"; 138b202ac0cSShenwei Wang gpio-controller; 139b202ac0cSShenwei Wang #gpio-cells = <2>; 140b202ac0cSShenwei Wang }; 141f537ee7fSShenwei Wang 142f537ee7fSShenwei Wang iomuxc: pinctrl { 143f537ee7fSShenwei Wang compatible = "fsl,imx8dxl-iomuxc"; 144f537ee7fSShenwei Wang }; 145f537ee7fSShenwei Wang 146f537ee7fSShenwei Wang ocotp: ocotp { 147f537ee7fSShenwei Wang compatible = "fsl,imx8qxp-scu-ocotp"; 148f537ee7fSShenwei Wang #address-cells = <1>; 149f537ee7fSShenwei Wang #size-cells = <1>; 150f537ee7fSShenwei Wang 151f537ee7fSShenwei Wang fec_mac0: mac@2c4 { 152f537ee7fSShenwei Wang reg = <0x2c4 6>; 153f537ee7fSShenwei Wang }; 154f537ee7fSShenwei Wang 155f537ee7fSShenwei Wang fec_mac1: mac@2c6 { 156f537ee7fSShenwei Wang reg = <0x2c6 6>; 157f537ee7fSShenwei Wang }; 158f537ee7fSShenwei Wang }; 159f537ee7fSShenwei Wang 160f537ee7fSShenwei Wang rtc: rtc { 161f537ee7fSShenwei Wang compatible = "fsl,imx8qxp-sc-rtc"; 162f537ee7fSShenwei Wang }; 163f537ee7fSShenwei Wang 164f537ee7fSShenwei Wang sc_pwrkey: keys { 165cfb47bf5SFrank Li compatible = "fsl,imx8qxp-sc-key", "fsl,imx-sc-key"; 166f537ee7fSShenwei Wang linux,keycodes = <KEY_POWER>; 167f537ee7fSShenwei Wang wakeup-source; 168f537ee7fSShenwei Wang }; 169f537ee7fSShenwei Wang 170f537ee7fSShenwei Wang watchdog { 171f537ee7fSShenwei Wang compatible = "fsl,imx-sc-wdt"; 172f537ee7fSShenwei Wang timeout-sec = <60>; 173f537ee7fSShenwei Wang }; 174f537ee7fSShenwei Wang 175f537ee7fSShenwei Wang tsens: thermal-sensor { 176f537ee7fSShenwei Wang compatible = "fsl,imx-sc-thermal"; 177f537ee7fSShenwei Wang #thermal-sensor-cells = <1>; 178f537ee7fSShenwei Wang }; 179f537ee7fSShenwei Wang }; 180f537ee7fSShenwei Wang 181f537ee7fSShenwei Wang timer { 182f537ee7fSShenwei Wang compatible = "arm,armv8-timer"; 183f537ee7fSShenwei Wang interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, /* Physical Secure */ 184f537ee7fSShenwei Wang <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, /* Physical Non-Secure */ 185f537ee7fSShenwei Wang <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, /* Virtual */ 186f537ee7fSShenwei Wang <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; /* Hypervisor */ 187f537ee7fSShenwei Wang }; 188f537ee7fSShenwei Wang 189*ba179ae1SKrzysztof Kozlowski thermal_zones: thermal-zones { 190f537ee7fSShenwei Wang cpu-thermal { 191f537ee7fSShenwei Wang polling-delay-passive = <250>; 192f537ee7fSShenwei Wang polling-delay = <2000>; 193f537ee7fSShenwei Wang thermal-sensors = <&tsens IMX_SC_R_SYSTEM>; 194f537ee7fSShenwei Wang 195f537ee7fSShenwei Wang trips { 196f537ee7fSShenwei Wang cpu_alert0: trip0 { 197f537ee7fSShenwei Wang temperature = <107000>; 198f537ee7fSShenwei Wang hysteresis = <2000>; 199f537ee7fSShenwei Wang type = "passive"; 200f537ee7fSShenwei Wang }; 201f537ee7fSShenwei Wang cpu_crit0: trip1 { 202f537ee7fSShenwei Wang temperature = <127000>; 203f537ee7fSShenwei Wang hysteresis = <2000>; 204f537ee7fSShenwei Wang type = "critical"; 205f537ee7fSShenwei Wang }; 206f537ee7fSShenwei Wang }; 207f537ee7fSShenwei Wang 208f537ee7fSShenwei Wang cooling-maps { 209f537ee7fSShenwei Wang map0 { 210f537ee7fSShenwei Wang trip = <&cpu_alert0>; 211f537ee7fSShenwei Wang cooling-device = 212f537ee7fSShenwei Wang <&A35_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 213f537ee7fSShenwei Wang <&A35_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 214f537ee7fSShenwei Wang }; 215f537ee7fSShenwei Wang }; 216f537ee7fSShenwei Wang }; 217f537ee7fSShenwei Wang }; 218f537ee7fSShenwei Wang 219f537ee7fSShenwei Wang /* The two values below cannot be changed by the board */ 220f537ee7fSShenwei Wang xtal32k: clock-xtal32k { 221f537ee7fSShenwei Wang compatible = "fixed-clock"; 222f537ee7fSShenwei Wang #clock-cells = <0>; 223f537ee7fSShenwei Wang clock-frequency = <32768>; 224f537ee7fSShenwei Wang clock-output-names = "xtal_32KHz"; 225f537ee7fSShenwei Wang }; 226f537ee7fSShenwei Wang 227f537ee7fSShenwei Wang xtal24m: clock-xtal24m { 228f537ee7fSShenwei Wang compatible = "fixed-clock"; 229f537ee7fSShenwei Wang #clock-cells = <0>; 230f537ee7fSShenwei Wang clock-frequency = <24000000>; 231f537ee7fSShenwei Wang clock-output-names = "xtal_24MHz"; 232f537ee7fSShenwei Wang }; 233f537ee7fSShenwei Wang 234f537ee7fSShenwei Wang /* sorted in register address */ 235f537ee7fSShenwei Wang #include "imx8-ss-adma.dtsi" 236f537ee7fSShenwei Wang #include "imx8-ss-conn.dtsi" 237f537ee7fSShenwei Wang #include "imx8-ss-ddr.dtsi" 238f537ee7fSShenwei Wang #include "imx8-ss-lsio.dtsi" 239f537ee7fSShenwei Wang}; 240f537ee7fSShenwei Wang 241f537ee7fSShenwei Wang#include "imx8dxl-ss-adma.dtsi" 242f537ee7fSShenwei Wang#include "imx8dxl-ss-conn.dtsi" 243f537ee7fSShenwei Wang#include "imx8dxl-ss-lsio.dtsi" 244#include "imx8dxl-ss-ddr.dtsi" 245