// SPDX-License-Identifier: GPL-2.0 OR MIT
/*
 * Copyright (C) 2019 BayLibre SAS.
 * Author: Fabien Parent <fparent@baylibre.com>
 */

/dts-v1/;

#include <config.h>
#include "mt8516.dtsi"

/ {
	model = "Coral MT8516";

	chosen {
		stdout-path = &uart0;
	};

	memory@40000000 {
		device_type = "memory";
		reg = <0x40000000 0x20000000>;
	};

	reserved-memory {
		#address-cells = <2>;
		#size-cells = <2>;

		/* 128 KiB reserved for ARM Trusted Firmware (BL31) */
		bl31_secmon_reserved: secmon@43000000 {
			no-map;
			reg = <0 0x43000000 0 0x20000>;
		};
	};

	reg_1p8v: regulator-1p8v {
		compatible = "regulator-fixed";
		regulator-name = "fixed-1.8V";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
		regulator-boot-on;
		regulator-always-on;
	};

	reg_3p3v: regulator-3p3v {
		compatible = "regulator-fixed";
		regulator-name = "fixed-3.3V";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-boot-on;
		regulator-always-on;
	};

	i2c0: i2c@11009000 {
		status = "okay";
		compatible = "i2c-gpio";
		pinctrl-names = "default";
		pinctrl-0 = <&i2c0_pins>;
		gpios = <&gpio 58 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>,
		        <&gpio 59 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
		#address-cells = <1>;
		#size-cells = <0>;
	};

	i2c1: i2c@1100a000 {
		status = "okay";
		compatible = "i2c-gpio";
		pinctrl-names = "default";
		pinctrl-0 = <&i2c1_pins>;
		gpios = <&gpio 52 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>,
		        <&gpio 53 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
		#address-cells = <1>;
		#size-cells = <0>;
	};

	i2c2: i2c@1100b000 {
		status = "okay";
		compatible = "i2c-gpio";
		pinctrl-names = "default";
		pinctrl-0 = <&i2c2_pins>;
		gpios = <&gpio 60 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>,
		        <&gpio 61 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
		i2c-gpio,delay-us = <5>;
		#address-cells = <1>;
		#size-cells = <0>;

		a71ch: a71ch@49 {
			compatible = "nxp,a71ch";
			reg = <0x49>;
		};
	};
};

&mmc0 {
	pinctrl-names = "default";
	pinctrl-0 = <&mmc0_pins_default>;
	bus-width = <8>;
	max-frequency = <188000000>;
	cap-mmc-highspeed;
	mmc-hs200-1_8v;
	cap-mmc-hw-reset;
	latch-ck = <1>;
	vmmc-supply = <&reg_3p3v>;
	vqmmc-supply = <&reg_1p8v>;
	non-removable;
	status = "okay";
};

&pinctrl {
	mmc0_pins_default: mmc0default {
		mux {
			function = "msdc";
			groups =  "msdc0";
		};

		conf-cmd-data {
			pins = "MSDC0_CMD", "MSDC0_DAT0", "MSDC0_DAT1",
			       "MSDC0_DAT2", "MSDC0_DAT3", "MSDC0_DAT4",
			       "MSDC0_DAT5", "MSDC0_DAT6", "MSDC0_DAT7";
			input-enable;
			bias-pull-up;
		};

		conf-clk {
			pins = "MSDC0_CLK";
			bias-pull-down;
		};

		conf-rst {
			pins = "MSDC0_RSTB";
			bias-pull-up;
		};
	};

	uart0_pins: uart0 {
		mux {
			function = "uart";
			groups = "uart0_0_rxd_txd";
		};
	};

	i2c0_pins: i2c0 {
		mux {
			function = "i2c_gpio";
			groups = "i2c0";
		};
	};

	i2c1_pins: i2c1 {
		mux {
			function = "i2c_gpio";
			groups = "i2c1";
		};
	};

	i2c2_pins: i2c2 {
		mux {
			function = "i2c_gpio";
			groups = "i2c2";
		};
		conf_a71ch_reset {
			pins = "EINT23";
			output-high;
		};
	};
};

&uart0 {
	pinctrl-names = "default";
	pinctrl-0 = <&uart0_pins>;
	status = "okay";
};

&watchdog {
	status = "okay";
};

&usb0 {
	status = "okay";
};
