Devicetree
 help / color / mirror / Atom feed
* [PATCH v2 00/10] Initial Apple M3 Pro, Max and Ultra device trees
@ 2026-07-15  9:11 Janne Grunau
  2026-07-15  9:11 ` [PATCH v2 01/10] dt-bindings: arm: apple: Add M3 Pro/Max/Ultra devices (T603x) Janne Grunau
                   ` (10 more replies)
  0 siblings, 11 replies; 20+ messages in thread
From: Janne Grunau @ 2026-07-15  9:11 UTC (permalink / raw)
  To: Sven Peter, Janne Grunau, Neal Gompa, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Thomas Gleixner,
	Wim Van Sebroeck, Guenter Roeck, Andi Shyti,
	Uwe Kleine-König, Sasha Finkelstein
  Cc: asahi, linux-arm-kernel, devicetree, linux-kernel, linux-watchdog,
	linux-i2c, linux-pwm, Conor Dooley

This series adds device trees for Apple silicon devices with M3 Pro, Max
and Ultra SoCs. The M3 generation has fewer devices than their M1 and M2
predecessors. The only non-laptop device is the M3 Ultra Mac Studio. The
Laptops are the known 14 and 16-inch Macbook Pros now with M3 Pro and
M3 Max SoCs. The M3 Max variant with fewer CPU and GPU cores has
additionally only a 384-bit wide memory bus instead of 512-bit of the
full M3 Max. It has a separate identifier (T6034) and so there are six
laptop device trees.
Another difference to M1 and M2 Pro/Max/Ultra is that the M3 Pro is
distinct SoC design and not a smaller M3 Max. For this reason both M3
Max variants and the M3 Ultra will use "apple,t6030" as compatible
prefix. In the M1 and M2 generations Pro, Max and Ultra SoCs shared
"apple,t6000" / "apple,t6020" as common prefix. There is currently no
known difference but M3 Pro and M3 Max are not as closely related as
previously.

This series adds the same level of hardware as the base M3 (T8122) has
in v7.2-rc1. This includes CPU cores, interrupt controller, power
states, watchdog, serial, pin controller, i2c and the boot framebuffer.
This is intended as base so that support for additional hardware can be
added to all M3 based devices at the same time.

Merge strategy:
Since the dt-binding add new compatible strings without driver changes
it would be preferred if the whole [1] series would be merged through
apple-soc/arm-soc. This will help ensuring a warning free
`make dtbs_check` for followup series with additional M3* hardware
support I hope to send for this cycle.

This series will conflict with the M4 series [3] sent A couple of days
ago. I would prefer if this could be merged first (in order of SoC
release).

[1]: I see that the M4 watchdog change was already picked up by Guenter
     in [2]

Link: https://lore.kernel.org/asahi/a03c19ee-cf74-4f26-826d-f2bfb816fb3f@roeck-us.net/ [2]
Link: https://lore.kernel.org/asahi/20260705-apple-m4-initial-devicetrees-v1-0-e5655ee56523@cyberchaos.dev/ [3]

Signed-off-by: Janne Grunau <j@jannau.net>
---
Changes in v2:
- fix serial0 unit address in t6030.dtsi, drop erroneously added 0
- Fix device node reference in pinctrl_{nub,aop} gpio-ranges in t6030.dtsi
- fix i2c6 unit address in t6031-die0.dtsi
- fix cpu_p25 reg value in t6032.dtsi
- drop unnecessary aic interrupt-controller from t6032.dtsi
- drop "label" from keyboard pwm led node
- fix copy-n-pasted pinctrl in compatible strings in the apple,s5l-fpwm
  dt-binding commit message
- fix yamllint errors in apple.yaml and fix warnings in newly added
  lines
- fix typo in i2c commit message
- whitespace fixes in t6032.dtsi
- add missing Signed-off-by: for pmgr and pmgr-powerstates dt-bindings
  patches
- drop already picked-up "[PATCH 07/11] dt-bindings: pinctrl: apple,pinctrl: ..."
- add Conor's Accked-by: tags
- Link to v1: https://patch.msgid.link/20260709-apple-t603x-initial-devices-v1-0-55b305833123@jannau.net

---
Janne Grunau (10):
      dt-bindings: arm: apple: Add M3 Pro/Max/Ultra devices (T603x)
      dt-bindings: interrupt-controller: apple,aic2: Invert #interrupt-cells condition
      dt-bindings: interrupt-controller: apple,aic2: Add apple,t6031-aic3 compatible
      dt-bindings: arm: apple: apple,pmgr: Add t6030 and t6031 compatibles
      dt-bindings: power: apple,pmgr-pwrstate: Add t6030 and t6031 compatibles
      dt-bindings: watchdog: apple,wdt: Add t6030 and t6031 compatibles
      dt-bindings: i2c: apple,i2c: Add t6030 and t6031 compatibles
      dt-bindings: pwm: apple,s5l-fpwm: Add t6030 and t6031 compatibles
      arm64: dts: apple: Initial T603[124] (M3 Max and Ultra) device trees
      arm64: dts: apple: Initial T6030 (M3 Pro) device trees

 Documentation/devicetree/bindings/arm/apple.yaml   |   37 +
 .../devicetree/bindings/arm/apple/apple,pmgr.yaml  |    2 +
 .../devicetree/bindings/i2c/apple,i2c.yaml         |    2 +
 .../bindings/interrupt-controller/apple,aic2.yaml  |   10 +-
 .../bindings/power/apple,pmgr-pwrstate.yaml        |    2 +
 .../devicetree/bindings/pwm/apple,s5l-fpwm.yaml    |    2 +
 .../devicetree/bindings/watchdog/apple,wdt.yaml    |    2 +
 arch/arm64/boot/dts/apple/Makefile                 |    7 +
 arch/arm64/boot/dts/apple/t6030-j514s.dts          |   22 +
 arch/arm64/boot/dts/apple/t6030-j516s.dts          |   22 +
 arch/arm64/boot/dts/apple/t6030-pmgr.dtsi          | 1437 ++++++++++++
 arch/arm64/boot/dts/apple/t6030.dtsi               |  524 +++++
 arch/arm64/boot/dts/apple/t6031-base.dtsi          |  297 +++
 arch/arm64/boot/dts/apple/t6031-die0.dtsi          |  197 ++
 arch/arm64/boot/dts/apple/t6031-dieX.dtsi          |  107 +
 arch/arm64/boot/dts/apple/t6031-gpio-pins.dtsi     |   53 +
 arch/arm64/boot/dts/apple/t6031-j514c.dts          |   18 +
 arch/arm64/boot/dts/apple/t6031-j516c.dts          |   18 +
 arch/arm64/boot/dts/apple/t6031-pmgr.dtsi          | 2400 ++++++++++++++++++++
 arch/arm64/boot/dts/apple/t6031.dtsi               |   48 +
 arch/arm64/boot/dts/apple/t6032-j575d.dts          |   46 +
 arch/arm64/boot/dts/apple/t6032.dtsi               |  416 ++++
 arch/arm64/boot/dts/apple/t6034-j514m.dts          |   18 +
 arch/arm64/boot/dts/apple/t6034-j516m.dts          |   18 +
 arch/arm64/boot/dts/apple/t6034.dtsi               |   12 +
 arch/arm64/boot/dts/apple/t603x-j514-j516.dtsi     |   66 +
 26 files changed, 5779 insertions(+), 4 deletions(-)
---
base-commit: 5f883c28f3980af462a6332fd72ff184e6985711
change-id: 20260705-apple-t603x-initial-devices-2eeca2d9d25a

Best regards,
--  
Janne Grunau <j@jannau.net>


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2026-07-15 16:35 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-15  9:11 [PATCH v2 00/10] Initial Apple M3 Pro, Max and Ultra device trees Janne Grunau
2026-07-15  9:11 ` [PATCH v2 01/10] dt-bindings: arm: apple: Add M3 Pro/Max/Ultra devices (T603x) Janne Grunau
2026-07-15  9:11 ` [PATCH v2 02/10] dt-bindings: interrupt-controller: apple,aic2: Invert #interrupt-cells condition Janne Grunau
2026-07-15  9:24   ` sashiko-bot
2026-07-15  9:11 ` [PATCH v2 03/10] dt-bindings: interrupt-controller: apple,aic2: Add apple,t6031-aic3 compatible Janne Grunau
2026-07-15  9:11 ` [PATCH v2 04/10] dt-bindings: arm: apple: apple,pmgr: Add t6030 and t6031 compatibles Janne Grunau
2026-07-15  9:19   ` sashiko-bot
2026-07-15  9:11 ` [PATCH v2 05/10] dt-bindings: power: apple,pmgr-pwrstate: " Janne Grunau
2026-07-15  9:17   ` sashiko-bot
2026-07-15  9:11 ` [PATCH v2 06/10] dt-bindings: watchdog: apple,wdt: " Janne Grunau
2026-07-15 16:35   ` Guenter Roeck
2026-07-15  9:11 ` [PATCH v2 07/10] dt-bindings: i2c: apple,i2c: " Janne Grunau
2026-07-15  9:11 ` [PATCH v2 08/10] dt-bindings: pwm: apple,s5l-fpwm: " Janne Grunau
2026-07-15  9:11 ` [PATCH v2 09/10] arm64: dts: apple: Initial T603[124] (M3 Max and Ultra) device trees Janne Grunau
2026-07-15 14:46   ` Sven Peter
2026-07-15  9:11 ` [PATCH v2 10/10] arm64: dts: apple: Initial T6030 (M3 Pro) " Janne Grunau
2026-07-15  9:27   ` sashiko-bot
2026-07-15 14:46   ` Sven Peter
2026-07-15 15:55 ` [PATCH v2 00/10] Initial Apple M3 Pro, Max and Ultra " Guenter Roeck
2026-07-15 15:59   ` Sven Peter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox