// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/*
 * Copyright 2023 Toradex
 */

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

/ {
	native-hdmi-connector {
		compatible = "hdmi-connector";
		label = "J15";
		type = "a";

		port {
			native_hdmi_connector_in: endpoint {
				remote-endpoint = <&hdmi_tx_out>;
			};
		};
	};

	/* Carrier Board Supply +V1.8 */
	reg_1p8v: regulator-1p8v {
		compatible = "regulator-fixed";
		regulator-max-microvolt = <1800000>;
		regulator-min-microvolt = <1800000>;
		regulator-name = "+V1.8_SW";
	};

	/* Carrier Board Supply +V3.3 */
	reg_3p3v: regulator-3p3v {
		compatible = "regulator-fixed";
		regulator-max-microvolt = <3300000>;
		regulator-min-microvolt = <3300000>;
		regulator-name = "+V3.3_SW";
	};

	leds {
		compatible = "gpio-leds";

		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_leds_yavia>;

		/* SODIMM 52 - LD1_RED */
		led-0 {
			color = <LED_COLOR_ID_RED>;
			function = LED_FUNCTION_DEBUG;
			function-enumerator = <1>;
			gpios = <&gpio3 0 GPIO_ACTIVE_HIGH>;
		};
		/* SODIMM 54 - LD1_GREEN */
		led-1 {
			color = <LED_COLOR_ID_GREEN>;
			function = LED_FUNCTION_DEBUG;
			function-enumerator = <1>;
			gpios = <&gpio3 1 GPIO_ACTIVE_HIGH>;
		};
		/* SODIMM 56 - LD1_BLUE */
		led-2 {
			color = <LED_COLOR_ID_BLUE>;
			function = LED_FUNCTION_DEBUG;
			function-enumerator = <1>;
			gpios = <&gpio3 6 GPIO_ACTIVE_HIGH>;
		};
		/* SODIMM 58 - LD2_RED */
		led-3 {
			color = <LED_COLOR_ID_RED>;
			function = LED_FUNCTION_DEBUG;
			function-enumerator = <2>;
			gpios = <&gpio3 7 GPIO_ACTIVE_HIGH>;
		};
		/* SODIMM 60 - LD2_GREEN */
		led-4 {
			color = <LED_COLOR_ID_GREEN>;
			function = LED_FUNCTION_DEBUG;
			function-enumerator = <2>;
			gpios = <&gpio3 8 GPIO_ACTIVE_HIGH>;
		};
		/* SODIMM 62 - LD2_BLUE */
		led-5 {
			color = <LED_COLOR_ID_BLUE>;
			function = LED_FUNCTION_DEBUG;
			function-enumerator = <2>;
			gpios = <&gpio3 9 GPIO_ACTIVE_HIGH>;
		};
	};
};

&backlight {
	power-supply = <&reg_3p3v>;
};

/* Verdin SPI_1 */
&ecspi1 {
	status = "okay";
};

/* EEPROM on display adapter boards */
&eeprom_display_adapter {
	status = "okay";
};

/* EEPROM on Verdin Yavia board */
&eeprom_carrier_board {
	status = "okay";
};

&eqos {
	status = "okay";
};

&flexcan1 {
	status = "okay";
};

&gpio4 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_ctrl_sleep_moci>;
};

/* Verdin HDMI_1 */
&hdmi_pvi {
	status = "okay";
};

&hdmi_tx {
	status = "okay";

	ports {
		port@1 {
			hdmi_tx_out: endpoint {
				remote-endpoint = <&native_hdmi_connector_in>;
			};
		};
	};
};

&hdmi_tx_phy {
	status = "okay";
};

&hwmon_temp {
	status = "okay";
};

/* Verdin I2C_2_DSI */
&i2c2 {
	status = "okay";
};

&i2c3 {
	status = "okay";
};

&i2c4 {
	status = "okay";
};

/* Verdin I2C_3_HDMI */
&i2c5 {
	status = "okay";
};

&lcdif3 {
	status = "okay";
};

/* Verdin PCIE_1 */
&pcie {
	status = "okay";
};

&pcie_phy {
	status = "okay";
};

/* Verdin PWM_1 */
&pwm1 {
	status = "okay";
};

/* Verdin PWM_2 */
&pwm2 {
	status = "okay";
};

/* Verdin PWM_3_DSI */
&pwm3 {
	status = "okay";
};

&reg_usdhc2_vmmc {
	vin-supply = <&reg_3p3v>;
};

/* Verdin UART_1 */
&uart1 {
	status = "okay";
};

/* Verdin UART_2 */
&uart2 {
	status = "okay";
};

/* Verdin UART_3, used as the Linux Console */
&uart3 {
	status = "okay";
};

/* Verdin USB_1 */
&usb3_phy0 {
	status = "okay";
};

&usb3_0 {
	status = "okay";
};

&usb_dwc3_0 {
	status = "okay";
};

/* Verdin USB_2 */
&usb3_phy1 {
	status = "okay";
};

&usb3_1 {
	status = "okay";
};

&usb_dwc3_1 {
	status = "okay";
};

/* Verdin SD_1 */
&usdhc2 {
	status = "okay";
};

&iomuxc {
	pinctrl_leds_yavia: ledsyaviagrp {
		fsl,pins = <
			MX8MP_IOMUXC_NAND_ALE__GPIO3_IO00	0x106	/* SODIMM 52 */
			MX8MP_IOMUXC_NAND_CE0_B__GPIO3_IO01	0x106	/* SODIMM 54 */
			MX8MP_IOMUXC_NAND_DATA00__GPIO3_IO06	0x106	/* SODIMM 56 */
			MX8MP_IOMUXC_NAND_DATA01__GPIO3_IO07	0x106	/* SODIMM 58 */
			MX8MP_IOMUXC_NAND_DATA02__GPIO3_IO08	0x106	/* SODIMM 60 */
			MX8MP_IOMUXC_NAND_DATA03__GPIO3_IO09	0x106	/* SODIMM 62 */
		>;
	};

	pinctrl_gpios_ext_yavia: gpiosextyaviagrp {
		fsl,pins = <
			MX8MP_IOMUXC_NAND_CE1_B__GPIO3_IO02	0x106	/* SODIMM 64 */
			MX8MP_IOMUXC_NAND_DQS__GPIO3_IO14	0x106	/* SODIMM 66 */
		>;
	};
};
