18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Device Tree Include file for NXP Layerscape-1012A family SoC. 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright 2016 Freescale Semiconductor, Inc. 68c2ecf20Sopenharmony_ci * Copyright 2019-2020 NXP 78c2ecf20Sopenharmony_ci * 88c2ecf20Sopenharmony_ci */ 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h> 118c2ecf20Sopenharmony_ci#include <dt-bindings/thermal/thermal.h> 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ci/ { 148c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a"; 158c2ecf20Sopenharmony_ci interrupt-parent = <&gic>; 168c2ecf20Sopenharmony_ci #address-cells = <2>; 178c2ecf20Sopenharmony_ci #size-cells = <2>; 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci aliases { 208c2ecf20Sopenharmony_ci crypto = &crypto; 218c2ecf20Sopenharmony_ci rtc1 = &ftm_alarm0; 228c2ecf20Sopenharmony_ci rtic-a = &rtic_a; 238c2ecf20Sopenharmony_ci rtic-b = &rtic_b; 248c2ecf20Sopenharmony_ci rtic-c = &rtic_c; 258c2ecf20Sopenharmony_ci rtic-d = &rtic_d; 268c2ecf20Sopenharmony_ci sec-mon = &sec_mon; 278c2ecf20Sopenharmony_ci }; 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci cpus { 308c2ecf20Sopenharmony_ci #address-cells = <1>; 318c2ecf20Sopenharmony_ci #size-cells = <0>; 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ci cpu0: cpu@0 { 348c2ecf20Sopenharmony_ci device_type = "cpu"; 358c2ecf20Sopenharmony_ci compatible = "arm,cortex-a53"; 368c2ecf20Sopenharmony_ci reg = <0x0>; 378c2ecf20Sopenharmony_ci clocks = <&clockgen 1 0>; 388c2ecf20Sopenharmony_ci #cooling-cells = <2>; 398c2ecf20Sopenharmony_ci cpu-idle-states = <&CPU_PH20>; 408c2ecf20Sopenharmony_ci }; 418c2ecf20Sopenharmony_ci }; 428c2ecf20Sopenharmony_ci 438c2ecf20Sopenharmony_ci idle-states { 448c2ecf20Sopenharmony_ci /* 458c2ecf20Sopenharmony_ci * PSCI node is not added default, U-boot will add missing 468c2ecf20Sopenharmony_ci * parts if it determines to use PSCI. 478c2ecf20Sopenharmony_ci */ 488c2ecf20Sopenharmony_ci entry-method = "psci"; 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci CPU_PH20: cpu-ph20 { 518c2ecf20Sopenharmony_ci compatible = "arm,idle-state"; 528c2ecf20Sopenharmony_ci idle-state-name = "PH20"; 538c2ecf20Sopenharmony_ci arm,psci-suspend-param = <0x0>; 548c2ecf20Sopenharmony_ci entry-latency-us = <1000>; 558c2ecf20Sopenharmony_ci exit-latency-us = <1000>; 568c2ecf20Sopenharmony_ci min-residency-us = <3000>; 578c2ecf20Sopenharmony_ci }; 588c2ecf20Sopenharmony_ci }; 598c2ecf20Sopenharmony_ci 608c2ecf20Sopenharmony_ci sysclk: sysclk { 618c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 628c2ecf20Sopenharmony_ci #clock-cells = <0>; 638c2ecf20Sopenharmony_ci clock-frequency = <125000000>; 648c2ecf20Sopenharmony_ci clock-output-names = "sysclk"; 658c2ecf20Sopenharmony_ci }; 668c2ecf20Sopenharmony_ci 678c2ecf20Sopenharmony_ci coreclk: coreclk { 688c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 698c2ecf20Sopenharmony_ci #clock-cells = <0>; 708c2ecf20Sopenharmony_ci clock-frequency = <100000000>; 718c2ecf20Sopenharmony_ci clock-output-names = "coreclk"; 728c2ecf20Sopenharmony_ci }; 738c2ecf20Sopenharmony_ci 748c2ecf20Sopenharmony_ci timer { 758c2ecf20Sopenharmony_ci compatible = "arm,armv8-timer"; 768c2ecf20Sopenharmony_ci interrupts = <1 13 IRQ_TYPE_LEVEL_LOW>,/* Physical Secure PPI */ 778c2ecf20Sopenharmony_ci <1 14 IRQ_TYPE_LEVEL_LOW>,/* Physical Non-Secure PPI */ 788c2ecf20Sopenharmony_ci <1 11 IRQ_TYPE_LEVEL_LOW>,/* Virtual PPI */ 798c2ecf20Sopenharmony_ci <1 10 IRQ_TYPE_LEVEL_LOW>;/* Hypervisor PPI */ 808c2ecf20Sopenharmony_ci }; 818c2ecf20Sopenharmony_ci 828c2ecf20Sopenharmony_ci pmu { 838c2ecf20Sopenharmony_ci compatible = "arm,armv8-pmuv3"; 848c2ecf20Sopenharmony_ci interrupts = <0 106 IRQ_TYPE_LEVEL_HIGH>; 858c2ecf20Sopenharmony_ci }; 868c2ecf20Sopenharmony_ci 878c2ecf20Sopenharmony_ci gic: interrupt-controller@1400000 { 888c2ecf20Sopenharmony_ci compatible = "arm,gic-400"; 898c2ecf20Sopenharmony_ci #interrupt-cells = <3>; 908c2ecf20Sopenharmony_ci interrupt-controller; 918c2ecf20Sopenharmony_ci reg = <0x0 0x1401000 0 0x1000>, /* GICD */ 928c2ecf20Sopenharmony_ci <0x0 0x1402000 0 0x2000>, /* GICC */ 938c2ecf20Sopenharmony_ci <0x0 0x1404000 0 0x2000>, /* GICH */ 948c2ecf20Sopenharmony_ci <0x0 0x1406000 0 0x2000>; /* GICV */ 958c2ecf20Sopenharmony_ci interrupts = <1 9 IRQ_TYPE_LEVEL_LOW>; 968c2ecf20Sopenharmony_ci }; 978c2ecf20Sopenharmony_ci 988c2ecf20Sopenharmony_ci reboot { 998c2ecf20Sopenharmony_ci compatible = "syscon-reboot"; 1008c2ecf20Sopenharmony_ci regmap = <&dcfg>; 1018c2ecf20Sopenharmony_ci offset = <0xb0>; 1028c2ecf20Sopenharmony_ci mask = <0x02>; 1038c2ecf20Sopenharmony_ci }; 1048c2ecf20Sopenharmony_ci 1058c2ecf20Sopenharmony_ci thermal-zones { 1068c2ecf20Sopenharmony_ci cpu_thermal: cpu-thermal { 1078c2ecf20Sopenharmony_ci polling-delay-passive = <1000>; 1088c2ecf20Sopenharmony_ci polling-delay = <5000>; 1098c2ecf20Sopenharmony_ci thermal-sensors = <&tmu 0>; 1108c2ecf20Sopenharmony_ci 1118c2ecf20Sopenharmony_ci trips { 1128c2ecf20Sopenharmony_ci cpu_alert: cpu-alert { 1138c2ecf20Sopenharmony_ci temperature = <85000>; 1148c2ecf20Sopenharmony_ci hysteresis = <2000>; 1158c2ecf20Sopenharmony_ci type = "passive"; 1168c2ecf20Sopenharmony_ci }; 1178c2ecf20Sopenharmony_ci 1188c2ecf20Sopenharmony_ci cpu_crit: cpu-crit { 1198c2ecf20Sopenharmony_ci temperature = <95000>; 1208c2ecf20Sopenharmony_ci hysteresis = <2000>; 1218c2ecf20Sopenharmony_ci type = "critical"; 1228c2ecf20Sopenharmony_ci }; 1238c2ecf20Sopenharmony_ci }; 1248c2ecf20Sopenharmony_ci 1258c2ecf20Sopenharmony_ci cooling-maps { 1268c2ecf20Sopenharmony_ci map0 { 1278c2ecf20Sopenharmony_ci trip = <&cpu_alert>; 1288c2ecf20Sopenharmony_ci cooling-device = 1298c2ecf20Sopenharmony_ci <&cpu0 THERMAL_NO_LIMIT 1308c2ecf20Sopenharmony_ci THERMAL_NO_LIMIT>; 1318c2ecf20Sopenharmony_ci }; 1328c2ecf20Sopenharmony_ci }; 1338c2ecf20Sopenharmony_ci }; 1348c2ecf20Sopenharmony_ci }; 1358c2ecf20Sopenharmony_ci 1368c2ecf20Sopenharmony_ci soc { 1378c2ecf20Sopenharmony_ci compatible = "simple-bus"; 1388c2ecf20Sopenharmony_ci #address-cells = <2>; 1398c2ecf20Sopenharmony_ci #size-cells = <2>; 1408c2ecf20Sopenharmony_ci ranges; 1418c2ecf20Sopenharmony_ci 1428c2ecf20Sopenharmony_ci qspi: spi@1550000 { 1438c2ecf20Sopenharmony_ci compatible = "fsl,ls1021a-qspi"; 1448c2ecf20Sopenharmony_ci #address-cells = <1>; 1458c2ecf20Sopenharmony_ci #size-cells = <0>; 1468c2ecf20Sopenharmony_ci reg = <0x0 0x1550000 0x0 0x10000>, 1478c2ecf20Sopenharmony_ci <0x0 0x40000000 0x0 0x10000000>; 1488c2ecf20Sopenharmony_ci reg-names = "QuadSPI", "QuadSPI-memory"; 1498c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 1508c2ecf20Sopenharmony_ci clock-names = "qspi_en", "qspi"; 1518c2ecf20Sopenharmony_ci clocks = <&clockgen 4 0>, <&clockgen 4 0>; 1528c2ecf20Sopenharmony_ci status = "disabled"; 1538c2ecf20Sopenharmony_ci }; 1548c2ecf20Sopenharmony_ci 1558c2ecf20Sopenharmony_ci esdhc0: esdhc@1560000 { 1568c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a-esdhc", "fsl,esdhc"; 1578c2ecf20Sopenharmony_ci reg = <0x0 0x1560000 0x0 0x10000>; 1588c2ecf20Sopenharmony_ci interrupts = <0 62 0x4>; 1598c2ecf20Sopenharmony_ci clocks = <&clockgen 4 0>; 1608c2ecf20Sopenharmony_ci voltage-ranges = <1800 1800 3300 3300>; 1618c2ecf20Sopenharmony_ci sdhci,auto-cmd12; 1628c2ecf20Sopenharmony_ci big-endian; 1638c2ecf20Sopenharmony_ci bus-width = <4>; 1648c2ecf20Sopenharmony_ci status = "disabled"; 1658c2ecf20Sopenharmony_ci }; 1668c2ecf20Sopenharmony_ci 1678c2ecf20Sopenharmony_ci scfg: scfg@1570000 { 1688c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a-scfg", "syscon"; 1698c2ecf20Sopenharmony_ci reg = <0x0 0x1570000 0x0 0x10000>; 1708c2ecf20Sopenharmony_ci big-endian; 1718c2ecf20Sopenharmony_ci }; 1728c2ecf20Sopenharmony_ci 1738c2ecf20Sopenharmony_ci esdhc1: esdhc@1580000 { 1748c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a-esdhc", "fsl,esdhc"; 1758c2ecf20Sopenharmony_ci reg = <0x0 0x1580000 0x0 0x10000>; 1768c2ecf20Sopenharmony_ci interrupts = <0 65 0x4>; 1778c2ecf20Sopenharmony_ci clocks = <&clockgen 4 0>; 1788c2ecf20Sopenharmony_ci voltage-ranges = <1800 1800 3300 3300>; 1798c2ecf20Sopenharmony_ci sdhci,auto-cmd12; 1808c2ecf20Sopenharmony_ci big-endian; 1818c2ecf20Sopenharmony_ci broken-cd; 1828c2ecf20Sopenharmony_ci bus-width = <4>; 1838c2ecf20Sopenharmony_ci status = "disabled"; 1848c2ecf20Sopenharmony_ci }; 1858c2ecf20Sopenharmony_ci 1868c2ecf20Sopenharmony_ci crypto: crypto@1700000 { 1878c2ecf20Sopenharmony_ci compatible = "fsl,sec-v5.4", "fsl,sec-v5.0", 1888c2ecf20Sopenharmony_ci "fsl,sec-v4.0"; 1898c2ecf20Sopenharmony_ci fsl,sec-era = <8>; 1908c2ecf20Sopenharmony_ci #address-cells = <1>; 1918c2ecf20Sopenharmony_ci #size-cells = <1>; 1928c2ecf20Sopenharmony_ci ranges = <0x0 0x00 0x1700000 0x100000>; 1938c2ecf20Sopenharmony_ci reg = <0x00 0x1700000 0x0 0x100000>; 1948c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 1958c2ecf20Sopenharmony_ci dma-coherent; 1968c2ecf20Sopenharmony_ci 1978c2ecf20Sopenharmony_ci sec_jr0: jr@10000 { 1988c2ecf20Sopenharmony_ci compatible = "fsl,sec-v5.4-job-ring", 1998c2ecf20Sopenharmony_ci "fsl,sec-v5.0-job-ring", 2008c2ecf20Sopenharmony_ci "fsl,sec-v4.0-job-ring"; 2018c2ecf20Sopenharmony_ci reg = <0x10000 0x10000>; 2028c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 2038c2ecf20Sopenharmony_ci }; 2048c2ecf20Sopenharmony_ci 2058c2ecf20Sopenharmony_ci sec_jr1: jr@20000 { 2068c2ecf20Sopenharmony_ci compatible = "fsl,sec-v5.4-job-ring", 2078c2ecf20Sopenharmony_ci "fsl,sec-v5.0-job-ring", 2088c2ecf20Sopenharmony_ci "fsl,sec-v4.0-job-ring"; 2098c2ecf20Sopenharmony_ci reg = <0x20000 0x10000>; 2108c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; 2118c2ecf20Sopenharmony_ci }; 2128c2ecf20Sopenharmony_ci 2138c2ecf20Sopenharmony_ci sec_jr2: jr@30000 { 2148c2ecf20Sopenharmony_ci compatible = "fsl,sec-v5.4-job-ring", 2158c2ecf20Sopenharmony_ci "fsl,sec-v5.0-job-ring", 2168c2ecf20Sopenharmony_ci "fsl,sec-v4.0-job-ring"; 2178c2ecf20Sopenharmony_ci reg = <0x30000 0x10000>; 2188c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 2198c2ecf20Sopenharmony_ci }; 2208c2ecf20Sopenharmony_ci 2218c2ecf20Sopenharmony_ci sec_jr3: jr@40000 { 2228c2ecf20Sopenharmony_ci compatible = "fsl,sec-v5.4-job-ring", 2238c2ecf20Sopenharmony_ci "fsl,sec-v5.0-job-ring", 2248c2ecf20Sopenharmony_ci "fsl,sec-v4.0-job-ring"; 2258c2ecf20Sopenharmony_ci reg = <0x40000 0x10000>; 2268c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 2278c2ecf20Sopenharmony_ci }; 2288c2ecf20Sopenharmony_ci 2298c2ecf20Sopenharmony_ci rtic@60000 { 2308c2ecf20Sopenharmony_ci compatible = "fsl,sec-v5.4-rtic", 2318c2ecf20Sopenharmony_ci "fsl,sec-v5.0-rtic", 2328c2ecf20Sopenharmony_ci "fsl,sec-v4.0-rtic"; 2338c2ecf20Sopenharmony_ci #address-cells = <1>; 2348c2ecf20Sopenharmony_ci #size-cells = <1>; 2358c2ecf20Sopenharmony_ci reg = <0x60000 0x100 0x60e00 0x18>; 2368c2ecf20Sopenharmony_ci ranges = <0x0 0x60100 0x500>; 2378c2ecf20Sopenharmony_ci 2388c2ecf20Sopenharmony_ci rtic_a: rtic-a@0 { 2398c2ecf20Sopenharmony_ci compatible = "fsl,sec-v5.4-rtic-memory", 2408c2ecf20Sopenharmony_ci "fsl,sec-v5.0-rtic-memory", 2418c2ecf20Sopenharmony_ci "fsl,sec-v4.0-rtic-memory"; 2428c2ecf20Sopenharmony_ci reg = <0x00 0x20 0x100 0x100>; 2438c2ecf20Sopenharmony_ci }; 2448c2ecf20Sopenharmony_ci 2458c2ecf20Sopenharmony_ci rtic_b: rtic-b@20 { 2468c2ecf20Sopenharmony_ci compatible = "fsl,sec-v5.4-rtic-memory", 2478c2ecf20Sopenharmony_ci "fsl,sec-v5.0-rtic-memory", 2488c2ecf20Sopenharmony_ci "fsl,sec-v4.0-rtic-memory"; 2498c2ecf20Sopenharmony_ci reg = <0x20 0x20 0x200 0x100>; 2508c2ecf20Sopenharmony_ci }; 2518c2ecf20Sopenharmony_ci 2528c2ecf20Sopenharmony_ci rtic_c: rtic-c@40 { 2538c2ecf20Sopenharmony_ci compatible = "fsl,sec-v5.4-rtic-memory", 2548c2ecf20Sopenharmony_ci "fsl,sec-v5.0-rtic-memory", 2558c2ecf20Sopenharmony_ci "fsl,sec-v4.0-rtic-memory"; 2568c2ecf20Sopenharmony_ci reg = <0x40 0x20 0x300 0x100>; 2578c2ecf20Sopenharmony_ci }; 2588c2ecf20Sopenharmony_ci 2598c2ecf20Sopenharmony_ci rtic_d: rtic-d@60 { 2608c2ecf20Sopenharmony_ci compatible = "fsl,sec-v5.4-rtic-memory", 2618c2ecf20Sopenharmony_ci "fsl,sec-v5.0-rtic-memory", 2628c2ecf20Sopenharmony_ci "fsl,sec-v4.0-rtic-memory"; 2638c2ecf20Sopenharmony_ci reg = <0x60 0x20 0x400 0x100>; 2648c2ecf20Sopenharmony_ci }; 2658c2ecf20Sopenharmony_ci }; 2668c2ecf20Sopenharmony_ci }; 2678c2ecf20Sopenharmony_ci 2688c2ecf20Sopenharmony_ci sec_mon: sec_mon@1e90000 { 2698c2ecf20Sopenharmony_ci compatible = "fsl,sec-v5.4-mon", "fsl,sec-v5.0-mon", 2708c2ecf20Sopenharmony_ci "fsl,sec-v4.0-mon"; 2718c2ecf20Sopenharmony_ci reg = <0x0 0x1e90000 0x0 0x10000>; 2728c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>, 2738c2ecf20Sopenharmony_ci <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 2748c2ecf20Sopenharmony_ci }; 2758c2ecf20Sopenharmony_ci 2768c2ecf20Sopenharmony_ci dcfg: dcfg@1ee0000 { 2778c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a-dcfg", 2788c2ecf20Sopenharmony_ci "syscon"; 2798c2ecf20Sopenharmony_ci reg = <0x0 0x1ee0000 0x0 0x10000>; 2808c2ecf20Sopenharmony_ci big-endian; 2818c2ecf20Sopenharmony_ci }; 2828c2ecf20Sopenharmony_ci 2838c2ecf20Sopenharmony_ci clockgen: clocking@1ee1000 { 2848c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a-clockgen"; 2858c2ecf20Sopenharmony_ci reg = <0x0 0x1ee1000 0x0 0x1000>; 2868c2ecf20Sopenharmony_ci #clock-cells = <2>; 2878c2ecf20Sopenharmony_ci clocks = <&sysclk &coreclk>; 2888c2ecf20Sopenharmony_ci clock-names = "sysclk", "coreclk"; 2898c2ecf20Sopenharmony_ci }; 2908c2ecf20Sopenharmony_ci 2918c2ecf20Sopenharmony_ci tmu: tmu@1f00000 { 2928c2ecf20Sopenharmony_ci compatible = "fsl,qoriq-tmu"; 2938c2ecf20Sopenharmony_ci reg = <0x0 0x1f00000 0x0 0x10000>; 2948c2ecf20Sopenharmony_ci interrupts = <0 33 0x4>; 2958c2ecf20Sopenharmony_ci fsl,tmu-range = <0xb0000 0x9002a 0x6004c 0x30062>; 2968c2ecf20Sopenharmony_ci fsl,tmu-calibration = <0x00000000 0x00000026 2978c2ecf20Sopenharmony_ci 0x00000001 0x0000002d 2988c2ecf20Sopenharmony_ci 0x00000002 0x00000032 2998c2ecf20Sopenharmony_ci 0x00000003 0x00000039 3008c2ecf20Sopenharmony_ci 0x00000004 0x0000003f 3018c2ecf20Sopenharmony_ci 0x00000005 0x00000046 3028c2ecf20Sopenharmony_ci 0x00000006 0x0000004d 3038c2ecf20Sopenharmony_ci 0x00000007 0x00000054 3048c2ecf20Sopenharmony_ci 0x00000008 0x0000005a 3058c2ecf20Sopenharmony_ci 0x00000009 0x00000061 3068c2ecf20Sopenharmony_ci 0x0000000a 0x0000006a 3078c2ecf20Sopenharmony_ci 0x0000000b 0x00000071 3088c2ecf20Sopenharmony_ci 3098c2ecf20Sopenharmony_ci 0x00010000 0x00000025 3108c2ecf20Sopenharmony_ci 0x00010001 0x0000002c 3118c2ecf20Sopenharmony_ci 0x00010002 0x00000035 3128c2ecf20Sopenharmony_ci 0x00010003 0x0000003d 3138c2ecf20Sopenharmony_ci 0x00010004 0x00000045 3148c2ecf20Sopenharmony_ci 0x00010005 0x0000004e 3158c2ecf20Sopenharmony_ci 0x00010006 0x00000057 3168c2ecf20Sopenharmony_ci 0x00010007 0x00000061 3178c2ecf20Sopenharmony_ci 0x00010008 0x0000006b 3188c2ecf20Sopenharmony_ci 0x00010009 0x00000076 3198c2ecf20Sopenharmony_ci 3208c2ecf20Sopenharmony_ci 0x00020000 0x00000029 3218c2ecf20Sopenharmony_ci 0x00020001 0x00000033 3228c2ecf20Sopenharmony_ci 0x00020002 0x0000003d 3238c2ecf20Sopenharmony_ci 0x00020003 0x00000049 3248c2ecf20Sopenharmony_ci 0x00020004 0x00000056 3258c2ecf20Sopenharmony_ci 0x00020005 0x00000061 3268c2ecf20Sopenharmony_ci 0x00020006 0x0000006d 3278c2ecf20Sopenharmony_ci 3288c2ecf20Sopenharmony_ci 0x00030000 0x00000021 3298c2ecf20Sopenharmony_ci 0x00030001 0x0000002a 3308c2ecf20Sopenharmony_ci 0x00030002 0x0000003c 3318c2ecf20Sopenharmony_ci 0x00030003 0x0000004e>; 3328c2ecf20Sopenharmony_ci big-endian; 3338c2ecf20Sopenharmony_ci #thermal-sensor-cells = <1>; 3348c2ecf20Sopenharmony_ci }; 3358c2ecf20Sopenharmony_ci 3368c2ecf20Sopenharmony_ci i2c0: i2c@2180000 { 3378c2ecf20Sopenharmony_ci compatible = "fsl,vf610-i2c"; 3388c2ecf20Sopenharmony_ci #address-cells = <1>; 3398c2ecf20Sopenharmony_ci #size-cells = <0>; 3408c2ecf20Sopenharmony_ci reg = <0x0 0x2180000 0x0 0x10000>; 3418c2ecf20Sopenharmony_ci interrupts = <0 56 IRQ_TYPE_LEVEL_HIGH>; 3428c2ecf20Sopenharmony_ci clocks = <&clockgen 4 3>; 3438c2ecf20Sopenharmony_ci status = "disabled"; 3448c2ecf20Sopenharmony_ci }; 3458c2ecf20Sopenharmony_ci 3468c2ecf20Sopenharmony_ci i2c1: i2c@2190000 { 3478c2ecf20Sopenharmony_ci compatible = "fsl,vf610-i2c"; 3488c2ecf20Sopenharmony_ci #address-cells = <1>; 3498c2ecf20Sopenharmony_ci #size-cells = <0>; 3508c2ecf20Sopenharmony_ci reg = <0x0 0x2190000 0x0 0x10000>; 3518c2ecf20Sopenharmony_ci interrupts = <0 57 IRQ_TYPE_LEVEL_HIGH>; 3528c2ecf20Sopenharmony_ci clocks = <&clockgen 4 3>; 3538c2ecf20Sopenharmony_ci status = "disabled"; 3548c2ecf20Sopenharmony_ci }; 3558c2ecf20Sopenharmony_ci 3568c2ecf20Sopenharmony_ci dspi: spi@2100000 { 3578c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a-dspi", "fsl,ls1021a-v1.0-dspi"; 3588c2ecf20Sopenharmony_ci #address-cells = <1>; 3598c2ecf20Sopenharmony_ci #size-cells = <0>; 3608c2ecf20Sopenharmony_ci reg = <0x0 0x2100000 0x0 0x10000>; 3618c2ecf20Sopenharmony_ci interrupts = <0 64 IRQ_TYPE_LEVEL_HIGH>; 3628c2ecf20Sopenharmony_ci clock-names = "dspi"; 3638c2ecf20Sopenharmony_ci clocks = <&clockgen 4 0>; 3648c2ecf20Sopenharmony_ci spi-num-chipselects = <5>; 3658c2ecf20Sopenharmony_ci big-endian; 3668c2ecf20Sopenharmony_ci status = "disabled"; 3678c2ecf20Sopenharmony_ci }; 3688c2ecf20Sopenharmony_ci 3698c2ecf20Sopenharmony_ci duart0: serial@21c0500 { 3708c2ecf20Sopenharmony_ci compatible = "fsl,ns16550", "ns16550a"; 3718c2ecf20Sopenharmony_ci reg = <0x00 0x21c0500 0x0 0x100>; 3728c2ecf20Sopenharmony_ci interrupts = <0 54 IRQ_TYPE_LEVEL_HIGH>; 3738c2ecf20Sopenharmony_ci clocks = <&clockgen 4 0>; 3748c2ecf20Sopenharmony_ci status = "disabled"; 3758c2ecf20Sopenharmony_ci }; 3768c2ecf20Sopenharmony_ci 3778c2ecf20Sopenharmony_ci duart1: serial@21c0600 { 3788c2ecf20Sopenharmony_ci compatible = "fsl,ns16550", "ns16550a"; 3798c2ecf20Sopenharmony_ci reg = <0x00 0x21c0600 0x0 0x100>; 3808c2ecf20Sopenharmony_ci interrupts = <0 54 IRQ_TYPE_LEVEL_HIGH>; 3818c2ecf20Sopenharmony_ci clocks = <&clockgen 4 0>; 3828c2ecf20Sopenharmony_ci status = "disabled"; 3838c2ecf20Sopenharmony_ci }; 3848c2ecf20Sopenharmony_ci 3858c2ecf20Sopenharmony_ci gpio0: gpio@2300000 { 3868c2ecf20Sopenharmony_ci compatible = "fsl,qoriq-gpio"; 3878c2ecf20Sopenharmony_ci reg = <0x0 0x2300000 0x0 0x10000>; 3888c2ecf20Sopenharmony_ci interrupts = <0 66 IRQ_TYPE_LEVEL_HIGH>; 3898c2ecf20Sopenharmony_ci gpio-controller; 3908c2ecf20Sopenharmony_ci #gpio-cells = <2>; 3918c2ecf20Sopenharmony_ci interrupt-controller; 3928c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 3938c2ecf20Sopenharmony_ci }; 3948c2ecf20Sopenharmony_ci 3958c2ecf20Sopenharmony_ci gpio1: gpio@2310000 { 3968c2ecf20Sopenharmony_ci compatible = "fsl,qoriq-gpio"; 3978c2ecf20Sopenharmony_ci reg = <0x0 0x2310000 0x0 0x10000>; 3988c2ecf20Sopenharmony_ci interrupts = <0 67 IRQ_TYPE_LEVEL_HIGH>; 3998c2ecf20Sopenharmony_ci gpio-controller; 4008c2ecf20Sopenharmony_ci #gpio-cells = <2>; 4018c2ecf20Sopenharmony_ci interrupt-controller; 4028c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 4038c2ecf20Sopenharmony_ci }; 4048c2ecf20Sopenharmony_ci 4058c2ecf20Sopenharmony_ci wdog0: wdog@2ad0000 { 4068c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a-wdt", 4078c2ecf20Sopenharmony_ci "fsl,imx21-wdt"; 4088c2ecf20Sopenharmony_ci reg = <0x0 0x2ad0000 0x0 0x10000>; 4098c2ecf20Sopenharmony_ci interrupts = <0 83 IRQ_TYPE_LEVEL_HIGH>; 4108c2ecf20Sopenharmony_ci clocks = <&clockgen 4 0>; 4118c2ecf20Sopenharmony_ci big-endian; 4128c2ecf20Sopenharmony_ci }; 4138c2ecf20Sopenharmony_ci 4148c2ecf20Sopenharmony_ci sai1: sai@2b50000 { 4158c2ecf20Sopenharmony_ci #sound-dai-cells = <0>; 4168c2ecf20Sopenharmony_ci compatible = "fsl,vf610-sai"; 4178c2ecf20Sopenharmony_ci reg = <0x0 0x2b50000 0x0 0x10000>; 4188c2ecf20Sopenharmony_ci interrupts = <0 148 IRQ_TYPE_LEVEL_HIGH>; 4198c2ecf20Sopenharmony_ci clocks = <&clockgen 4 3>, <&clockgen 4 3>, 4208c2ecf20Sopenharmony_ci <&clockgen 4 3>, <&clockgen 4 3>; 4218c2ecf20Sopenharmony_ci clock-names = "bus", "mclk1", "mclk2", "mclk3"; 4228c2ecf20Sopenharmony_ci dma-names = "tx", "rx"; 4238c2ecf20Sopenharmony_ci dmas = <&edma0 1 47>, 4248c2ecf20Sopenharmony_ci <&edma0 1 46>; 4258c2ecf20Sopenharmony_ci status = "disabled"; 4268c2ecf20Sopenharmony_ci }; 4278c2ecf20Sopenharmony_ci 4288c2ecf20Sopenharmony_ci sai2: sai@2b60000 { 4298c2ecf20Sopenharmony_ci #sound-dai-cells = <0>; 4308c2ecf20Sopenharmony_ci compatible = "fsl,vf610-sai"; 4318c2ecf20Sopenharmony_ci reg = <0x0 0x2b60000 0x0 0x10000>; 4328c2ecf20Sopenharmony_ci interrupts = <0 149 IRQ_TYPE_LEVEL_HIGH>; 4338c2ecf20Sopenharmony_ci clocks = <&clockgen 4 3>, <&clockgen 4 3>, 4348c2ecf20Sopenharmony_ci <&clockgen 4 3>, <&clockgen 4 3>; 4358c2ecf20Sopenharmony_ci clock-names = "bus", "mclk1", "mclk2", "mclk3"; 4368c2ecf20Sopenharmony_ci dma-names = "tx", "rx"; 4378c2ecf20Sopenharmony_ci dmas = <&edma0 1 45>, 4388c2ecf20Sopenharmony_ci <&edma0 1 44>; 4398c2ecf20Sopenharmony_ci status = "disabled"; 4408c2ecf20Sopenharmony_ci }; 4418c2ecf20Sopenharmony_ci 4428c2ecf20Sopenharmony_ci edma0: edma@2c00000 { 4438c2ecf20Sopenharmony_ci #dma-cells = <2>; 4448c2ecf20Sopenharmony_ci compatible = "fsl,vf610-edma"; 4458c2ecf20Sopenharmony_ci reg = <0x0 0x2c00000 0x0 0x10000>, 4468c2ecf20Sopenharmony_ci <0x0 0x2c10000 0x0 0x10000>, 4478c2ecf20Sopenharmony_ci <0x0 0x2c20000 0x0 0x10000>; 4488c2ecf20Sopenharmony_ci interrupts = <0 103 IRQ_TYPE_LEVEL_HIGH>, 4498c2ecf20Sopenharmony_ci <0 103 IRQ_TYPE_LEVEL_HIGH>; 4508c2ecf20Sopenharmony_ci interrupt-names = "edma-tx", "edma-err"; 4518c2ecf20Sopenharmony_ci dma-channels = <32>; 4528c2ecf20Sopenharmony_ci big-endian; 4538c2ecf20Sopenharmony_ci clock-names = "dmamux0", "dmamux1"; 4548c2ecf20Sopenharmony_ci clocks = <&clockgen 4 3>, 4558c2ecf20Sopenharmony_ci <&clockgen 4 3>; 4568c2ecf20Sopenharmony_ci }; 4578c2ecf20Sopenharmony_ci 4588c2ecf20Sopenharmony_ci usb0: usb3@2f00000 { 4598c2ecf20Sopenharmony_ci compatible = "snps,dwc3"; 4608c2ecf20Sopenharmony_ci reg = <0x0 0x2f00000 0x0 0x10000>; 4618c2ecf20Sopenharmony_ci interrupts = <0 60 0x4>; 4628c2ecf20Sopenharmony_ci dr_mode = "host"; 4638c2ecf20Sopenharmony_ci snps,quirk-frame-length-adjustment = <0x20>; 4648c2ecf20Sopenharmony_ci snps,dis_rxdet_inp3_quirk; 4658c2ecf20Sopenharmony_ci snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; 4668c2ecf20Sopenharmony_ci }; 4678c2ecf20Sopenharmony_ci 4688c2ecf20Sopenharmony_ci sata: sata@3200000 { 4698c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a-ahci", "fsl,ls1043a-ahci"; 4708c2ecf20Sopenharmony_ci reg = <0x0 0x3200000 0x0 0x10000>, 4718c2ecf20Sopenharmony_ci <0x0 0x20140520 0x0 0x4>; 4728c2ecf20Sopenharmony_ci reg-names = "ahci", "sata-ecc"; 4738c2ecf20Sopenharmony_ci interrupts = <0 69 IRQ_TYPE_LEVEL_HIGH>; 4748c2ecf20Sopenharmony_ci clocks = <&clockgen 4 0>; 4758c2ecf20Sopenharmony_ci dma-coherent; 4768c2ecf20Sopenharmony_ci status = "disabled"; 4778c2ecf20Sopenharmony_ci }; 4788c2ecf20Sopenharmony_ci 4798c2ecf20Sopenharmony_ci usb1: usb2@8600000 { 4808c2ecf20Sopenharmony_ci compatible = "fsl-usb2-dr-v2.5", "fsl-usb2-dr"; 4818c2ecf20Sopenharmony_ci reg = <0x0 0x8600000 0x0 0x1000>; 4828c2ecf20Sopenharmony_ci interrupts = <0 139 0x4>; 4838c2ecf20Sopenharmony_ci dr_mode = "host"; 4848c2ecf20Sopenharmony_ci phy_type = "ulpi"; 4858c2ecf20Sopenharmony_ci }; 4868c2ecf20Sopenharmony_ci 4878c2ecf20Sopenharmony_ci msi: msi-controller1@1572000 { 4888c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a-msi"; 4898c2ecf20Sopenharmony_ci reg = <0x0 0x1572000 0x0 0x8>; 4908c2ecf20Sopenharmony_ci msi-controller; 4918c2ecf20Sopenharmony_ci interrupts = <0 126 IRQ_TYPE_LEVEL_HIGH>; 4928c2ecf20Sopenharmony_ci }; 4938c2ecf20Sopenharmony_ci 4948c2ecf20Sopenharmony_ci pcie1: pcie@3400000 { 4958c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a-pcie"; 4968c2ecf20Sopenharmony_ci reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */ 4978c2ecf20Sopenharmony_ci 0x40 0x00000000 0x0 0x00002000>; /* configuration space */ 4988c2ecf20Sopenharmony_ci reg-names = "regs", "config"; 4998c2ecf20Sopenharmony_ci interrupts = <0 118 0x4>, /* controller interrupt */ 5008c2ecf20Sopenharmony_ci <0 117 0x4>; /* PME interrupt */ 5018c2ecf20Sopenharmony_ci interrupt-names = "aer", "pme"; 5028c2ecf20Sopenharmony_ci #address-cells = <3>; 5038c2ecf20Sopenharmony_ci #size-cells = <2>; 5048c2ecf20Sopenharmony_ci device_type = "pci"; 5058c2ecf20Sopenharmony_ci num-viewport = <2>; 5068c2ecf20Sopenharmony_ci bus-range = <0x0 0xff>; 5078c2ecf20Sopenharmony_ci ranges = <0x81000000 0x0 0x00000000 0x40 0x00010000 0x0 0x00010000 /* downstream I/O */ 5088c2ecf20Sopenharmony_ci 0x82000000 0x0 0x40000000 0x40 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */ 5098c2ecf20Sopenharmony_ci msi-parent = <&msi>; 5108c2ecf20Sopenharmony_ci #interrupt-cells = <1>; 5118c2ecf20Sopenharmony_ci interrupt-map-mask = <0 0 0 7>; 5128c2ecf20Sopenharmony_ci interrupt-map = <0000 0 0 1 &gic 0 110 IRQ_TYPE_LEVEL_HIGH>, 5138c2ecf20Sopenharmony_ci <0000 0 0 2 &gic 0 111 IRQ_TYPE_LEVEL_HIGH>, 5148c2ecf20Sopenharmony_ci <0000 0 0 3 &gic 0 112 IRQ_TYPE_LEVEL_HIGH>, 5158c2ecf20Sopenharmony_ci <0000 0 0 4 &gic 0 113 IRQ_TYPE_LEVEL_HIGH>; 5168c2ecf20Sopenharmony_ci status = "disabled"; 5178c2ecf20Sopenharmony_ci }; 5188c2ecf20Sopenharmony_ci 5198c2ecf20Sopenharmony_ci rcpm: power-controller@1ee2140 { 5208c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a-rcpm", "fsl,qoriq-rcpm-2.1+"; 5218c2ecf20Sopenharmony_ci reg = <0x0 0x1ee2140 0x0 0x4>; 5228c2ecf20Sopenharmony_ci #fsl,rcpm-wakeup-cells = <1>; 5238c2ecf20Sopenharmony_ci }; 5248c2ecf20Sopenharmony_ci 5258c2ecf20Sopenharmony_ci ftm_alarm0: timer@29d0000 { 5268c2ecf20Sopenharmony_ci compatible = "fsl,ls1012a-ftm-alarm"; 5278c2ecf20Sopenharmony_ci reg = <0x0 0x29d0000 0x0 0x10000>; 5288c2ecf20Sopenharmony_ci fsl,rcpm-wakeup = <&rcpm 0x20000>; 5298c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 5308c2ecf20Sopenharmony_ci big-endian; 5318c2ecf20Sopenharmony_ci }; 5328c2ecf20Sopenharmony_ci }; 5338c2ecf20Sopenharmony_ci 5348c2ecf20Sopenharmony_ci firmware { 5358c2ecf20Sopenharmony_ci optee { 5368c2ecf20Sopenharmony_ci compatible = "linaro,optee-tz"; 5378c2ecf20Sopenharmony_ci method = "smc"; 5388c2ecf20Sopenharmony_ci }; 5398c2ecf20Sopenharmony_ci }; 5408c2ecf20Sopenharmony_ci}; 541