mirror of
https://github.com/torvalds/linux.git
synced 2026-09-22 12:44:03 +02:00
arm64: dts: apple: Initial T6030 (M3 Pro) device trees
Minimal device trees for the M3 Pro based 14-inch and 16-inch MacBook Pro released in November 2023. The M3 Pro is a distinct SoC design and not a cut down version of the Max variant like for M1 and M2 Pro. The M3 Pro has only a single cluster with up to 6 performance cores and one cluster with 6 efficiency cores. While it no longer shares a common SoC .dtsi the devices itself are still similar to the ones with M3 Max. It is still useful to share the basic device composition in t603x-j514-j516.dtsi. For the M3 Pro based devices additional overrides for diverging pin and irq numbers are expected. The device trees have devices nodes for CPU cores, timer, interrupt controller, power states, watchdog, serial, pin controller, i2c, PWM based keyboard LED illumination and the boot framebuffer. Reviewed-by: Sven Peter <sven@kernel.org> Signed-off-by: Janne Grunau <j@jannau.net> Signed-off-by: Sven Peter <sven@kernel.org>
This commit is contained in:
parent
67d9574cf8
commit
e81af013db
|
|
@ -87,6 +87,8 @@ dtb-$(CONFIG_ARCH_APPLE) += t6021-j416c.dtb
|
|||
dtb-$(CONFIG_ARCH_APPLE) += t6020-j474s.dtb
|
||||
dtb-$(CONFIG_ARCH_APPLE) += t6021-j475c.dtb
|
||||
dtb-$(CONFIG_ARCH_APPLE) += t6022-j475d.dtb
|
||||
dtb-$(CONFIG_ARCH_APPLE) += t6030-j514s.dtb
|
||||
dtb-$(CONFIG_ARCH_APPLE) += t6030-j516s.dtb
|
||||
dtb-$(CONFIG_ARCH_APPLE) += t6031-j514c.dtb
|
||||
dtb-$(CONFIG_ARCH_APPLE) += t6031-j516c.dtb
|
||||
dtb-$(CONFIG_ARCH_APPLE) += t6032-j575d.dtb
|
||||
|
|
|
|||
22
arch/arm64/boot/dts/apple/t6030-j514s.dts
Normal file
22
arch/arm64/boot/dts/apple/t6030-j514s.dts
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR MIT
|
||||
/*
|
||||
* MacBook Pro (14-inch, M3 Pro, Nov 2023)
|
||||
*
|
||||
* target-type: J514s
|
||||
*
|
||||
* Copyright The Asahi Linux Contributors
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "t6030.dtsi"
|
||||
#include "t603x-j514-j516.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "apple,j514s", "apple,t6030", "apple,arm-platform";
|
||||
model = "Apple MacBook Pro (14-inch, M3 Pro, Nov 2023)";
|
||||
};
|
||||
|
||||
&framebuffer0 {
|
||||
power-domains = <&ps_disp_cpu>;
|
||||
};
|
||||
22
arch/arm64/boot/dts/apple/t6030-j516s.dts
Normal file
22
arch/arm64/boot/dts/apple/t6030-j516s.dts
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR MIT
|
||||
/*
|
||||
* MacBook Pro (16-inch, M3 Pro, Nov 2023)
|
||||
*
|
||||
* target-type: J516s
|
||||
*
|
||||
* Copyright The Asahi Linux Contributors
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "t6030.dtsi"
|
||||
#include "t603x-j514-j516.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "apple,j516s", "apple,t6030", "apple,arm-platform";
|
||||
model = "Apple MacBook Pro (16-inch, M3 Pro, Nov 2023)";
|
||||
};
|
||||
|
||||
&framebuffer0 {
|
||||
power-domains = <&ps_disp_cpu>;
|
||||
};
|
||||
1437
arch/arm64/boot/dts/apple/t6030-pmgr.dtsi
Normal file
1437
arch/arm64/boot/dts/apple/t6030-pmgr.dtsi
Normal file
File diff suppressed because it is too large
Load Diff
524
arch/arm64/boot/dts/apple/t6030.dtsi
Normal file
524
arch/arm64/boot/dts/apple/t6030.dtsi
Normal file
|
|
@ -0,0 +1,524 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR MIT
|
||||
/*
|
||||
* Apple T6030 "M3 Pro" SoC
|
||||
*
|
||||
* Other names: H15J, "Lobos"
|
||||
*
|
||||
* Copyright The Asahi Linux Contributors
|
||||
*/
|
||||
|
||||
#include <dt-bindings/interrupt-controller/apple-aic.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/pinctrl/apple.h>
|
||||
|
||||
/ {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
|
||||
cpus {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <0>;
|
||||
|
||||
cpu-map {
|
||||
cluster0 {
|
||||
core0 {
|
||||
cpu = <&cpu_e00>;
|
||||
};
|
||||
core1 {
|
||||
cpu = <&cpu_e01>;
|
||||
};
|
||||
core2 {
|
||||
cpu = <&cpu_e02>;
|
||||
};
|
||||
core3 {
|
||||
cpu = <&cpu_e03>;
|
||||
};
|
||||
core4 {
|
||||
cpu = <&cpu_e04>;
|
||||
};
|
||||
core5 {
|
||||
cpu = <&cpu_e05>;
|
||||
};
|
||||
};
|
||||
|
||||
cluster1 {
|
||||
core0 {
|
||||
cpu = <&cpu_p00>;
|
||||
};
|
||||
core1 {
|
||||
cpu = <&cpu_p01>;
|
||||
};
|
||||
core2 {
|
||||
cpu = <&cpu_p02>;
|
||||
};
|
||||
core3 {
|
||||
cpu = <&cpu_p03>;
|
||||
};
|
||||
core4 {
|
||||
cpu = <&cpu_p04>;
|
||||
};
|
||||
core5 {
|
||||
cpu = <&cpu_p05>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
cpu_e00: cpu@0 {
|
||||
compatible = "apple,sawtooth";
|
||||
device_type = "cpu";
|
||||
reg = <0x0 0x0>;
|
||||
enable-method = "spin-table";
|
||||
cpu-release-addr = <0 0>; /* to be filled by loader */
|
||||
next-level-cache = <&l2_cache_0>;
|
||||
i-cache-size = <0x20000>;
|
||||
d-cache-size = <0x10000>;
|
||||
};
|
||||
|
||||
cpu_e01: cpu@1 {
|
||||
compatible = "apple,sawtooth";
|
||||
device_type = "cpu";
|
||||
reg = <0x0 0x1>;
|
||||
enable-method = "spin-table";
|
||||
cpu-release-addr = <0 0>; /* to be filled by loader */
|
||||
next-level-cache = <&l2_cache_0>;
|
||||
i-cache-size = <0x20000>;
|
||||
d-cache-size = <0x10000>;
|
||||
};
|
||||
|
||||
cpu_e02: cpu@2 {
|
||||
compatible = "apple,sawtooth";
|
||||
device_type = "cpu";
|
||||
reg = <0x0 0x2>;
|
||||
enable-method = "spin-table";
|
||||
cpu-release-addr = <0 0>; /* to be filled by loader */
|
||||
next-level-cache = <&l2_cache_0>;
|
||||
i-cache-size = <0x20000>;
|
||||
d-cache-size = <0x10000>;
|
||||
};
|
||||
|
||||
cpu_e03: cpu@3 {
|
||||
compatible = "apple,sawtooth";
|
||||
device_type = "cpu";
|
||||
reg = <0x0 0x3>;
|
||||
enable-method = "spin-table";
|
||||
cpu-release-addr = <0 0>; /* to be filled by loader */
|
||||
next-level-cache = <&l2_cache_0>;
|
||||
i-cache-size = <0x20000>;
|
||||
d-cache-size = <0x10000>;
|
||||
};
|
||||
|
||||
cpu_e04: cpu@4 {
|
||||
compatible = "apple,sawtooth";
|
||||
device_type = "cpu";
|
||||
reg = <0x0 0x4>;
|
||||
enable-method = "spin-table";
|
||||
cpu-release-addr = <0 0>; /* to be filled by loader */
|
||||
next-level-cache = <&l2_cache_0>;
|
||||
i-cache-size = <0x20000>;
|
||||
d-cache-size = <0x10000>;
|
||||
};
|
||||
|
||||
cpu_e05: cpu@5 {
|
||||
compatible = "apple,sawtooth";
|
||||
device_type = "cpu";
|
||||
reg = <0x0 0x5>;
|
||||
enable-method = "spin-table";
|
||||
cpu-release-addr = <0 0>; /* to be filled by loader */
|
||||
next-level-cache = <&l2_cache_0>;
|
||||
i-cache-size = <0x20000>;
|
||||
d-cache-size = <0x10000>;
|
||||
};
|
||||
|
||||
cpu_p00: cpu@10100 {
|
||||
compatible = "apple,everest";
|
||||
device_type = "cpu";
|
||||
reg = <0x0 0x10100>;
|
||||
enable-method = "spin-table";
|
||||
cpu-release-addr = <0 0>; /* To be filled by loader */
|
||||
next-level-cache = <&l2_cache_1>;
|
||||
i-cache-size = <0x30000>;
|
||||
d-cache-size = <0x20000>;
|
||||
};
|
||||
|
||||
cpu_p01: cpu@10101 {
|
||||
compatible = "apple,everest";
|
||||
device_type = "cpu";
|
||||
reg = <0x0 0x10101>;
|
||||
enable-method = "spin-table";
|
||||
cpu-release-addr = <0 0>; /* To be filled by loader */
|
||||
next-level-cache = <&l2_cache_1>;
|
||||
i-cache-size = <0x30000>;
|
||||
d-cache-size = <0x20000>;
|
||||
};
|
||||
|
||||
cpu_p02: cpu@10102 {
|
||||
compatible = "apple,everest";
|
||||
device_type = "cpu";
|
||||
reg = <0x0 0x10102>;
|
||||
enable-method = "spin-table";
|
||||
cpu-release-addr = <0 0>; /* To be filled by loader */
|
||||
next-level-cache = <&l2_cache_1>;
|
||||
i-cache-size = <0x30000>;
|
||||
d-cache-size = <0x20000>;
|
||||
};
|
||||
|
||||
cpu_p03: cpu@10103 {
|
||||
compatible = "apple,everest";
|
||||
device_type = "cpu";
|
||||
reg = <0x0 0x10103>;
|
||||
enable-method = "spin-table";
|
||||
cpu-release-addr = <0 0>; /* To be filled by loader */
|
||||
next-level-cache = <&l2_cache_1>;
|
||||
i-cache-size = <0x30000>;
|
||||
d-cache-size = <0x20000>;
|
||||
};
|
||||
|
||||
cpu_p04: cpu@10104 {
|
||||
compatible = "apple,everest";
|
||||
device_type = "cpu";
|
||||
reg = <0x0 0x10104>;
|
||||
enable-method = "spin-table";
|
||||
cpu-release-addr = <0 0>; /* To be filled by loader */
|
||||
next-level-cache = <&l2_cache_1>;
|
||||
i-cache-size = <0x30000>;
|
||||
d-cache-size = <0x20000>;
|
||||
};
|
||||
|
||||
cpu_p05: cpu@10105 {
|
||||
compatible = "apple,everest";
|
||||
device_type = "cpu";
|
||||
reg = <0x0 0x10105>;
|
||||
enable-method = "spin-table";
|
||||
cpu-release-addr = <0 0>; /* To be filled by loader */
|
||||
next-level-cache = <&l2_cache_1>;
|
||||
i-cache-size = <0x30000>;
|
||||
d-cache-size = <0x20000>;
|
||||
};
|
||||
|
||||
l2_cache_0: l2-cache-0 {
|
||||
compatible = "cache";
|
||||
cache-level = <2>;
|
||||
cache-unified;
|
||||
cache-size = <0x400000>;
|
||||
};
|
||||
|
||||
l2_cache_1: l2-cache-1 {
|
||||
compatible = "cache";
|
||||
cache-level = <2>;
|
||||
cache-unified;
|
||||
cache-size = <0x1000000>;
|
||||
};
|
||||
};
|
||||
|
||||
timer {
|
||||
compatible = "arm,armv8-timer";
|
||||
interrupt-parent = <&aic>;
|
||||
interrupt-names = "phys", "virt", "hyp-phys", "hyp-virt";
|
||||
interrupts = <AIC_FIQ AIC_TMR_GUEST_PHYS IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_FIQ AIC_TMR_GUEST_VIRT IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_FIQ AIC_TMR_HV_PHYS IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_FIQ AIC_TMR_HV_VIRT IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
clkref: clock-ref {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <24000000>;
|
||||
clock-output-names = "clkref";
|
||||
};
|
||||
|
||||
reserved-memory {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
};
|
||||
|
||||
soc: soc {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
|
||||
ranges;
|
||||
nonposted-mmio;
|
||||
/* Required to get >32-bit DMA via DARTs */
|
||||
dma-ranges = <0 0 0 0 0xffffffff 0xffffc000>;
|
||||
|
||||
i2c1: i2c@289014000 {
|
||||
compatible = "apple,t6030-i2c", "apple,t8103-i2c";
|
||||
reg = <0x2 0x89014000 0x0 0x4000>;
|
||||
clocks = <&clkref>;
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <AIC_IRQ 890 IRQ_TYPE_LEVEL_HIGH>;
|
||||
pinctrl-0 = <&i2c1_pins>;
|
||||
pinctrl-names = "default";
|
||||
#address-cells = <0x1>;
|
||||
#size-cells = <0x0>;
|
||||
power-domains = <&ps_i2c1>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c2: i2c@289018000 {
|
||||
compatible = "apple,t6030-i2c", "apple,t8103-i2c";
|
||||
reg = <0x2 0x89018000 0x0 0x4000>;
|
||||
clocks = <&clkref>;
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <AIC_IRQ 891 IRQ_TYPE_LEVEL_HIGH>;
|
||||
pinctrl-0 = <&i2c2_pins>;
|
||||
pinctrl-names = "default";
|
||||
#address-cells = <0x1>;
|
||||
#size-cells = <0x0>;
|
||||
power-domains = <&ps_i2c2>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c3: i2c@28901c000 {
|
||||
compatible = "apple,t6030-i2c", "apple,t8103-i2c";
|
||||
reg = <0x2 0x8901c000 0x0 0x4000>;
|
||||
clocks = <&clkref>;
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <AIC_IRQ 892 IRQ_TYPE_LEVEL_HIGH>;
|
||||
pinctrl-0 = <&i2c3_pins>;
|
||||
pinctrl-names = "default";
|
||||
#address-cells = <0x1>;
|
||||
#size-cells = <0x0>;
|
||||
power-domains = <&ps_i2c3>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c4: i2c@289020000 {
|
||||
compatible = "apple,t6030-i2c", "apple,t8103-i2c";
|
||||
reg = <0x2 0x89020000 0x0 0x4000>;
|
||||
clocks = <&clkref>;
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <AIC_IRQ 893 IRQ_TYPE_LEVEL_HIGH>;
|
||||
pinctrl-0 = <&i2c4_pins>;
|
||||
pinctrl-names = "default";
|
||||
#address-cells = <0x1>;
|
||||
#size-cells = <0x0>;
|
||||
power-domains = <&ps_i2c4>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c6: i2c@289028000 {
|
||||
compatible = "apple,t6030-i2c", "apple,t8103-i2c";
|
||||
reg = <0x2 0x89028000 0x0 0x4000>;
|
||||
clocks = <&clkref>;
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <AIC_IRQ 895 IRQ_TYPE_LEVEL_HIGH>;
|
||||
pinctrl-0 = <&i2c6_pins>;
|
||||
pinctrl-names = "default";
|
||||
#address-cells = <0x1>;
|
||||
#size-cells = <0x0>;
|
||||
power-domains = <&ps_i2c6>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c8: i2c@289030000 {
|
||||
compatible = "apple,t6030-i2c", "apple,t8103-i2c";
|
||||
reg = <0x2 0x89030000 0x0 0x4000>;
|
||||
clocks = <&clkref>;
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <AIC_IRQ 897 IRQ_TYPE_LEVEL_HIGH>;
|
||||
pinctrl-0 = <&i2c8_pins>;
|
||||
pinctrl-names = "default";
|
||||
#address-cells = <0x1>;
|
||||
#size-cells = <0x0>;
|
||||
power-domains = <&ps_i2c8>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
fpwm0: pwm@289040000 {
|
||||
compatible = "apple,t6030-fpwm", "apple,s5l-fpwm";
|
||||
reg = <0x2 0x89040000 0x0 0x4000>;
|
||||
power-domains = <&ps_fpwm0>;
|
||||
clocks = <&clkref>;
|
||||
#pwm-cells = <2>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
serial0: serial@289200000 {
|
||||
compatible = "apple,s5l-uart";
|
||||
reg = <0x2 0x89200000 0x0 0x1000>;
|
||||
reg-io-width = <4>;
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <AIC_IRQ 866 IRQ_TYPE_LEVEL_HIGH>;
|
||||
/*
|
||||
* TODO: figure out the clocking properly, there may
|
||||
* be a third selectable clock.
|
||||
*/
|
||||
clocks = <&clkref>, <&clkref>;
|
||||
clock-names = "uart", "clk_uart_baud0";
|
||||
power-domains = <&ps_uart0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
pmgr_gfx: power-management@290e80000 {
|
||||
compatible = "apple,t6030-pmgr", "apple,t8103-pmgr", "syscon", "simple-mfd";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
reg = <0x2 0x90e80000 0 0x4000>;
|
||||
/* child nodes are added in t6030-pmgr.dtsi */
|
||||
};
|
||||
|
||||
pinctrl_ap: pinctrl@347100000 {
|
||||
compatible = "apple,t6030-pinctrl", "apple,t8103-pinctrl";
|
||||
reg = <0x3 0x47100000 0x0 0x4000>;
|
||||
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <AIC_IRQ 273 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 274 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 275 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 276 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 277 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 278 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 279 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
||||
power-domains = <&ps_gpio>;
|
||||
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
gpio-ranges = <&pinctrl_ap 0 0 224>;
|
||||
apple,npins = <224>;
|
||||
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
|
||||
i2c1_pins: i2c1-pins {
|
||||
pinmux = <APPLE_PINMUX(37, 1)>,
|
||||
<APPLE_PINMUX(36, 1)>;
|
||||
};
|
||||
|
||||
i2c2_pins: i2c2-pins {
|
||||
pinmux = <APPLE_PINMUX(43, 1)>,
|
||||
<APPLE_PINMUX(42, 1)>;
|
||||
};
|
||||
|
||||
i2c3_pins: i2c3-pins {
|
||||
pinmux = <APPLE_PINMUX(41, 1)>,
|
||||
<APPLE_PINMUX(40, 1)>;
|
||||
};
|
||||
|
||||
i2c4_pins: i2c4-pins {
|
||||
pinmux = <APPLE_PINMUX(39, 1)>,
|
||||
<APPLE_PINMUX(38, 1)>;
|
||||
};
|
||||
|
||||
i2c6_pins: i2c6-pins {
|
||||
pinmux = <APPLE_PINMUX(47, 1)>,
|
||||
<APPLE_PINMUX(46, 1)>;
|
||||
};
|
||||
|
||||
i2c8_pins: i2c8-pins {
|
||||
pinmux = <APPLE_PINMUX(51, 1)>,
|
||||
<APPLE_PINMUX(50, 1)>;
|
||||
};
|
||||
};
|
||||
|
||||
pmgr: power-management@350700000 {
|
||||
compatible = "apple,t6030-pmgr", "apple,t8103-pmgr", "syscon", "simple-mfd";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
reg = <0x3 0x50700000 0 0x14000>;
|
||||
/* child nodes are added in t6030-pmgr.dtsi */
|
||||
};
|
||||
|
||||
aic: interrupt-controller@351000000 {
|
||||
compatible = "apple,t6030-aic3", "apple,t8122-aic3";
|
||||
#interrupt-cells = <3>;
|
||||
interrupt-controller;
|
||||
|
||||
reg = <0x3 0x51000000 0x0 0x184000>,
|
||||
<0x3 0x51040000 0x0 0x4000>;
|
||||
reg-names = "core", "event";
|
||||
power-domains = <&ps_aic>;
|
||||
};
|
||||
|
||||
pinctrl_nub: pinctrl@3641f0000 {
|
||||
compatible = "apple,t6030-pinctrl", "apple,t8103-pinctrl";
|
||||
reg = <0x3 0x641f0000 0x0 0x4000>;
|
||||
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <AIC_IRQ 472 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 473 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 474 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 475 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 476 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 477 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 478 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
gpio-ranges = <&pinctrl_nub 0 0 37>;
|
||||
apple,npins = <37>;
|
||||
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
pmgr_mini: power-management@364280000 {
|
||||
compatible = "apple,t6030-pmgr", "apple,t8103-pmgr", "syscon", "simple-mfd";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
reg = <0x3 0x64280000 0 0x4000>;
|
||||
/* child nodes are added in t6030-pmgr.dtsi */
|
||||
};
|
||||
|
||||
wdt: watchdog@3642b0000 {
|
||||
compatible = "apple,t6030-wdt", "apple,t8103-wdt";
|
||||
reg = <0x3 0x642b0000 0x0 0x4000>;
|
||||
clocks = <&clkref>;
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <AIC_IRQ 480 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
pinctrl_smc: pinctrl@36c820000 {
|
||||
compatible = "apple,t6030-pinctrl", "apple,t8103-pinctrl";
|
||||
reg = <0x3 0x6c820000 0x0 0x4000>;
|
||||
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
gpio-ranges = <&pinctrl_smc 0 0 18>;
|
||||
apple,npins = <18>;
|
||||
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <AIC_IRQ 545 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 546 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 547 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 548 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 549 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 550 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 551 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
pinctrl_aop: pinctrl@374824000 {
|
||||
compatible = "apple,t6030-pinctrl", "apple,t8103-pinctrl";
|
||||
reg = <0x3 0x74824000 0x0 0x4000>;
|
||||
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <AIC_IRQ 394 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 395 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 396 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 397 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 398 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 399 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<AIC_IRQ 400 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
||||
clocks = <&clkref>;
|
||||
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
gpio-ranges = <&pinctrl_aop 0 0 54>;
|
||||
apple,npins = <54>;
|
||||
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
#include "t6030-pmgr.dtsi"
|
||||
Loading…
Reference in New Issue
Block a user