xref: /linux/arch/arm64/boot/dts/apple/t600x-nvme.dtsi (revision c532de5a67a70f8533d495f8f2aaa9a0491c3ad0)
1// SPDX-License-Identifier: GPL-2.0+ OR MIT
2/*
3 * NVMe related devices for Apple T600x SoCs.
4 *
5 * Copyright The Asahi Linux Contributors
6 */
7
8	DIE_NODE(ans_mbox): mbox@38f408000 {
9		compatible = "apple,t6000-asc-mailbox", "apple,asc-mailbox-v4";
10		reg = <0x3 0x8f408000 0x0 0x4000>;
11		interrupt-parent = <&aic>;
12		interrupts = <AIC_IRQ DIE_NO 1069 IRQ_TYPE_LEVEL_HIGH>,
13			<AIC_IRQ DIE_NO 1070 IRQ_TYPE_LEVEL_HIGH>,
14			<AIC_IRQ DIE_NO 1071 IRQ_TYPE_LEVEL_HIGH>,
15			<AIC_IRQ DIE_NO 1072 IRQ_TYPE_LEVEL_HIGH>;
16		interrupt-names = "send-empty", "send-not-empty",
17			"recv-empty", "recv-not-empty";
18		power-domains = <&DIE_NODE(ps_ans2)>;
19		#mbox-cells = <0>;
20	};
21
22	DIE_NODE(sart): sart@393c50000 {
23		compatible = "apple,t6000-sart";
24		reg = <0x3 0x93c50000 0x0 0x10000>;
25		power-domains = <&DIE_NODE(ps_ans2)>;
26	};
27
28	DIE_NODE(nvme): nvme@393cc0000 {
29		compatible = "apple,t6000-nvme-ans2", "apple,nvme-ans2";
30		reg = <0x3 0x93cc0000 0x0 0x40000>, <0x3 0x8f400000 0x0 0x4000>;
31		reg-names = "nvme", "ans";
32		interrupt-parent = <&aic>;
33		/* The NVME interrupt is always routed to die */
34		interrupts = <AIC_IRQ 0 1613 IRQ_TYPE_LEVEL_HIGH>;
35		mboxes = <&DIE_NODE(ans_mbox)>;
36		apple,sart = <&DIE_NODE(sart)>;
37		power-domains = <&DIE_NODE(ps_ans2)>,
38			<&DIE_NODE(ps_apcie_st_sys)>,
39			<&DIE_NODE(ps_apcie_st1_sys)>;
40		power-domain-names = "ans", "apcie0", "apcie1";
41		resets = <&DIE_NODE(ps_ans2)>;
42	};
43