linux/arch/arm64/boot/dts/ti/k3-am62-verdin-mallow.dtsi

// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/*
 * Copyright 2023 Toradex
 *
 * Common dtsi for Verdin AM62 SoM on Mallow carrier board
 *
 * https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62
 * https://www.toradex.com/products/carrier-board/mallow-carrier-board
 */

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

/ {
	leds {
		compatible = "gpio-leds";
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_qspi1_clk_gpio>,
			    <&pinctrl_qspi1_cs_gpio>,
			    <&pinctrl_qspi1_io0_gpio>,
			    <&pinctrl_qspi1_io1_gpio>;

		/* SODIMM 52 - USER_LED_1_RED */
		led-0 {
			color = <LED_COLOR_ID_RED>;
			function = LED_FUNCTION_DEBUG;
			function-enumerator = <1>;
			gpios = <&main_gpio0 0 GPIO_ACTIVE_HIGH>;
		};

		/* SODIMM 54 - USER_LED_1_GREEN */
		led-1 {
			color = <LED_COLOR_ID_GREEN>;
			function = LED_FUNCTION_DEBUG;
			function-enumerator = <1>;
			gpios = <&main_gpio0 11 GPIO_ACTIVE_HIGH>;
		};

		/* SODIMM 56 - USER_LED_2_RED */
		led-2 {
			color = <LED_COLOR_ID_RED>;
			function = LED_FUNCTION_DEBUG;
			function-enumerator = <2>;
			gpios = <&main_gpio0 3 GPIO_ACTIVE_HIGH>;
		};

		/* SODIMM 58 - USER_LED_2_GREEN */
		led-3 {
			color = <LED_COLOR_ID_GREEN>;
			function = LED_FUNCTION_DEBUG;
			function-enumerator = <2>;
			gpios = <&main_gpio0 4 GPIO_ACTIVE_HIGH>;
		};
	};
};

/* Verdin ETH */
&cpsw3g {
	status = "okay";
};

/* Verdin MDIO */
&cpsw3g_mdio {
	status = "okay";
};

/* Verdin ETH_1*/
&cpsw_port1 {
	status = "okay";
};

/* Verdin PWM_1 and PWM_2*/
&epwm0 {
	status = "okay";
};

/* Verdin PWM_3 DSI */
&epwm1 {
	status = "okay";
};

&main_gpio0 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_ctrl_sleep_moci>,
		    <&pinctrl_gpio_5>,
		    <&pinctrl_gpio_6>,
		    <&pinctrl_gpio_7>,
		    <&pinctrl_gpio_8>;
};

/* Verdin I2C_1 */
&main_i2c1 {
	status = "okay";

	/* Temperature sensor */
	sensor@4f {
		compatible = "ti,tmp1075";
		reg = <0x4f>;
	};

	/* EEPROM */
	eeprom@57 {
		compatible = "st,24c02", "atmel,24c02";
		reg = <0x57>;
		pagesize = <16>;
	};
};

/* Verdin I2C_2 DSI */
&main_i2c2 {
	status = "okay";
};

/* Verdin I2C_4 CSI */
&main_i2c3 {
	status = "okay";
};

/* Verdin CAN_1 */
&main_mcan0 {
	status = "okay";
};

/* Verdin SPI_1 */
&main_spi1 {
	pinctrl-0 = <&pinctrl_spi1>,
		    <&pinctrl_spi1_cs0>,
		    <&pinctrl_qspi1_cs2_gpio>;
	cs-gpios = <0>, <&main_gpio0 12 GPIO_ACTIVE_LOW>;
	status = "okay";

	tpm@1 {
		compatible = "infineon,slb9670", "tcg,tpm_tis-spi";
		reg = <1>;
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_qspi1_dqs_gpio>;
		interrupt-parent = <&main_gpio1>;
		interrupts = <18 IRQ_TYPE_EDGE_FALLING>;
		spi-max-frequency = <18500000>;
	};
};

/* Verdin UART_3 */
&main_uart0 {
	status = "okay";
};

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

&mcu_gpio0 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_gpio_1>,
		    <&pinctrl_gpio_2>,
		    <&pinctrl_gpio_3>,
		    <&pinctrl_gpio_4>,
		    <&pinctrl_pcie_1_reset>;
};

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

/* Verdin CAN_2 */
&mcu_mcan0 {
	status = "okay";
};

/* Verdin UART_4 */
&mcu_uart0 {
	status = "okay";
};

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

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

&usb0 {
	status = "okay";
};

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

&usb1 {
	status = "okay";
};

/* Verdin CTRL_WAKE1_MICO# */
&verdin_gpio_keys {
	status = "okay";
};

/* Verdin PCIE_1_RESET# */
&verdin_pcie_1_reset_hog {
	status = "okay";
};

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