17b0b0191SHector Martin// SPDX-License-Identifier: GPL-2.0+ OR MIT
27b0b0191SHector Martin/*
37b0b0191SHector Martin * Devices used on both dies on the Apple T6002 "M1 Ultra" and present on
47b0b0191SHector Martin * Apple T6000/T6001 "M1 Pro/Max".
57b0b0191SHector Martin *
67b0b0191SHector Martin * Copyright The Asahi Linux Contributors
77b0b0191SHector Martin */
87b0b0191SHector Martin
9*d32c1530SHector Martin	DIE_NODE(cpufreq_e): cpufreq@210e20000 {
10*d32c1530SHector Martin		compatible = "apple,t6000-cluster-cpufreq", "apple,t8103-cluster-cpufreq", "apple,cluster-cpufreq";
11*d32c1530SHector Martin		reg = <0x2 0x10e20000 0 0x1000>;
12*d32c1530SHector Martin		#performance-domain-cells = <0>;
13*d32c1530SHector Martin	};
14*d32c1530SHector Martin
15*d32c1530SHector Martin	DIE_NODE(cpufreq_p0): cpufreq@211e20000 {
16*d32c1530SHector Martin		compatible = "apple,t6000-cluster-cpufreq", "apple,t8103-cluster-cpufreq", "apple,cluster-cpufreq";
17*d32c1530SHector Martin		reg = <0x2 0x11e20000 0 0x1000>;
18*d32c1530SHector Martin		#performance-domain-cells = <0>;
19*d32c1530SHector Martin	};
20*d32c1530SHector Martin
21*d32c1530SHector Martin	DIE_NODE(cpufreq_p1): cpufreq@212e20000 {
22*d32c1530SHector Martin		compatible = "apple,t6000-cluster-cpufreq", "apple,t8103-cluster-cpufreq", "apple,cluster-cpufreq";
23*d32c1530SHector Martin		reg = <0x2 0x12e20000 0 0x1000>;
24*d32c1530SHector Martin		#performance-domain-cells = <0>;
25*d32c1530SHector Martin	};
26*d32c1530SHector Martin
277b0b0191SHector Martin	DIE_NODE(pmgr): power-management@28e080000 {
287b0b0191SHector Martin		compatible = "apple,t6000-pmgr", "apple,pmgr", "syscon", "simple-mfd";
297b0b0191SHector Martin		#address-cells = <1>;
307b0b0191SHector Martin		#size-cells = <1>;
317b0b0191SHector Martin		reg = <0x2 0x8e080000 0 0x4000>;
327b0b0191SHector Martin	};
337b0b0191SHector Martin
347b0b0191SHector Martin	DIE_NODE(pmgr_east): power-management@28e580000 {
357b0b0191SHector Martin		compatible = "apple,t6000-pmgr", "apple,pmgr", "syscon", "simple-mfd";
367b0b0191SHector Martin		#address-cells = <1>;
377b0b0191SHector Martin		#size-cells = <1>;
387b0b0191SHector Martin		reg = <0x2 0x8e580000 0 0xc000>;
397b0b0191SHector Martin	};
407b0b0191SHector Martin
417b0b0191SHector Martin	DIE_NODE(pmgr_south): power-management@28e680000 {
427b0b0191SHector Martin		compatible = "apple,t6000-pmgr", "apple,pmgr", "syscon", "simple-mfd";
437b0b0191SHector Martin		#address-cells = <1>;
447b0b0191SHector Martin		#size-cells = <1>;
457b0b0191SHector Martin		reg = <0x2 0x8e680000 0 0xc000>;
467b0b0191SHector Martin	};
477b0b0191SHector Martin
487b0b0191SHector Martin	DIE_NODE(pinctrl_nub): pinctrl@2921f0000 {
497b0b0191SHector Martin		compatible = "apple,t6000-pinctrl", "apple,pinctrl";
507b0b0191SHector Martin		reg = <0x2 0x921f0000 0x0 0x4000>;
517b0b0191SHector Martin		power-domains = <&DIE_NODE(ps_nub_gpio)>;
527b0b0191SHector Martin
537b0b0191SHector Martin		gpio-controller;
547b0b0191SHector Martin		#gpio-cells = <2>;
557b0b0191SHector Martin		gpio-ranges = <&DIE_NODE(pinctrl_nub) 0 0 16>;
567b0b0191SHector Martin		apple,npins = <16>;
577b0b0191SHector Martin
587b0b0191SHector Martin		interrupt-controller;
597b0b0191SHector Martin		#interrupt-cells = <2>;
607b0b0191SHector Martin		interrupt-parent = <&aic>;
617b0b0191SHector Martin		interrupts = <AIC_IRQ DIE_NO 623 IRQ_TYPE_LEVEL_HIGH>,
627b0b0191SHector Martin				<AIC_IRQ DIE_NO 624 IRQ_TYPE_LEVEL_HIGH>,
637b0b0191SHector Martin				<AIC_IRQ DIE_NO 625 IRQ_TYPE_LEVEL_HIGH>,
647b0b0191SHector Martin				<AIC_IRQ DIE_NO 626 IRQ_TYPE_LEVEL_HIGH>,
657b0b0191SHector Martin				<AIC_IRQ DIE_NO 627 IRQ_TYPE_LEVEL_HIGH>,
667b0b0191SHector Martin				<AIC_IRQ DIE_NO 628 IRQ_TYPE_LEVEL_HIGH>,
677b0b0191SHector Martin				<AIC_IRQ DIE_NO 629 IRQ_TYPE_LEVEL_HIGH>;
687b0b0191SHector Martin	};
697b0b0191SHector Martin
707b0b0191SHector Martin	DIE_NODE(pmgr_mini): power-management@292280000 {
717b0b0191SHector Martin		compatible = "apple,t6000-pmgr", "apple,pmgr", "syscon", "simple-mfd";
727b0b0191SHector Martin		#address-cells = <1>;
737b0b0191SHector Martin		#size-cells = <1>;
747b0b0191SHector Martin		reg = <0x2 0x92280000 0 0x4000>;
757b0b0191SHector Martin	};
767b0b0191SHector Martin
777b0b0191SHector Martin	DIE_NODE(pinctrl_aop): pinctrl@293820000 {
787b0b0191SHector Martin		compatible = "apple,t6000-pinctrl", "apple,pinctrl";
797b0b0191SHector Martin		reg = <0x2 0x93820000 0x0 0x4000>;
807b0b0191SHector Martin
817b0b0191SHector Martin		gpio-controller;
827b0b0191SHector Martin		#gpio-cells = <2>;
837b0b0191SHector Martin		gpio-ranges = <&DIE_NODE(pinctrl_aop) 0 0 63>;
847b0b0191SHector Martin		apple,npins = <63>;
857b0b0191SHector Martin
867b0b0191SHector Martin		interrupt-controller;
877b0b0191SHector Martin		#interrupt-cells = <2>;
887b0b0191SHector Martin		interrupt-parent = <&aic>;
897b0b0191SHector Martin		interrupts = <AIC_IRQ DIE_NO 567 IRQ_TYPE_LEVEL_HIGH>,
907b0b0191SHector Martin				<AIC_IRQ DIE_NO 568 IRQ_TYPE_LEVEL_HIGH>,
917b0b0191SHector Martin				<AIC_IRQ DIE_NO 569 IRQ_TYPE_LEVEL_HIGH>,
927b0b0191SHector Martin				<AIC_IRQ DIE_NO 570 IRQ_TYPE_LEVEL_HIGH>,
937b0b0191SHector Martin				<AIC_IRQ DIE_NO 571 IRQ_TYPE_LEVEL_HIGH>,
947b0b0191SHector Martin				<AIC_IRQ DIE_NO 572 IRQ_TYPE_LEVEL_HIGH>,
957b0b0191SHector Martin				<AIC_IRQ DIE_NO 573 IRQ_TYPE_LEVEL_HIGH>;
967b0b0191SHector Martin	};
977b0b0191SHector Martin
987b0b0191SHector Martin	DIE_NODE(pinctrl_ap): pinctrl@39b028000 {
997b0b0191SHector Martin		compatible = "apple,t6000-pinctrl", "apple,pinctrl";
1007b0b0191SHector Martin		reg = <0x3 0x9b028000 0x0 0x4000>;
1017b0b0191SHector Martin
1027b0b0191SHector Martin		interrupt-parent = <&aic>;
1037b0b0191SHector Martin		interrupts = <AIC_IRQ DIE_NO 427 IRQ_TYPE_LEVEL_HIGH>,
1047b0b0191SHector Martin				<AIC_IRQ DIE_NO 428 IRQ_TYPE_LEVEL_HIGH>,
1057b0b0191SHector Martin				<AIC_IRQ DIE_NO 429 IRQ_TYPE_LEVEL_HIGH>,
1067b0b0191SHector Martin				<AIC_IRQ DIE_NO 430 IRQ_TYPE_LEVEL_HIGH>,
1077b0b0191SHector Martin				<AIC_IRQ DIE_NO 431 IRQ_TYPE_LEVEL_HIGH>,
1087b0b0191SHector Martin				<AIC_IRQ DIE_NO 432 IRQ_TYPE_LEVEL_HIGH>,
1097b0b0191SHector Martin				<AIC_IRQ DIE_NO 433 IRQ_TYPE_LEVEL_HIGH>;
1107b0b0191SHector Martin
1117b0b0191SHector Martin		clocks = <&clkref>;
1127b0b0191SHector Martin		power-domains = <&DIE_NODE(ps_gpio)>;
1137b0b0191SHector Martin
1147b0b0191SHector Martin		gpio-controller;
1157b0b0191SHector Martin		#gpio-cells = <2>;
1167b0b0191SHector Martin		gpio-ranges = <&DIE_NODE(pinctrl_ap) 0 0 255>;
1177b0b0191SHector Martin		apple,npins = <255>;
1187b0b0191SHector Martin
1197b0b0191SHector Martin		interrupt-controller;
1207b0b0191SHector Martin		#interrupt-cells = <2>;
1217b0b0191SHector Martin	};
122