// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
 * MacBook Pro (14/16-inch, 2021)
 *
 * This file contains the parts common to J314 and J316 devices with both t6000 and t6001.
 *
 * target-type: J314s / J314c / J316s / J316c
 *
 * Copyright The Asahi Linux Contributors
 */

#include <dt-bindings/leds/common.h>

/ {
	aliases {
		serial0 = &serial0;
		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@10000000000 {
		device_type = "memory";
		reg = <0x100 0 0x2 0>; /* To be filled by loader */
	};

	led-controller {
		compatible = "pwm-leds";
		led-0 {
			pwms = <&fpwm0 0 40000>;
			label = "kbd_backlight";
			function = LED_FUNCTION_KBD_BACKLIGHT;
			color = <LED_COLOR_ID_WHITE>;
			max-brightness = <255>;
			default-state = "keep";
		};
	};
};

&serial0 {
	status = "okay";
};

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

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

	hpm2: usb-pd@3b {
		compatible = "apple,cd321x";
		reg = <0x3b>;
		interrupt-parent = <&pinctrl_ap>;
		interrupts = <174 IRQ_TYPE_LEVEL_LOW>;
		interrupt-names = "irq";
	};

	/* MagSafe port */
	hpm5: usb-pd@3a {
		compatible = "apple,cd321x";
		reg = <0x3a>;
		interrupt-parent = <&pinctrl_ap>;
		interrupts = <174 IRQ_TYPE_LEVEL_LOW>;
		interrupt-names = "irq";
	};
};

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

/* PCIe devices */
&port00 {
	/* WLAN */
	bus-range = <1 1>;
	wifi0: wifi@0,0 {
		reg = <0x10000 0x0 0x0 0x0 0x0>;
		/* To be filled by the loader */
		local-mac-address = [00 10 18 00 00 10];
	};
};

&port01 {
	/* SD card reader */
	bus-range = <2 2>;
	sdhci0: mmc@0,0 {
		compatible = "pci17a0,9755";
		reg = <0x20000 0x0 0x0 0x0 0x0>;
		cd-inverted;
		wp-inverted;
	};
};

&fpwm0 {
	status = "okay";
};