From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CA66DC982DC for ; Fri, 18 Sep 2026 11:07:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Reply-To:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To: References:Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version: Subject:Date:From:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=7V6Locjof/vwaZfvC16hUUprV6Y7OU9kGqQa0t/rh0E=; b=NdwScNc9GgwiZ/KQsxEFgSesZ9 njGMXEx0xo2Qsk6h/8N6BLGFmT0xCDu6H6tketiLPBrxjXtjrWgRWRssDnEyjA6w1LaxneaYLag/9 cDHlCPD0+jvci7HAbJMOm8rHhgbAN96vdr7sYQXoAqNiJLFV7wuS7J2w4ufDQscklU2APJtzHFUfc NvMVKiq/cK/Q8eLhbgAtakPrlY08Ee9X6G8y+cLxIwpiUGdl+/aOpCJgw8RVlU1dyAB9H8IiyqADt soRfgYJ5ku20PN3shhGOQVvTDO6TZRRdFOtjO3jiXuiDLM/QBIgG+At/3IT0VcMHtrigQNDQl8avi 0k0QDbog==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1x7WQt-0000000EBKJ-2Uq7; Fri, 18 Sep 2026 11:07:07 +0000 Received: from sea.source.kernel.org ([172.234.252.31]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1x7WQd-0000000EBBt-340b for linux-arm-kernel@lists.infradead.org; Fri, 18 Sep 2026 11:06:51 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sea.source.kernel.org (Postfix) with ESMTP id E167444810; Fri, 18 Sep 2026 11:06:50 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPS id C1216C2BD04; Fri, 18 Sep 2026 11:06:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1789729610; bh=qHsL6nJsyo40SQoF4f2zG/1G7Q2hFBVFDBcl86L3XT0=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=q5T2KtYJKhJ0JzCYAxdNeZGSitzYhcILPav6v8QdKQlhjLlsQR3vmJJrOy2LOvlpq jmYdjRnKxlWQ/kweseZzrEyTcm287wUYHtYSBwNApNduxNIohRM/S9VlSO+NcRjkcM XS5PfPKWr9GOQgEP3LmwfxPhzwaBkVXopaDx8OStJNiZa7LokyphYFrju/jYPBMVae 0WKlUTqxKHmwrsZ65Qo8soksUi+m9NTTPe3nX7xH9806i1WJjont5Dznf4AAKQn2Ee gtzQEKaqM5e2er+lCHZCcLpQ5eYBz+0QNNv70biNZwhMhnPkf+5rEFSq8bJCydD5od y2OkOYN9MhQDg== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id AF539C982DC; Fri, 18 Sep 2026 11:06:50 +0000 (UTC) From: Michael Reeves via B4 Relay Date: Fri, 18 Sep 2026 21:06:52 +1000 Subject: [PATCH v2 09/10] arm64: dts: apple: Add MTP DockChannel HID nodes MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260918-apple-mtp-keyboard-final-v2-9-a5c685e50b60@gmail.com> References: <20260918-apple-mtp-keyboard-final-v2-0-a5c685e50b60@gmail.com> In-Reply-To: <20260918-apple-mtp-keyboard-final-v2-0-a5c685e50b60@gmail.com> To: Sven Peter , Janne Grunau , Neal Gompa , Jassi Brar , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Hector Martin , Michael Reeves , "Joerg Roedel (AMD)" , Will Deacon , Robin Murphy , Dmitry Torokhov , Jiri Kosina , Benjamin Tissoires Cc: asahi@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, iommu@lists.linux.dev, linux-input@vger.kernel.org, Yureka Lilian , Julian Braha , Sasha Finkelstein X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1789729608; l=10900; i=michael.reeves077@gmail.com; s=fedora-20260918; h=from:subject:message-id; bh=zxJFH8v87kXfldcYDDUIbUkkqOIeTECoXrgC66NUKAo=; b=FL36noEWeWzg5RfktCfwoWFBRW+/EOjlCwFzYYKkvnbxVC3JXZq4hRkHRNrgB/PsBY2fdo5fg 0Hp+NJiS3slDUV+nYX+e+BOAg+J8eTuBQ5oZUGGdPWUai4cjLq9oaMp X-Developer-Key: i=michael.reeves077@gmail.com; a=ed25519; pk=VJ0TvyQ9TvfzYZa908YSE9kpkjFLLD5luv0bERu+boc= X-Endpoint-Received: by B4 Relay for michael.reeves077@gmail.com/fedora-20260918 with auth_id=1035 X-Original-From: Michael Reeves X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: michael.reeves077@gmail.com Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Michael Reeves Add disabled MTP nodes for the Apple SoCs used by M2 and M3 systems. Each instance describes the RTKit ASC mailbox, MTP DART, DockChannel mailbox, and DockChannel HID client. Board files can enable them on machines that route internal input through MTP. Co-developed-by: Hector Martin Signed-off-by: Hector Martin Signed-off-by: Michael Reeves --- arch/arm64/boot/dts/apple/t602x-die0.dtsi | 46 ++++++++++++++++++++++++++++++ arch/arm64/boot/dts/apple/t6030.dtsi | 46 ++++++++++++++++++++++++++++++ arch/arm64/boot/dts/apple/t6031-die0.dtsi | 46 ++++++++++++++++++++++++++++++ arch/arm64/boot/dts/apple/t8112.dtsi | 46 ++++++++++++++++++++++++++++++ arch/arm64/boot/dts/apple/t8122.dtsi | 47 +++++++++++++++++++++++++++++++ 5 files changed, 231 insertions(+) diff --git a/arch/arm64/boot/dts/apple/t602x-die0.dtsi b/arch/arm64/boot/dts/apple/t602x-die0.dtsi index c33623f0e..5f62d0a9c 100644 --- a/arch/arm64/boot/dts/apple/t602x-die0.dtsi +++ b/arch/arm64/boot/dts/apple/t602x-die0.dtsi @@ -161,6 +161,52 @@ pinctrl_smc: pinctrl@2a2820000 { ; }; + mtp_mbox: mbox@2a9408000 { + compatible = "apple,t6020-asc-mailbox", "apple,asc-mailbox-v4"; + reg = <0x2 0xa9408000 0x0 0x4000>; + interrupt-parent = <&aic>; + interrupts = , + , + , + ; + interrupt-names = "send-empty", "send-not-empty", + "recv-empty", "recv-not-empty"; + #mbox-cells = <0>; + status = "disabled"; + }; + + mtp_dart: iommu@2a9808000 { + compatible = "apple,t6020-dart", "apple,t8110-dart"; + reg = <0x2 0xa9808000 0x0 0x4000>; + interrupt-parent = <&aic>; + interrupts = ; + #iommu-cells = <1>; + status = "disabled"; + }; + + mtp_dockchannel: mailbox@2a9b14000 { + compatible = "apple,t6020-dockchannel", "apple,t8112-dockchannel"; + reg = <0x2 0xa9b14000 0x0 0x4000>, + <0x2 0xa9b30000 0x0 0x4000>, + <0x2 0xa9b34000 0x0 0x4000>; + reg-names = "irq", "config", "data"; + interrupt-parent = <&aic>; + interrupts = ; + #mbox-cells = <0>; + status = "disabled"; + }; + + mtp_hid: hid@2a9400000 { + compatible = "apple,t6020-dockchannel-hid", "apple,t8112-dockchannel-hid"; + reg = <0x2 0xa9400000 0x0 0x4000>, + <0x2 0xa9c00000 0x0 0x100000>; + reg-names = "coproc-asc", "coproc-sram"; + mboxes = <&mtp_mbox>, <&mtp_dockchannel>; + mbox-names = "asc", "dockchannel"; + iommus = <&mtp_dart 1>; + status = "disabled"; + }; + sio_dart: iommu@39b008000 { compatible = "apple,t6020-dart", "apple,t8110-dart"; reg = <0x3 0x9b008000 0x0 0x8000>; diff --git a/arch/arm64/boot/dts/apple/t6030.dtsi b/arch/arm64/boot/dts/apple/t6030.dtsi index dda9568af..e460e547e 100644 --- a/arch/arm64/boot/dts/apple/t6030.dtsi +++ b/arch/arm64/boot/dts/apple/t6030.dtsi @@ -474,6 +474,52 @@ wdt: watchdog@3642b0000 { interrupts = ; }; + mtp_mbox: mbox@37a408000 { + compatible = "apple,t6030-asc-mailbox", "apple,asc-mailbox-v4"; + reg = <0x3 0x7a408000 0x0 0x4000>; + interrupt-parent = <&aic>; + interrupts = , + , + , + ; + interrupt-names = "send-empty", "send-not-empty", + "recv-empty", "recv-not-empty"; + #mbox-cells = <0>; + status = "disabled"; + }; + + mtp_dart: iommu@37a808000 { + compatible = "apple,t6030-dart", "apple,t8110-dart"; + reg = <0x3 0x7a808000 0x0 0x4000>; + interrupt-parent = <&aic>; + interrupts = ; + #iommu-cells = <1>; + status = "disabled"; + }; + + mtp_dockchannel: mailbox@37ab14000 { + compatible = "apple,t6030-dockchannel", "apple,t8112-dockchannel"; + reg = <0x3 0x7ab14000 0x0 0x4000>, + <0x3 0x7ab30000 0x0 0x4000>, + <0x3 0x7ab34000 0x0 0x4000>; + reg-names = "irq", "config", "data"; + interrupt-parent = <&aic>; + interrupts = ; + #mbox-cells = <0>; + status = "disabled"; + }; + + mtp_hid: hid@37a400000 { + compatible = "apple,t6030-dockchannel-hid", "apple,t8112-dockchannel-hid"; + reg = <0x3 0x7a400000 0x0 0x4000>, + <0x3 0x7ac00000 0x0 0x100000>; + reg-names = "coproc-asc", "coproc-sram"; + mboxes = <&mtp_mbox>, <&mtp_dockchannel>; + mbox-names = "asc", "dockchannel"; + iommus = <&mtp_dart 1>; + status = "disabled"; + }; + pinctrl_smc: pinctrl@36c820000 { compatible = "apple,t6030-pinctrl", "apple,t8103-pinctrl"; reg = <0x3 0x6c820000 0x0 0x4000>; diff --git a/arch/arm64/boot/dts/apple/t6031-die0.dtsi b/arch/arm64/boot/dts/apple/t6031-die0.dtsi index 47d08672a..d7a6d72b3 100644 --- a/arch/arm64/boot/dts/apple/t6031-die0.dtsi +++ b/arch/arm64/boot/dts/apple/t6031-die0.dtsi @@ -195,3 +195,49 @@ serial0: serial@391200000 { power-domains = <&ps_uart0>; status = "disabled"; }; + + mtp_mbox: mbox@2ac408000 { + compatible = "apple,t6031-asc-mailbox", "apple,asc-mailbox-v4"; + reg = <0x2 0xac408000 0x0 0x4000>; + interrupt-parent = <&aic>; + interrupts = , + , + , + ; + interrupt-names = "send-empty", "send-not-empty", + "recv-empty", "recv-not-empty"; + #mbox-cells = <0>; + status = "disabled"; + }; + + mtp_dart: iommu@2ac808000 { + compatible = "apple,t6031-dart", "apple,t8110-dart"; + reg = <0x2 0xac808000 0x0 0x4000>; + interrupt-parent = <&aic>; + interrupts = ; + #iommu-cells = <1>; + status = "disabled"; + }; + + mtp_dockchannel: mailbox@2acb14000 { + compatible = "apple,t6031-dockchannel", "apple,t8112-dockchannel"; + reg = <0x2 0xacb14000 0x0 0x4000>, + <0x2 0xacb30000 0x0 0x4000>, + <0x2 0xacb34000 0x0 0x4000>; + reg-names = "irq", "config", "data"; + interrupt-parent = <&aic>; + interrupts = ; + #mbox-cells = <0>; + status = "disabled"; + }; + + mtp_hid: hid@2ac400000 { + compatible = "apple,t6031-dockchannel-hid", "apple,t8112-dockchannel-hid"; + reg = <0x2 0xac400000 0x0 0x4000>, + <0x2 0xacc00000 0x0 0x100000>; + reg-names = "coproc-asc", "coproc-sram"; + mboxes = <&mtp_mbox>, <&mtp_dockchannel>; + mbox-names = "asc", "dockchannel"; + iommus = <&mtp_dart 1>; + status = "disabled"; + }; diff --git a/arch/arm64/boot/dts/apple/t8112.dtsi b/arch/arm64/boot/dts/apple/t8112.dtsi index ec248ca05..d5c2f35ef 100644 --- a/arch/arm64/boot/dts/apple/t8112.dtsi +++ b/arch/arm64/boot/dts/apple/t8112.dtsi @@ -987,6 +987,52 @@ pinctrl_aop: pinctrl@24a820000 { ; }; + mtp_mbox: mbox@24e408000 { + compatible = "apple,t8112-asc-mailbox", "apple,asc-mailbox-v4"; + reg = <0x2 0x4e408000 0x0 0x4000>; + interrupt-parent = <&aic>; + interrupts = , + , + , + ; + interrupt-names = "send-empty", "send-not-empty", + "recv-empty", "recv-not-empty"; + #mbox-cells = <0>; + status = "disabled"; + }; + + mtp_dart: iommu@24e808000 { + compatible = "apple,t8110-dart"; + reg = <0x2 0x4e808000 0x0 0x4000>; + interrupt-parent = <&aic>; + interrupts = ; + #iommu-cells = <1>; + status = "disabled"; + }; + + mtp_dockchannel: mailbox@24eb14000 { + compatible = "apple,t8112-dockchannel"; + reg = <0x2 0x4eb14000 0x0 0x4000>, + <0x2 0x4eb30000 0x0 0x4000>, + <0x2 0x4eb34000 0x0 0x4000>; + reg-names = "irq", "config", "data"; + interrupt-parent = <&aic>; + interrupts = ; + #mbox-cells = <0>; + status = "disabled"; + }; + + mtp_hid: hid@24e400000 { + compatible = "apple,t8112-dockchannel-hid"; + reg = <0x2 0x4e400000 0x0 0x4000>, + <0x2 0x4ec00000 0x0 0x100000>; + reg-names = "coproc-asc", "coproc-sram"; + mboxes = <&mtp_mbox>, <&mtp_dockchannel>; + mbox-names = "asc", "dockchannel"; + iommus = <&mtp_dart 1>; + status = "disabled"; + }; + ans_mbox: mbox@277408000 { compatible = "apple,t8112-asc-mailbox", "apple,asc-mailbox-v4"; reg = <0x2 0x77408000 0x0 0x4000>; diff --git a/arch/arm64/boot/dts/apple/t8122.dtsi b/arch/arm64/boot/dts/apple/t8122.dtsi index 1ee61c5b3..47102f431 100644 --- a/arch/arm64/boot/dts/apple/t8122.dtsi +++ b/arch/arm64/boot/dts/apple/t8122.dtsi @@ -438,6 +438,53 @@ pinctrl_aop: pinctrl@2f4824000 { , ; }; + + mtp_mbox: mbox@2fa408000 { + compatible = "apple,t8122-asc-mailbox", "apple,asc-mailbox-v4"; + reg = <0x2 0xfa408000 0x0 0x4000>; + interrupt-parent = <&aic>; + interrupts = , + , + , + ; + interrupt-names = "send-empty", "send-not-empty", + "recv-empty", "recv-not-empty"; + #mbox-cells = <0>; + status = "disabled"; + }; + + mtp_dart: iommu@2fa808000 { + compatible = "apple,t8122-dart", "apple,t8110-dart"; + reg = <0x2 0xfa808000 0x0 0x4000>; + interrupt-parent = <&aic>; + interrupts = ; + #iommu-cells = <1>; + status = "disabled"; + }; + + mtp_dockchannel: mailbox@2fab14000 { + compatible = "apple,t8122-dockchannel", "apple,t8112-dockchannel"; + reg = <0x2 0xfab14000 0x0 0x4000>, + <0x2 0xfab30000 0x0 0x4000>, + <0x2 0xfab34000 0x0 0x4000>; + reg-names = "irq", "config", "data"; + interrupt-parent = <&aic>; + interrupts = ; + #mbox-cells = <0>; + status = "disabled"; + }; + + mtp_hid: hid@2fa400000 { + compatible = "apple,t8122-dockchannel-hid", + "apple,t8112-dockchannel-hid"; + reg = <0x2 0xfa400000 0x0 0x4000>, + <0x2 0xfac00000 0x0 0x100000>; + reg-names = "coproc-asc", "coproc-sram"; + mboxes = <&mtp_mbox>, <&mtp_dockchannel>; + mbox-names = "asc", "dockchannel"; + iommus = <&mtp_dart 1>; + status = "disabled"; + }; }; }; -- 2.55.0