// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
//
// Copyright 2017 NXP

#include "imx7d-pico.dtsi"

/ {
	model = "TechNexion PICO-IMX7D Board using Hobbit baseboard";
	compatible = "technexion,imx7d-pico-hobbit", "fsl,imx7d";

	leds {
		compatible = "gpio-leds";
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_gpio_leds>;

		led {
			label = "gpio-led";
			gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
		};
	};

	sound {
		compatible = "simple-audio-card";
		simple-audio-card,name = "imx7-sgtl5000";
		simple-audio-card,format = "i2s";
		simple-audio-card,bitclock-master = <&dailink_master>;
		simple-audio-card,frame-master = <&dailink_master>;
		simple-audio-card,cpu {
			sound-dai = <&sai1>;
		};

		dailink_master: simple-audio-card,codec {
			sound-dai = <&sgtl5000>;
			clocks = <&clks IMX7D_AUDIO_MCLK_ROOT_DIV>;
		};
	};
};

&i2c1 {
	sgtl5000: codec@a {
		#sound-dai-cells = <0>;
		reg = <0x0a>;
		compatible = "fsl,sgtl5000";
		clocks = <&clks IMX7D_AUDIO_MCLK_ROOT_DIV>;
		VDDA-supply = <&reg_2p5v>;
		VDDIO-supply = <&reg_vref_1v8>;
	};
};

&i2c4 {
	status = "okay";

	adc081c: adc@50 {
		compatible = "ti,adc081c";
		reg = <0x50>;
		vref-supply = <&reg_3p3v>;
	};
};

&ecspi3 {
	ads7846@0 {
		reg = <0>;
		compatible = "ti,ads7846";
		interrupt-parent = <&gpio2>;
		interrupts = <7 0>;
		spi-max-frequency = <1000000>;
		pendown-gpio = <&gpio2 7 GPIO_ACTIVE_LOW>;
		vcc-supply = <&reg_3p3v>;
		ti,x-min = /bits/ 16 <0>;
		ti,x-max = /bits/ 16 <4095>;
		ti,y-min = /bits/ 16 <0>;
		ti,y-max = /bits/ 16 <4095>;
		ti,pressure-max = /bits/ 16 <1024>;
		ti,x-plate-ohms = /bits/ 16 <90>;
		ti,y-plate-ohms = /bits/ 16 <90>;
		ti,debounce-max = /bits/ 16 <70>;
		ti,debounce-tol = /bits/ 16 <3>;
		ti,debounce-rep = /bits/ 16 <2>;
		ti,settle-delay-usec = /bits/ 16 <150>;
		wakeup-source;
	};
};

&iomuxc {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_hog>;

	pinctrl_hog: hoggrp {
		fsl,pins = <
			MX7D_PAD_EPDC_DATA00__GPIO2_IO0		0x14
			MX7D_PAD_EPDC_DATA01__GPIO2_IO1		0x14
			MX7D_PAD_EPDC_DATA02__GPIO2_IO2		0x14
			MX7D_PAD_EPDC_DATA03__GPIO2_IO3		0x14
			MX7D_PAD_EPDC_DATA05__GPIO2_IO5		0x14
			MX7D_PAD_EPDC_DATA12__GPIO2_IO12	0x14
			MX7D_PAD_EPDC_DATA07__GPIO2_IO7		0x14
		>;
	};

	pinctrl_gpio_leds: gpioledsgrp {
		fsl,pins = <
			MX7D_PAD_EPDC_DATA13__GPIO2_IO13	0x14
		>;
	};
};