17c77ab91SJanne Grunau// SPDX-License-Identifier: GPL-2.0+ OR MIT
27c77ab91SJanne Grunau/*
37c77ab91SJanne Grunau * Apple iMac (24-inch, 4x USB-C, M1, 2020)
47c77ab91SJanne Grunau *
57c77ab91SJanne Grunau * target-type: J456
67c77ab91SJanne Grunau *
77c77ab91SJanne Grunau * Copyright The Asahi Linux Contributors
87c77ab91SJanne Grunau */
97c77ab91SJanne Grunau
107c77ab91SJanne Grunau/dts-v1/;
117c77ab91SJanne Grunau
127c77ab91SJanne Grunau#include "t8103.dtsi"
137c77ab91SJanne Grunau#include "t8103-jxxx.dtsi"
147c77ab91SJanne Grunau
157c77ab91SJanne Grunau/ {
167c77ab91SJanne Grunau	compatible = "apple,j456", "apple,t8103", "apple,arm-platform";
176053bb2cSHector Martin	model = "Apple iMac (24-inch, 4x USB-C, M1, 2021)";
187c77ab91SJanne Grunau
197c77ab91SJanne Grunau	aliases {
207c77ab91SJanne Grunau		ethernet0 = &ethernet0;
217c77ab91SJanne Grunau	};
227c77ab91SJanne Grunau};
237c77ab91SJanne Grunau
247a73b976SSven Peter&bluetooth0 {
257a73b976SSven Peter	brcm,board-type = "apple,capri";
267a73b976SSven Peter};
277a73b976SSven Peter
284302b3fbSHector Martin&wifi0 {
294302b3fbSHector Martin	brcm,board-type = "apple,capri";
304302b3fbSHector Martin};
314302b3fbSHector Martin
32c03edf1cSJanne Grunau&i2c0 {
33c03edf1cSJanne Grunau	hpm2: usb-pd@3b {
34c03edf1cSJanne Grunau		compatible = "apple,cd321x";
35c03edf1cSJanne Grunau		reg = <0x3b>;
36c03edf1cSJanne Grunau		interrupt-parent = <&pinctrl_ap>;
37c03edf1cSJanne Grunau		interrupts = <106 IRQ_TYPE_LEVEL_LOW>;
38c03edf1cSJanne Grunau		interrupt-names = "irq";
39c03edf1cSJanne Grunau	};
40c03edf1cSJanne Grunau
41c03edf1cSJanne Grunau	hpm3: usb-pd@3c {
42c03edf1cSJanne Grunau		compatible = "apple,cd321x";
43c03edf1cSJanne Grunau		reg = <0x3c>;
44c03edf1cSJanne Grunau		interrupt-parent = <&pinctrl_ap>;
45c03edf1cSJanne Grunau		interrupts = <106 IRQ_TYPE_LEVEL_LOW>;
46c03edf1cSJanne Grunau		interrupt-names = "irq";
47c03edf1cSJanne Grunau	};
48c03edf1cSJanne Grunau};
49c03edf1cSJanne Grunau
507c77ab91SJanne Grunau/*
517c77ab91SJanne Grunau * Force the bus number assignments so that we can declare some of the
527c77ab91SJanne Grunau * on-board devices and properties that are populated by the bootloader
537c77ab91SJanne Grunau * (such as MAC addresses).
547c77ab91SJanne Grunau */
557c77ab91SJanne Grunau
567c77ab91SJanne Grunau&port01 {
577c77ab91SJanne Grunau	bus-range = <2 2>;
58*a0189fdfSJanne Grunau	status = "okay";
597c77ab91SJanne Grunau};
607c77ab91SJanne Grunau
617c77ab91SJanne Grunau&port02 {
627c77ab91SJanne Grunau	bus-range = <3 3>;
63*a0189fdfSJanne Grunau	status = "okay";
647c77ab91SJanne Grunau	ethernet0: ethernet@0,0 {
657c77ab91SJanne Grunau		reg = <0x30000 0x0 0x0 0x0 0x0>;
667c77ab91SJanne Grunau		/* To be filled by the loader */
677c77ab91SJanne Grunau		local-mac-address = [00 10 18 00 00 00];
687c77ab91SJanne Grunau	};
697c77ab91SJanne Grunau};
70*a0189fdfSJanne Grunau
71*a0189fdfSJanne Grunau&pcie0_dart_1 {
72*a0189fdfSJanne Grunau	status = "okay";
73*a0189fdfSJanne Grunau};
74*a0189fdfSJanne Grunau
75*a0189fdfSJanne Grunau&pcie0_dart_2 {
76*a0189fdfSJanne Grunau	status = "okay";
77*a0189fdfSJanne Grunau};
78