blob: a32ff0c9d7b0c2ec720e9d4cf8e769da6431fbba [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0+ OR MIT
2/*
3 * Devices used on both dies on the Apple T6002 "M1 Ultra" and present on
4 * Apple T6000/T6001 "M1 Pro/Max".
5 *
6 * Copyright The Asahi Linux Contributors
7 */
8
9 DIE_NODE(cpufreq_e): cpufreq@210e20000 {
10 compatible = "apple,t6000-cluster-cpufreq", "apple,t8103-cluster-cpufreq", "apple,cluster-cpufreq";
11 reg = <0x2 0x10e20000 0 0x1000>;
12 #performance-domain-cells = <0>;
13 };
14
15 DIE_NODE(cpufreq_p0): cpufreq@211e20000 {
16 compatible = "apple,t6000-cluster-cpufreq", "apple,t8103-cluster-cpufreq", "apple,cluster-cpufreq";
17 reg = <0x2 0x11e20000 0 0x1000>;
18 #performance-domain-cells = <0>;
19 };
20
21 DIE_NODE(cpufreq_p1): cpufreq@212e20000 {
22 compatible = "apple,t6000-cluster-cpufreq", "apple,t8103-cluster-cpufreq", "apple,cluster-cpufreq";
23 reg = <0x2 0x12e20000 0 0x1000>;
24 #performance-domain-cells = <0>;
25 };
26
27 DIE_NODE(pmgr): power-management@28e080000 {
28 compatible = "apple,t6000-pmgr", "apple,pmgr", "syscon", "simple-mfd";
29 #address-cells = <1>;
30 #size-cells = <1>;
31 reg = <0x2 0x8e080000 0 0x4000>;
32 };
33
34 DIE_NODE(pmgr_east): power-management@28e580000 {
35 compatible = "apple,t6000-pmgr", "apple,pmgr", "syscon", "simple-mfd";
36 #address-cells = <1>;
37 #size-cells = <1>;
38 reg = <0x2 0x8e580000 0 0xc000>;
39 };
40
41 DIE_NODE(pmgr_south): power-management@28e680000 {
42 compatible = "apple,t6000-pmgr", "apple,pmgr", "syscon", "simple-mfd";
43 #address-cells = <1>;
44 #size-cells = <1>;
45 reg = <0x2 0x8e680000 0 0xc000>;
46 };
47
48 DIE_NODE(pinctrl_nub): pinctrl@2921f0000 {
49 compatible = "apple,t6000-pinctrl", "apple,pinctrl";
50 reg = <0x2 0x921f0000 0x0 0x4000>;
51 power-domains = <&DIE_NODE(ps_nub_gpio)>;
52
53 gpio-controller;
54 #gpio-cells = <2>;
55 gpio-ranges = <&DIE_NODE(pinctrl_nub) 0 0 16>;
56 apple,npins = <16>;
57
58 interrupt-controller;
59 #interrupt-cells = <2>;
60 interrupt-parent = <&aic>;
61 interrupts = <AIC_IRQ DIE_NO 623 IRQ_TYPE_LEVEL_HIGH>,
62 <AIC_IRQ DIE_NO 624 IRQ_TYPE_LEVEL_HIGH>,
63 <AIC_IRQ DIE_NO 625 IRQ_TYPE_LEVEL_HIGH>,
64 <AIC_IRQ DIE_NO 626 IRQ_TYPE_LEVEL_HIGH>,
65 <AIC_IRQ DIE_NO 627 IRQ_TYPE_LEVEL_HIGH>,
66 <AIC_IRQ DIE_NO 628 IRQ_TYPE_LEVEL_HIGH>,
67 <AIC_IRQ DIE_NO 629 IRQ_TYPE_LEVEL_HIGH>;
68 };
69
70 DIE_NODE(pmgr_mini): power-management@292280000 {
71 compatible = "apple,t6000-pmgr", "apple,pmgr", "syscon", "simple-mfd";
72 #address-cells = <1>;
73 #size-cells = <1>;
74 reg = <0x2 0x92280000 0 0x4000>;
75 };
76
77 DIE_NODE(pinctrl_aop): pinctrl@293820000 {
78 compatible = "apple,t6000-pinctrl", "apple,pinctrl";
79 reg = <0x2 0x93820000 0x0 0x4000>;
80
81 gpio-controller;
82 #gpio-cells = <2>;
83 gpio-ranges = <&DIE_NODE(pinctrl_aop) 0 0 63>;
84 apple,npins = <63>;
85
86 interrupt-controller;
87 #interrupt-cells = <2>;
88 interrupt-parent = <&aic>;
89 interrupts = <AIC_IRQ DIE_NO 567 IRQ_TYPE_LEVEL_HIGH>,
90 <AIC_IRQ DIE_NO 568 IRQ_TYPE_LEVEL_HIGH>,
91 <AIC_IRQ DIE_NO 569 IRQ_TYPE_LEVEL_HIGH>,
92 <AIC_IRQ DIE_NO 570 IRQ_TYPE_LEVEL_HIGH>,
93 <AIC_IRQ DIE_NO 571 IRQ_TYPE_LEVEL_HIGH>,
94 <AIC_IRQ DIE_NO 572 IRQ_TYPE_LEVEL_HIGH>,
95 <AIC_IRQ DIE_NO 573 IRQ_TYPE_LEVEL_HIGH>;
96 };
97
98 DIE_NODE(pinctrl_ap): pinctrl@39b028000 {
99 compatible = "apple,t6000-pinctrl", "apple,pinctrl";
100 reg = <0x3 0x9b028000 0x0 0x4000>;
101
102 interrupt-parent = <&aic>;
103 interrupts = <AIC_IRQ DIE_NO 427 IRQ_TYPE_LEVEL_HIGH>,
104 <AIC_IRQ DIE_NO 428 IRQ_TYPE_LEVEL_HIGH>,
105 <AIC_IRQ DIE_NO 429 IRQ_TYPE_LEVEL_HIGH>,
106 <AIC_IRQ DIE_NO 430 IRQ_TYPE_LEVEL_HIGH>,
107 <AIC_IRQ DIE_NO 431 IRQ_TYPE_LEVEL_HIGH>,
108 <AIC_IRQ DIE_NO 432 IRQ_TYPE_LEVEL_HIGH>,
109 <AIC_IRQ DIE_NO 433 IRQ_TYPE_LEVEL_HIGH>;
110
111 clocks = <&clkref>;
112 power-domains = <&DIE_NODE(ps_gpio)>;
113
114 gpio-controller;
115 #gpio-cells = <2>;
116 gpio-ranges = <&DIE_NODE(pinctrl_ap) 0 0 255>;
117 apple,npins = <255>;
118
119 interrupt-controller;
120 #interrupt-cells = <2>;
121 };