| # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/arm/apple.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Apple ARM Machine |
| |
| maintainers: |
| - Hector Martin <marcan@marcan.st> |
| |
| description: | |
| ARM platforms using SoCs designed by Apple Inc., branded "Apple Silicon". |
| |
| This currently includes devices based on the "M1" SoC: |
| |
| - Mac mini (M1, 2020) |
| - MacBook Pro (13-inch, M1, 2020) |
| - MacBook Air (M1, 2020) |
| - iMac (24-inch, M1, 2021) |
| |
| And devices based on the "M1 Pro", "M1 Max" and "M1 Ultra" SoCs: |
| |
| - MacBook Pro (14-inch, M1 Pro, 2021) |
| - MacBook Pro (14-inch, M1 Max, 2021) |
| - MacBook Pro (16-inch, M1 Pro, 2021) |
| - MacBook Pro (16-inch, M1 Max, 2021) |
| - Mac Studio (M1 Max, 2022) |
| - Mac Studio (M1 Ultra, 2022) |
| |
| The compatible property should follow this format: |
| |
| compatible = "apple,<targettype>", "apple,<socid>", "apple,arm-platform"; |
| |
| <targettype> represents the board/device and comes from the `target-type` |
| property of the root node of the Apple Device Tree, lowercased. It can be |
| queried on macOS using the following command: |
| |
| $ ioreg -d2 -l | grep target-type |
| |
| <socid> is the lowercased SoC ID. Apple uses at least *five* different |
| names for their SoCs: |
| |
| - Marketing name ("M1") |
| - Internal name ("H13G") |
| - Codename ("Tonga") |
| - SoC ID ("T8103") |
| - Package/IC part number ("APL1102") |
| |
| Devicetrees should use the lowercased SoC ID, to avoid confusion if |
| multiple SoCs share the same marketing name. This can be obtained from |
| the `compatible` property of the arm-io node of the Apple Device Tree, |
| which can be queried as follows on macOS: |
| |
| $ ioreg -n arm-io | grep compatible |
| |
| properties: |
| $nodename: |
| const: "/" |
| compatible: |
| oneOf: |
| - description: Apple M1 SoC based platforms |
| items: |
| - enum: |
| - apple,j274 # Mac mini (M1, 2020) |
| - apple,j293 # MacBook Pro (13-inch, M1, 2020) |
| - apple,j313 # MacBook Air (M1, 2020) |
| - apple,j456 # iMac (24-inch, 4x USB-C, M1, 2021) |
| - apple,j457 # iMac (24-inch, 2x USB-C, M1, 2021) |
| - const: apple,t8103 |
| - const: apple,arm-platform |
| |
| - description: Apple M1 Pro SoC based platforms |
| items: |
| - enum: |
| - apple,j314s # MacBook Pro (14-inch, M1 Pro, 2021) |
| - apple,j316s # MacBook Pro (16-inch, M1 Pro, 2021) |
| - const: apple,t6000 |
| - const: apple,arm-platform |
| |
| - description: Apple M1 Max SoC based platforms |
| items: |
| - enum: |
| - apple,j314c # MacBook Pro (14-inch, M1 Max, 2021) |
| - apple,j316c # MacBook Pro (16-inch, M1 Max, 2021) |
| - apple,j375c # Mac Studio (M1 Max, 2022) |
| - const: apple,t6001 |
| - const: apple,arm-platform |
| |
| - description: Apple M1 Ultra SoC based platforms |
| items: |
| - enum: |
| - apple,j375d # Mac Studio (M1 Ultra, 2022) |
| - const: apple,t6002 |
| - const: apple,arm-platform |
| |
| additionalProperties: true |
| |
| ... |