xref: /linux/Documentation/devicetree/bindings/arm/apple.yaml (revision bba2c3615bd6cfee7456d1130f2e6b01b3f4e9ba)
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/arm/apple.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Apple ARM Machine
8
9maintainers:
10  - Hector Martin <marcan@marcan.st>
11
12description: |
13  ARM platforms using SoCs designed by Apple Inc., branded "Apple Silicon".
14
15  This currently includes devices based on the "A7" SoC:
16
17  - iPhone 5s
18  - iPad Air (1)
19  - iPad mini 2
20  - iPad mini 3
21
22  Devices based on the "A8" SoC:
23
24  - iPhone 6
25  - iPhone 6 Plus
26  - iPad mini 4
27  - iPod touch 6
28  - Apple TV HD
29
30  Device based on the "A8X" SoC:
31
32  - iPad Air 2
33
34  Devices based on the "A9" SoC:
35
36  - iPhone 6s
37  - iPhone 6s Plus
38  - iPhone SE (2016)
39  - iPad 5
40
41  Devices based on the "A9X" SoC:
42
43  - iPad Pro (9.7-inch)
44  - iPad Pro (12.9-inch)
45
46  Devices based on the "A10" SoC:
47
48  - iPhone 7
49  - iPhone 7 Plus
50  - iPod touch 7
51  - iPad 6
52  - iPad 7
53
54  Devices based on the "A10X" SoC:
55
56  - Apple TV 4K (1st generation)
57  - iPad Pro (2nd Generation) (10.5 Inch)
58  - iPad Pro (2nd Generation) (12.9 Inch)
59
60  Devices based on the "T2" SoC:
61
62  - Apple T2 MacBookPro15,2 (j132)
63  - Apple T2 iMacPro1,1 (j137)
64  - Apple T2 MacBookAir8,2 (j140a)
65  - Apple T2 MacBookAir8,1 (j140k)
66  - Apple T2 MacBookPro16,1 (j152f)
67  - Apple T2 MacPro7,1 (j160)
68  - Apple T2 Macmini8,1 (j174)
69  - Apple T2 iMac20,1 (j185)
70  - Apple T2 iMac20,2 (j185f)
71  - Apple T2 MacBookPro15,4 (j213)
72  - Apple T2 MacBookPro16,2 (j214k)
73  - Apple T2 MacBookPro16,4 (j215)
74  - Apple T2 MacBookPro16,3 (j223)
75  - Apple T2 MacBookAir9,1 (j230k)
76  - Apple T2 MacBookPro15,1 (j680)
77  - Apple T2 MacBookPro15,3 (j780)
78
79  Devices based on the "A11" SoC:
80
81  - iPhone 8
82  - iPhone 8 Plus
83  - iPhone X
84
85  Devices based on the "M1" SoC:
86
87  - Mac mini (M1, 2020)
88  - MacBook Pro (13-inch, M1, 2020)
89  - MacBook Air (M1, 2020)
90  - iMac (24-inch, M1, 2021)
91
92  Devices based on the "M2" SoC:
93
94  - MacBook Air (M2, 2022)
95  - MacBook Air (15-inch, M2, 2023)
96  - MacBook Pro (13-inch, M2, 2022)
97  - Mac mini (M2, 2023)
98
99  Devices based on the "M3" SoC:
100
101  - MacBook Air (13-inch, M3, 2024)
102  - MacBook Air (15-inch, M3, 2024)
103  - MacBook Pro (14-inch, M3, 2023)
104  - iMac (24-inch, M3, 2023)
105
106  Devices based on the "M1 Pro", "M1 Max" and "M1 Ultra" SoCs:
107
108  - MacBook Pro (14-inch, M1 Pro, 2021)
109  - MacBook Pro (14-inch, M1 Max, 2021)
110  - MacBook Pro (16-inch, M1 Pro, 2021)
111  - MacBook Pro (16-inch, M1 Max, 2021)
112  - Mac Studio (M1 Max, 2022)
113  - Mac Studio (M1 Ultra, 2022)
114
115  Devices based on the "M2 Pro", "M2 Max" and "M2 Ultra" SoCs:
116
117  - MacBook Pro (14-inch, M2 Pro, 2023)
118  - MacBook Pro (14-inch, M2 Max, 2023)
119  - MacBook Pro (16-inch, M2 Pro, 2023)
120  - MacBook Pro (16-inch, M2 Max, 2023)
121  - Mac mini (M2 Pro, 2023)
122  - Mac Studio (M2 Max, 2023)
123  - Mac Studio (M2 Ultra, 2023)
124  - Mac Pro (M2 Ultra, 2023)
125
126  The compatible property should follow this format:
127
128  compatible = "apple,<targettype>", "apple,<socid>", "apple,arm-platform";
129
130  <targettype> represents the board/device and comes from the `target-type`
131  property of the root node of the Apple Device Tree, lowercased. It can be
132  queried on macOS using the following command:
133
134  $ ioreg -d2 -l | grep target-type
135
136  <socid> is the lowercased SoC ID. Apple uses at least *five* different
137  names for their SoCs:
138
139  - Marketing name ("M1")
140  - Internal name ("H13G")
141  - Codename ("Tonga")
142  - SoC ID ("T8103")
143  - Package/IC part number ("APL1102")
144
145  Devicetrees should use the lowercased SoC ID, to avoid confusion if
146  multiple SoCs share the same marketing name. This can be obtained from
147  the `compatible` property of the arm-io node of the Apple Device Tree,
148  which can be queried as follows on macOS:
149
150  $ ioreg -n arm-io | grep compatible
151
152properties:
153  $nodename:
154    const: "/"
155  compatible:
156    oneOf:
157      - description: Apple A7 SoC based platforms
158        items:
159          - enum:
160              - apple,j71  # iPad Air (Wi-Fi)
161              - apple,j72  # iPad Air (Cellular)
162              - apple,j73  # iPad Air (Cellular, China)
163              - apple,j85  # iPad mini 2 (Wi-Fi)
164              - apple,j85m # iPad mini 3 (Wi-Fi)
165              - apple,j86  # iPad mini 2 (Cellular)
166              - apple,j86m # iPad mini 3 (Cellular)
167              - apple,j87  # iPad mini 2 (Cellular, China)
168              - apple,j87m # iPad mini 3 (Cellular, China)
169              - apple,n51  # iPhone 5s (GSM)
170              - apple,n53  # iPhone 5s (LTE)
171          - const: apple,s5l8960x
172          - const: apple,arm-platform
173
174      - description: Apple A8 SoC based platforms
175        items:
176          - enum:
177              - apple,j42d # Apple TV HD
178              - apple,j96  # iPad mini 4 (Wi-Fi)
179              - apple,j97  # iPad mini 4 (Cellular)
180              - apple,n56  # iPhone 6 Plus
181              - apple,n61  # iPhone 6
182              - apple,n102 # iPod touch 6
183          - const: apple,t7000
184          - const: apple,arm-platform
185
186      - description: Apple A8X SoC based platforms
187        items:
188          - enum:
189              - apple,j81 # iPad Air 2 (Wi-Fi)
190              - apple,j82 # iPad Air 2 (Cellular)
191          - const: apple,t7001
192          - const: apple,arm-platform
193
194      - description: Apple Samsung A9 SoC based platforms
195        items:
196          - enum:
197              - apple,j71s # iPad 5 (Wi-Fi) (S8000)
198              - apple,j72s # iPad 5 (Cellular) (S8000)
199              - apple,n66  # iPhone 6s Plus (S8000)
200              - apple,n69u # iPhone SE (S8000)
201              - apple,n71  # iPhone 6S (S8000)
202          - const: apple,s8000
203          - const: apple,arm-platform
204
205      - description: Apple TSMC A9 SoC based platforms
206        items:
207          - enum:
208              - apple,j71t # iPad 5 (Wi-Fi) (S8003)
209              - apple,j72t # iPad 5 (Cellular) (S8003)
210              - apple,n66m # iPhone 6s Plus (S8003)
211              - apple,n69  # iPhone SE (S8003)
212              - apple,n71m # iPhone 6S (S8003)
213          - const: apple,s8003
214          - const: apple,arm-platform
215
216      - description: Apple A9X SoC based platforms
217        items:
218          - enum:
219              - apple,j127 # iPad Pro (9.7-inch) (Wi-Fi)
220              - apple,j128 # iPad Pro (9.7-inch) (Cellular)
221              - apple,j98a # iPad Pro (12.9-inch) (Wi-Fi)
222              - apple,j99a # iPad Pro (12.9-inch) (Cellular)
223          - const: apple,s8001
224          - const: apple,arm-platform
225
226      - description: Apple A10 SoC based platforms
227        items:
228          - enum:
229              - apple,d10  # iPhone 7 (Qualcomm)
230              - apple,d11  # iPhone 7 (Intel)
231              - apple,d101 # iPhone 7 Plus (Qualcomm)
232              - apple,d111 # iPhone 7 Plus (Intel)
233              - apple,j71b # iPad 6 (Wi-Fi)
234              - apple,j72b # iPad 6 (Cellular)
235              - apple,j171 # iPad 7 (Wi-Fi)
236              - apple,j172 # iPad 7 (Cellular)
237              - apple,n112 # iPod touch 7
238          - const: apple,t8010
239          - const: apple,arm-platform
240
241      - description: Apple A10X SoC based platforms
242        items:
243          - enum:
244              - apple,j105a # Apple TV 4K (1st Generation)
245              - apple,j120  # iPad Pro 2 (12.9-inch) (Wi-Fi)
246              - apple,j121  # iPad Pro 2 (12.9-inch) (Cellular)
247              - apple,j207  # iPad Pro 2 (10.5-inch) (Wi-Fi)
248              - apple,j208  # iPad Pro 2 (10.5-inch) (Cellular)
249          - const: apple,t8011
250          - const: apple,arm-platform
251
252      - description: Apple T2 SoC based platforms
253        items:
254          - enum:
255              - apple,j132  # Apple T2 MacBookPro15,2 (j132)
256              - apple,j137  # Apple T2 iMacPro1,1 (j137)
257              - apple,j140a # Apple T2 MacBookAir8,2 (j140a)
258              - apple,j140k # Apple T2 MacBookAir8,1 (j140k)
259              - apple,j152f # Apple T2 MacBookPro16,1 (j152f)
260              - apple,j160  # Apple T2 MacPro7,1 (j160)
261              - apple,j174  # Apple T2 Macmini8,1 (j174)
262              - apple,j185  # Apple T2 iMac20,1 (j185)
263              - apple,j185f # Apple T2 iMac20,2 (j185f)
264              - apple,j213  # Apple T2 MacBookPro15,4 (j213)
265              - apple,j214k # Apple T2 MacBookPro16,2 (j214k)
266              - apple,j215  # Apple T2 MacBookPro16,4 (j215)
267              - apple,j223  # Apple T2 MacBookPro16,3 (j223)
268              - apple,j230k # Apple T2 MacBookAir9,1 (j230k)
269              - apple,j680  # Apple T2 MacBookPro15,1 (j680)
270              - apple,j780  # Apple T2 MacBookPro15,3 (j780)
271          - const: apple,t8012
272          - const: apple,arm-platform
273
274      - description: Apple A11 SoC based platforms
275        items:
276          - enum:
277              - apple,d20  # iPhone 8 (Global)
278              - apple,d21  # iPhone 8 Plus (Global)
279              - apple,d22  # iPhone X (Global)
280              - apple,d201 # iPhone 8 (GSM)
281              - apple,d211 # iPhone 8 Plus (GSM)
282              - apple,d221 # iPhone X (GSM)
283          - const: apple,t8015
284          - const: apple,arm-platform
285
286      - description: Apple M1 SoC based platforms
287        items:
288          - enum:
289              - apple,j274 # Mac mini (M1, 2020)
290              - apple,j293 # MacBook Pro (13-inch, M1, 2020)
291              - apple,j313 # MacBook Air (M1, 2020)
292              - apple,j456 # iMac (24-inch, 4x USB-C, M1, 2021)
293              - apple,j457 # iMac (24-inch, 2x USB-C, M1, 2021)
294          - const: apple,t8103
295          - const: apple,arm-platform
296
297      - description: Apple M2 SoC based platforms
298        items:
299          - enum:
300              - apple,j413 # MacBook Air (M2, 2022)
301              - apple,j415 # MacBook Air (15-inch, M2, 2023)
302              - apple,j473 # Mac mini (M2, 2023)
303              - apple,j493 # MacBook Pro (13-inch, M2, 2022)
304          - const: apple,t8112
305          - const: apple,arm-platform
306
307      - description: Apple M3 SoC based platforms
308        items:
309          - enum:
310              - apple,j433 # iMac (24-inch, 2x USB-C, M3, 2023)
311              - apple,j434 # iMac (24-inch, 4x USB-C, M3, 2023)
312              - apple,j504 # MacBook Pro (14-inch, M3, 2023)
313              - apple,j613 # MacBook Air (13-inch, M3, 2024)
314              - apple,j615 # MacBook Air (15-inch, M3, 2024)
315          - const: apple,t8122
316          - const: apple,arm-platform
317
318      - description: Apple M1 Pro SoC based platforms
319        items:
320          - enum:
321              - apple,j314s # MacBook Pro (14-inch, M1 Pro, 2021)
322              - apple,j316s # MacBook Pro (16-inch, M1 Pro, 2021)
323          - const: apple,t6000
324          - const: apple,arm-platform
325
326      - description: Apple M1 Max SoC based platforms
327        items:
328          - enum:
329              - apple,j314c # MacBook Pro (14-inch, M1 Max, 2021)
330              - apple,j316c # MacBook Pro (16-inch, M1 Max, 2021)
331              - apple,j375c # Mac Studio (M1 Max, 2022)
332          - const: apple,t6001
333          - const: apple,arm-platform
334
335      - description: Apple M1 Ultra SoC based platforms
336        items:
337          - enum:
338              - apple,j375d # Mac Studio (M1 Ultra, 2022)
339          - const: apple,t6002
340          - const: apple,arm-platform
341
342      - description: Apple M2 Pro SoC based platforms
343        items:
344          - enum:
345              - apple,j414s # MacBook Pro (14-inch, M2 Pro, 2023)
346              - apple,j416s # MacBook Pro (16-inch, M2 Pro, 2023)
347              - apple,j474s # Mac mini (M2 Pro, 2023)
348          - const: apple,t6020
349          - const: apple,arm-platform
350
351      - description: Apple M2 Max SoC based platforms
352        items:
353          - enum:
354              - apple,j414c # MacBook Pro (14-inch, M2 Max, 2023)
355              - apple,j416c # MacBook Pro (16-inch, M2 Max, 2023)
356              - apple,j475c # Mac Studio (M2 Max, 2023)
357          - const: apple,t6021
358          - const: apple,arm-platform
359
360      - description: Apple M2 Ultra SoC based platforms
361        items:
362          - enum:
363              - apple,j180d # Mac Pro (M2 Ultra, 2023)
364              - apple,j475d # Mac Studio (M2 Ultra, 2023)
365          - const: apple,t6022
366          - const: apple,arm-platform
367
368additionalProperties: true
369
370...
371