// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
 * Apple T6001 "M1 Max" SoC
 *
 * Other names: H13J, "Jade"
 *
 * Copyright The Asahi Linux Contributors
 */

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/apple-aic.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/pinctrl/apple.h>

#include "multi-die-cpp.h"

#include "t600x-common.dtsi"

/ {
	compatible = "apple,t6001", "apple,arm-platform";

	soc {
		compatible = "simple-bus";
		#address-cells = <2>;
		#size-cells = <2>;

		ranges;
		nonposted-mmio;

		// filled via templated includes at the end of the file
	};
};

#define DIE
#define DIE_NO 0

&{/soc} {
	#include "t600x-die0.dtsi"
	#include "t600x-dieX.dtsi"
	#include "t600x-nvme.dtsi"
};

#include "t600x-gpio-pins.dtsi"
#include "t600x-pmgr.dtsi"

#undef DIE
#undef DIE_NO


&aic {
	affinities {
		e-core-pmu-affinity {
			apple,fiq-index = <AIC_CPU_PMU_E>;
			cpus = <&cpu_e00 &cpu_e01>;
		};

		p-core-pmu-affinity {
			apple,fiq-index = <AIC_CPU_PMU_P>;
			cpus = <&cpu_p00 &cpu_p01 &cpu_p02 &cpu_p03
				&cpu_p10 &cpu_p11 &cpu_p12 &cpu_p13>;
		};
	};
};