1c65ab490SJanne Grunau// SPDX-License-Identifier: GPL-2.0+ OR MIT 2c65ab490SJanne Grunau/* 3c65ab490SJanne Grunau * Apple T8122 "M3" SoC 4c65ab490SJanne Grunau * 5c65ab490SJanne Grunau * Other names: H15G 6c65ab490SJanne Grunau * 7c65ab490SJanne Grunau * Copyright The Asahi Linux Contributors 8c65ab490SJanne Grunau */ 9c65ab490SJanne Grunau 10c65ab490SJanne Grunau#include <dt-bindings/gpio/gpio.h> 11c65ab490SJanne Grunau#include <dt-bindings/interrupt-controller/apple-aic.h> 12c65ab490SJanne Grunau#include <dt-bindings/interrupt-controller/irq.h> 13c65ab490SJanne Grunau#include <dt-bindings/pinctrl/apple.h> 14c65ab490SJanne Grunau#include <dt-bindings/phy/phy.h> 15c65ab490SJanne Grunau#include <dt-bindings/spmi/spmi.h> 16c65ab490SJanne Grunau 17c65ab490SJanne Grunau/ { 18c65ab490SJanne Grunau compatible = "apple,t8122", "apple,arm-platform"; 19c65ab490SJanne Grunau 20c65ab490SJanne Grunau #address-cells = <2>; 21c65ab490SJanne Grunau #size-cells = <2>; 22c65ab490SJanne Grunau 23c65ab490SJanne Grunau cpus { 24c65ab490SJanne Grunau #address-cells = <2>; 25c65ab490SJanne Grunau #size-cells = <0>; 26c65ab490SJanne Grunau 27c65ab490SJanne Grunau cpu-map { 28c65ab490SJanne Grunau cluster0 { 29c65ab490SJanne Grunau core0 { 30c65ab490SJanne Grunau cpu = <&cpu_e0>; 31c65ab490SJanne Grunau }; 32c65ab490SJanne Grunau core1 { 33c65ab490SJanne Grunau cpu = <&cpu_e1>; 34c65ab490SJanne Grunau }; 35c65ab490SJanne Grunau core2 { 36c65ab490SJanne Grunau cpu = <&cpu_e2>; 37c65ab490SJanne Grunau }; 38c65ab490SJanne Grunau core3 { 39c65ab490SJanne Grunau cpu = <&cpu_e3>; 40c65ab490SJanne Grunau }; 41c65ab490SJanne Grunau }; 42c65ab490SJanne Grunau 43c65ab490SJanne Grunau cluster1 { 44c65ab490SJanne Grunau core0 { 45c65ab490SJanne Grunau cpu = <&cpu_p0>; 46c65ab490SJanne Grunau }; 47c65ab490SJanne Grunau core1 { 48c65ab490SJanne Grunau cpu = <&cpu_p1>; 49c65ab490SJanne Grunau }; 50c65ab490SJanne Grunau core2 { 51c65ab490SJanne Grunau cpu = <&cpu_p2>; 52c65ab490SJanne Grunau }; 53c65ab490SJanne Grunau core3 { 54c65ab490SJanne Grunau cpu = <&cpu_p3>; 55c65ab490SJanne Grunau }; 56c65ab490SJanne Grunau }; 57c65ab490SJanne Grunau }; 58c65ab490SJanne Grunau 59c65ab490SJanne Grunau cpu_e0: cpu@0 { 60c65ab490SJanne Grunau compatible = "apple,sawtooth"; 61c65ab490SJanne Grunau device_type = "cpu"; 62c65ab490SJanne Grunau reg = <0x0 0x0>; 63c65ab490SJanne Grunau enable-method = "spin-table"; 64c65ab490SJanne Grunau cpu-release-addr = <0 0>; /* To be filled by loader */ 65c65ab490SJanne Grunau next-level-cache = <&l2_cache_0>; 66c65ab490SJanne Grunau i-cache-size = <0x20000>; 67c65ab490SJanne Grunau d-cache-size = <0x10000>; 68c65ab490SJanne Grunau }; 69c65ab490SJanne Grunau 70c65ab490SJanne Grunau cpu_e1: cpu@1 { 71c65ab490SJanne Grunau compatible = "apple,sawtooth"; 72c65ab490SJanne Grunau device_type = "cpu"; 73c65ab490SJanne Grunau reg = <0x0 0x1>; 74c65ab490SJanne Grunau enable-method = "spin-table"; 75c65ab490SJanne Grunau cpu-release-addr = <0 0>; /* To be filled by loader */ 76c65ab490SJanne Grunau next-level-cache = <&l2_cache_0>; 77c65ab490SJanne Grunau i-cache-size = <0x20000>; 78c65ab490SJanne Grunau d-cache-size = <0x10000>; 79c65ab490SJanne Grunau }; 80c65ab490SJanne Grunau 81c65ab490SJanne Grunau cpu_e2: cpu@2 { 82c65ab490SJanne Grunau compatible = "apple,sawtooth"; 83c65ab490SJanne Grunau device_type = "cpu"; 84c65ab490SJanne Grunau reg = <0x0 0x2>; 85c65ab490SJanne Grunau enable-method = "spin-table"; 86c65ab490SJanne Grunau cpu-release-addr = <0 0>; /* To be filled by loader */ 87c65ab490SJanne Grunau next-level-cache = <&l2_cache_0>; 88c65ab490SJanne Grunau i-cache-size = <0x20000>; 89c65ab490SJanne Grunau d-cache-size = <0x10000>; 90c65ab490SJanne Grunau }; 91c65ab490SJanne Grunau 92c65ab490SJanne Grunau cpu_e3: cpu@3 { 93c65ab490SJanne Grunau compatible = "apple,sawtooth"; 94c65ab490SJanne Grunau device_type = "cpu"; 95c65ab490SJanne Grunau reg = <0x0 0x3>; 96c65ab490SJanne Grunau enable-method = "spin-table"; 97c65ab490SJanne Grunau cpu-release-addr = <0 0>; /* To be filled by loader */ 98c65ab490SJanne Grunau next-level-cache = <&l2_cache_0>; 99c65ab490SJanne Grunau i-cache-size = <0x20000>; 100c65ab490SJanne Grunau d-cache-size = <0x10000>; 101c65ab490SJanne Grunau }; 102c65ab490SJanne Grunau 103c65ab490SJanne Grunau cpu_p0: cpu@10100 { 104c65ab490SJanne Grunau compatible = "apple,everest"; 105c65ab490SJanne Grunau device_type = "cpu"; 106c65ab490SJanne Grunau reg = <0x0 0x10100>; 107c65ab490SJanne Grunau enable-method = "spin-table"; 108c65ab490SJanne Grunau cpu-release-addr = <0 0>; /* To be filled by loader */ 109c65ab490SJanne Grunau next-level-cache = <&l2_cache_1>; 110c65ab490SJanne Grunau i-cache-size = <0x30000>; 111c65ab490SJanne Grunau d-cache-size = <0x20000>; 112c65ab490SJanne Grunau }; 113c65ab490SJanne Grunau 114c65ab490SJanne Grunau cpu_p1: cpu@10101 { 115c65ab490SJanne Grunau compatible = "apple,everest"; 116c65ab490SJanne Grunau device_type = "cpu"; 117c65ab490SJanne Grunau reg = <0x0 0x10101>; 118c65ab490SJanne Grunau enable-method = "spin-table"; 119c65ab490SJanne Grunau cpu-release-addr = <0 0>; /* To be filled by loader */ 120c65ab490SJanne Grunau next-level-cache = <&l2_cache_1>; 121c65ab490SJanne Grunau i-cache-size = <0x30000>; 122c65ab490SJanne Grunau d-cache-size = <0x20000>; 123c65ab490SJanne Grunau }; 124c65ab490SJanne Grunau 125c65ab490SJanne Grunau cpu_p2: cpu@10102 { 126c65ab490SJanne Grunau compatible = "apple,everest"; 127c65ab490SJanne Grunau device_type = "cpu"; 128c65ab490SJanne Grunau reg = <0x0 0x10102>; 129c65ab490SJanne Grunau enable-method = "spin-table"; 130c65ab490SJanne Grunau cpu-release-addr = <0 0>; /* To be filled by loader */ 131c65ab490SJanne Grunau next-level-cache = <&l2_cache_1>; 132c65ab490SJanne Grunau i-cache-size = <0x30000>; 133c65ab490SJanne Grunau d-cache-size = <0x20000>; 134c65ab490SJanne Grunau }; 135c65ab490SJanne Grunau 136c65ab490SJanne Grunau cpu_p3: cpu@10103 { 137c65ab490SJanne Grunau compatible = "apple,everest"; 138c65ab490SJanne Grunau device_type = "cpu"; 139c65ab490SJanne Grunau reg = <0x0 0x10103>; 140c65ab490SJanne Grunau enable-method = "spin-table"; 141c65ab490SJanne Grunau cpu-release-addr = <0 0>; /* To be filled by loader */ 142c65ab490SJanne Grunau next-level-cache = <&l2_cache_1>; 143c65ab490SJanne Grunau i-cache-size = <0x30000>; 144c65ab490SJanne Grunau d-cache-size = <0x20000>; 145c65ab490SJanne Grunau }; 146c65ab490SJanne Grunau 147c65ab490SJanne Grunau l2_cache_0: l2-cache-0 { 148c65ab490SJanne Grunau compatible = "cache"; 149c65ab490SJanne Grunau cache-level = <2>; 150c65ab490SJanne Grunau cache-unified; 151c65ab490SJanne Grunau cache-size = <0x400000>; 152c65ab490SJanne Grunau }; 153c65ab490SJanne Grunau 154c65ab490SJanne Grunau l2_cache_1: l2-cache-1 { 155c65ab490SJanne Grunau compatible = "cache"; 156c65ab490SJanne Grunau cache-level = <2>; 157c65ab490SJanne Grunau cache-unified; 158c65ab490SJanne Grunau cache-size = <0x1000000>; 159c65ab490SJanne Grunau }; 160c65ab490SJanne Grunau }; 161c65ab490SJanne Grunau 162c65ab490SJanne Grunau timer { 163c65ab490SJanne Grunau compatible = "arm,armv8-timer"; 164c65ab490SJanne Grunau interrupt-parent = <&aic>; 165c65ab490SJanne Grunau interrupt-names = "phys", "virt", "hyp-phys", "hyp-virt"; 166c65ab490SJanne Grunau interrupts = <AIC_FIQ AIC_TMR_GUEST_PHYS IRQ_TYPE_LEVEL_HIGH>, 167c65ab490SJanne Grunau <AIC_FIQ AIC_TMR_GUEST_VIRT IRQ_TYPE_LEVEL_HIGH>, 168c65ab490SJanne Grunau <AIC_FIQ AIC_TMR_HV_PHYS IRQ_TYPE_LEVEL_HIGH>, 169c65ab490SJanne Grunau <AIC_FIQ AIC_TMR_HV_VIRT IRQ_TYPE_LEVEL_HIGH>; 170c65ab490SJanne Grunau }; 171c65ab490SJanne Grunau 172c65ab490SJanne Grunau clkref: clock-ref { 173c65ab490SJanne Grunau compatible = "fixed-clock"; 174c65ab490SJanne Grunau #clock-cells = <0>; 175c65ab490SJanne Grunau clock-frequency = <24000000>; 176c65ab490SJanne Grunau clock-output-names = "clkref"; 177c65ab490SJanne Grunau }; 178c65ab490SJanne Grunau 179c65ab490SJanne Grunau soc { 180c65ab490SJanne Grunau compatible = "simple-bus"; 181c65ab490SJanne Grunau #address-cells = <2>; 182c65ab490SJanne Grunau #size-cells = <2>; 183c65ab490SJanne Grunau 184c65ab490SJanne Grunau ranges; 185c65ab490SJanne Grunau nonposted-mmio; 186c65ab490SJanne Grunau /* Required to get >32-bit DMA via DARTs */ 187c65ab490SJanne Grunau dma-ranges = <0 0 0 0 0xffffffff 0xffffc000>; 188c65ab490SJanne Grunau 189*09780b4bSMichael Reeves i2c0: i2c@2a1010000 { 190c65ab490SJanne Grunau compatible = "apple,t8122-i2c", "apple,t8103-i2c"; 191*09780b4bSMichael Reeves reg = <0x2 0xa1010000 0x0 0x4000>; 192c65ab490SJanne Grunau clocks = <&clkref>; 193c65ab490SJanne Grunau interrupt-parent = <&aic>; 194*09780b4bSMichael Reeves interrupts = <AIC_IRQ 780 IRQ_TYPE_LEVEL_HIGH>; 195c65ab490SJanne Grunau pinctrl-0 = <&i2c0_pins>; 196c65ab490SJanne Grunau pinctrl-names = "default"; 197c65ab490SJanne Grunau #address-cells = <0x1>; 198c65ab490SJanne Grunau #size-cells = <0x0>; 199c65ab490SJanne Grunau power-domains = <&ps_i2c0>; 200c65ab490SJanne Grunau status = "disabled"; 201c65ab490SJanne Grunau }; 202c65ab490SJanne Grunau 203*09780b4bSMichael Reeves i2c1: i2c@2a1014000 { 204c65ab490SJanne Grunau compatible = "apple,t8122-i2c", "apple,t8103-i2c"; 205*09780b4bSMichael Reeves reg = <0x2 0xa1014000 0x0 0x4000>; 206c65ab490SJanne Grunau clocks = <&clkref>; 207c65ab490SJanne Grunau interrupt-parent = <&aic>; 208*09780b4bSMichael Reeves interrupts = <AIC_IRQ 781 IRQ_TYPE_LEVEL_HIGH>; 209c65ab490SJanne Grunau pinctrl-0 = <&i2c1_pins>; 210c65ab490SJanne Grunau pinctrl-names = "default"; 211c65ab490SJanne Grunau #address-cells = <0x1>; 212c65ab490SJanne Grunau #size-cells = <0x0>; 213c65ab490SJanne Grunau power-domains = <&ps_i2c1>; 214c65ab490SJanne Grunau status = "disabled"; 215c65ab490SJanne Grunau }; 216c65ab490SJanne Grunau 217*09780b4bSMichael Reeves i2c2: i2c@2a1018000 { 218c65ab490SJanne Grunau compatible = "apple,t8122-i2c", "apple,t8103-i2c"; 219*09780b4bSMichael Reeves reg = <0x2 0xa1018000 0x0 0x4000>; 220c65ab490SJanne Grunau clocks = <&clkref>; 221c65ab490SJanne Grunau interrupt-parent = <&aic>; 222*09780b4bSMichael Reeves interrupts = <AIC_IRQ 782 IRQ_TYPE_LEVEL_HIGH>; 223c65ab490SJanne Grunau pinctrl-0 = <&i2c2_pins>; 224c65ab490SJanne Grunau pinctrl-names = "default"; 225c65ab490SJanne Grunau #address-cells = <0x1>; 226c65ab490SJanne Grunau #size-cells = <0x0>; 227c65ab490SJanne Grunau power-domains = <&ps_i2c2>; 228c65ab490SJanne Grunau status = "disabled"; 229c65ab490SJanne Grunau }; 230c65ab490SJanne Grunau 231*09780b4bSMichael Reeves i2c3: i2c@2a101c000 { 232c65ab490SJanne Grunau compatible = "apple,t8122-i2c", "apple,t8103-i2c"; 233*09780b4bSMichael Reeves reg = <0x2 0xa101c000 0x0 0x4000>; 234c65ab490SJanne Grunau clocks = <&clkref>; 235c65ab490SJanne Grunau interrupt-parent = <&aic>; 236*09780b4bSMichael Reeves interrupts = <AIC_IRQ 783 IRQ_TYPE_LEVEL_HIGH>; 237c65ab490SJanne Grunau pinctrl-0 = <&i2c3_pins>; 238c65ab490SJanne Grunau pinctrl-names = "default"; 239c65ab490SJanne Grunau #address-cells = <0x1>; 240c65ab490SJanne Grunau #size-cells = <0x0>; 241c65ab490SJanne Grunau power-domains = <&ps_i2c3>; 242c65ab490SJanne Grunau status = "disabled"; 243c65ab490SJanne Grunau }; 244c65ab490SJanne Grunau 245*09780b4bSMichael Reeves i2c4: i2c@2a1020000 { 246c65ab490SJanne Grunau compatible = "apple,t8122-i2c", "apple,t8103-i2c"; 247*09780b4bSMichael Reeves reg = <0x2 0xa1020000 0x0 0x4000>; 248c65ab490SJanne Grunau clocks = <&clkref>; 249c65ab490SJanne Grunau interrupt-parent = <&aic>; 250*09780b4bSMichael Reeves interrupts = <AIC_IRQ 784 IRQ_TYPE_LEVEL_HIGH>; 251c65ab490SJanne Grunau pinctrl-0 = <&i2c4_pins>; 252c65ab490SJanne Grunau pinctrl-names = "default"; 253c65ab490SJanne Grunau #address-cells = <0x1>; 254c65ab490SJanne Grunau #size-cells = <0x0>; 255c65ab490SJanne Grunau power-domains = <&ps_i2c4>; 256c65ab490SJanne Grunau status = "disabled"; 257c65ab490SJanne Grunau }; 258c65ab490SJanne Grunau 259c65ab490SJanne Grunau fpwm1: pwm@2a1044000 { 260c65ab490SJanne Grunau compatible = "apple,t8122-fpwm", "apple,s5l-fpwm"; 261c65ab490SJanne Grunau reg = <0x2 0xa1044000 0x0 0x4000>; 262c65ab490SJanne Grunau power-domains = <&ps_fpwm1>; 263c65ab490SJanne Grunau clocks = <&clkref>; 264c65ab490SJanne Grunau #pwm-cells = <2>; 265c65ab490SJanne Grunau status = "disabled"; 266c65ab490SJanne Grunau }; 267c65ab490SJanne Grunau 268c65ab490SJanne Grunau serial0: serial@2a1200000 { 269c65ab490SJanne Grunau compatible = "apple,s5l-uart"; 270c65ab490SJanne Grunau reg = <0x2 0xa1200000 0x0 0x1000>; 271c65ab490SJanne Grunau reg-io-width = <4>; 272c65ab490SJanne Grunau interrupt-parent = <&aic>; 273c65ab490SJanne Grunau interrupts = <AIC_IRQ 757 IRQ_TYPE_LEVEL_HIGH>; 274c65ab490SJanne Grunau /* 275c65ab490SJanne Grunau * TODO: figure out the clocking properly, there may 276c65ab490SJanne Grunau * be a third selectable clock. 277c65ab490SJanne Grunau */ 278c65ab490SJanne Grunau clocks = <&clkref>, <&clkref>; 279c65ab490SJanne Grunau clock-names = "uart", "clk_uart_baud0"; 280c65ab490SJanne Grunau power-domains = <&ps_uart0>; 281c65ab490SJanne Grunau status = "disabled"; 282c65ab490SJanne Grunau }; 283c65ab490SJanne Grunau 284c65ab490SJanne Grunau aic: interrupt-controller@2d1000000 { 285c65ab490SJanne Grunau compatible = "apple,t8122-aic3"; 286c65ab490SJanne Grunau #interrupt-cells = <3>; 287c65ab490SJanne Grunau interrupt-controller; 288c65ab490SJanne Grunau reg = <0x2 0xd1000000 0x0 0x184000>, 289c65ab490SJanne Grunau <0x2 0xd1040000 0x0 0x4>; 290c65ab490SJanne Grunau reg-names = "core", "event"; 291c65ab490SJanne Grunau power-domains = <&ps_aic>; 292c65ab490SJanne Grunau 293c65ab490SJanne Grunau affinities { 294c65ab490SJanne Grunau e-core-pmu-affinity { 295c65ab490SJanne Grunau apple,fiq-index = <AIC_CPU_PMU_E>; 296c65ab490SJanne Grunau cpus = <&cpu_e0 &cpu_e1 &cpu_e2 &cpu_e3>; 297c65ab490SJanne Grunau }; 298c65ab490SJanne Grunau 299c65ab490SJanne Grunau p-core-pmu-affinity { 300c65ab490SJanne Grunau apple,fiq-index = <AIC_CPU_PMU_P>; 301c65ab490SJanne Grunau cpus = <&cpu_p0 &cpu_p1 &cpu_p2 &cpu_p3>; 302c65ab490SJanne Grunau }; 303c65ab490SJanne Grunau }; 304c65ab490SJanne Grunau }; 305c65ab490SJanne Grunau 306c65ab490SJanne Grunau pmgr: power-management@2d0700000 { 307c65ab490SJanne Grunau compatible = "apple,t8122-pmgr", "apple,t8103-pmgr", "syscon", "simple-mfd"; 308c65ab490SJanne Grunau #address-cells = <1>; 309c65ab490SJanne Grunau #size-cells = <1>; 310c65ab490SJanne Grunau reg = <0x2 0xd0700000 0 0x14000>; 311c65ab490SJanne Grunau /* child nodes are added in t8122-pmgr.dtsi */ 312c65ab490SJanne Grunau }; 313c65ab490SJanne Grunau 314c65ab490SJanne Grunau pinctrl_ap: pinctrl@2c7100000 { 315c65ab490SJanne Grunau compatible = "apple,t8122-pinctrl", "apple,t8103-pinctrl"; 316c65ab490SJanne Grunau reg = <0x2 0xc7100000 0x0 0x100000>; 317c65ab490SJanne Grunau power-domains = <&ps_gpio>; 318c65ab490SJanne Grunau 319c65ab490SJanne Grunau gpio-controller; 320c65ab490SJanne Grunau #gpio-cells = <2>; 321c65ab490SJanne Grunau gpio-ranges = <&pinctrl_ap 0 0 224>; 322c65ab490SJanne Grunau apple,npins = <224>; 323c65ab490SJanne Grunau 324c65ab490SJanne Grunau interrupt-controller; 325c65ab490SJanne Grunau #interrupt-cells = <2>; 326c65ab490SJanne Grunau interrupt-parent = <&aic>; 327c65ab490SJanne Grunau interrupts = <AIC_IRQ 241 IRQ_TYPE_LEVEL_HIGH>, 328c65ab490SJanne Grunau <AIC_IRQ 242 IRQ_TYPE_LEVEL_HIGH>, 329c65ab490SJanne Grunau <AIC_IRQ 243 IRQ_TYPE_LEVEL_HIGH>, 330c65ab490SJanne Grunau <AIC_IRQ 244 IRQ_TYPE_LEVEL_HIGH>, 331c65ab490SJanne Grunau <AIC_IRQ 245 IRQ_TYPE_LEVEL_HIGH>, 332c65ab490SJanne Grunau <AIC_IRQ 246 IRQ_TYPE_LEVEL_HIGH>, 333c65ab490SJanne Grunau <AIC_IRQ 247 IRQ_TYPE_LEVEL_HIGH>; 334c65ab490SJanne Grunau 335c65ab490SJanne Grunau i2c0_pins: i2c0-pins { 336c65ab490SJanne Grunau pinmux = <APPLE_PINMUX(145, 1)>, 337c65ab490SJanne Grunau <APPLE_PINMUX(144, 1)>; 338c65ab490SJanne Grunau }; 339c65ab490SJanne Grunau 340c65ab490SJanne Grunau i2c1_pins: i2c1-pins { 341c65ab490SJanne Grunau pinmux = <APPLE_PINMUX(147, 1)>, 342c65ab490SJanne Grunau <APPLE_PINMUX(146, 1)>; 343c65ab490SJanne Grunau }; 344c65ab490SJanne Grunau 345c65ab490SJanne Grunau i2c2_pins: i2c2-pins { 346c65ab490SJanne Grunau pinmux = <APPLE_PINMUX(56, 1)>, 347c65ab490SJanne Grunau <APPLE_PINMUX(55, 1)>; 348c65ab490SJanne Grunau }; 349c65ab490SJanne Grunau 350c65ab490SJanne Grunau i2c3_pins: i2c3-pins { 351c65ab490SJanne Grunau pinmux = <APPLE_PINMUX(54, 1)>, 352c65ab490SJanne Grunau <APPLE_PINMUX(53, 1)>; 353c65ab490SJanne Grunau }; 354c65ab490SJanne Grunau 355c65ab490SJanne Grunau i2c4_pins: i2c4-pins { 356c65ab490SJanne Grunau pinmux = <APPLE_PINMUX(149, 1)>, 357c65ab490SJanne Grunau <APPLE_PINMUX(148, 1)>; 358c65ab490SJanne Grunau }; 359c65ab490SJanne Grunau 360c65ab490SJanne Grunau }; 361c65ab490SJanne Grunau 362c65ab490SJanne Grunau pinctrl_nub: pinctrl@2e41f0000 { 363c65ab490SJanne Grunau compatible = "apple,t8122-pinctrl", "apple,t8103-pinctrl"; 364c65ab490SJanne Grunau reg = <0x2 0xe41f0000 0x0 0x4000>; 365c65ab490SJanne Grunau power-domains = <&ps_nub_gpio>; 366c65ab490SJanne Grunau 367c65ab490SJanne Grunau gpio-controller; 368c65ab490SJanne Grunau #gpio-cells = <2>; 369c65ab490SJanne Grunau gpio-ranges = <&pinctrl_nub 0 0 32>; 370c65ab490SJanne Grunau apple,npins = <32>; 371c65ab490SJanne Grunau 372c65ab490SJanne Grunau interrupt-controller; 373c65ab490SJanne Grunau #interrupt-cells = <2>; 374c65ab490SJanne Grunau interrupt-parent = <&aic>; 375c65ab490SJanne Grunau interrupts = <AIC_IRQ 424 IRQ_TYPE_LEVEL_HIGH>, 376c65ab490SJanne Grunau <AIC_IRQ 425 IRQ_TYPE_LEVEL_HIGH>, 377c65ab490SJanne Grunau <AIC_IRQ 426 IRQ_TYPE_LEVEL_HIGH>, 378c65ab490SJanne Grunau <AIC_IRQ 427 IRQ_TYPE_LEVEL_HIGH>, 379c65ab490SJanne Grunau <AIC_IRQ 428 IRQ_TYPE_LEVEL_HIGH>, 380c65ab490SJanne Grunau <AIC_IRQ 429 IRQ_TYPE_LEVEL_HIGH>, 381c65ab490SJanne Grunau <AIC_IRQ 430 IRQ_TYPE_LEVEL_HIGH>; 382c65ab490SJanne Grunau }; 383c65ab490SJanne Grunau 384c65ab490SJanne Grunau pmgr_mini: power-management@2e4280000 { 385c65ab490SJanne Grunau compatible = "apple,t8122-pmgr", "apple,t8103-pmgr", "syscon", "simple-mfd"; 386c65ab490SJanne Grunau #address-cells = <1>; 387c65ab490SJanne Grunau #size-cells = <1>; 388c65ab490SJanne Grunau reg = <0x2 0xe4280000 0 0x4000>; 389c65ab490SJanne Grunau /* child nodes are added in t8122-pmgr.dtsi */ 390c65ab490SJanne Grunau }; 391c65ab490SJanne Grunau 392c65ab490SJanne Grunau wdt: watchdog@2e42b0000 { 393c65ab490SJanne Grunau compatible = "apple,t8122-wdt", "apple,t8103-wdt"; 394c65ab490SJanne Grunau reg = <0x2 0xe42b0000 0x0 0x4000>; 395c65ab490SJanne Grunau clocks = <&clkref>; 396c65ab490SJanne Grunau interrupt-parent = <&aic>; 397c65ab490SJanne Grunau interrupts = <AIC_IRQ 432 IRQ_TYPE_LEVEL_HIGH>; 398c65ab490SJanne Grunau }; 399c65ab490SJanne Grunau 400c65ab490SJanne Grunau pinctrl_smc: pinctrl@2ec820000 { 401c65ab490SJanne Grunau compatible = "apple,t8122-pinctrl", "apple,t8103-pinctrl"; 402c65ab490SJanne Grunau reg = <0x2 0xec820000 0x0 0x4000>; 403c65ab490SJanne Grunau 404c65ab490SJanne Grunau gpio-controller; 405c65ab490SJanne Grunau #gpio-cells = <2>; 406c65ab490SJanne Grunau gpio-ranges = <&pinctrl_smc 0 0 18>; 407c65ab490SJanne Grunau apple,npins = <18>; 408c65ab490SJanne Grunau 409c65ab490SJanne Grunau interrupt-controller; 410c65ab490SJanne Grunau #interrupt-cells = <2>; 411c65ab490SJanne Grunau interrupt-parent = <&aic>; 412c65ab490SJanne Grunau interrupts = <AIC_IRQ 493 IRQ_TYPE_LEVEL_HIGH>, 413c65ab490SJanne Grunau <AIC_IRQ 494 IRQ_TYPE_LEVEL_HIGH>, 414c65ab490SJanne Grunau <AIC_IRQ 495 IRQ_TYPE_LEVEL_HIGH>, 415c65ab490SJanne Grunau <AIC_IRQ 496 IRQ_TYPE_LEVEL_HIGH>, 416c65ab490SJanne Grunau <AIC_IRQ 497 IRQ_TYPE_LEVEL_HIGH>, 417c65ab490SJanne Grunau <AIC_IRQ 498 IRQ_TYPE_LEVEL_HIGH>, 418c65ab490SJanne Grunau <AIC_IRQ 499 IRQ_TYPE_LEVEL_HIGH>; 419c65ab490SJanne Grunau }; 420c65ab490SJanne Grunau 421c65ab490SJanne Grunau pinctrl_aop: pinctrl@2f4824000 { 422c65ab490SJanne Grunau compatible = "apple,t8122-pinctrl", "apple,t8103-pinctrl"; 423c65ab490SJanne Grunau reg = <0x2 0xf4824000 0x0 0x4000>; 424c65ab490SJanne Grunau 425c65ab490SJanne Grunau gpio-controller; 426c65ab490SJanne Grunau #gpio-cells = <2>; 427c65ab490SJanne Grunau gpio-ranges = <&pinctrl_aop 0 0 54>; 428c65ab490SJanne Grunau apple,npins = <54>; 429c65ab490SJanne Grunau 430c65ab490SJanne Grunau interrupt-controller; 431c65ab490SJanne Grunau #interrupt-cells = <2>; 432c65ab490SJanne Grunau interrupt-parent = <&aic>; 433c65ab490SJanne Grunau interrupts = <AIC_IRQ 346 IRQ_TYPE_LEVEL_HIGH>, 434c65ab490SJanne Grunau <AIC_IRQ 347 IRQ_TYPE_LEVEL_HIGH>, 435c65ab490SJanne Grunau <AIC_IRQ 348 IRQ_TYPE_LEVEL_HIGH>, 436c65ab490SJanne Grunau <AIC_IRQ 349 IRQ_TYPE_LEVEL_HIGH>, 437c65ab490SJanne Grunau <AIC_IRQ 350 IRQ_TYPE_LEVEL_HIGH>, 438c65ab490SJanne Grunau <AIC_IRQ 351 IRQ_TYPE_LEVEL_HIGH>, 439c65ab490SJanne Grunau <AIC_IRQ 352 IRQ_TYPE_LEVEL_HIGH>; 440c65ab490SJanne Grunau }; 441c65ab490SJanne Grunau }; 442c65ab490SJanne Grunau}; 443c65ab490SJanne Grunau 444c65ab490SJanne Grunau#include "t8122-pmgr.dtsi" 445