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

/ {
	reg_1v8_sw: regulator-1v8-sw {
		compatible = "regulator-fixed";
		regulator-max-microvolt = <1800000>;
		regulator-min-microvolt = <1800000>;
		regulator-name = "On-carrier +V1.8_SW";
	};

	sound {
		compatible = "simple-audio-card";
		simple-audio-card,bitclock-master = <&codec_dai>;
		simple-audio-card,format = "i2s";
		simple-audio-card,frame-master = <&codec_dai>;
		simple-audio-card,name = "verdin-wm8904";
		simple-audio-card,mclk-fs = <256>;
		simple-audio-card,routing =
			"Headphone Jack", "HPOUTL",
			"Headphone Jack", "HPOUTR",
			"IN2L", "Line In Jack",
			"IN2R", "Line In Jack",
			"Headphone Jack", "MICBIAS",
			"IN1L", "Headphone Jack";
		simple-audio-card,widgets =
			"Microphone", "Headphone Jack",
			"Headphone", "Headphone Jack",
			"Line", "Line In Jack";

		codec_dai: simple-audio-card,codec {
			sound-dai = <&wm8904_1a>;
		};

		simple-audio-card,cpu {
			sound-dai = <&mcasp0>;
		};
	};

	reg_usb_hub: regulator-usb-hub {
		compatible = "regulator-fixed";
		enable-active-high;
		/* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */
		gpio = <&main_gpio0 31 GPIO_ACTIVE_HIGH>;
		regulator-boot-on;
		regulator-name = "HUB_PWR_EN";
	};
};

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

/* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */
&cpsw3g_mdio {
	status = "okay";
};

/* Verdin ETH_1 (On-module PHY) */
&cpsw_port1 {
	status = "okay";
};

/* Verdin PWM_1, 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";

	/* Audio Codec */
	wm8904_1a: audio-codec@1a {
		compatible = "wlf,wm8904";
		reg = <0x1a>;
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_i2s1_mclk>;
		#sound-dai-cells = <0>;
		clocks = <&audio_refclk1>;
		clock-names = "mclk";
		AVDD-supply = <&reg_1v8_sw>;
		CPVDD-supply = <&reg_1v8_sw>;
		DBVDD-supply = <&reg_1v8_sw>;
		DCVDD-supply = <&reg_1v8_sw>;
		MICVDD-supply = <&reg_1v8_sw>;
	};

	/* Current measurement into module VCC */
	hwmon@40 {
		compatible = "ti,ina219";
		reg = <0x40>;
		shunt-resistor = <10000>;
	};

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

	/* EEPROM */
	eeprom@57 {
		compatible = "st,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 {
	status = "okay";
};

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

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

/* Verdin I2S_1 */
&mcasp0 {
	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 QSPI_1 */
&ospi0 {
	status = "okay";
};

/* Do not force CTRL_SLEEP_MOCI# always enabled */
&reg_force_sleep_moci {
	status = "disabled";
};

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

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

&usb0 {
	status = "okay";
};

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

&usb1 {
	#address-cells = <1>;
	#size-cells = <0>;
	status = "okay";

	usb-hub@1 {
		compatible = "usb424,2744";
		reg = <1>;
		vdd-supply = <&reg_usb_hub>;
	};
};

/* 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";
};
