Skip to content

Commit 9fd44b4

Browse files
committed
arm64: dts: apple: Add DockChannel HID nodes
Add the required nodes for DockChannel, DockChannel HID and MTP (a coprocessor that facilitates DockChannel HID communication) to t602x and t8112 (the only currently in-tree DTs which support DockChannel HID). They are disabled by default, to be enabled only on the laptop variants of these chipsets which actually have the internal HID hardware. Co-developed-by: Hector Martin <[email protected]> Signed-off-by: Hector Martin <[email protected]> Signed-off-by: Michael Reeves <[email protected]>
1 parent 5df278c commit 9fd44b4

2 files changed

Lines changed: 135 additions & 0 deletions

File tree

arch/arm64/boot/dts/apple/t602x-die0.dtsi

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,73 @@
144144
<AIC_IRQ 0 857 IRQ_TYPE_LEVEL_HIGH>;
145145
};
146146

147+
mtp: mtp@2a9400000 {
148+
compatible = "apple,t6020-mtp";
149+
reg = <0x2 0xa9400000 0x0 0x4000>,
150+
<0x2 0xa9c00000 0x0 0x100000>;
151+
reg-names = "asc", "sram";
152+
153+
status = "disabled";
154+
};
155+
156+
mtp_mbox: mbox@2a9408000 {
157+
compatible = "apple,t6020-asc-mailbox", "apple,asc-mailbox-v4";
158+
reg = <0x2 0xa9408000 0x0 0x4000>;
159+
interrupt-parent = <&aic>;
160+
interrupts = <AIC_IRQ 0 693 IRQ_TYPE_LEVEL_HIGH>,
161+
<AIC_IRQ 0 694 IRQ_TYPE_LEVEL_HIGH>,
162+
<AIC_IRQ 0 695 IRQ_TYPE_LEVEL_HIGH>,
163+
<AIC_IRQ 0 696 IRQ_TYPE_LEVEL_HIGH>;
164+
interrupt-names = "send-empty", "send-not-empty",
165+
"recv-empty", "recv-not-empty";
166+
#mbox-cells = <0>;
167+
168+
status = "disabled";
169+
};
170+
171+
mtp_dart: iommu@2a9808000 {
172+
compatible = "apple,t6020-dart", "apple,t8110-dart";
173+
reg = <0x2 0xa9808000 0x0 0x4000>;
174+
interrupt-parent = <&aic>;
175+
interrupts = <AIC_IRQ 0 676 IRQ_TYPE_LEVEL_HIGH>;
176+
#iommu-cells = <1>;
177+
178+
status = "disabled";
179+
};
180+
181+
mtp_dockchannel: fifo@2a9b14000 {
182+
compatible = "apple,t6020-dockchannel";
183+
reg = <0x2 0xa9b14000 0x0 0x4000>;
184+
185+
interrupt-parent = <&aic>;
186+
interrupts = <AIC_IRQ 0 677 IRQ_TYPE_LEVEL_HIGH>;
187+
188+
ranges = <0 0x2 0xa9b28000 0x20000>;
189+
nonposted-mmio;
190+
#address-cells = <1>;
191+
#size-cells = <1>;
192+
193+
interrupt-controller;
194+
#interrupt-cells = <2>;
195+
196+
status = "disabled";
197+
198+
mtp_hid: input@8000 {
199+
compatible = "apple,t6020-dockchannel-hid";
200+
reg = <0x8000 0x4000>, <0xc000 0x4000>;
201+
reg-names = "config", "data";
202+
203+
mboxes = <&mtp_mbox>;
204+
iommus = <&mtp_dart 1>;
205+
apple,mtp = <&mtp>;
206+
207+
interrupt-parent = <&mtp_dockchannel>;
208+
interrupts = <2 IRQ_TYPE_LEVEL_HIGH>,
209+
<3 IRQ_TYPE_LEVEL_HIGH>;
210+
interrupt-names = "tx", "rx";
211+
};
212+
};
213+
147214
sio_dart: iommu@39b008000 {
148215
compatible = "apple,t6020-dart", "apple,t8110-dart";
149216
reg = <0x3 0x9b008000 0x0 0x8000>;

arch/arm64/boot/dts/apple/t8112.dtsi

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -976,6 +976,74 @@
976976
<AIC_IRQ 307 IRQ_TYPE_LEVEL_HIGH>;
977977
};
978978

979+
mtp: mtp@24e400000 {
980+
compatible = "apple,t8112-mtp", "apple,t6020-mtp";
981+
reg = <0x2 0x4e400000 0x0 0x4000>,
982+
<0x2 0x4ec00000 0x0 0x100000>;
983+
reg-names = "asc", "sram";
984+
985+
status = "disabled";
986+
};
987+
988+
mtp_mbox: mbox@24e408000 {
989+
compatible = "apple,t8112-asc-mailbox", "apple,asc-mailbox-v4";
990+
reg = <0x2 0x4e408000 0x0 0x4000>;
991+
interrupt-parent = <&aic>;
992+
interrupts = <AIC_IRQ 864 IRQ_TYPE_LEVEL_HIGH>,
993+
<AIC_IRQ 865 IRQ_TYPE_LEVEL_HIGH>,
994+
<AIC_IRQ 866 IRQ_TYPE_LEVEL_HIGH>,
995+
<AIC_IRQ 867 IRQ_TYPE_LEVEL_HIGH>;
996+
interrupt-names = "send-empty", "send-not-empty",
997+
"recv-empty", "recv-not-empty";
998+
#mbox-cells = <0>;
999+
1000+
status = "disabled";
1001+
};
1002+
1003+
mtp_dart: iommu@24e808000 {
1004+
compatible = "apple,t8110-dart";
1005+
reg = <0x2 0x4e808000 0x0 0x4000>;
1006+
interrupt-parent = <&aic>;
1007+
interrupts = <AIC_IRQ 848 IRQ_TYPE_LEVEL_HIGH>;
1008+
#iommu-cells = <1>;
1009+
1010+
status = "disabled";
1011+
};
1012+
1013+
mtp_dockchannel: fifo@24eb14000 {
1014+
compatible = "apple,t8112-dockchannel", "apple,t6020-dockchannel";
1015+
reg = <0x2 0x4eb14000 0x0 0x4000>;
1016+
1017+
interrupt-parent = <&aic>;
1018+
interrupts = <AIC_IRQ 850 IRQ_TYPE_LEVEL_HIGH>;
1019+
1020+
ranges = <0 0x2 0x4eb28000 0x20000>;
1021+
nonposted-mmio;
1022+
#address-cells = <1>;
1023+
#size-cells = <1>;
1024+
1025+
interrupt-controller;
1026+
#interrupt-cells = <2>;
1027+
1028+
status = "disabled";
1029+
1030+
mtp_hid: input@8000 {
1031+
compatible = "apple,t8112-dockchannel-hid",
1032+
"apple,t6020-dockchannel-hid";
1033+
reg = <0x8000 0x4000>, <0xc000 0x4000>;
1034+
reg-names = "config", "data";
1035+
1036+
mboxes = <&mtp_mbox>;
1037+
iommus = <&mtp_dart 1>;
1038+
apple,mtp = <&mtp>;
1039+
1040+
interrupt-parent = <&mtp_dockchannel>;
1041+
interrupts = <2 IRQ_TYPE_LEVEL_HIGH>,
1042+
<3 IRQ_TYPE_LEVEL_HIGH>;
1043+
interrupt-names = "tx", "rx";
1044+
};
1045+
};
1046+
9791047
ans_mbox: mbox@277408000 {
9801048
compatible = "apple,t8112-asc-mailbox", "apple,asc-mailbox-v4";
9811049
reg = <0x2 0x77408000 0x0 0x4000>;

0 commit comments

Comments
 (0)