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 "M1" SoC: 16 17 - Mac mini (M1, 2020) 18 - MacBook Pro (13-inch, M1, 2020) 19 - MacBook Air (M1, 2020) 20 - iMac (24-inch, M1, 2021) 21 22 Devices based on the "M2" SoC: 23 24 - MacBook Air (M2, 2022) 25 - MacBook Pro (13-inch, M2, 2022) 26 - Mac mini (M2, 2023) 27 28 And devices based on the "M1 Pro", "M1 Max" and "M1 Ultra" SoCs: 29 30 - MacBook Pro (14-inch, M1 Pro, 2021) 31 - MacBook Pro (14-inch, M1 Max, 2021) 32 - MacBook Pro (16-inch, M1 Pro, 2021) 33 - MacBook Pro (16-inch, M1 Max, 2021) 34 - Mac Studio (M1 Max, 2022) 35 - Mac Studio (M1 Ultra, 2022) 36 37 The compatible property should follow this format: 38 39 compatible = "apple,<targettype>", "apple,<socid>", "apple,arm-platform"; 40 41 <targettype> represents the board/device and comes from the `target-type` 42 property of the root node of the Apple Device Tree, lowercased. It can be 43 queried on macOS using the following command: 44 45 $ ioreg -d2 -l | grep target-type 46 47 <socid> is the lowercased SoC ID. Apple uses at least *five* different 48 names for their SoCs: 49 50 - Marketing name ("M1") 51 - Internal name ("H13G") 52 - Codename ("Tonga") 53 - SoC ID ("T8103") 54 - Package/IC part number ("APL1102") 55 56 Devicetrees should use the lowercased SoC ID, to avoid confusion if 57 multiple SoCs share the same marketing name. This can be obtained from 58 the `compatible` property of the arm-io node of the Apple Device Tree, 59 which can be queried as follows on macOS: 60 61 $ ioreg -n arm-io | grep compatible 62 63properties: 64 $nodename: 65 const: "/" 66 compatible: 67 oneOf: 68 - description: Apple M1 SoC based platforms 69 items: 70 - enum: 71 - apple,j274 # Mac mini (M1, 2020) 72 - apple,j293 # MacBook Pro (13-inch, M1, 2020) 73 - apple,j313 # MacBook Air (M1, 2020) 74 - apple,j456 # iMac (24-inch, 4x USB-C, M1, 2021) 75 - apple,j457 # iMac (24-inch, 2x USB-C, M1, 2021) 76 - const: apple,t8103 77 - const: apple,arm-platform 78 79 - description: Apple M2 SoC based platforms 80 items: 81 - enum: 82 - apple,j413 # MacBook Air (M2, 2022) 83 - apple,j473 # Mac mini (M2, 2023) 84 - apple,j493 # MacBook Pro (13-inch, M2, 2022) 85 - const: apple,t8112 86 - const: apple,arm-platform 87 88 - description: Apple M1 Pro SoC based platforms 89 items: 90 - enum: 91 - apple,j314s # MacBook Pro (14-inch, M1 Pro, 2021) 92 - apple,j316s # MacBook Pro (16-inch, M1 Pro, 2021) 93 - const: apple,t6000 94 - const: apple,arm-platform 95 96 - description: Apple M1 Max SoC based platforms 97 items: 98 - enum: 99 - apple,j314c # MacBook Pro (14-inch, M1 Max, 2021) 100 - apple,j316c # MacBook Pro (16-inch, M1 Max, 2021) 101 - apple,j375c # Mac Studio (M1 Max, 2022) 102 - const: apple,t6001 103 - const: apple,arm-platform 104 105 - description: Apple M1 Ultra SoC based platforms 106 items: 107 - enum: 108 - apple,j375d # Mac Studio (M1 Ultra, 2022) 109 - const: apple,t6002 110 - const: apple,arm-platform 111 112additionalProperties: true 113 114... 115