~funderscore blog cgit wiki get in touch
aboutsummaryrefslogtreecommitdiff
blob: b4bd8c4238ae64323ba002ff65a2fc82481c755b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
 * Apple M1 Mac mini, MacBook Air/Pro, iMac 24" (M1, 2020/2021)
 *
 * This file contains parts common to all Apple M1 devices using the t8103.
 *
 * target-type: J274, J293, J313, J456, J457
 *
 * Copyright The Asahi Linux Contributors
 */

#include <dt-bindings/spmi/spmi.h>

/ {
	aliases {
		serial0 = &serial0;
		serial2 = &serial2;
		wifi0 = &wifi0;
	};

	chosen {
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;

		stdout-path = "serial0";

		framebuffer0: framebuffer@0 {
			compatible = "apple,simple-framebuffer", "simple-framebuffer";
			reg = <0 0 0 0>; /* To be filled by loader */
			/* Format properties will be added by loader */
			status = "disabled";
		};
	};

	memory@800000000 {
		device_type = "memory";
		reg = <0x8 0 0x2 0>; /* To be filled by loader */
	};
};

&serial0 {
	status = "okay";
};

&serial2 {
	status = "okay";
};

&i2c0 {
	hpm0: usb-pd@38 {
		compatible = "apple,cd321x";
		reg = <0x38>;
		interrupt-parent = <&pinctrl_ap>;
		interrupts = <106 IRQ_TYPE_LEVEL_LOW>;
		interrupt-names = "irq";

		typec0: connector {
			compatible = "usb-c-connector";
			power-role = "dual";
			data-role = "dual";

			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					typec0_con_hs: endpoint {
						remote-endpoint = <&typec0_usb_hs>;
					};
				};
			};
		};
	};

	hpm1: usb-pd@3f {
		compatible = "apple,cd321x";
		reg = <0x3f>;
		interrupt-parent = <&pinctrl_ap>;
		interrupts = <106 IRQ_TYPE_LEVEL_LOW>;
		interrupt-names = "irq";

		typec1: connector {
			compatible = "usb-c-connector";
			power-role = "dual";
			data-role = "dual";

			ports {
				#address-cells = <1>;
				#size-cells = <0>;
				port@0 {
					reg = <0>;
					typec1_con_hs: endpoint {
						remote-endpoint = <&typec1_usb_hs>;
					};
				};
			};
		};
	};
};

/* USB controllers */
&dwc3_0 {
	port {
		typec0_usb_hs: endpoint {
			remote-endpoint = <&typec0_con_hs>;
		};
	};
};

&dwc3_1 {
	port {
		typec1_usb_hs: endpoint {
			remote-endpoint = <&typec1_con_hs>;
		};
	};
};

/*
 * Force the bus number assignments so that we can declare some of the
 * on-board devices and properties that are populated by the bootloader
 * (such as MAC addresses).
 */
&port00 {
	bus-range = <1 1>;
	pwren-gpios = <&smc 13 0>;
	wifi0: network@0,0 {
		compatible = "pci14e4,4425";
		reg = <0x10000 0x0 0x0 0x0 0x0>;
		/* To be filled by the loader */
		local-mac-address = [00 00 00 00 00 00];
		apple,antenna-sku = "XX";
	};
};

&spmi {
	status = "okay";

	pmu@f {
		compatible = "apple,sera-pmu";
		reg = <0xf SPMI_USID>;
	};
};