17d2d16ccSHector Martin// SPDX-License-Identifier: GPL-2.0+ OR MIT 27d2d16ccSHector Martin/* 37d2d16ccSHector Martin * Apple T8103 "M1" SoC 47d2d16ccSHector Martin * 57d2d16ccSHector Martin * Other names: H13G, "Tonga" 67d2d16ccSHector Martin * 77d2d16ccSHector Martin * Copyright The Asahi Linux Contributors 87d2d16ccSHector Martin */ 97d2d16ccSHector Martin 105b970dfcSMarc Zyngier#include <dt-bindings/gpio/gpio.h> 117d2d16ccSHector Martin#include <dt-bindings/interrupt-controller/apple-aic.h> 127d2d16ccSHector Martin#include <dt-bindings/interrupt-controller/irq.h> 130a8282b8SMark Kettenis#include <dt-bindings/pinctrl/apple.h> 142e0e70c9SSasha Finkelstein#include <dt-bindings/spmi/spmi.h> 157d2d16ccSHector Martin 167d2d16ccSHector Martin/ { 177d2d16ccSHector Martin compatible = "apple,t8103", "apple,arm-platform"; 187d2d16ccSHector Martin 197d2d16ccSHector Martin #address-cells = <2>; 207d2d16ccSHector Martin #size-cells = <2>; 217d2d16ccSHector Martin 22*76f3ffebSSasha Finkelstein aliases { 23*76f3ffebSSasha Finkelstein gpu = &gpu; 24*76f3ffebSSasha Finkelstein }; 25*76f3ffebSSasha Finkelstein 267d2d16ccSHector Martin cpus { 277d2d16ccSHector Martin #address-cells = <2>; 287d2d16ccSHector Martin #size-cells = <0>; 297d2d16ccSHector Martin 303e895a64SHector Martin cpu-map { 313e895a64SHector Martin cluster0 { 323e895a64SHector Martin core0 { 333e895a64SHector Martin cpu = <&cpu_e0>; 343e895a64SHector Martin }; 353e895a64SHector Martin core1 { 363e895a64SHector Martin cpu = <&cpu_e1>; 373e895a64SHector Martin }; 383e895a64SHector Martin core2 { 393e895a64SHector Martin cpu = <&cpu_e2>; 403e895a64SHector Martin }; 413e895a64SHector Martin core3 { 423e895a64SHector Martin cpu = <&cpu_e3>; 433e895a64SHector Martin }; 443e895a64SHector Martin }; 453e895a64SHector Martin 463e895a64SHector Martin cluster1 { 473e895a64SHector Martin core0 { 483e895a64SHector Martin cpu = <&cpu_p0>; 493e895a64SHector Martin }; 503e895a64SHector Martin core1 { 513e895a64SHector Martin cpu = <&cpu_p1>; 523e895a64SHector Martin }; 533e895a64SHector Martin core2 { 543e895a64SHector Martin cpu = <&cpu_p2>; 553e895a64SHector Martin }; 563e895a64SHector Martin core3 { 573e895a64SHector Martin cpu = <&cpu_p3>; 583e895a64SHector Martin }; 593e895a64SHector Martin }; 603e895a64SHector Martin }; 613e895a64SHector Martin 623e895a64SHector Martin cpu_e0: cpu@0 { 637d2d16ccSHector Martin compatible = "apple,icestorm"; 647d2d16ccSHector Martin device_type = "cpu"; 657d2d16ccSHector Martin reg = <0x0 0x0>; 667d2d16ccSHector Martin enable-method = "spin-table"; 677d2d16ccSHector Martin cpu-release-addr = <0 0>; /* To be filled by loader */ 683e895a64SHector Martin operating-points-v2 = <&ecluster_opp>; 693e895a64SHector Martin capacity-dmips-mhz = <714>; 703e895a64SHector Martin performance-domains = <&cpufreq_e>; 719ecb7a4bSJanne Grunau next-level-cache = <&l2_cache_0>; 729ecb7a4bSJanne Grunau i-cache-size = <0x20000>; 739ecb7a4bSJanne Grunau d-cache-size = <0x10000>; 747d2d16ccSHector Martin }; 757d2d16ccSHector Martin 763e895a64SHector Martin cpu_e1: cpu@1 { 777d2d16ccSHector Martin compatible = "apple,icestorm"; 787d2d16ccSHector Martin device_type = "cpu"; 797d2d16ccSHector Martin reg = <0x0 0x1>; 807d2d16ccSHector Martin enable-method = "spin-table"; 817d2d16ccSHector Martin cpu-release-addr = <0 0>; /* To be filled by loader */ 823e895a64SHector Martin operating-points-v2 = <&ecluster_opp>; 833e895a64SHector Martin capacity-dmips-mhz = <714>; 843e895a64SHector Martin performance-domains = <&cpufreq_e>; 859ecb7a4bSJanne Grunau next-level-cache = <&l2_cache_0>; 869ecb7a4bSJanne Grunau i-cache-size = <0x20000>; 879ecb7a4bSJanne Grunau d-cache-size = <0x10000>; 887d2d16ccSHector Martin }; 897d2d16ccSHector Martin 903e895a64SHector Martin cpu_e2: cpu@2 { 917d2d16ccSHector Martin compatible = "apple,icestorm"; 927d2d16ccSHector Martin device_type = "cpu"; 937d2d16ccSHector Martin reg = <0x0 0x2>; 947d2d16ccSHector Martin enable-method = "spin-table"; 957d2d16ccSHector Martin cpu-release-addr = <0 0>; /* To be filled by loader */ 963e895a64SHector Martin operating-points-v2 = <&ecluster_opp>; 973e895a64SHector Martin capacity-dmips-mhz = <714>; 983e895a64SHector Martin performance-domains = <&cpufreq_e>; 999ecb7a4bSJanne Grunau next-level-cache = <&l2_cache_0>; 1009ecb7a4bSJanne Grunau i-cache-size = <0x20000>; 1019ecb7a4bSJanne Grunau d-cache-size = <0x10000>; 1027d2d16ccSHector Martin }; 1037d2d16ccSHector Martin 1043e895a64SHector Martin cpu_e3: cpu@3 { 1057d2d16ccSHector Martin compatible = "apple,icestorm"; 1067d2d16ccSHector Martin device_type = "cpu"; 1077d2d16ccSHector Martin reg = <0x0 0x3>; 1087d2d16ccSHector Martin enable-method = "spin-table"; 1097d2d16ccSHector Martin cpu-release-addr = <0 0>; /* To be filled by loader */ 1103e895a64SHector Martin operating-points-v2 = <&ecluster_opp>; 1113e895a64SHector Martin capacity-dmips-mhz = <714>; 1123e895a64SHector Martin performance-domains = <&cpufreq_e>; 1139ecb7a4bSJanne Grunau next-level-cache = <&l2_cache_0>; 1149ecb7a4bSJanne Grunau i-cache-size = <0x20000>; 1159ecb7a4bSJanne Grunau d-cache-size = <0x10000>; 1167d2d16ccSHector Martin }; 1177d2d16ccSHector Martin 1183e895a64SHector Martin cpu_p0: cpu@10100 { 1197d2d16ccSHector Martin compatible = "apple,firestorm"; 1207d2d16ccSHector Martin device_type = "cpu"; 1217d2d16ccSHector Martin reg = <0x0 0x10100>; 1227d2d16ccSHector Martin enable-method = "spin-table"; 1237d2d16ccSHector Martin cpu-release-addr = <0 0>; /* To be filled by loader */ 1243e895a64SHector Martin operating-points-v2 = <&pcluster_opp>; 1253e895a64SHector Martin capacity-dmips-mhz = <1024>; 1263e895a64SHector Martin performance-domains = <&cpufreq_p>; 1279ecb7a4bSJanne Grunau next-level-cache = <&l2_cache_1>; 1289ecb7a4bSJanne Grunau i-cache-size = <0x30000>; 1299ecb7a4bSJanne Grunau d-cache-size = <0x20000>; 1307d2d16ccSHector Martin }; 1317d2d16ccSHector Martin 1323e895a64SHector Martin cpu_p1: cpu@10101 { 1337d2d16ccSHector Martin compatible = "apple,firestorm"; 1347d2d16ccSHector Martin device_type = "cpu"; 1357d2d16ccSHector Martin reg = <0x0 0x10101>; 1367d2d16ccSHector Martin enable-method = "spin-table"; 1377d2d16ccSHector Martin cpu-release-addr = <0 0>; /* To be filled by loader */ 1383e895a64SHector Martin operating-points-v2 = <&pcluster_opp>; 1393e895a64SHector Martin capacity-dmips-mhz = <1024>; 1403e895a64SHector Martin performance-domains = <&cpufreq_p>; 1419ecb7a4bSJanne Grunau next-level-cache = <&l2_cache_1>; 1429ecb7a4bSJanne Grunau i-cache-size = <0x30000>; 1439ecb7a4bSJanne Grunau d-cache-size = <0x20000>; 1447d2d16ccSHector Martin }; 1457d2d16ccSHector Martin 1463e895a64SHector Martin cpu_p2: cpu@10102 { 1477d2d16ccSHector Martin compatible = "apple,firestorm"; 1487d2d16ccSHector Martin device_type = "cpu"; 1497d2d16ccSHector Martin reg = <0x0 0x10102>; 1507d2d16ccSHector Martin enable-method = "spin-table"; 1517d2d16ccSHector Martin cpu-release-addr = <0 0>; /* To be filled by loader */ 1523e895a64SHector Martin operating-points-v2 = <&pcluster_opp>; 1533e895a64SHector Martin capacity-dmips-mhz = <1024>; 1543e895a64SHector Martin performance-domains = <&cpufreq_p>; 1559ecb7a4bSJanne Grunau next-level-cache = <&l2_cache_1>; 1569ecb7a4bSJanne Grunau i-cache-size = <0x30000>; 1579ecb7a4bSJanne Grunau d-cache-size = <0x20000>; 1587d2d16ccSHector Martin }; 1597d2d16ccSHector Martin 1603e895a64SHector Martin cpu_p3: cpu@10103 { 1617d2d16ccSHector Martin compatible = "apple,firestorm"; 1627d2d16ccSHector Martin device_type = "cpu"; 1637d2d16ccSHector Martin reg = <0x0 0x10103>; 1647d2d16ccSHector Martin enable-method = "spin-table"; 1657d2d16ccSHector Martin cpu-release-addr = <0 0>; /* To be filled by loader */ 1663e895a64SHector Martin operating-points-v2 = <&pcluster_opp>; 1673e895a64SHector Martin capacity-dmips-mhz = <1024>; 1683e895a64SHector Martin performance-domains = <&cpufreq_p>; 1699ecb7a4bSJanne Grunau next-level-cache = <&l2_cache_1>; 1709ecb7a4bSJanne Grunau i-cache-size = <0x30000>; 1719ecb7a4bSJanne Grunau d-cache-size = <0x20000>; 1729ecb7a4bSJanne Grunau }; 1739ecb7a4bSJanne Grunau 1749ecb7a4bSJanne Grunau l2_cache_0: l2-cache-0 { 1759ecb7a4bSJanne Grunau compatible = "cache"; 1769ecb7a4bSJanne Grunau cache-level = <2>; 1779ecb7a4bSJanne Grunau cache-unified; 1789ecb7a4bSJanne Grunau cache-size = <0x400000>; 1799ecb7a4bSJanne Grunau }; 1809ecb7a4bSJanne Grunau 1819ecb7a4bSJanne Grunau l2_cache_1: l2-cache-1 { 1829ecb7a4bSJanne Grunau compatible = "cache"; 1839ecb7a4bSJanne Grunau cache-level = <2>; 1849ecb7a4bSJanne Grunau cache-unified; 1859ecb7a4bSJanne Grunau cache-size = <0xc00000>; 1867d2d16ccSHector Martin }; 1877d2d16ccSHector Martin }; 1887d2d16ccSHector Martin 1893e895a64SHector Martin ecluster_opp: opp-table-0 { 1903e895a64SHector Martin compatible = "operating-points-v2"; 1913e895a64SHector Martin 1923e895a64SHector Martin opp01 { 1933e895a64SHector Martin opp-hz = /bits/ 64 <600000000>; 1943e895a64SHector Martin opp-level = <1>; 1953e895a64SHector Martin clock-latency-ns = <7500>; 1963e895a64SHector Martin }; 1973e895a64SHector Martin opp02 { 1983e895a64SHector Martin opp-hz = /bits/ 64 <972000000>; 1993e895a64SHector Martin opp-level = <2>; 2003e895a64SHector Martin clock-latency-ns = <22000>; 2013e895a64SHector Martin }; 2023e895a64SHector Martin opp03 { 2033e895a64SHector Martin opp-hz = /bits/ 64 <1332000000>; 2043e895a64SHector Martin opp-level = <3>; 2053e895a64SHector Martin clock-latency-ns = <27000>; 2063e895a64SHector Martin }; 2073e895a64SHector Martin opp04 { 2083e895a64SHector Martin opp-hz = /bits/ 64 <1704000000>; 2093e895a64SHector Martin opp-level = <4>; 2103e895a64SHector Martin clock-latency-ns = <33000>; 2113e895a64SHector Martin }; 2123e895a64SHector Martin opp05 { 2133e895a64SHector Martin opp-hz = /bits/ 64 <2064000000>; 2143e895a64SHector Martin opp-level = <5>; 2153e895a64SHector Martin clock-latency-ns = <50000>; 2163e895a64SHector Martin }; 2173e895a64SHector Martin }; 2183e895a64SHector Martin 2193e895a64SHector Martin pcluster_opp: opp-table-1 { 2203e895a64SHector Martin compatible = "operating-points-v2"; 2213e895a64SHector Martin 2223e895a64SHector Martin opp01 { 2233e895a64SHector Martin opp-hz = /bits/ 64 <600000000>; 2243e895a64SHector Martin opp-level = <1>; 2253e895a64SHector Martin clock-latency-ns = <8000>; 2263e895a64SHector Martin }; 2273e895a64SHector Martin opp02 { 2283e895a64SHector Martin opp-hz = /bits/ 64 <828000000>; 2293e895a64SHector Martin opp-level = <2>; 2303e895a64SHector Martin clock-latency-ns = <19000>; 2313e895a64SHector Martin }; 2323e895a64SHector Martin opp03 { 2333e895a64SHector Martin opp-hz = /bits/ 64 <1056000000>; 2343e895a64SHector Martin opp-level = <3>; 2353e895a64SHector Martin clock-latency-ns = <21000>; 2363e895a64SHector Martin }; 2373e895a64SHector Martin opp04 { 2383e895a64SHector Martin opp-hz = /bits/ 64 <1284000000>; 2393e895a64SHector Martin opp-level = <4>; 2403e895a64SHector Martin clock-latency-ns = <23000>; 2413e895a64SHector Martin }; 2423e895a64SHector Martin opp05 { 2433e895a64SHector Martin opp-hz = /bits/ 64 <1500000000>; 2443e895a64SHector Martin opp-level = <5>; 2453e895a64SHector Martin clock-latency-ns = <24000>; 2463e895a64SHector Martin }; 2473e895a64SHector Martin opp06 { 2483e895a64SHector Martin opp-hz = /bits/ 64 <1728000000>; 2493e895a64SHector Martin opp-level = <6>; 2503e895a64SHector Martin clock-latency-ns = <29000>; 2513e895a64SHector Martin }; 2523e895a64SHector Martin opp07 { 2533e895a64SHector Martin opp-hz = /bits/ 64 <1956000000>; 2543e895a64SHector Martin opp-level = <7>; 2553e895a64SHector Martin clock-latency-ns = <31000>; 2563e895a64SHector Martin }; 2573e895a64SHector Martin opp08 { 2583e895a64SHector Martin opp-hz = /bits/ 64 <2184000000>; 2593e895a64SHector Martin opp-level = <8>; 2603e895a64SHector Martin clock-latency-ns = <34000>; 2613e895a64SHector Martin }; 2623e895a64SHector Martin opp09 { 2633e895a64SHector Martin opp-hz = /bits/ 64 <2388000000>; 2643e895a64SHector Martin opp-level = <9>; 2653e895a64SHector Martin clock-latency-ns = <36000>; 2663e895a64SHector Martin }; 2673e895a64SHector Martin opp10 { 2683e895a64SHector Martin opp-hz = /bits/ 64 <2592000000>; 2693e895a64SHector Martin opp-level = <10>; 2703e895a64SHector Martin clock-latency-ns = <51000>; 2713e895a64SHector Martin }; 2723e895a64SHector Martin opp11 { 2733e895a64SHector Martin opp-hz = /bits/ 64 <2772000000>; 2743e895a64SHector Martin opp-level = <11>; 2753e895a64SHector Martin clock-latency-ns = <54000>; 2763e895a64SHector Martin }; 2773e895a64SHector Martin opp12 { 2783e895a64SHector Martin opp-hz = /bits/ 64 <2988000000>; 2793e895a64SHector Martin opp-level = <12>; 2803e895a64SHector Martin clock-latency-ns = <55000>; 2813e895a64SHector Martin }; 2823e895a64SHector Martin#if 0 2833e895a64SHector Martin /* Not available until CPU deep sleep is implemented */ 2843e895a64SHector Martin opp13 { 2853e895a64SHector Martin opp-hz = /bits/ 64 <3096000000>; 2863e895a64SHector Martin opp-level = <13>; 2873e895a64SHector Martin clock-latency-ns = <55000>; 2883e895a64SHector Martin turbo-mode; 2893e895a64SHector Martin }; 2903e895a64SHector Martin opp14 { 2913e895a64SHector Martin opp-hz = /bits/ 64 <3144000000>; 2923e895a64SHector Martin opp-level = <14>; 2933e895a64SHector Martin clock-latency-ns = <56000>; 2943e895a64SHector Martin turbo-mode; 2953e895a64SHector Martin }; 2963e895a64SHector Martin opp15 { 2973e895a64SHector Martin opp-hz = /bits/ 64 <3204000000>; 2983e895a64SHector Martin opp-level = <15>; 2993e895a64SHector Martin clock-latency-ns = <56000>; 3003e895a64SHector Martin turbo-mode; 3013e895a64SHector Martin }; 3023e895a64SHector Martin#endif 3033e895a64SHector Martin }; 3043e895a64SHector Martin 3057d2d16ccSHector Martin timer { 3067d2d16ccSHector Martin compatible = "arm,armv8-timer"; 3077d2d16ccSHector Martin interrupt-parent = <&aic>; 3087d2d16ccSHector Martin interrupt-names = "phys", "virt", "hyp-phys", "hyp-virt"; 3097d2d16ccSHector Martin interrupts = <AIC_FIQ AIC_TMR_GUEST_PHYS IRQ_TYPE_LEVEL_HIGH>, 3107d2d16ccSHector Martin <AIC_FIQ AIC_TMR_GUEST_VIRT IRQ_TYPE_LEVEL_HIGH>, 3117d2d16ccSHector Martin <AIC_FIQ AIC_TMR_HV_PHYS IRQ_TYPE_LEVEL_HIGH>, 3127d2d16ccSHector Martin <AIC_FIQ AIC_TMR_HV_VIRT IRQ_TYPE_LEVEL_HIGH>; 3137d2d16ccSHector Martin }; 3147d2d16ccSHector Martin 3150f522efcSMarc Zyngier pmu-e { 3160f522efcSMarc Zyngier compatible = "apple,icestorm-pmu"; 3170f522efcSMarc Zyngier interrupt-parent = <&aic>; 3180f522efcSMarc Zyngier interrupts = <AIC_FIQ AIC_CPU_PMU_E IRQ_TYPE_LEVEL_HIGH>; 3190f522efcSMarc Zyngier }; 3200f522efcSMarc Zyngier 3210f522efcSMarc Zyngier pmu-p { 3220f522efcSMarc Zyngier compatible = "apple,firestorm-pmu"; 3230f522efcSMarc Zyngier interrupt-parent = <&aic>; 3240f522efcSMarc Zyngier interrupts = <AIC_FIQ AIC_CPU_PMU_P IRQ_TYPE_LEVEL_HIGH>; 3250f522efcSMarc Zyngier }; 3260f522efcSMarc Zyngier 32757337b25SHector Martin clkref: clock-ref { 3287d2d16ccSHector Martin compatible = "fixed-clock"; 3297d2d16ccSHector Martin #clock-cells = <0>; 3307d2d16ccSHector Martin clock-frequency = <24000000>; 33157337b25SHector Martin clock-output-names = "clkref"; 3327d2d16ccSHector Martin }; 3337d2d16ccSHector Martin 334556cd4bbSJanne Grunau clk_120m: clock-120m { 335556cd4bbSJanne Grunau compatible = "fixed-clock"; 336556cd4bbSJanne Grunau #clock-cells = <0>; 337556cd4bbSJanne Grunau clock-frequency = <120000000>; 338556cd4bbSJanne Grunau clock-output-names = "clk_120m"; 339556cd4bbSJanne Grunau }; 340556cd4bbSJanne Grunau 341556cd4bbSJanne Grunau clk_200m: clock-200m { 342556cd4bbSJanne Grunau compatible = "fixed-clock"; 343556cd4bbSJanne Grunau #clock-cells = <0>; 344556cd4bbSJanne Grunau clock-frequency = <200000000>; 345556cd4bbSJanne Grunau clock-output-names = "clk_200m"; 346556cd4bbSJanne Grunau }; 347556cd4bbSJanne Grunau 3488a3df85aSMartin Povišer /* 3498a3df85aSMartin Povišer * This is a fabulated representation of the input clock 3508a3df85aSMartin Povišer * to NCO since we don't know the true clock tree. 3518a3df85aSMartin Povišer */ 3528a3df85aSMartin Povišer nco_clkref: clock-ref-nco { 3538a3df85aSMartin Povišer compatible = "fixed-clock"; 3548a3df85aSMartin Povišer #clock-cells = <0>; 3558a3df85aSMartin Povišer clock-output-names = "nco_ref"; 3568a3df85aSMartin Povišer }; 3578a3df85aSMartin Povišer 358*76f3ffebSSasha Finkelstein reserved-memory { 359*76f3ffebSSasha Finkelstein #address-cells = <2>; 360*76f3ffebSSasha Finkelstein #size-cells = <2>; 361*76f3ffebSSasha Finkelstein ranges; 362*76f3ffebSSasha Finkelstein 363*76f3ffebSSasha Finkelstein gpu_globals: globals { 364*76f3ffebSSasha Finkelstein status = "disabled"; 365*76f3ffebSSasha Finkelstein }; 366*76f3ffebSSasha Finkelstein 367*76f3ffebSSasha Finkelstein gpu_hw_cal_a: hw-cal-a { 368*76f3ffebSSasha Finkelstein status = "disabled"; 369*76f3ffebSSasha Finkelstein }; 370*76f3ffebSSasha Finkelstein 371*76f3ffebSSasha Finkelstein gpu_hw_cal_b: hw-cal-b { 372*76f3ffebSSasha Finkelstein status = "disabled"; 373*76f3ffebSSasha Finkelstein }; 374*76f3ffebSSasha Finkelstein 375*76f3ffebSSasha Finkelstein uat_handoff: uat-handoff { 376*76f3ffebSSasha Finkelstein status = "disabled"; 377*76f3ffebSSasha Finkelstein }; 378*76f3ffebSSasha Finkelstein 379*76f3ffebSSasha Finkelstein uat_pagetables: uat-pagetables { 380*76f3ffebSSasha Finkelstein status = "disabled"; 381*76f3ffebSSasha Finkelstein }; 382*76f3ffebSSasha Finkelstein 383*76f3ffebSSasha Finkelstein uat_ttbs: uat-ttbs { 384*76f3ffebSSasha Finkelstein status = "disabled"; 385*76f3ffebSSasha Finkelstein }; 386*76f3ffebSSasha Finkelstein }; 387*76f3ffebSSasha Finkelstein 3887d2d16ccSHector Martin soc { 3897d2d16ccSHector Martin compatible = "simple-bus"; 3907d2d16ccSHector Martin #address-cells = <2>; 3917d2d16ccSHector Martin #size-cells = <2>; 3927d2d16ccSHector Martin 3937d2d16ccSHector Martin ranges; 3947d2d16ccSHector Martin nonposted-mmio; 3957d2d16ccSHector Martin 396*76f3ffebSSasha Finkelstein gpu: gpu@206400000 { 397*76f3ffebSSasha Finkelstein compatible = "apple,agx-g13g"; 398*76f3ffebSSasha Finkelstein reg = <0x2 0x6400000 0 0x40000>, 399*76f3ffebSSasha Finkelstein <0x2 0x4000000 0 0x1000000>; 400*76f3ffebSSasha Finkelstein reg-names = "asc", "sgx"; 401*76f3ffebSSasha Finkelstein mboxes = <&agx_mbox>; 402*76f3ffebSSasha Finkelstein power-domains = <&ps_gfx>; 403*76f3ffebSSasha Finkelstein memory-region = <&uat_ttbs>, <&uat_pagetables>, <&uat_handoff>, 404*76f3ffebSSasha Finkelstein <&gpu_hw_cal_a>, <&gpu_hw_cal_b>, <&gpu_globals>; 405*76f3ffebSSasha Finkelstein memory-region-names = "ttbs", "pagetables", "handoff", 406*76f3ffebSSasha Finkelstein "hw-cal-a", "hw-cal-b", "globals"; 407*76f3ffebSSasha Finkelstein 408*76f3ffebSSasha Finkelstein apple,firmware-abi = <0 0 0>; 409*76f3ffebSSasha Finkelstein }; 410*76f3ffebSSasha Finkelstein 411*76f3ffebSSasha Finkelstein agx_mbox: mbox@206408000 { 412*76f3ffebSSasha Finkelstein compatible = "apple,t8103-asc-mailbox", "apple,asc-mailbox-v4"; 413*76f3ffebSSasha Finkelstein reg = <0x2 0x6408000 0x0 0x4000>; 414*76f3ffebSSasha Finkelstein interrupt-parent = <&aic>; 415*76f3ffebSSasha Finkelstein interrupts = <AIC_IRQ 575 IRQ_TYPE_LEVEL_HIGH>, 416*76f3ffebSSasha Finkelstein <AIC_IRQ 576 IRQ_TYPE_LEVEL_HIGH>, 417*76f3ffebSSasha Finkelstein <AIC_IRQ 577 IRQ_TYPE_LEVEL_HIGH>, 418*76f3ffebSSasha Finkelstein <AIC_IRQ 578 IRQ_TYPE_LEVEL_HIGH>; 419*76f3ffebSSasha Finkelstein interrupt-names = "send-empty", "send-not-empty", 420*76f3ffebSSasha Finkelstein "recv-empty", "recv-not-empty"; 421*76f3ffebSSasha Finkelstein #mbox-cells = <0>; 422*76f3ffebSSasha Finkelstein }; 423*76f3ffebSSasha Finkelstein 4243e895a64SHector Martin cpufreq_e: performance-controller@210e20000 { 4253e895a64SHector Martin compatible = "apple,t8103-cluster-cpufreq", "apple,cluster-cpufreq"; 4263e895a64SHector Martin reg = <0x2 0x10e20000 0 0x1000>; 4273e895a64SHector Martin #performance-domain-cells = <0>; 4283e895a64SHector Martin }; 4293e895a64SHector Martin 4303e895a64SHector Martin cpufreq_p: performance-controller@211e20000 { 4313e895a64SHector Martin compatible = "apple,t8103-cluster-cpufreq", "apple,cluster-cpufreq"; 4323e895a64SHector Martin reg = <0x2 0x11e20000 0 0x1000>; 4333e895a64SHector Martin #performance-domain-cells = <0>; 4343e895a64SHector Martin }; 4353e895a64SHector Martin 4367275e795SSasha Finkelstein display_dfr: display-pipe@228200000 { 4377275e795SSasha Finkelstein compatible = "apple,t8103-display-pipe", "apple,h7-display-pipe"; 4387275e795SSasha Finkelstein reg = <0x2 0x28200000 0x0 0xc000>, 4397275e795SSasha Finkelstein <0x2 0x28400000 0x0 0x4000>; 4407275e795SSasha Finkelstein reg-names = "be", "fe"; 4417275e795SSasha Finkelstein power-domains = <&ps_dispdfr_fe>, <&ps_dispdfr_be>; 4427275e795SSasha Finkelstein interrupt-parent = <&aic>; 4437275e795SSasha Finkelstein interrupts = <AIC_IRQ 502 IRQ_TYPE_LEVEL_HIGH>, 4447275e795SSasha Finkelstein <AIC_IRQ 506 IRQ_TYPE_LEVEL_HIGH>; 4457275e795SSasha Finkelstein interrupt-names = "be", "fe"; 4467275e795SSasha Finkelstein iommus = <&displaydfr_dart 0>; 4477275e795SSasha Finkelstein status = "disabled"; 4487275e795SSasha Finkelstein 4497275e795SSasha Finkelstein port { 4507275e795SSasha Finkelstein dfr_adp_out_mipi: endpoint { 4517275e795SSasha Finkelstein remote-endpoint = <&dfr_mipi_in_adp>; 4527275e795SSasha Finkelstein }; 4537275e795SSasha Finkelstein }; 4547275e795SSasha Finkelstein }; 4557275e795SSasha Finkelstein 4567275e795SSasha Finkelstein displaydfr_dart: iommu@228304000 { 4577275e795SSasha Finkelstein compatible = "apple,t8103-dart"; 4587275e795SSasha Finkelstein reg = <0x2 0x28304000 0x0 0x4000>; 4597275e795SSasha Finkelstein interrupt-parent = <&aic>; 4607275e795SSasha Finkelstein interrupts = <AIC_IRQ 504 IRQ_TYPE_LEVEL_HIGH>; 4617275e795SSasha Finkelstein #iommu-cells = <1>; 4627275e795SSasha Finkelstein power-domains = <&ps_dispdfr_fe>; 4637275e795SSasha Finkelstein status = "disabled"; 4647275e795SSasha Finkelstein }; 4657275e795SSasha Finkelstein 4667275e795SSasha Finkelstein displaydfr_mipi: dsi@228600000 { 4677275e795SSasha Finkelstein compatible = "apple,t8103-display-pipe-mipi", "apple,h7-display-pipe-mipi"; 4687275e795SSasha Finkelstein reg = <0x2 0x28600000 0x0 0x100000>; 4697275e795SSasha Finkelstein power-domains = <&ps_mipi_dsi>; 4707275e795SSasha Finkelstein status = "disabled"; 4717275e795SSasha Finkelstein 4727275e795SSasha Finkelstein ports { 4737275e795SSasha Finkelstein #address-cells = <1>; 4747275e795SSasha Finkelstein #size-cells = <0>; 4757275e795SSasha Finkelstein 4767275e795SSasha Finkelstein dfr_mipi_in: port@0 { 4777275e795SSasha Finkelstein reg = <0>; 4787275e795SSasha Finkelstein #address-cells = <1>; 4797275e795SSasha Finkelstein #size-cells = <0>; 4807275e795SSasha Finkelstein 4817275e795SSasha Finkelstein dfr_mipi_in_adp: endpoint@0 { 4827275e795SSasha Finkelstein reg = <0>; 4837275e795SSasha Finkelstein remote-endpoint = <&dfr_adp_out_mipi>; 4847275e795SSasha Finkelstein }; 4857275e795SSasha Finkelstein }; 4867275e795SSasha Finkelstein 4877275e795SSasha Finkelstein dfr_mipi_out: port@1 { 4887275e795SSasha Finkelstein reg = <1>; 4897275e795SSasha Finkelstein #address-cells = <1>; 4907275e795SSasha Finkelstein #size-cells = <0>; 4917275e795SSasha Finkelstein }; 4927275e795SSasha Finkelstein }; 4937275e795SSasha Finkelstein }; 4947275e795SSasha Finkelstein 49563bf0b66SHector Martin sio_dart: iommu@235004000 { 4968a3df85aSMartin Povišer compatible = "apple,t8103-dart"; 4978a3df85aSMartin Povišer reg = <0x2 0x35004000 0x0 0x4000>; 4988a3df85aSMartin Povišer interrupt-parent = <&aic>; 4998a3df85aSMartin Povišer interrupts = <AIC_IRQ 635 IRQ_TYPE_LEVEL_HIGH>; 5008a3df85aSMartin Povišer #iommu-cells = <1>; 5018a3df85aSMartin Povišer power-domains = <&ps_sio_cpu>; 5028a3df85aSMartin Povišer }; 5038a3df85aSMartin Povišer 50490458f6eSJanne Grunau i2c0: i2c@235010000 { 50590458f6eSJanne Grunau compatible = "apple,t8103-i2c", "apple,i2c"; 50690458f6eSJanne Grunau reg = <0x2 0x35010000 0x0 0x4000>; 50757337b25SHector Martin clocks = <&clkref>; 50890458f6eSJanne Grunau interrupt-parent = <&aic>; 50990458f6eSJanne Grunau interrupts = <AIC_IRQ 627 IRQ_TYPE_LEVEL_HIGH>; 51090458f6eSJanne Grunau pinctrl-0 = <&i2c0_pins>; 51190458f6eSJanne Grunau pinctrl-names = "default"; 51290458f6eSJanne Grunau #address-cells = <0x1>; 51390458f6eSJanne Grunau #size-cells = <0x0>; 514106ba3b4SHector Martin power-domains = <&ps_i2c0>; 51590458f6eSJanne Grunau }; 51690458f6eSJanne Grunau 51790458f6eSJanne Grunau i2c1: i2c@235014000 { 51890458f6eSJanne Grunau compatible = "apple,t8103-i2c", "apple,i2c"; 51990458f6eSJanne Grunau reg = <0x2 0x35014000 0x0 0x4000>; 52057337b25SHector Martin clocks = <&clkref>; 52190458f6eSJanne Grunau interrupt-parent = <&aic>; 52290458f6eSJanne Grunau interrupts = <AIC_IRQ 628 IRQ_TYPE_LEVEL_HIGH>; 52390458f6eSJanne Grunau pinctrl-0 = <&i2c1_pins>; 52490458f6eSJanne Grunau pinctrl-names = "default"; 52590458f6eSJanne Grunau #address-cells = <0x1>; 52690458f6eSJanne Grunau #size-cells = <0x0>; 527106ba3b4SHector Martin power-domains = <&ps_i2c1>; 52890458f6eSJanne Grunau }; 52990458f6eSJanne Grunau 53090458f6eSJanne Grunau i2c2: i2c@235018000 { 53190458f6eSJanne Grunau compatible = "apple,t8103-i2c", "apple,i2c"; 53290458f6eSJanne Grunau reg = <0x2 0x35018000 0x0 0x4000>; 53357337b25SHector Martin clocks = <&clkref>; 53490458f6eSJanne Grunau interrupt-parent = <&aic>; 53590458f6eSJanne Grunau interrupts = <AIC_IRQ 629 IRQ_TYPE_LEVEL_HIGH>; 53690458f6eSJanne Grunau pinctrl-0 = <&i2c2_pins>; 53790458f6eSJanne Grunau pinctrl-names = "default"; 53890458f6eSJanne Grunau #address-cells = <0x1>; 53990458f6eSJanne Grunau #size-cells = <0x0>; 54090458f6eSJanne Grunau status = "disabled"; /* not used in all devices */ 541106ba3b4SHector Martin power-domains = <&ps_i2c2>; 54290458f6eSJanne Grunau }; 54390458f6eSJanne Grunau 54490458f6eSJanne Grunau i2c3: i2c@23501c000 { 54590458f6eSJanne Grunau compatible = "apple,t8103-i2c", "apple,i2c"; 54690458f6eSJanne Grunau reg = <0x2 0x3501c000 0x0 0x4000>; 54757337b25SHector Martin clocks = <&clkref>; 54890458f6eSJanne Grunau interrupt-parent = <&aic>; 54990458f6eSJanne Grunau interrupts = <AIC_IRQ 630 IRQ_TYPE_LEVEL_HIGH>; 55090458f6eSJanne Grunau pinctrl-0 = <&i2c3_pins>; 55190458f6eSJanne Grunau pinctrl-names = "default"; 55290458f6eSJanne Grunau #address-cells = <0x1>; 55390458f6eSJanne Grunau #size-cells = <0x0>; 554106ba3b4SHector Martin power-domains = <&ps_i2c3>; 55590458f6eSJanne Grunau }; 55690458f6eSJanne Grunau 55790458f6eSJanne Grunau i2c4: i2c@235020000 { 55890458f6eSJanne Grunau compatible = "apple,t8103-i2c", "apple,i2c"; 55990458f6eSJanne Grunau reg = <0x2 0x35020000 0x0 0x4000>; 56057337b25SHector Martin clocks = <&clkref>; 56190458f6eSJanne Grunau interrupt-parent = <&aic>; 56290458f6eSJanne Grunau interrupts = <AIC_IRQ 631 IRQ_TYPE_LEVEL_HIGH>; 56390458f6eSJanne Grunau pinctrl-0 = <&i2c4_pins>; 56490458f6eSJanne Grunau pinctrl-names = "default"; 56590458f6eSJanne Grunau #address-cells = <0x1>; 56690458f6eSJanne Grunau #size-cells = <0x0>; 567106ba3b4SHector Martin power-domains = <&ps_i2c4>; 56890458f6eSJanne Grunau status = "disabled"; /* only used in J293 */ 56990458f6eSJanne Grunau }; 57090458f6eSJanne Grunau 571348981c7SSasha Finkelstein fpwm1: pwm@235044000 { 572348981c7SSasha Finkelstein compatible = "apple,t8103-fpwm", "apple,s5l-fpwm"; 573348981c7SSasha Finkelstein reg = <0x2 0x35044000 0x0 0x4000>; 574348981c7SSasha Finkelstein power-domains = <&ps_fpwm1>; 575348981c7SSasha Finkelstein clocks = <&clkref>; 576348981c7SSasha Finkelstein #pwm-cells = <2>; 577348981c7SSasha Finkelstein status = "disabled"; 578348981c7SSasha Finkelstein }; 579348981c7SSasha Finkelstein 580556cd4bbSJanne Grunau spi0: spi@235100000 { 581556cd4bbSJanne Grunau compatible = "apple,t8103-spi", "apple,spi"; 582556cd4bbSJanne Grunau reg = <0x2 0x35100000 0x0 0x4000>; 583556cd4bbSJanne Grunau interrupt-parent = <&aic>; 584556cd4bbSJanne Grunau interrupts = <AIC_IRQ 614 IRQ_TYPE_LEVEL_HIGH>; 585556cd4bbSJanne Grunau clocks = <&clk_200m>; 586556cd4bbSJanne Grunau pinctrl-0 = <&spi0_pins>; 587556cd4bbSJanne Grunau pinctrl-names = "default"; 588556cd4bbSJanne Grunau power-domains = <&ps_spi0>; 589556cd4bbSJanne Grunau #address-cells = <1>; 590556cd4bbSJanne Grunau #size-cells = <0>; 591556cd4bbSJanne Grunau status = "disabled"; 592556cd4bbSJanne Grunau }; 593556cd4bbSJanne Grunau 594556cd4bbSJanne Grunau spi1: spi@235104000 { 595556cd4bbSJanne Grunau compatible = "apple,t8103-spi", "apple,spi"; 596556cd4bbSJanne Grunau reg = <0x2 0x35104000 0x0 0x4000>; 597556cd4bbSJanne Grunau interrupt-parent = <&aic>; 598556cd4bbSJanne Grunau interrupts = <AIC_IRQ 615 IRQ_TYPE_LEVEL_HIGH>; 599556cd4bbSJanne Grunau clocks = <&clk_200m>; 600556cd4bbSJanne Grunau pinctrl-0 = <&spi1_pins>; 601556cd4bbSJanne Grunau pinctrl-names = "default"; 602556cd4bbSJanne Grunau power-domains = <&ps_spi1>; 603556cd4bbSJanne Grunau #address-cells = <1>; 604556cd4bbSJanne Grunau #size-cells = <0>; 605556cd4bbSJanne Grunau status = "disabled"; 606556cd4bbSJanne Grunau }; 607556cd4bbSJanne Grunau 608556cd4bbSJanne Grunau spi3: spi@23510c000 { 609556cd4bbSJanne Grunau compatible = "apple,t8103-spi", "apple,spi"; 610556cd4bbSJanne Grunau reg = <0x2 0x3510c000 0x0 0x4000>; 611556cd4bbSJanne Grunau interrupt-parent = <&aic>; 612556cd4bbSJanne Grunau interrupts = <AIC_IRQ 617 IRQ_TYPE_LEVEL_HIGH>; 613556cd4bbSJanne Grunau clocks = <&clk_120m>; 614556cd4bbSJanne Grunau pinctrl-0 = <&spi3_pins>; 615556cd4bbSJanne Grunau pinctrl-names = "default"; 616556cd4bbSJanne Grunau power-domains = <&ps_spi3>; 617556cd4bbSJanne Grunau #address-cells = <1>; 618556cd4bbSJanne Grunau #size-cells = <0>; 619556cd4bbSJanne Grunau status = "disabled"; 620556cd4bbSJanne Grunau }; 621556cd4bbSJanne Grunau 6227d2d16ccSHector Martin serial0: serial@235200000 { 6237d2d16ccSHector Martin compatible = "apple,s5l-uart"; 6247d2d16ccSHector Martin reg = <0x2 0x35200000 0x0 0x1000>; 6257d2d16ccSHector Martin reg-io-width = <4>; 6267d2d16ccSHector Martin interrupt-parent = <&aic>; 6277d2d16ccSHector Martin interrupts = <AIC_IRQ 605 IRQ_TYPE_LEVEL_HIGH>; 6287d2d16ccSHector Martin /* 6297d2d16ccSHector Martin * TODO: figure out the clocking properly, there may 6307d2d16ccSHector Martin * be a third selectable clock. 6317d2d16ccSHector Martin */ 63257337b25SHector Martin clocks = <&clkref>, <&clkref>; 6337d2d16ccSHector Martin clock-names = "uart", "clk_uart_baud0"; 634106ba3b4SHector Martin power-domains = <&ps_uart0>; 6357d2d16ccSHector Martin status = "disabled"; 6367d2d16ccSHector Martin }; 6377d2d16ccSHector Martin 6382ba22cfeSHector Martin serial2: serial@235208000 { 6392ba22cfeSHector Martin compatible = "apple,s5l-uart"; 6402ba22cfeSHector Martin reg = <0x2 0x35208000 0x0 0x1000>; 6412ba22cfeSHector Martin reg-io-width = <4>; 6422ba22cfeSHector Martin interrupt-parent = <&aic>; 6432ba22cfeSHector Martin interrupts = <AIC_IRQ 607 IRQ_TYPE_LEVEL_HIGH>; 64457337b25SHector Martin clocks = <&clkref>, <&clkref>; 6452ba22cfeSHector Martin clock-names = "uart", "clk_uart_baud0"; 6462ba22cfeSHector Martin power-domains = <&ps_uart2>; 6477d2d16ccSHector Martin status = "disabled"; 6487d2d16ccSHector Martin }; 6497d2d16ccSHector Martin 6508a3df85aSMartin Povišer admac: dma-controller@238200000 { 6518a3df85aSMartin Povišer compatible = "apple,t8103-admac", "apple,admac"; 6528a3df85aSMartin Povišer reg = <0x2 0x38200000 0x0 0x34000>; 6538a3df85aSMartin Povišer dma-channels = <24>; 6548a3df85aSMartin Povišer interrupts-extended = <0>, 6558a3df85aSMartin Povišer <&aic AIC_IRQ 626 IRQ_TYPE_LEVEL_HIGH>, 6568a3df85aSMartin Povišer <0>, 6578a3df85aSMartin Povišer <0>; 6588a3df85aSMartin Povišer #dma-cells = <1>; 65963bf0b66SHector Martin iommus = <&sio_dart 2>; 6608a3df85aSMartin Povišer power-domains = <&ps_sio_adma>; 66156fed763SMartin Povišer resets = <&ps_audio_p>; 6628a3df85aSMartin Povišer }; 6638a3df85aSMartin Povišer 6648a3df85aSMartin Povišer mca: i2s@238400000 { 6658a3df85aSMartin Povišer compatible = "apple,t8103-mca", "apple,mca"; 6668a3df85aSMartin Povišer reg = <0x2 0x38400000 0x0 0x18000>, 6678a3df85aSMartin Povišer <0x2 0x38300000 0x0 0x30000>; 6688a3df85aSMartin Povišer 6698a3df85aSMartin Povišer interrupt-parent = <&aic>; 6708a3df85aSMartin Povišer interrupts = <AIC_IRQ 619 IRQ_TYPE_LEVEL_HIGH>, 6718a3df85aSMartin Povišer <AIC_IRQ 620 IRQ_TYPE_LEVEL_HIGH>, 6728a3df85aSMartin Povišer <AIC_IRQ 621 IRQ_TYPE_LEVEL_HIGH>, 6738a3df85aSMartin Povišer <AIC_IRQ 622 IRQ_TYPE_LEVEL_HIGH>, 6748a3df85aSMartin Povišer <AIC_IRQ 623 IRQ_TYPE_LEVEL_HIGH>, 6758a3df85aSMartin Povišer <AIC_IRQ 624 IRQ_TYPE_LEVEL_HIGH>; 6768a3df85aSMartin Povišer 6778a3df85aSMartin Povišer resets = <&ps_audio_p>; 6788a3df85aSMartin Povišer clocks = <&nco 0>, <&nco 1>, <&nco 2>, 6798a3df85aSMartin Povišer <&nco 3>, <&nco 4>, <&nco 4>; 6808a3df85aSMartin Povišer power-domains = <&ps_audio_p>, <&ps_mca0>, <&ps_mca1>, 6818a3df85aSMartin Povišer <&ps_mca2>, <&ps_mca3>, <&ps_mca4>, <&ps_mca5>; 6828a3df85aSMartin Povišer dmas = <&admac 0>, <&admac 1>, <&admac 2>, <&admac 3>, 6838a3df85aSMartin Povišer <&admac 4>, <&admac 5>, <&admac 6>, <&admac 7>, 6848a3df85aSMartin Povišer <&admac 8>, <&admac 9>, <&admac 10>, <&admac 11>, 6858a3df85aSMartin Povišer <&admac 12>, <&admac 13>, <&admac 14>, <&admac 15>, 6868a3df85aSMartin Povišer <&admac 16>, <&admac 17>, <&admac 18>, <&admac 19>, 6878a3df85aSMartin Povišer <&admac 20>, <&admac 21>, <&admac 22>, <&admac 23>; 6888a3df85aSMartin Povišer dma-names = "tx0a", "rx0a", "tx0b", "rx0b", 6898a3df85aSMartin Povišer "tx1a", "rx1a", "tx1b", "rx1b", 6908a3df85aSMartin Povišer "tx2a", "rx2a", "tx2b", "rx2b", 6918a3df85aSMartin Povišer "tx3a", "rx3a", "tx3b", "rx3b", 6928a3df85aSMartin Povišer "tx4a", "rx4a", "tx4b", "rx4b", 6938a3df85aSMartin Povišer "tx5a", "rx5a", "tx5b", "rx5b"; 6948a3df85aSMartin Povišer 6958a3df85aSMartin Povišer #sound-dai-cells = <1>; 6968a3df85aSMartin Povišer }; 6978a3df85aSMartin Povišer 6988a3df85aSMartin Povišer nco: clock-controller@23b044000 { 6998a3df85aSMartin Povišer compatible = "apple,t8103-nco", "apple,nco"; 7008a3df85aSMartin Povišer reg = <0x2 0x3b044000 0x0 0x14000>; 7018a3df85aSMartin Povišer clocks = <&nco_clkref>; 7028a3df85aSMartin Povišer #clock-cells = <1>; 7038a3df85aSMartin Povišer }; 7048a3df85aSMartin Povišer 7057d2d16ccSHector Martin aic: interrupt-controller@23b100000 { 7067d2d16ccSHector Martin compatible = "apple,t8103-aic", "apple,aic"; 7077d2d16ccSHector Martin #interrupt-cells = <3>; 7087d2d16ccSHector Martin interrupt-controller; 7097d2d16ccSHector Martin reg = <0x2 0x3b100000 0x0 0x8000>; 710106ba3b4SHector Martin power-domains = <&ps_aic>; 7111852e22bSMarc Zyngier 7121852e22bSMarc Zyngier affinities { 7131852e22bSMarc Zyngier e-core-pmu-affinity { 7141852e22bSMarc Zyngier apple,fiq-index = <AIC_CPU_PMU_E>; 7153e895a64SHector Martin cpus = <&cpu_e0 &cpu_e1 &cpu_e2 &cpu_e3>; 7161852e22bSMarc Zyngier }; 7171852e22bSMarc Zyngier 7181852e22bSMarc Zyngier p-core-pmu-affinity { 7191852e22bSMarc Zyngier apple,fiq-index = <AIC_CPU_PMU_P>; 7203e895a64SHector Martin cpus = <&cpu_p0 &cpu_p1 &cpu_p2 &cpu_p3>; 7211852e22bSMarc Zyngier }; 7221852e22bSMarc Zyngier }; 723106ba3b4SHector Martin }; 724106ba3b4SHector Martin 725106ba3b4SHector Martin pmgr: power-management@23b700000 { 726106ba3b4SHector Martin compatible = "apple,t8103-pmgr", "apple,pmgr", "syscon", "simple-mfd"; 727106ba3b4SHector Martin #address-cells = <1>; 728106ba3b4SHector Martin #size-cells = <1>; 729106ba3b4SHector Martin reg = <0x2 0x3b700000 0 0x14000>; 7307d2d16ccSHector Martin }; 7310a8282b8SMark Kettenis 7320a8282b8SMark Kettenis pinctrl_ap: pinctrl@23c100000 { 7330a8282b8SMark Kettenis compatible = "apple,t8103-pinctrl", "apple,pinctrl"; 7340a8282b8SMark Kettenis reg = <0x2 0x3c100000 0x0 0x100000>; 735106ba3b4SHector Martin power-domains = <&ps_gpio>; 7360a8282b8SMark Kettenis 7370a8282b8SMark Kettenis gpio-controller; 7380a8282b8SMark Kettenis #gpio-cells = <2>; 7390a8282b8SMark Kettenis gpio-ranges = <&pinctrl_ap 0 0 212>; 7400a8282b8SMark Kettenis apple,npins = <212>; 7410a8282b8SMark Kettenis 7420a8282b8SMark Kettenis interrupt-controller; 7430668639eSJanne Grunau #interrupt-cells = <2>; 7440a8282b8SMark Kettenis interrupt-parent = <&aic>; 7450a8282b8SMark Kettenis interrupts = <AIC_IRQ 190 IRQ_TYPE_LEVEL_HIGH>, 7460a8282b8SMark Kettenis <AIC_IRQ 191 IRQ_TYPE_LEVEL_HIGH>, 7470a8282b8SMark Kettenis <AIC_IRQ 192 IRQ_TYPE_LEVEL_HIGH>, 7480a8282b8SMark Kettenis <AIC_IRQ 193 IRQ_TYPE_LEVEL_HIGH>, 7490a8282b8SMark Kettenis <AIC_IRQ 194 IRQ_TYPE_LEVEL_HIGH>, 7500a8282b8SMark Kettenis <AIC_IRQ 195 IRQ_TYPE_LEVEL_HIGH>, 7510a8282b8SMark Kettenis <AIC_IRQ 196 IRQ_TYPE_LEVEL_HIGH>; 7520a8282b8SMark Kettenis 75390458f6eSJanne Grunau i2c0_pins: i2c0-pins { 75490458f6eSJanne Grunau pinmux = <APPLE_PINMUX(192, 1)>, 75590458f6eSJanne Grunau <APPLE_PINMUX(188, 1)>; 75690458f6eSJanne Grunau }; 75790458f6eSJanne Grunau 75890458f6eSJanne Grunau i2c1_pins: i2c1-pins { 75990458f6eSJanne Grunau pinmux = <APPLE_PINMUX(201, 1)>, 76090458f6eSJanne Grunau <APPLE_PINMUX(199, 1)>; 76190458f6eSJanne Grunau }; 76290458f6eSJanne Grunau 76390458f6eSJanne Grunau i2c2_pins: i2c2-pins { 76490458f6eSJanne Grunau pinmux = <APPLE_PINMUX(163, 1)>, 76590458f6eSJanne Grunau <APPLE_PINMUX(162, 1)>; 76690458f6eSJanne Grunau }; 76790458f6eSJanne Grunau 76890458f6eSJanne Grunau i2c3_pins: i2c3-pins { 76990458f6eSJanne Grunau pinmux = <APPLE_PINMUX(73, 1)>, 77090458f6eSJanne Grunau <APPLE_PINMUX(72, 1)>; 77190458f6eSJanne Grunau }; 77290458f6eSJanne Grunau 77390458f6eSJanne Grunau i2c4_pins: i2c4-pins { 77490458f6eSJanne Grunau pinmux = <APPLE_PINMUX(135, 1)>, 77590458f6eSJanne Grunau <APPLE_PINMUX(134, 1)>; 77690458f6eSJanne Grunau }; 77790458f6eSJanne Grunau 778556cd4bbSJanne Grunau spi0_pins: spi0-pins { 779556cd4bbSJanne Grunau pinmux = <APPLE_PINMUX(67, 1)>, /* CLK */ 780556cd4bbSJanne Grunau <APPLE_PINMUX(68, 1)>, /* MOSI */ 781556cd4bbSJanne Grunau <APPLE_PINMUX(69, 1)>; /* MISO */ 782556cd4bbSJanne Grunau }; 783556cd4bbSJanne Grunau 784556cd4bbSJanne Grunau spi1_pins: spi1-pins { 785556cd4bbSJanne Grunau pinmux = <APPLE_PINMUX(42, 1)>, 786556cd4bbSJanne Grunau <APPLE_PINMUX(43, 1)>, 787556cd4bbSJanne Grunau <APPLE_PINMUX(44, 1)>, 788556cd4bbSJanne Grunau <APPLE_PINMUX(45, 1)>; 789556cd4bbSJanne Grunau }; 790556cd4bbSJanne Grunau 791556cd4bbSJanne Grunau spi3_pins: spi3-pins { 792556cd4bbSJanne Grunau pinmux = <APPLE_PINMUX(46, 1)>, 793556cd4bbSJanne Grunau <APPLE_PINMUX(47, 1)>, 794556cd4bbSJanne Grunau <APPLE_PINMUX(48, 1)>, 795556cd4bbSJanne Grunau <APPLE_PINMUX(49, 1)>; 796556cd4bbSJanne Grunau }; 797556cd4bbSJanne Grunau 7980a8282b8SMark Kettenis pcie_pins: pcie-pins { 7990a8282b8SMark Kettenis pinmux = <APPLE_PINMUX(150, 1)>, 8000a8282b8SMark Kettenis <APPLE_PINMUX(151, 1)>, 8010a8282b8SMark Kettenis <APPLE_PINMUX(32, 1)>; 8020a8282b8SMark Kettenis }; 8030a8282b8SMark Kettenis }; 8040a8282b8SMark Kettenis 8052e0e70c9SSasha Finkelstein nub_spmi: spmi@23d0d9300 { 8062e0e70c9SSasha Finkelstein compatible = "apple,t8103-spmi", "apple,spmi"; 8072e0e70c9SSasha Finkelstein reg = <0x2 0x3d0d9300 0x0 0x100>; 8082e0e70c9SSasha Finkelstein #address-cells = <2>; 8092e0e70c9SSasha Finkelstein #size-cells = <0>; 810d8bf8208SHector Martin 811d8bf8208SHector Martin pmic1: pmic@f { 812d8bf8208SHector Martin compatible = "apple,sera-pmic", "apple,spmi-nvmem"; 813d8bf8208SHector Martin reg = <0xf SPMI_USID>; 814d8bf8208SHector Martin 815d8bf8208SHector Martin nvmem-layout { 816d8bf8208SHector Martin compatible = "fixed-layout"; 817d8bf8208SHector Martin #address-cells = <1>; 818d8bf8208SHector Martin #size-cells = <1>; 819d8bf8208SHector Martin 820d8bf8208SHector Martin boot_stage: boot-stage@9f01 { 821d8bf8208SHector Martin reg = <0x9f01 0x1>; 822d8bf8208SHector Martin }; 823d8bf8208SHector Martin 8246aaf36bbSSven Peter boot_error_count: boot-error-count@9f02,0 { 825d8bf8208SHector Martin reg = <0x9f02 0x1>; 826d8bf8208SHector Martin bits = <0 4>; 827d8bf8208SHector Martin }; 828d8bf8208SHector Martin 8296aaf36bbSSven Peter panic_count: panic-count@9f02,4 { 830d8bf8208SHector Martin reg = <0x9f02 0x1>; 831d8bf8208SHector Martin bits = <4 4>; 832d8bf8208SHector Martin }; 833d8bf8208SHector Martin 834d8bf8208SHector Martin boot_error_stage: boot-error-stage@9f03 { 835d8bf8208SHector Martin reg = <0x9f03 0x1>; 836d8bf8208SHector Martin }; 837d8bf8208SHector Martin 8386aaf36bbSSven Peter shutdown_flag: shutdown-flag@9f0f,3 { 839d8bf8208SHector Martin reg = <0x9f0f 0x1>; 840d8bf8208SHector Martin bits = <3 1>; 841d8bf8208SHector Martin }; 842d8bf8208SHector Martin 843d8bf8208SHector Martin fault_shadow: fault-shadow@a67b { 844d8bf8208SHector Martin reg = <0xa67b 0x10>; 845d8bf8208SHector Martin }; 846d8bf8208SHector Martin 847d8bf8208SHector Martin socd: socd@ab00 { 848d8bf8208SHector Martin reg = <0xab00 0x400>; 849d8bf8208SHector Martin }; 850d8bf8208SHector Martin 851d8bf8208SHector Martin pm_setting: pm-setting@d001 { 852d8bf8208SHector Martin reg = <0xd001 0x1>; 853d8bf8208SHector Martin }; 854d8bf8208SHector Martin 855d8bf8208SHector Martin rtc_offset: rtc-offset@d100 { 856d8bf8208SHector Martin reg = <0xd100 0x6>; 857d8bf8208SHector Martin }; 858d8bf8208SHector Martin }; 859d8bf8208SHector Martin }; 8602e0e70c9SSasha Finkelstein }; 8612e0e70c9SSasha Finkelstein 8620a8282b8SMark Kettenis pinctrl_nub: pinctrl@23d1f0000 { 8630a8282b8SMark Kettenis compatible = "apple,t8103-pinctrl", "apple,pinctrl"; 8640a8282b8SMark Kettenis reg = <0x2 0x3d1f0000 0x0 0x4000>; 865106ba3b4SHector Martin power-domains = <&ps_nub_gpio>; 8660a8282b8SMark Kettenis 8670a8282b8SMark Kettenis gpio-controller; 8680a8282b8SMark Kettenis #gpio-cells = <2>; 8690a8282b8SMark Kettenis gpio-ranges = <&pinctrl_nub 0 0 23>; 8700a8282b8SMark Kettenis apple,npins = <23>; 8710a8282b8SMark Kettenis 8720a8282b8SMark Kettenis interrupt-controller; 8730668639eSJanne Grunau #interrupt-cells = <2>; 8740a8282b8SMark Kettenis interrupt-parent = <&aic>; 8750a8282b8SMark Kettenis interrupts = <AIC_IRQ 330 IRQ_TYPE_LEVEL_HIGH>, 8760a8282b8SMark Kettenis <AIC_IRQ 331 IRQ_TYPE_LEVEL_HIGH>, 8770a8282b8SMark Kettenis <AIC_IRQ 332 IRQ_TYPE_LEVEL_HIGH>, 8780a8282b8SMark Kettenis <AIC_IRQ 333 IRQ_TYPE_LEVEL_HIGH>, 8790a8282b8SMark Kettenis <AIC_IRQ 334 IRQ_TYPE_LEVEL_HIGH>, 8800a8282b8SMark Kettenis <AIC_IRQ 335 IRQ_TYPE_LEVEL_HIGH>, 8810a8282b8SMark Kettenis <AIC_IRQ 336 IRQ_TYPE_LEVEL_HIGH>; 8820a8282b8SMark Kettenis }; 8830a8282b8SMark Kettenis 8848adf987cSHector Martin pmgr_mini: power-management@23d280000 { 8858adf987cSHector Martin compatible = "apple,t8103-pmgr", "apple,pmgr", "syscon", "simple-mfd"; 8868adf987cSHector Martin #address-cells = <1>; 8878adf987cSHector Martin #size-cells = <1>; 8888adf987cSHector Martin reg = <0x2 0x3d280000 0 0x4000>; 8898adf987cSHector Martin }; 8908adf987cSHector Martin 891b4d11106SSven Peter wdt: watchdog@23d2b0000 { 892b4d11106SSven Peter compatible = "apple,t8103-wdt", "apple,wdt"; 893b4d11106SSven Peter reg = <0x2 0x3d2b0000 0x0 0x4000>; 89457337b25SHector Martin clocks = <&clkref>; 895b4d11106SSven Peter interrupt-parent = <&aic>; 896b4d11106SSven Peter interrupts = <AIC_IRQ 338 IRQ_TYPE_LEVEL_HIGH>; 897b4d11106SSven Peter }; 898b4d11106SSven Peter 8990a8282b8SMark Kettenis pinctrl_smc: pinctrl@23e820000 { 9000a8282b8SMark Kettenis compatible = "apple,t8103-pinctrl", "apple,pinctrl"; 9010a8282b8SMark Kettenis reg = <0x2 0x3e820000 0x0 0x4000>; 9020a8282b8SMark Kettenis 9030a8282b8SMark Kettenis gpio-controller; 9040a8282b8SMark Kettenis #gpio-cells = <2>; 9050a8282b8SMark Kettenis gpio-ranges = <&pinctrl_smc 0 0 16>; 9060a8282b8SMark Kettenis apple,npins = <16>; 9070a8282b8SMark Kettenis 9080a8282b8SMark Kettenis interrupt-controller; 9090668639eSJanne Grunau #interrupt-cells = <2>; 9100a8282b8SMark Kettenis interrupt-parent = <&aic>; 9110a8282b8SMark Kettenis interrupts = <AIC_IRQ 391 IRQ_TYPE_LEVEL_HIGH>, 9120a8282b8SMark Kettenis <AIC_IRQ 392 IRQ_TYPE_LEVEL_HIGH>, 9130a8282b8SMark Kettenis <AIC_IRQ 393 IRQ_TYPE_LEVEL_HIGH>, 9140a8282b8SMark Kettenis <AIC_IRQ 394 IRQ_TYPE_LEVEL_HIGH>, 9150a8282b8SMark Kettenis <AIC_IRQ 395 IRQ_TYPE_LEVEL_HIGH>, 9160a8282b8SMark Kettenis <AIC_IRQ 396 IRQ_TYPE_LEVEL_HIGH>, 9170a8282b8SMark Kettenis <AIC_IRQ 397 IRQ_TYPE_LEVEL_HIGH>; 9180a8282b8SMark Kettenis }; 919ff2a8d91SMark Kettenis 9208adf987cSHector Martin pinctrl_aop: pinctrl@24a820000 { 9218adf987cSHector Martin compatible = "apple,t8103-pinctrl", "apple,pinctrl"; 9228adf987cSHector Martin reg = <0x2 0x4a820000 0x0 0x4000>; 9238adf987cSHector Martin 9248adf987cSHector Martin gpio-controller; 9258adf987cSHector Martin #gpio-cells = <2>; 9268adf987cSHector Martin gpio-ranges = <&pinctrl_aop 0 0 42>; 9278adf987cSHector Martin apple,npins = <42>; 9288adf987cSHector Martin 9298adf987cSHector Martin interrupt-controller; 9308adf987cSHector Martin #interrupt-cells = <2>; 9318adf987cSHector Martin interrupt-parent = <&aic>; 9328adf987cSHector Martin interrupts = <AIC_IRQ 268 IRQ_TYPE_LEVEL_HIGH>, 9338adf987cSHector Martin <AIC_IRQ 269 IRQ_TYPE_LEVEL_HIGH>, 9348adf987cSHector Martin <AIC_IRQ 270 IRQ_TYPE_LEVEL_HIGH>, 9358adf987cSHector Martin <AIC_IRQ 271 IRQ_TYPE_LEVEL_HIGH>, 9368adf987cSHector Martin <AIC_IRQ 272 IRQ_TYPE_LEVEL_HIGH>, 9378adf987cSHector Martin <AIC_IRQ 273 IRQ_TYPE_LEVEL_HIGH>, 9388adf987cSHector Martin <AIC_IRQ 274 IRQ_TYPE_LEVEL_HIGH>; 9398adf987cSHector Martin }; 9408adf987cSHector Martin 9415316d73bSSven Peter ans_mbox: mbox@277408000 { 9425316d73bSSven Peter compatible = "apple,t8103-asc-mailbox", "apple,asc-mailbox-v4"; 9435316d73bSSven Peter reg = <0x2 0x77408000 0x0 0x4000>; 9445316d73bSSven Peter interrupt-parent = <&aic>; 9455316d73bSSven Peter interrupts = <AIC_IRQ 583 IRQ_TYPE_LEVEL_HIGH>, 9465316d73bSSven Peter <AIC_IRQ 584 IRQ_TYPE_LEVEL_HIGH>, 9475316d73bSSven Peter <AIC_IRQ 585 IRQ_TYPE_LEVEL_HIGH>, 9485316d73bSSven Peter <AIC_IRQ 586 IRQ_TYPE_LEVEL_HIGH>; 9495316d73bSSven Peter interrupt-names = "send-empty", "send-not-empty", 9505316d73bSSven Peter "recv-empty", "recv-not-empty"; 9515316d73bSSven Peter #mbox-cells = <0>; 9525316d73bSSven Peter power-domains = <&ps_ans2>; 9535316d73bSSven Peter }; 9545316d73bSSven Peter 9555316d73bSSven Peter sart: iommu@27bc50000 { 9565316d73bSSven Peter compatible = "apple,t8103-sart"; 9575316d73bSSven Peter reg = <0x2 0x7bc50000 0x0 0x10000>; 9585316d73bSSven Peter power-domains = <&ps_ans2>; 9595316d73bSSven Peter }; 9605316d73bSSven Peter 9615316d73bSSven Peter nvme@27bcc0000 { 9625316d73bSSven Peter compatible = "apple,t8103-nvme-ans2", "apple,nvme-ans2"; 9635316d73bSSven Peter reg = <0x2 0x7bcc0000 0x0 0x40000>, 9645316d73bSSven Peter <0x2 0x77400000 0x0 0x4000>; 9655316d73bSSven Peter reg-names = "nvme", "ans"; 9665316d73bSSven Peter interrupt-parent = <&aic>; 9675316d73bSSven Peter interrupts = <AIC_IRQ 590 IRQ_TYPE_LEVEL_HIGH>; 9685316d73bSSven Peter mboxes = <&ans_mbox>; 9695316d73bSSven Peter apple,sart = <&sart>; 9705316d73bSSven Peter power-domains = <&ps_ans2>, <&ps_apcie_st>; 9715316d73bSSven Peter power-domain-names = "ans", "apcie0"; 9725316d73bSSven Peter resets = <&ps_ans2>; 9735316d73bSSven Peter }; 9745316d73bSSven Peter 97556d32c51SJanne Grunau pcie0_dart_0: iommu@681008000 { 9763c866bb7SMarc Zyngier compatible = "apple,t8103-dart"; 9773c866bb7SMarc Zyngier reg = <0x6 0x81008000 0x0 0x4000>; 9783c866bb7SMarc Zyngier #iommu-cells = <1>; 9793c866bb7SMarc Zyngier interrupt-parent = <&aic>; 9803c866bb7SMarc Zyngier interrupts = <AIC_IRQ 696 IRQ_TYPE_LEVEL_HIGH>; 981106ba3b4SHector Martin power-domains = <&ps_apcie_gp>; 9823c866bb7SMarc Zyngier }; 9833c866bb7SMarc Zyngier 98456d32c51SJanne Grunau pcie0_dart_1: iommu@682008000 { 9853c866bb7SMarc Zyngier compatible = "apple,t8103-dart"; 9863c866bb7SMarc Zyngier reg = <0x6 0x82008000 0x0 0x4000>; 9873c866bb7SMarc Zyngier #iommu-cells = <1>; 9883c866bb7SMarc Zyngier interrupt-parent = <&aic>; 9893c866bb7SMarc Zyngier interrupts = <AIC_IRQ 699 IRQ_TYPE_LEVEL_HIGH>; 990106ba3b4SHector Martin power-domains = <&ps_apcie_gp>; 991a0189fdfSJanne Grunau status = "disabled"; 9923c866bb7SMarc Zyngier }; 9933c866bb7SMarc Zyngier 99456d32c51SJanne Grunau pcie0_dart_2: iommu@683008000 { 9953c866bb7SMarc Zyngier compatible = "apple,t8103-dart"; 9963c866bb7SMarc Zyngier reg = <0x6 0x83008000 0x0 0x4000>; 9973c866bb7SMarc Zyngier #iommu-cells = <1>; 9983c866bb7SMarc Zyngier interrupt-parent = <&aic>; 9993c866bb7SMarc Zyngier interrupts = <AIC_IRQ 702 IRQ_TYPE_LEVEL_HIGH>; 1000106ba3b4SHector Martin power-domains = <&ps_apcie_gp>; 1001a0189fdfSJanne Grunau status = "disabled"; 10023c866bb7SMarc Zyngier }; 10033c866bb7SMarc Zyngier 1004ff2a8d91SMark Kettenis pcie0: pcie@690000000 { 1005ff2a8d91SMark Kettenis compatible = "apple,t8103-pcie", "apple,pcie"; 1006ff2a8d91SMark Kettenis device_type = "pci"; 1007ff2a8d91SMark Kettenis 1008ff2a8d91SMark Kettenis reg = <0x6 0x90000000 0x0 0x1000000>, 1009ff2a8d91SMark Kettenis <0x6 0x80000000 0x0 0x100000>, 1010ff2a8d91SMark Kettenis <0x6 0x81000000 0x0 0x4000>, 1011ff2a8d91SMark Kettenis <0x6 0x82000000 0x0 0x4000>, 1012ff2a8d91SMark Kettenis <0x6 0x83000000 0x0 0x4000>; 1013ff2a8d91SMark Kettenis reg-names = "config", "rc", "port0", "port1", "port2"; 1014ff2a8d91SMark Kettenis 1015ff2a8d91SMark Kettenis interrupt-parent = <&aic>; 1016ff2a8d91SMark Kettenis interrupts = <AIC_IRQ 695 IRQ_TYPE_LEVEL_HIGH>, 1017ff2a8d91SMark Kettenis <AIC_IRQ 698 IRQ_TYPE_LEVEL_HIGH>, 1018ff2a8d91SMark Kettenis <AIC_IRQ 701 IRQ_TYPE_LEVEL_HIGH>; 1019ff2a8d91SMark Kettenis 1020ff2a8d91SMark Kettenis msi-controller; 1021ff2a8d91SMark Kettenis msi-parent = <&pcie0>; 1022ff2a8d91SMark Kettenis msi-ranges = <&aic AIC_IRQ 704 IRQ_TYPE_EDGE_RISING 32>; 1023ff2a8d91SMark Kettenis 10243c866bb7SMarc Zyngier 10253c866bb7SMarc Zyngier iommu-map = <0x100 &pcie0_dart_0 1 1>, 10263c866bb7SMarc Zyngier <0x200 &pcie0_dart_1 1 1>, 10273c866bb7SMarc Zyngier <0x300 &pcie0_dart_2 1 1>; 10283c866bb7SMarc Zyngier iommu-map-mask = <0xff00>; 10293c866bb7SMarc Zyngier 1030ff2a8d91SMark Kettenis bus-range = <0 3>; 1031ff2a8d91SMark Kettenis #address-cells = <3>; 1032ff2a8d91SMark Kettenis #size-cells = <2>; 1033ff2a8d91SMark Kettenis ranges = <0x43000000 0x6 0xa0000000 0x6 0xa0000000 0x0 0x20000000>, 1034ff2a8d91SMark Kettenis <0x02000000 0x0 0xc0000000 0x6 0xc0000000 0x0 0x40000000>; 1035ff2a8d91SMark Kettenis 1036106ba3b4SHector Martin power-domains = <&ps_apcie_gp>; 1037ff2a8d91SMark Kettenis pinctrl-0 = <&pcie_pins>; 1038ff2a8d91SMark Kettenis pinctrl-names = "default"; 1039ff2a8d91SMark Kettenis 1040128888a6SMarc Zyngier port00: pci@0,0 { 1041ff2a8d91SMark Kettenis device_type = "pci"; 1042ff2a8d91SMark Kettenis reg = <0x0 0x0 0x0 0x0 0x0>; 10435b970dfcSMarc Zyngier reset-gpios = <&pinctrl_ap 152 GPIO_ACTIVE_LOW>; 1044ff2a8d91SMark Kettenis 1045ff2a8d91SMark Kettenis #address-cells = <3>; 1046ff2a8d91SMark Kettenis #size-cells = <2>; 1047ff2a8d91SMark Kettenis ranges; 1048128888a6SMarc Zyngier 1049128888a6SMarc Zyngier interrupt-controller; 1050128888a6SMarc Zyngier #interrupt-cells = <1>; 1051128888a6SMarc Zyngier 1052128888a6SMarc Zyngier interrupt-map-mask = <0 0 0 7>; 1053128888a6SMarc Zyngier interrupt-map = <0 0 0 1 &port00 0 0 0 0>, 1054128888a6SMarc Zyngier <0 0 0 2 &port00 0 0 0 1>, 1055128888a6SMarc Zyngier <0 0 0 3 &port00 0 0 0 2>, 1056128888a6SMarc Zyngier <0 0 0 4 &port00 0 0 0 3>; 1057ff2a8d91SMark Kettenis }; 1058ff2a8d91SMark Kettenis 1059128888a6SMarc Zyngier port01: pci@1,0 { 1060ff2a8d91SMark Kettenis device_type = "pci"; 1061ff2a8d91SMark Kettenis reg = <0x800 0x0 0x0 0x0 0x0>; 10625b970dfcSMarc Zyngier reset-gpios = <&pinctrl_ap 153 GPIO_ACTIVE_LOW>; 1063ff2a8d91SMark Kettenis 1064ff2a8d91SMark Kettenis #address-cells = <3>; 1065ff2a8d91SMark Kettenis #size-cells = <2>; 1066ff2a8d91SMark Kettenis ranges; 1067128888a6SMarc Zyngier 1068128888a6SMarc Zyngier interrupt-controller; 1069128888a6SMarc Zyngier #interrupt-cells = <1>; 1070128888a6SMarc Zyngier 1071128888a6SMarc Zyngier interrupt-map-mask = <0 0 0 7>; 1072128888a6SMarc Zyngier interrupt-map = <0 0 0 1 &port01 0 0 0 0>, 1073128888a6SMarc Zyngier <0 0 0 2 &port01 0 0 0 1>, 1074128888a6SMarc Zyngier <0 0 0 3 &port01 0 0 0 2>, 1075128888a6SMarc Zyngier <0 0 0 4 &port01 0 0 0 3>; 1076a0189fdfSJanne Grunau status = "disabled"; 1077ff2a8d91SMark Kettenis }; 1078ff2a8d91SMark Kettenis 1079128888a6SMarc Zyngier port02: pci@2,0 { 1080ff2a8d91SMark Kettenis device_type = "pci"; 1081ff2a8d91SMark Kettenis reg = <0x1000 0x0 0x0 0x0 0x0>; 10825b970dfcSMarc Zyngier reset-gpios = <&pinctrl_ap 33 GPIO_ACTIVE_LOW>; 1083ff2a8d91SMark Kettenis 1084ff2a8d91SMark Kettenis #address-cells = <3>; 1085ff2a8d91SMark Kettenis #size-cells = <2>; 1086ff2a8d91SMark Kettenis ranges; 1087128888a6SMarc Zyngier 1088128888a6SMarc Zyngier interrupt-controller; 1089128888a6SMarc Zyngier #interrupt-cells = <1>; 1090128888a6SMarc Zyngier 1091128888a6SMarc Zyngier interrupt-map-mask = <0 0 0 7>; 1092128888a6SMarc Zyngier interrupt-map = <0 0 0 1 &port02 0 0 0 0>, 1093128888a6SMarc Zyngier <0 0 0 2 &port02 0 0 0 1>, 1094128888a6SMarc Zyngier <0 0 0 3 &port02 0 0 0 2>, 1095128888a6SMarc Zyngier <0 0 0 4 &port02 0 0 0 3>; 1096a0189fdfSJanne Grunau status = "disabled"; 1097ff2a8d91SMark Kettenis }; 1098ff2a8d91SMark Kettenis }; 10997d2d16ccSHector Martin }; 11007d2d16ccSHector Martin}; 1101106ba3b4SHector Martin 1102106ba3b4SHector Martin#include "t8103-pmgr.dtsi" 1103