// SPDX-License-Identifier: GPL-2.0
/dts-v1/;

#include <dt-bindings/input/input.h>
#include "tegra30-colibri.dtsi"

/ {
	model = "Toradex Colibri T30 on Colibri Evaluation Board";
	compatible = "toradex,colibri_t30-eval-v3", "toradex,colibri_t30",
		     "nvidia,tegra30";

	aliases {
		rtc0 = "/i2c@7000c000/rtc@68";
		rtc1 = "/i2c@7000d000/pmic@2d";
		rtc2 = "/rtc@7000e000";
		serial0 = &uarta;
		serial1 = &uartb;
		serial2 = &uartd;
	};

	chosen {
		stdout-path = "serial0:115200n8";
	};

	host1x@50000000 {
		dc@54200000 {
			rgb {
				status = "okay";
				nvidia,panel = <&panel>;
			};
		};

		hdmi@54280000 {
			status = "okay";
			hdmi-supply = <&reg_5v0>;
		};
	};

	/* Colibri UART-A */
	serial@70006000 {
		status = "okay";
	};

	/* Colibri UART-C */
	serial@70006040 {
		status = "okay";
	};

	/* Colibri UART-B */
	serial@70006300 {
		status = "okay";
	};

	pwm@7000a000 {
		status = "okay";
	};

	/*
	 * GEN1_I2C: I2C_SDA/SCL on SODIMM pin 194/196 (e.g. RTC on carrier
	 * board)
	 */
	i2c@7000c000 {
		status = "okay";
		clock-frequency = <400000>;

		/* M41T0M6 real time clock on carrier board */
		rtc@68 {
			compatible = "st,m41t0";
			reg = <0x68>;
		};
	};

	/* GEN2_I2C: unused */

	/* CAM_I2C (I2C3): unused */

	/* DDC_CLOCK/DATA on X3 pin 15/16 (e.g. display EDID) */
	i2c@7000c700 {
		status = "okay";
	};

	/* SPI1: Colibri SSP */
	spi@7000d400 {
		status = "okay";
		spi-max-frequency = <25000000>;

		can@0 {
			compatible = "microchip,mcp2515";
			reg = <0>;
			clocks = <&clk16m>;
			interrupt-parent = <&gpio>;
			/* CAN_INT */
			interrupts = <TEGRA_GPIO(S, 0) IRQ_TYPE_EDGE_FALLING>;
			spi-max-frequency = <10000000>;
			vdd-supply = <&reg_3v3>;
			xceiver-supply = <&reg_5v0>;
		};
	};

	/* SD/MMC */
	mmc@78000200 {
		status = "okay";
		bus-width = <4>;
		cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>; /* MMCD */
		no-1-8-v;
	};

	/* EHCI instance 0: USB1_DP/N -> USBC_P/N */
	usb@7d000000 {
		status = "okay";
		dr_mode = "otg";
	};

	usb-phy@7d000000 {
		status = "okay";
		vbus-supply = <&reg_usbc_vbus>;
	};

	/* EHCI instance 2: USB3_DP/N -> USBH_P/N */
	usb@7d008000 {
		status = "okay";
	};

	usb-phy@7d008000 {
		status = "okay";
		vbus-supply = <&reg_usbh_vbus>;
	};

	backlight: backlight {
		compatible = "pwm-backlight";
		brightness-levels = <255 128 64 32 16 8 4 0>;
		default-brightness-level = <6>;
		/* BL_ON */
		enable-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_HIGH>;
		power-supply = <&reg_3v3>;
		pwms = <&pwm 0 5000000>; /* PWM<A> */
	};

	clk16m: osc3 {
		compatible = "fixed-clock";
		#clock-cells = <0>;
		clock-frequency = <16000000>;
	};

	gpio-keys {
		compatible = "gpio-keys";

		wakeup {
			label = "SODIMM pin 45 wakeup";
			gpios = <&gpio TEGRA_GPIO(V, 1) GPIO_ACTIVE_HIGH>;
			linux,code = <KEY_WAKEUP>;
			debounce-interval = <10>;
			wakeup-source;
		};
	};

	panel: panel {
		/*
		 * edt,et057090dhu: EDT 5.7" LCD TFT
		 * edt,et070080dh6: EDT 7.0" LCD TFT
		 */
		compatible = "edt,et057090dhu";
		backlight = <&backlight>;
		power-supply = <&reg_3v3>;
	};

	reg_3v3: regulator-3v3 {
		compatible = "regulator-fixed";
		regulator-name = "3.3V_SW";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
	};

	reg_5v0: regulator-5v0 {
		compatible = "regulator-fixed";
		regulator-name = "5V_SW";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
	};

	reg_usbc_vbus: regulator-usbc-vbus {
		compatible = "regulator-fixed";
		regulator-name = "VCC_USB5";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		vin-supply = <&reg_5v0>;
	};

	/* USBH_PEN resp. USB_P_EN */
	reg_usbh_vbus: regulator-usbh-vbus {
		compatible = "regulator-fixed";
		regulator-name = "VCC_USB[1-4]";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		gpio = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
		vin-supply = <&reg_5v0>;
	};
};
