1fe6291e9SJacky Bai// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2fe6291e9SJacky Bai/* 3fe6291e9SJacky Bai * Copyright 2021 NXP 4fe6291e9SJacky Bai */ 5fe6291e9SJacky Bai 6fe6291e9SJacky Bai#include <dt-bindings/clock/imx8ulp-clock.h> 7fe6291e9SJacky Bai#include <dt-bindings/gpio/gpio.h> 8fe6291e9SJacky Bai#include <dt-bindings/interrupt-controller/arm-gic.h> 9a38771d7SPeng Fan#include <dt-bindings/power/imx8ulp-power.h> 10a9624b4eSPeng Fan#include <dt-bindings/thermal/thermal.h> 11fe6291e9SJacky Bai 12fe6291e9SJacky Bai#include "imx8ulp-pinfunc.h" 13fe6291e9SJacky Bai 14fe6291e9SJacky Bai/ { 15fe6291e9SJacky Bai interrupt-parent = <&gic>; 16fe6291e9SJacky Bai #address-cells = <2>; 17fe6291e9SJacky Bai #size-cells = <2>; 18fe6291e9SJacky Bai 19fe6291e9SJacky Bai aliases { 20683d7ffbSWei Fang ethernet0 = &fec; 21fe6291e9SJacky Bai gpio0 = &gpiod; 22fe6291e9SJacky Bai gpio1 = &gpioe; 23fe6291e9SJacky Bai gpio2 = &gpiof; 24fe6291e9SJacky Bai mmc0 = &usdhc0; 25fe6291e9SJacky Bai mmc1 = &usdhc1; 26fe6291e9SJacky Bai mmc2 = &usdhc2; 27fe6291e9SJacky Bai serial0 = &lpuart4; 28fe6291e9SJacky Bai serial1 = &lpuart5; 29fe6291e9SJacky Bai serial2 = &lpuart6; 30fe6291e9SJacky Bai serial3 = &lpuart7; 31fe6291e9SJacky Bai }; 32fe6291e9SJacky Bai 33fe6291e9SJacky Bai cpus { 34fe6291e9SJacky Bai #address-cells = <2>; 35fe6291e9SJacky Bai #size-cells = <0>; 36fe6291e9SJacky Bai 37fe6291e9SJacky Bai A35_0: cpu@0 { 38fe6291e9SJacky Bai device_type = "cpu"; 39fe6291e9SJacky Bai compatible = "arm,cortex-a35"; 40fe6291e9SJacky Bai reg = <0x0 0x0>; 41fe6291e9SJacky Bai enable-method = "psci"; 42fe6291e9SJacky Bai next-level-cache = <&A35_L2>; 43db2c35aaSPeng Fan cpu-idle-states = <&cpu_sleep>; 44fe6291e9SJacky Bai }; 45fe6291e9SJacky Bai 46fe6291e9SJacky Bai A35_1: cpu@1 { 47fe6291e9SJacky Bai device_type = "cpu"; 48fe6291e9SJacky Bai compatible = "arm,cortex-a35"; 49fe6291e9SJacky Bai reg = <0x0 0x1>; 50fe6291e9SJacky Bai enable-method = "psci"; 51fe6291e9SJacky Bai next-level-cache = <&A35_L2>; 52db2c35aaSPeng Fan cpu-idle-states = <&cpu_sleep>; 53fe6291e9SJacky Bai }; 54fe6291e9SJacky Bai 55fe6291e9SJacky Bai A35_L2: l2-cache0 { 56fe6291e9SJacky Bai compatible = "cache"; 573b450831SPierre Gondois cache-level = <2>; 58d2bd9471SKrzysztof Kozlowski cache-unified; 59fe6291e9SJacky Bai }; 60db2c35aaSPeng Fan 61db2c35aaSPeng Fan idle-states { 62db2c35aaSPeng Fan entry-method = "psci"; 63db2c35aaSPeng Fan 64db2c35aaSPeng Fan cpu_sleep: cpu-sleep { 65db2c35aaSPeng Fan compatible = "arm,idle-state"; 66db2c35aaSPeng Fan arm,psci-suspend-param = <0x0>; 67db2c35aaSPeng Fan local-timer-stop; 68db2c35aaSPeng Fan entry-latency-us = <1000>; 69db2c35aaSPeng Fan exit-latency-us = <700>; 70db2c35aaSPeng Fan min-residency-us = <2700>; 71db2c35aaSPeng Fan }; 72db2c35aaSPeng Fan }; 73fe6291e9SJacky Bai }; 74fe6291e9SJacky Bai 75fe6291e9SJacky Bai gic: interrupt-controller@2d400000 { 76fe6291e9SJacky Bai compatible = "arm,gic-v3"; 77fe6291e9SJacky Bai reg = <0x0 0x2d400000 0 0x10000>, /* GIC Dist */ 78fe6291e9SJacky Bai <0x0 0x2d440000 0 0xc0000>; /* GICR (RD_base + SGI_base) */ 79fe6291e9SJacky Bai #interrupt-cells = <3>; 80fe6291e9SJacky Bai interrupt-controller; 81fe6291e9SJacky Bai interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 82fe6291e9SJacky Bai }; 83fe6291e9SJacky Bai 84ed4b58faSPeng Fan pmu { 85ed4b58faSPeng Fan compatible = "arm,cortex-a35-pmu"; 86ed4b58faSPeng Fan interrupt-parent = <&gic>; 87ed4b58faSPeng Fan interrupts = <GIC_PPI 7 88ed4b58faSPeng Fan (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; 89ed4b58faSPeng Fan interrupt-affinity = <&A35_0>, <&A35_1>; 90ed4b58faSPeng Fan }; 91ed4b58faSPeng Fan 92fe6291e9SJacky Bai psci { 93fe6291e9SJacky Bai compatible = "arm,psci-1.0"; 94fe6291e9SJacky Bai method = "smc"; 95fe6291e9SJacky Bai }; 96fe6291e9SJacky Bai 97a9624b4eSPeng Fan thermal-zones { 98a9624b4eSPeng Fan cpu-thermal { 99a9624b4eSPeng Fan polling-delay-passive = <250>; 100a9624b4eSPeng Fan polling-delay = <2000>; 101a9624b4eSPeng Fan thermal-sensors = <&scmi_sensor 0>; 102a9624b4eSPeng Fan 103a9624b4eSPeng Fan trips { 104a9624b4eSPeng Fan cpu_alert0: trip0 { 105a9624b4eSPeng Fan temperature = <85000>; 106a9624b4eSPeng Fan hysteresis = <2000>; 107a9624b4eSPeng Fan type = "passive"; 108a9624b4eSPeng Fan }; 109a9624b4eSPeng Fan 110a9624b4eSPeng Fan cpu_crit0: trip1 { 111a9624b4eSPeng Fan temperature = <95000>; 112a9624b4eSPeng Fan hysteresis = <2000>; 113a9624b4eSPeng Fan type = "critical"; 114a9624b4eSPeng Fan }; 115a9624b4eSPeng Fan }; 116a9624b4eSPeng Fan }; 117a9624b4eSPeng Fan }; 118a9624b4eSPeng Fan 119fe6291e9SJacky Bai timer { 120fe6291e9SJacky Bai compatible = "arm,armv8-timer"; 121fe6291e9SJacky Bai interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, /* Physical Secure */ 122fe6291e9SJacky Bai <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, /* Physical Non-Secure */ 123fe6291e9SJacky Bai <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, /* Virtual */ 124fe6291e9SJacky Bai <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; /* Hypervisor */ 125fe6291e9SJacky Bai }; 126fe6291e9SJacky Bai 127fe6291e9SJacky Bai frosc: clock-frosc { 128fe6291e9SJacky Bai compatible = "fixed-clock"; 129fe6291e9SJacky Bai clock-frequency = <192000000>; 130fe6291e9SJacky Bai clock-output-names = "frosc"; 131fe6291e9SJacky Bai #clock-cells = <0>; 132fe6291e9SJacky Bai }; 133fe6291e9SJacky Bai 134fe6291e9SJacky Bai lposc: clock-lposc { 135fe6291e9SJacky Bai compatible = "fixed-clock"; 136fe6291e9SJacky Bai clock-frequency = <1000000>; 137fe6291e9SJacky Bai clock-output-names = "lposc"; 138fe6291e9SJacky Bai #clock-cells = <0>; 139fe6291e9SJacky Bai }; 140fe6291e9SJacky Bai 141fe6291e9SJacky Bai rosc: clock-rosc { 142fe6291e9SJacky Bai compatible = "fixed-clock"; 143fe6291e9SJacky Bai clock-frequency = <32768>; 144fe6291e9SJacky Bai clock-output-names = "rosc"; 145fe6291e9SJacky Bai #clock-cells = <0>; 146fe6291e9SJacky Bai }; 147fe6291e9SJacky Bai 148fe6291e9SJacky Bai sosc: clock-sosc { 149fe6291e9SJacky Bai compatible = "fixed-clock"; 150fe6291e9SJacky Bai clock-frequency = <24000000>; 151fe6291e9SJacky Bai clock-output-names = "sosc"; 152fe6291e9SJacky Bai #clock-cells = <0>; 153fe6291e9SJacky Bai }; 154fe6291e9SJacky Bai 155a38771d7SPeng Fan sram@2201f000 { 156a38771d7SPeng Fan compatible = "mmio-sram"; 157a38771d7SPeng Fan reg = <0x0 0x2201f000 0x0 0x1000>; 158a38771d7SPeng Fan 159a38771d7SPeng Fan #address-cells = <1>; 160a38771d7SPeng Fan #size-cells = <1>; 161a38771d7SPeng Fan ranges = <0 0x0 0x2201f000 0x1000>; 162a38771d7SPeng Fan 163b2ca6369SPeng Fan scmi_buf: scmi-sram-section@0 { 164a38771d7SPeng Fan compatible = "arm,scmi-shmem"; 165a38771d7SPeng Fan reg = <0x0 0x400>; 166a38771d7SPeng Fan }; 167a38771d7SPeng Fan }; 168a38771d7SPeng Fan 169a38771d7SPeng Fan firmware { 170a38771d7SPeng Fan scmi { 171a38771d7SPeng Fan compatible = "arm,scmi-smc"; 172a38771d7SPeng Fan arm,smc-id = <0xc20000fe>; 173a38771d7SPeng Fan #address-cells = <1>; 174a38771d7SPeng Fan #size-cells = <0>; 175a38771d7SPeng Fan shmem = <&scmi_buf>; 176a38771d7SPeng Fan 177a38771d7SPeng Fan scmi_devpd: protocol@11 { 178a38771d7SPeng Fan reg = <0x11>; 179a38771d7SPeng Fan #power-domain-cells = <1>; 180a38771d7SPeng Fan }; 181a38771d7SPeng Fan 182a38771d7SPeng Fan scmi_sensor: protocol@15 { 183a38771d7SPeng Fan reg = <0x15>; 18445d941f6SSudeep Holla #thermal-sensor-cells = <1>; 185a38771d7SPeng Fan }; 186a38771d7SPeng Fan }; 187a38771d7SPeng Fan }; 188a38771d7SPeng Fan 1895b9435d6SPeng Fan cm33: remoteproc-cm33 { 1905b9435d6SPeng Fan compatible = "fsl,imx8ulp-cm33"; 1915b9435d6SPeng Fan status = "disabled"; 1925b9435d6SPeng Fan }; 1935b9435d6SPeng Fan 194fcdef92bSFabio Estevam soc: soc@0 { 195fe6291e9SJacky Bai compatible = "simple-bus"; 196fe6291e9SJacky Bai #address-cells = <1>; 197fe6291e9SJacky Bai #size-cells = <1>; 198ef89fd56SHaibo Chen ranges = <0x0 0x0 0x0 0x40000000>, 199ef89fd56SHaibo Chen <0x60000000 0x0 0x60000000 0x1000000>; 200fe6291e9SJacky Bai 201d2209e65SPeng Fan s4muap: mailbox@27020000 { 202d2209e65SPeng Fan compatible = "fsl,imx8ulp-mu-s4"; 203d2209e65SPeng Fan reg = <0x27020000 0x10000>; 204d2209e65SPeng Fan interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 205d2209e65SPeng Fan #mbox-cells = <2>; 206d2209e65SPeng Fan }; 207d2209e65SPeng Fan 208fe6291e9SJacky Bai per_bridge3: bus@29000000 { 209fe6291e9SJacky Bai compatible = "simple-bus"; 210fe6291e9SJacky Bai reg = <0x29000000 0x800000>; 211fe6291e9SJacky Bai #address-cells = <1>; 212fe6291e9SJacky Bai #size-cells = <1>; 213fe6291e9SJacky Bai ranges; 214fe6291e9SJacky Bai 215d2209e65SPeng Fan mu: mailbox@29220000 { 216d2209e65SPeng Fan compatible = "fsl,imx8ulp-mu"; 217d2209e65SPeng Fan reg = <0x29220000 0x10000>; 218d2209e65SPeng Fan interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 219d2209e65SPeng Fan #mbox-cells = <2>; 220d2209e65SPeng Fan status = "disabled"; 221d2209e65SPeng Fan }; 222d2209e65SPeng Fan 223d2209e65SPeng Fan mu3: mailbox@29230000 { 224d2209e65SPeng Fan compatible = "fsl,imx8ulp-mu"; 225d2209e65SPeng Fan reg = <0x29230000 0x10000>; 226d2209e65SPeng Fan interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 227d2209e65SPeng Fan clocks = <&pcc3 IMX8ULP_CLK_MU3_A>; 228d2209e65SPeng Fan #mbox-cells = <2>; 229d2209e65SPeng Fan status = "disabled"; 230d2209e65SPeng Fan }; 231d2209e65SPeng Fan 232fe6291e9SJacky Bai wdog3: watchdog@292a0000 { 233fe6291e9SJacky Bai compatible = "fsl,imx8ulp-wdt", "fsl,imx7ulp-wdt"; 234fe6291e9SJacky Bai reg = <0x292a0000 0x10000>; 235fe6291e9SJacky Bai interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 236fe6291e9SJacky Bai clocks = <&pcc3 IMX8ULP_CLK_WDOG3>; 237fe6291e9SJacky Bai assigned-clocks = <&pcc3 IMX8ULP_CLK_WDOG3>; 238fe6291e9SJacky Bai assigned-clock-parents = <&cgc1 IMX8ULP_CLK_SOSC_DIV2>; 239fe6291e9SJacky Bai timeout-sec = <40>; 240fe6291e9SJacky Bai }; 241fe6291e9SJacky Bai 242fe6291e9SJacky Bai cgc1: clock-controller@292c0000 { 243fe6291e9SJacky Bai compatible = "fsl,imx8ulp-cgc1"; 244fe6291e9SJacky Bai reg = <0x292c0000 0x10000>; 245fe6291e9SJacky Bai #clock-cells = <1>; 246fe6291e9SJacky Bai }; 247fe6291e9SJacky Bai 248fe6291e9SJacky Bai pcc3: clock-controller@292d0000 { 249fe6291e9SJacky Bai compatible = "fsl,imx8ulp-pcc3"; 250fe6291e9SJacky Bai reg = <0x292d0000 0x10000>; 251fe6291e9SJacky Bai #clock-cells = <1>; 2525fa383a2SPeng Fan #reset-cells = <1>; 253fe6291e9SJacky Bai }; 254fe6291e9SJacky Bai 255fe6291e9SJacky Bai tpm5: tpm@29340000 { 256fe6291e9SJacky Bai compatible = "fsl,imx8ulp-tpm", "fsl,imx7ulp-tpm"; 257fe6291e9SJacky Bai reg = <0x29340000 0x1000>; 258fe6291e9SJacky Bai interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 259fe6291e9SJacky Bai clocks = <&pcc3 IMX8ULP_CLK_TPM5>, 260fe6291e9SJacky Bai <&pcc3 IMX8ULP_CLK_TPM5>; 261fe6291e9SJacky Bai clock-names = "ipg", "per"; 262fe6291e9SJacky Bai status = "disabled"; 263fe6291e9SJacky Bai }; 264fe6291e9SJacky Bai 265fe6291e9SJacky Bai lpi2c4: i2c@29370000 { 266fe6291e9SJacky Bai compatible = "fsl,imx8ulp-lpi2c", "fsl,imx7ulp-lpi2c"; 267fe6291e9SJacky Bai reg = <0x29370000 0x10000>; 268fe6291e9SJacky Bai interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>; 269fe6291e9SJacky Bai clocks = <&pcc3 IMX8ULP_CLK_LPI2C4>, 270fe6291e9SJacky Bai <&pcc3 IMX8ULP_CLK_LPI2C4>; 271fe6291e9SJacky Bai clock-names = "per", "ipg"; 272fe6291e9SJacky Bai assigned-clocks = <&pcc3 IMX8ULP_CLK_LPI2C4>; 2730acd1b1cSClark Wang assigned-clock-parents = <&cgc1 IMX8ULP_CLK_FROSC_DIV2>; 274fe6291e9SJacky Bai assigned-clock-rates = <48000000>; 275fe6291e9SJacky Bai status = "disabled"; 276fe6291e9SJacky Bai }; 277fe6291e9SJacky Bai 278fe6291e9SJacky Bai lpi2c5: i2c@29380000 { 279fe6291e9SJacky Bai compatible = "fsl,imx8ulp-lpi2c", "fsl,imx7ulp-lpi2c"; 280fe6291e9SJacky Bai reg = <0x29380000 0x10000>; 281fe6291e9SJacky Bai interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; 282fe6291e9SJacky Bai clocks = <&pcc3 IMX8ULP_CLK_LPI2C5>, 283fe6291e9SJacky Bai <&pcc3 IMX8ULP_CLK_LPI2C5>; 284fe6291e9SJacky Bai clock-names = "per", "ipg"; 285fe6291e9SJacky Bai assigned-clocks = <&pcc3 IMX8ULP_CLK_LPI2C5>; 2860acd1b1cSClark Wang assigned-clock-parents = <&cgc1 IMX8ULP_CLK_FROSC_DIV2>; 287fe6291e9SJacky Bai assigned-clock-rates = <48000000>; 288fe6291e9SJacky Bai status = "disabled"; 289fe6291e9SJacky Bai }; 290fe6291e9SJacky Bai 291fe6291e9SJacky Bai lpuart4: serial@29390000 { 292fe6291e9SJacky Bai compatible = "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 293fe6291e9SJacky Bai reg = <0x29390000 0x1000>; 294fe6291e9SJacky Bai interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 295fe6291e9SJacky Bai clocks = <&pcc3 IMX8ULP_CLK_LPUART4>; 296fe6291e9SJacky Bai clock-names = "ipg"; 297fe6291e9SJacky Bai status = "disabled"; 298fe6291e9SJacky Bai }; 299fe6291e9SJacky Bai 300fe6291e9SJacky Bai lpuart5: serial@293a0000 { 301fe6291e9SJacky Bai compatible = "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 302fe6291e9SJacky Bai reg = <0x293a0000 0x1000>; 303fe6291e9SJacky Bai interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 304fe6291e9SJacky Bai clocks = <&pcc3 IMX8ULP_CLK_LPUART5>; 305fe6291e9SJacky Bai clock-names = "ipg"; 306fe6291e9SJacky Bai status = "disabled"; 307fe6291e9SJacky Bai }; 308fe6291e9SJacky Bai 309fe6291e9SJacky Bai lpspi4: spi@293b0000 { 310fe6291e9SJacky Bai #address-cells = <1>; 311fe6291e9SJacky Bai #size-cells = <0>; 312fe6291e9SJacky Bai compatible = "fsl,imx8ulp-spi", "fsl,imx7ulp-spi"; 313fe6291e9SJacky Bai reg = <0x293b0000 0x10000>; 314fe6291e9SJacky Bai interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 315fe6291e9SJacky Bai clocks = <&pcc3 IMX8ULP_CLK_LPSPI4>, 316fe6291e9SJacky Bai <&pcc3 IMX8ULP_CLK_LPSPI4>; 317fe6291e9SJacky Bai clock-names = "per", "ipg"; 318fe6291e9SJacky Bai assigned-clocks = <&pcc3 IMX8ULP_CLK_LPSPI4>; 3190acd1b1cSClark Wang assigned-clock-parents = <&cgc1 IMX8ULP_CLK_FROSC_DIV2>; 3200acd1b1cSClark Wang assigned-clock-rates = <48000000>; 321fe6291e9SJacky Bai status = "disabled"; 322fe6291e9SJacky Bai }; 323fe6291e9SJacky Bai 324fe6291e9SJacky Bai lpspi5: spi@293c0000 { 325fe6291e9SJacky Bai #address-cells = <1>; 326fe6291e9SJacky Bai #size-cells = <0>; 327fe6291e9SJacky Bai compatible = "fsl,imx8ulp-spi", "fsl,imx7ulp-spi"; 328fe6291e9SJacky Bai reg = <0x293c0000 0x10000>; 329fe6291e9SJacky Bai interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 330fe6291e9SJacky Bai clocks = <&pcc3 IMX8ULP_CLK_LPSPI5>, 331fe6291e9SJacky Bai <&pcc3 IMX8ULP_CLK_LPSPI5>; 332fe6291e9SJacky Bai clock-names = "per", "ipg"; 333fe6291e9SJacky Bai assigned-clocks = <&pcc3 IMX8ULP_CLK_LPSPI5>; 3340acd1b1cSClark Wang assigned-clock-parents = <&cgc1 IMX8ULP_CLK_FROSC_DIV2>; 3350acd1b1cSClark Wang assigned-clock-rates = <48000000>; 336fe6291e9SJacky Bai status = "disabled"; 337fe6291e9SJacky Bai }; 338fe6291e9SJacky Bai }; 339fe6291e9SJacky Bai 340fe6291e9SJacky Bai per_bridge4: bus@29800000 { 341fe6291e9SJacky Bai compatible = "simple-bus"; 342fe6291e9SJacky Bai reg = <0x29800000 0x800000>; 343fe6291e9SJacky Bai #address-cells = <1>; 344fe6291e9SJacky Bai #size-cells = <1>; 345fe6291e9SJacky Bai ranges; 346fe6291e9SJacky Bai 347fe6291e9SJacky Bai pcc4: clock-controller@29800000 { 348fe6291e9SJacky Bai compatible = "fsl,imx8ulp-pcc4"; 349fe6291e9SJacky Bai reg = <0x29800000 0x10000>; 350fe6291e9SJacky Bai #clock-cells = <1>; 3515fa383a2SPeng Fan #reset-cells = <1>; 352fe6291e9SJacky Bai }; 353fe6291e9SJacky Bai 354ef89fd56SHaibo Chen flexspi2: spi@29810000 { 355*e3fb0e6aSHaibo Chen compatible = "nxp,imx8ulp-fspi"; 356ef89fd56SHaibo Chen reg = <0x29810000 0x10000>, <0x60000000 0x10000000>; 357ef89fd56SHaibo Chen reg-names = "fspi_base", "fspi_mmap"; 358ef89fd56SHaibo Chen #address-cells = <1>; 359ef89fd56SHaibo Chen #size-cells = <0>; 360ef89fd56SHaibo Chen interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>; 361ef89fd56SHaibo Chen clocks = <&pcc4 IMX8ULP_CLK_FLEXSPI2>, 362ef89fd56SHaibo Chen <&pcc4 IMX8ULP_CLK_FLEXSPI2>; 363ef89fd56SHaibo Chen clock-names = "fspi", "fspi_en"; 364ef89fd56SHaibo Chen assigned-clocks = <&pcc4 IMX8ULP_CLK_FLEXSPI2>; 365ef89fd56SHaibo Chen assigned-clock-parents = <&cgc1 IMX8ULP_CLK_SPLL3_PFD3_DIV2>; 366ef89fd56SHaibo Chen status = "disabled"; 367ef89fd56SHaibo Chen }; 368ef89fd56SHaibo Chen 369fe6291e9SJacky Bai lpi2c6: i2c@29840000 { 370fe6291e9SJacky Bai compatible = "fsl,imx8ulp-lpi2c", "fsl,imx7ulp-lpi2c"; 371fe6291e9SJacky Bai reg = <0x29840000 0x10000>; 372fe6291e9SJacky Bai interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; 373fe6291e9SJacky Bai clocks = <&pcc4 IMX8ULP_CLK_LPI2C6>, 374fe6291e9SJacky Bai <&pcc4 IMX8ULP_CLK_LPI2C6>; 375fe6291e9SJacky Bai clock-names = "per", "ipg"; 376fe6291e9SJacky Bai assigned-clocks = <&pcc4 IMX8ULP_CLK_LPI2C6>; 3770acd1b1cSClark Wang assigned-clock-parents = <&cgc1 IMX8ULP_CLK_FROSC_DIV2>; 378fe6291e9SJacky Bai assigned-clock-rates = <48000000>; 379fe6291e9SJacky Bai status = "disabled"; 380fe6291e9SJacky Bai }; 381fe6291e9SJacky Bai 382fe6291e9SJacky Bai lpi2c7: i2c@29850000 { 383fe6291e9SJacky Bai compatible = "fsl,imx8ulp-lpi2c", "fsl,imx7ulp-lpi2c"; 384fe6291e9SJacky Bai reg = <0x29850000 0x10000>; 385fe6291e9SJacky Bai interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 386fe6291e9SJacky Bai clocks = <&pcc4 IMX8ULP_CLK_LPI2C7>, 387fe6291e9SJacky Bai <&pcc4 IMX8ULP_CLK_LPI2C7>; 388fe6291e9SJacky Bai clock-names = "per", "ipg"; 389fe6291e9SJacky Bai assigned-clocks = <&pcc4 IMX8ULP_CLK_LPI2C7>; 3900acd1b1cSClark Wang assigned-clock-parents = <&cgc1 IMX8ULP_CLK_FROSC_DIV2>; 391fe6291e9SJacky Bai assigned-clock-rates = <48000000>; 392fe6291e9SJacky Bai status = "disabled"; 393fe6291e9SJacky Bai }; 394fe6291e9SJacky Bai 395fe6291e9SJacky Bai lpuart6: serial@29860000 { 396fe6291e9SJacky Bai compatible = "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 397fe6291e9SJacky Bai reg = <0x29860000 0x1000>; 398fe6291e9SJacky Bai interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 399fe6291e9SJacky Bai clocks = <&pcc4 IMX8ULP_CLK_LPUART6>; 400fe6291e9SJacky Bai clock-names = "ipg"; 401fe6291e9SJacky Bai status = "disabled"; 402fe6291e9SJacky Bai }; 403fe6291e9SJacky Bai 404fe6291e9SJacky Bai lpuart7: serial@29870000 { 405fe6291e9SJacky Bai compatible = "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 406fe6291e9SJacky Bai reg = <0x29870000 0x1000>; 407fe6291e9SJacky Bai interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; 408fe6291e9SJacky Bai clocks = <&pcc4 IMX8ULP_CLK_LPUART7>; 409fe6291e9SJacky Bai clock-names = "ipg"; 410fe6291e9SJacky Bai status = "disabled"; 411fe6291e9SJacky Bai }; 412fe6291e9SJacky Bai 413fe6291e9SJacky Bai iomuxc1: pinctrl@298c0000 { 414fe6291e9SJacky Bai compatible = "fsl,imx8ulp-iomuxc1"; 415fe6291e9SJacky Bai reg = <0x298c0000 0x10000>; 416fe6291e9SJacky Bai }; 417fe6291e9SJacky Bai 418fe6291e9SJacky Bai usdhc0: mmc@298d0000 { 419fe6291e9SJacky Bai compatible = "fsl,imx8ulp-usdhc", "fsl,imx8mm-usdhc"; 420fe6291e9SJacky Bai reg = <0x298d0000 0x10000>; 421fe6291e9SJacky Bai interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>; 422fe6291e9SJacky Bai clocks = <&cgc1 IMX8ULP_CLK_XBAR_DIVBUS>, 423fe6291e9SJacky Bai <&cgc1 IMX8ULP_CLK_XBAR_AD_DIVPLAT>, 424fe6291e9SJacky Bai <&pcc4 IMX8ULP_CLK_USDHC0>; 425fe6291e9SJacky Bai clock-names = "ipg", "ahb", "per"; 42603eb813dSPeng Fan power-domains = <&scmi_devpd IMX8ULP_PD_USDHC0>; 42797803407SPeng Fan assigned-clocks = <&cgc1 IMX8ULP_CLK_SPLL3_PFD3_DIV1>, 42897803407SPeng Fan <&pcc4 IMX8ULP_CLK_USDHC0>; 42997803407SPeng Fan assigned-clock-parents = <0>, <&cgc1 IMX8ULP_CLK_SPLL3_PFD3_DIV1>; 43097803407SPeng Fan assigned-clock-rates = <389283840>, <389283840>; 431fe6291e9SJacky Bai fsl,tuning-start-tap = <20>; 432fe6291e9SJacky Bai fsl,tuning-step = <2>; 433fe6291e9SJacky Bai bus-width = <4>; 434fe6291e9SJacky Bai status = "disabled"; 435fe6291e9SJacky Bai }; 436fe6291e9SJacky Bai 437fe6291e9SJacky Bai usdhc1: mmc@298e0000 { 438fe6291e9SJacky Bai compatible = "fsl,imx8ulp-usdhc", "fsl,imx8mm-usdhc"; 439fe6291e9SJacky Bai reg = <0x298e0000 0x10000>; 440fe6291e9SJacky Bai interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>; 441fe6291e9SJacky Bai clocks = <&cgc1 IMX8ULP_CLK_XBAR_DIVBUS>, 442fe6291e9SJacky Bai <&cgc1 IMX8ULP_CLK_NIC_PER_DIVPLAT>, 443fe6291e9SJacky Bai <&pcc4 IMX8ULP_CLK_USDHC1>; 444fe6291e9SJacky Bai clock-names = "ipg", "ahb", "per"; 44503eb813dSPeng Fan power-domains = <&scmi_devpd IMX8ULP_PD_USDHC1>; 44697803407SPeng Fan assigned-clocks = <&cgc1 IMX8ULP_CLK_SPLL3_PFD3_DIV2>, 44797803407SPeng Fan <&pcc4 IMX8ULP_CLK_USDHC1>; 44897803407SPeng Fan assigned-clock-parents = <0>, <&cgc1 IMX8ULP_CLK_SPLL3_PFD3_DIV2>; 44997803407SPeng Fan assigned-clock-rates = <194641920>, <194641920>; 450fe6291e9SJacky Bai fsl,tuning-start-tap = <20>; 451fe6291e9SJacky Bai fsl,tuning-step = <2>; 452fe6291e9SJacky Bai bus-width = <4>; 453fe6291e9SJacky Bai status = "disabled"; 454fe6291e9SJacky Bai }; 455fe6291e9SJacky Bai 456fe6291e9SJacky Bai usdhc2: mmc@298f0000 { 457fe6291e9SJacky Bai compatible = "fsl,imx8ulp-usdhc", "fsl,imx8mm-usdhc"; 458fe6291e9SJacky Bai reg = <0x298f0000 0x10000>; 459fe6291e9SJacky Bai interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>; 460fe6291e9SJacky Bai clocks = <&cgc1 IMX8ULP_CLK_XBAR_DIVBUS>, 461fe6291e9SJacky Bai <&cgc1 IMX8ULP_CLK_NIC_PER_DIVPLAT>, 462fe6291e9SJacky Bai <&pcc4 IMX8ULP_CLK_USDHC2>; 463fe6291e9SJacky Bai clock-names = "ipg", "ahb", "per"; 46403eb813dSPeng Fan power-domains = <&scmi_devpd IMX8ULP_PD_USDHC2_USB1>; 46597803407SPeng Fan assigned-clocks = <&cgc1 IMX8ULP_CLK_SPLL3_PFD3_DIV2>, 46697803407SPeng Fan <&pcc4 IMX8ULP_CLK_USDHC2>; 46797803407SPeng Fan assigned-clock-parents = <0>, <&cgc1 IMX8ULP_CLK_SPLL3_PFD3_DIV2>; 46897803407SPeng Fan assigned-clock-rates = <194641920>, <194641920>; 469fe6291e9SJacky Bai fsl,tuning-start-tap = <20>; 470fe6291e9SJacky Bai fsl,tuning-step = <2>; 471fe6291e9SJacky Bai bus-width = <4>; 472fe6291e9SJacky Bai status = "disabled"; 473fe6291e9SJacky Bai }; 474683d7ffbSWei Fang 475683d7ffbSWei Fang fec: ethernet@29950000 { 476683d7ffbSWei Fang compatible = "fsl,imx8ulp-fec", "fsl,imx6ul-fec", "fsl,imx6q-fec"; 477683d7ffbSWei Fang reg = <0x29950000 0x10000>; 478683d7ffbSWei Fang interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 479683d7ffbSWei Fang interrupt-names = "int0"; 480683d7ffbSWei Fang fsl,num-tx-queues = <1>; 481683d7ffbSWei Fang fsl,num-rx-queues = <1>; 482683d7ffbSWei Fang status = "disabled"; 483683d7ffbSWei Fang }; 484fe6291e9SJacky Bai }; 485fe6291e9SJacky Bai 4860a078845SPeng Fan gpioe: gpio@2d000080 { 487fe6291e9SJacky Bai compatible = "fsl,imx8ulp-gpio", "fsl,imx7ulp-gpio"; 488fe6291e9SJacky Bai reg = <0x2d000080 0x1000>, <0x2d000040 0x40>; 489fe6291e9SJacky Bai gpio-controller; 490fe6291e9SJacky Bai #gpio-cells = <2>; 491fe6291e9SJacky Bai interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>; 492fe6291e9SJacky Bai interrupt-controller; 493fe6291e9SJacky Bai #interrupt-cells = <2>; 494fe6291e9SJacky Bai clocks = <&pcc4 IMX8ULP_CLK_RGPIOE>, 495fe6291e9SJacky Bai <&pcc4 IMX8ULP_CLK_PCTLE>; 496fe6291e9SJacky Bai clock-names = "gpio", "port"; 497fe6291e9SJacky Bai gpio-ranges = <&iomuxc1 0 32 24>; 498fe6291e9SJacky Bai }; 499fe6291e9SJacky Bai 5000a078845SPeng Fan gpiof: gpio@2d010080 { 501fe6291e9SJacky Bai compatible = "fsl,imx8ulp-gpio", "fsl,imx7ulp-gpio"; 502fe6291e9SJacky Bai reg = <0x2d010080 0x1000>, <0x2d010040 0x40>; 503fe6291e9SJacky Bai gpio-controller; 504fe6291e9SJacky Bai #gpio-cells = <2>; 505fe6291e9SJacky Bai interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>; 506fe6291e9SJacky Bai interrupt-controller; 507fe6291e9SJacky Bai #interrupt-cells = <2>; 508fe6291e9SJacky Bai clocks = <&pcc4 IMX8ULP_CLK_RGPIOF>, 509fe6291e9SJacky Bai <&pcc4 IMX8ULP_CLK_PCTLF>; 510fe6291e9SJacky Bai clock-names = "gpio", "port"; 511fe6291e9SJacky Bai gpio-ranges = <&iomuxc1 0 64 32>; 512fe6291e9SJacky Bai }; 513fe6291e9SJacky Bai 514fe6291e9SJacky Bai per_bridge5: bus@2d800000 { 515fe6291e9SJacky Bai compatible = "simple-bus"; 516fe6291e9SJacky Bai reg = <0x2d800000 0x800000>; 517fe6291e9SJacky Bai #address-cells = <1>; 518fe6291e9SJacky Bai #size-cells = <1>; 519fe6291e9SJacky Bai ranges; 520fe6291e9SJacky Bai 521fe6291e9SJacky Bai cgc2: clock-controller@2da60000 { 522fe6291e9SJacky Bai compatible = "fsl,imx8ulp-cgc2"; 523fe6291e9SJacky Bai reg = <0x2da60000 0x10000>; 524fe6291e9SJacky Bai #clock-cells = <1>; 525fe6291e9SJacky Bai }; 526fe6291e9SJacky Bai 527fe6291e9SJacky Bai pcc5: clock-controller@2da70000 { 528fe6291e9SJacky Bai compatible = "fsl,imx8ulp-pcc5"; 529fe6291e9SJacky Bai reg = <0x2da70000 0x10000>; 530fe6291e9SJacky Bai #clock-cells = <1>; 5315fa383a2SPeng Fan #reset-cells = <1>; 532fe6291e9SJacky Bai }; 533fe6291e9SJacky Bai }; 534fe6291e9SJacky Bai 5350a078845SPeng Fan gpiod: gpio@2e200080 { 536fe6291e9SJacky Bai compatible = "fsl,imx8ulp-gpio", "fsl,imx7ulp-gpio"; 537fe6291e9SJacky Bai reg = <0x2e200080 0x1000>, <0x2e200040 0x40>; 538fe6291e9SJacky Bai gpio-controller; 539fe6291e9SJacky Bai #gpio-cells = <2>; 540fe6291e9SJacky Bai interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; 541fe6291e9SJacky Bai interrupt-controller; 542fe6291e9SJacky Bai #interrupt-cells = <2>; 543fe6291e9SJacky Bai clocks = <&pcc5 IMX8ULP_CLK_RGPIOD>, 544fe6291e9SJacky Bai <&pcc5 IMX8ULP_CLK_RGPIOD>; 545fe6291e9SJacky Bai clock-names = "gpio", "port"; 546fe6291e9SJacky Bai gpio-ranges = <&iomuxc1 0 0 24>; 547fe6291e9SJacky Bai }; 548fe6291e9SJacky Bai }; 549fe6291e9SJacky Bai}; 550