xref: /openbmc/linux/Documentation/devicetree/bindings/arm/apple.yaml (revision 828fe6b6245bd9b20dbf3e0dd54c79b17be758e7)
1007bd423SHector Martin# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2007bd423SHector Martin%YAML 1.2
3007bd423SHector Martin---
4007bd423SHector Martin$id: http://devicetree.org/schemas/arm/apple.yaml#
5007bd423SHector Martin$schema: http://devicetree.org/meta-schemas/core.yaml#
6007bd423SHector Martin
7dd3cb467SAndrew Lunntitle: Apple ARM Machine
8007bd423SHector Martin
9007bd423SHector Martinmaintainers:
10007bd423SHector Martin  - Hector Martin <marcan@marcan.st>
11007bd423SHector Martin
12007bd423SHector Martindescription: |
13007bd423SHector Martin  ARM platforms using SoCs designed by Apple Inc., branded "Apple Silicon".
14007bd423SHector Martin
15ad156947SJanne Grunau  This currently includes devices based on the "M1" SoC:
16007bd423SHector Martin
17007bd423SHector Martin  - Mac mini (M1, 2020)
18007bd423SHector Martin  - MacBook Pro (13-inch, M1, 2020)
19007bd423SHector Martin  - MacBook Air (M1, 2020)
20ad156947SJanne Grunau  - iMac (24-inch, M1, 2021)
21007bd423SHector Martin
22*828fe6b6SJanne Grunau  Devices based on the "M2" SoC:
23*828fe6b6SJanne Grunau
24*828fe6b6SJanne Grunau  - MacBook Air (M2, 2022)
25*828fe6b6SJanne Grunau  - MacBook Pro (13-inch, M2, 2022)
26*828fe6b6SJanne Grunau  - Mac mini (M2, 2023)
27*828fe6b6SJanne Grunau
28a450fc9aSJanne Grunau  And devices based on the "M1 Pro", "M1 Max" and "M1 Ultra" SoCs:
29e15b8c85SHector Martin
30e15b8c85SHector Martin  - MacBook Pro (14-inch, M1 Pro, 2021)
31e15b8c85SHector Martin  - MacBook Pro (14-inch, M1 Max, 2021)
32e15b8c85SHector Martin  - MacBook Pro (16-inch, M1 Pro, 2021)
33e15b8c85SHector Martin  - MacBook Pro (16-inch, M1 Max, 2021)
34a450fc9aSJanne Grunau  - Mac Studio (M1 Max, 2022)
35a450fc9aSJanne Grunau  - Mac Studio (M1 Ultra, 2022)
36e15b8c85SHector Martin
37007bd423SHector Martin  The compatible property should follow this format:
38007bd423SHector Martin
39007bd423SHector Martin  compatible = "apple,<targettype>", "apple,<socid>", "apple,arm-platform";
40007bd423SHector Martin
41007bd423SHector Martin  <targettype> represents the board/device and comes from the `target-type`
42007bd423SHector Martin  property of the root node of the Apple Device Tree, lowercased. It can be
43007bd423SHector Martin  queried on macOS using the following command:
44007bd423SHector Martin
45007bd423SHector Martin  $ ioreg -d2 -l | grep target-type
46007bd423SHector Martin
47007bd423SHector Martin  <socid> is the lowercased SoC ID. Apple uses at least *five* different
48007bd423SHector Martin  names for their SoCs:
49007bd423SHector Martin
50007bd423SHector Martin  - Marketing name ("M1")
51007bd423SHector Martin  - Internal name ("H13G")
52007bd423SHector Martin  - Codename ("Tonga")
53007bd423SHector Martin  - SoC ID ("T8103")
54007bd423SHector Martin  - Package/IC part number ("APL1102")
55007bd423SHector Martin
56007bd423SHector Martin  Devicetrees should use the lowercased SoC ID, to avoid confusion if
57007bd423SHector Martin  multiple SoCs share the same marketing name. This can be obtained from
58007bd423SHector Martin  the `compatible` property of the arm-io node of the Apple Device Tree,
59007bd423SHector Martin  which can be queried as follows on macOS:
60007bd423SHector Martin
61007bd423SHector Martin  $ ioreg -n arm-io | grep compatible
62007bd423SHector Martin
63007bd423SHector Martinproperties:
64007bd423SHector Martin  $nodename:
65007bd423SHector Martin    const: "/"
66007bd423SHector Martin  compatible:
67007bd423SHector Martin    oneOf:
68007bd423SHector Martin      - description: Apple M1 SoC based platforms
69007bd423SHector Martin        items:
70007bd423SHector Martin          - enum:
71007bd423SHector Martin              - apple,j274 # Mac mini (M1, 2020)
72007bd423SHector Martin              - apple,j293 # MacBook Pro (13-inch, M1, 2020)
73007bd423SHector Martin              - apple,j313 # MacBook Air (M1, 2020)
74ad156947SJanne Grunau              - apple,j456 # iMac (24-inch, 4x USB-C, M1, 2021)
75ad156947SJanne Grunau              - apple,j457 # iMac (24-inch, 2x USB-C, M1, 2021)
76007bd423SHector Martin          - const: apple,t8103
77007bd423SHector Martin          - const: apple,arm-platform
78a450fc9aSJanne Grunau
79*828fe6b6SJanne Grunau      - description: Apple M2 SoC based platforms
80*828fe6b6SJanne Grunau        items:
81*828fe6b6SJanne Grunau          - enum:
82*828fe6b6SJanne Grunau              - apple,j413 # MacBook Air (M2, 2022)
83*828fe6b6SJanne Grunau              - apple,j473 # Mac mini (M2, 2023)
84*828fe6b6SJanne Grunau              - apple,j493 # MacBook Pro (13-inch, M2, 2022)
85*828fe6b6SJanne Grunau          - const: apple,t8112
86*828fe6b6SJanne Grunau          - const: apple,arm-platform
87*828fe6b6SJanne Grunau
88e15b8c85SHector Martin      - description: Apple M1 Pro SoC based platforms
89e15b8c85SHector Martin        items:
90e15b8c85SHector Martin          - enum:
91e15b8c85SHector Martin              - apple,j314s # MacBook Pro (14-inch, M1 Pro, 2021)
92e15b8c85SHector Martin              - apple,j316s # MacBook Pro (16-inch, M1 Pro, 2021)
93e15b8c85SHector Martin          - const: apple,t6000
94e15b8c85SHector Martin          - const: apple,arm-platform
95a450fc9aSJanne Grunau
96e15b8c85SHector Martin      - description: Apple M1 Max SoC based platforms
97e15b8c85SHector Martin        items:
98e15b8c85SHector Martin          - enum:
99e15b8c85SHector Martin              - apple,j314c # MacBook Pro (14-inch, M1 Max, 2021)
100e15b8c85SHector Martin              - apple,j316c # MacBook Pro (16-inch, M1 Max, 2021)
101a450fc9aSJanne Grunau              - apple,j375c # Mac Studio (M1 Max, 2022)
102e15b8c85SHector Martin          - const: apple,t6001
103e15b8c85SHector Martin          - const: apple,arm-platform
104007bd423SHector Martin
105a450fc9aSJanne Grunau      - description: Apple M1 Ultra SoC based platforms
106a450fc9aSJanne Grunau        items:
107a450fc9aSJanne Grunau          - enum:
108a450fc9aSJanne Grunau              - apple,j375d # Mac Studio (M1 Ultra, 2022)
109a450fc9aSJanne Grunau          - const: apple,t6002
110a450fc9aSJanne Grunau          - const: apple,arm-platform
111a450fc9aSJanne Grunau
112007bd423SHector MartinadditionalProperties: true
113007bd423SHector Martin
114007bd423SHector Martin...
115