// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
 * Apple M1 Mac mini, MacBook Air/Pro, iMac 24" (M1, 2020/2021)
 *
 * This file contains parts common to all Apple M1 devices using the t8103.
 *
 * target-type: J274, J293, J313, J456, J457
 *
 * Copyright The Asahi Linux Contributors
 */

/ {
	aliases {
		bluetooth0 = &bluetooth0;
		serial0 = &serial0;
		serial2 = &serial2;
		wifi0 = &wifi0;
	};

	chosen {
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;

		stdout-path = "serial0";

		framebuffer0: framebuffer@0 {
			compatible = "apple,simple-framebuffer", "simple-framebuffer";
			reg = <0 0 0 0>; /* To be filled by loader */
			/* Format properties will be added by loader */
			status = "disabled";
		};
	};

	memory@800000000 {
		device_type = "memory";
		reg = <0x8 0 0x2 0>; /* To be filled by loader */
	};
};

&serial0 {
	status = "okay";
};

&serial2 {
	status = "okay";
};

&i2c0 {
	hpm0: usb-pd@38 {
		compatible = "apple,cd321x";
		reg = <0x38>;
		interrupt-parent = <&pinctrl_ap>;
		interrupts = <106 IRQ_TYPE_LEVEL_LOW>;
		interrupt-names = "irq";
	};

	hpm1: usb-pd@3f {
		compatible = "apple,cd321x";
		reg = <0x3f>;
		interrupt-parent = <&pinctrl_ap>;
		interrupts = <106 IRQ_TYPE_LEVEL_LOW>;
		interrupt-names = "irq";
	};
};

/*
 * Force the bus number assignments so that we can declare some of the
 * on-board devices and properties that are populated by the bootloader
 * (such as MAC addresses).
 */
&port00 {
	bus-range = <1 1>;
	wifi0: network@0,0 {
		compatible = "pci14e4,4425";
		reg = <0x10000 0x0 0x0 0x0 0x0>;
		/* To be filled by the loader */
		local-mac-address = [00 00 00 00 00 00];
		apple,antenna-sku = "XX";
	};

	bluetooth0: bluetooth@0,1 {
		compatible = "pci14e4,5f69";
		reg = <0x10100 0x0 0x0 0x0 0x0>;
		/* To be filled by the loader */
		local-bd-address = [00 00 00 00 00 00];
	};
};

&nco_clkref {
	clock-frequency = <900000000>;
};