// SPDX-License-Identifier: (GPL-2.0)
/*
 * Device tree for the Tolino Vision 5 ebook reader
 *
 * Name on mainboard is: 37NB-E70K0M+6A3
 * Serials start with: E70K02 (a number also seen in
 * vendor kernel sources)
 *
 * This mainboard seems to be equipped with different SoCs.
 * In the Tolino Vision 5 ebook reader it is a i.MX6SL
 *
 * Copyright 2021 Andreas Kemnade
 * based on works
 * Copyright 2016 Freescale Semiconductor, Inc.
 */

/dts-v1/;

#include <dt-bindings/input/input.h>
#include <dt-bindings/gpio/gpio.h>
#include "imx6sl.dtsi"
#include "e70k02.dtsi"

/ {
	model = "Tolino Vision 5";
	compatible = "kobo,tolino-vision5", "fsl,imx6sl";
};

&gpio_keys {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_gpio_keys>;
};

&i2c1 {
	pinctrl-names = "default","sleep";
	pinctrl-0 = <&pinctrl_i2c1>;
	pinctrl-1 = <&pinctrl_i2c1_sleep>;
};

&i2c2 {
	pinctrl-names = "default","sleep";
	pinctrl-0 = <&pinctrl_i2c2>;
	pinctrl-1 = <&pinctrl_i2c2_sleep>;
};

&i2c3 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_i2c3>;
};

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

	pinctrl_cyttsp5_gpio: cyttsp5-gpiogrp {
		fsl,pins = <
			MX6SL_PAD_FEC_TXD0__GPIO4_IO24          0x17059 /* TP_INT */
			MX6SL_PAD_FEC_RXD1__GPIO4_IO18          0x10059 /* TP_RST */
		>;
	};

	pinctrl_gpio_keys: gpio-keysgrp {
		fsl,pins = <
			MX6SL_PAD_FEC_CRS_DV__GPIO4_IO25	0x17059	/* PWR_SW */
			MX6SL_PAD_FEC_MDC__GPIO4_IO23	0x17059	/* HALL_EN */
			MX6SL_PAD_KEY_COL4__GPIO4_IO00		0x17059	/* PAGE_UP */
			MX6SL_PAD_KEY_COL5__GPIO4_IO02		0x17059	/* PAGE_DOWN */
		>;
	};

	pinctrl_hog: hoggrp {
		fsl,pins = <
			MX6SL_PAD_LCD_DAT1__GPIO2_IO21	0x79
			MX6SL_PAD_LCD_DAT4__GPIO2_IO24	0x79
			MX6SL_PAD_LCD_DAT5__GPIO2_IO25	0x79
			MX6SL_PAD_LCD_DAT6__GPIO2_IO26	0x79
			MX6SL_PAD_LCD_DAT7__GPIO2_IO27	0x79
			MX6SL_PAD_LCD_DAT8__GPIO2_IO28	0x79
			MX6SL_PAD_LCD_DAT9__GPIO2_IO29	0x79
			MX6SL_PAD_LCD_DAT10__GPIO2_IO30	0x79
			MX6SL_PAD_LCD_DAT11__GPIO2_IO31	0x79
			MX6SL_PAD_LCD_DAT12__GPIO3_IO00	0x79
			MX6SL_PAD_LCD_DAT13__GPIO3_IO01	0x79
			MX6SL_PAD_LCD_DAT14__GPIO3_IO02	0x79
			MX6SL_PAD_LCD_DAT15__GPIO3_IO03	0x79
			MX6SL_PAD_LCD_DAT16__GPIO3_IO04	0x79
			MX6SL_PAD_LCD_DAT17__GPIO3_IO05	0x79
			MX6SL_PAD_LCD_DAT18__GPIO3_IO06	0x79
			MX6SL_PAD_LCD_DAT19__GPIO3_IO07	0x79
			MX6SL_PAD_LCD_DAT20__GPIO3_IO08	0x79
			MX6SL_PAD_LCD_DAT21__GPIO3_IO09	0x79
			MX6SL_PAD_LCD_DAT22__GPIO3_IO10	0x79
			MX6SL_PAD_LCD_DAT23__GPIO3_IO11	0x79
			MX6SL_PAD_LCD_CLK__GPIO2_IO15		0x79
			MX6SL_PAD_LCD_ENABLE__GPIO2_IO16	0x79
			MX6SL_PAD_LCD_HSYNC__GPIO2_IO17	0x79
			MX6SL_PAD_LCD_VSYNC__GPIO2_IO18	0x79
			MX6SL_PAD_LCD_RESET__GPIO2_IO19	0x79
			MX6SL_PAD_FEC_TX_CLK__GPIO4_IO21	0x79
			MX6SL_PAD_FEC_REF_CLK__GPIO4_IO26	0x79
			MX6SL_PAD_KEY_COL3__GPIO3_IO30		0x79
			MX6SL_PAD_KEY_ROW7__GPIO4_IO07		0x79
			MX6SL_PAD_ECSPI2_MOSI__GPIO4_IO13	0x79
		>;
	};

	pinctrl_i2c1: i2c1grp {
		fsl,pins = <
			MX6SL_PAD_I2C1_SCL__I2C1_SCL	 0x4001f8b1
			MX6SL_PAD_I2C1_SDA__I2C1_SDA	 0x4001f8b1
		>;
	};

	pinctrl_i2c1_sleep: i2c1grp-sleep {
		fsl,pins = <
			MX6SL_PAD_I2C1_SCL__I2C1_SCL	 0x400108b1
			MX6SL_PAD_I2C1_SDA__I2C1_SDA	 0x400108b1
		>;
	};

	pinctrl_i2c2: i2c2grp {
		fsl,pins = <
			MX6SL_PAD_I2C2_SCL__I2C2_SCL	 0x4001f8b1
			MX6SL_PAD_I2C2_SDA__I2C2_SDA	 0x4001f8b1
		>;
	};

	pinctrl_i2c2_sleep: i2c2grp-sleep {
		fsl,pins = <
			MX6SL_PAD_I2C2_SCL__I2C2_SCL	 0x400108b1
			MX6SL_PAD_I2C2_SDA__I2C2_SDA	 0x400108b1
		>;
	};

	pinctrl_i2c3: i2c3grp {
		fsl,pins = <
			MX6SL_PAD_REF_CLK_24M__I2C3_SCL  0x4001f8b1
			MX6SL_PAD_REF_CLK_32K__I2C3_SDA  0x4001f8b1
		>;
	};

	pinctrl_led: ledgrp {
		fsl,pins = <
			MX6SL_PAD_FEC_RXD0__GPIO4_IO17	0x10059
		>;
	};

	pinctrl_lm3630a_bl_gpio: lm3630a-bl-gpiogrp {
		fsl,pins = <
			MX6SL_PAD_EPDC_PWRCTRL3__GPIO2_IO10		0x10059 /* HWEN */
		>;
	};

	pinctrl_ricoh_gpio: ricoh-gpiogrp {
		fsl,pins = <
			MX6SL_PAD_FEC_MDIO__GPIO4_IO20		0x1b8b1 /* ricoh619 chg */
			MX6SL_PAD_FEC_RX_ER__GPIO4_IO19		0x1b8b1 /* ricoh619 irq */
			MX6SL_PAD_KEY_COL2__GPIO3_IO28		0x1b8b1 /* ricoh619 bat_low_int */
		>;
	};

	pinctrl_uart1: uart1grp {
		fsl,pins = <
			MX6SL_PAD_UART1_TXD__UART1_TX_DATA 0x1b0b1
			MX6SL_PAD_UART1_RXD__UART1_RX_DATA 0x1b0b1
		>;
	};

	pinctrl_usbotg1: usbotg1grp {
		fsl,pins = <
			MX6SL_PAD_EPDC_PWRCOM__USB_OTG1_ID 0x17059
		>;
	};

	pinctrl_usdhc1: usdhc1grp {
		fsl,pins = <
			MX6SL_PAD_SD1_CMD__SD1_CMD	0x17059
			MX6SL_PAD_SD1_CLK__SD1_CLK	0x17059
			MX6SL_PAD_SD1_DAT0__SD1_DATA0	0x17059
			MX6SL_PAD_SD1_DAT1__SD1_DATA1	0x17059
			MX6SL_PAD_SD1_DAT2__SD1_DATA2	0x17059
			MX6SL_PAD_SD1_DAT3__SD1_DATA3	0x17059
			MX6SL_PAD_SD1_DAT4__SD1_DATA4	0x17059
			MX6SL_PAD_SD1_DAT5__SD1_DATA5	0x17059
			MX6SL_PAD_SD1_DAT6__SD1_DATA6	0x17059
			MX6SL_PAD_SD1_DAT7__SD1_DATA7	0x17059
		>;
	};

	pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
		fsl,pins = <
			MX6SL_PAD_SD1_CMD__SD1_CMD	0x170b9
			MX6SL_PAD_SD1_CLK__SD1_CLK	0x170b9
			MX6SL_PAD_SD1_DAT0__SD1_DATA0	0x170b9
			MX6SL_PAD_SD1_DAT1__SD1_DATA1	0x170b9
			MX6SL_PAD_SD1_DAT2__SD1_DATA2	0x170b9
			MX6SL_PAD_SD1_DAT3__SD1_DATA3	0x170b9
			MX6SL_PAD_SD1_DAT4__SD1_DATA4	0x170b9
			MX6SL_PAD_SD1_DAT5__SD1_DATA5	0x170b9
			MX6SL_PAD_SD1_DAT6__SD1_DATA6	0x170b9
			MX6SL_PAD_SD1_DAT7__SD1_DATA7	0x170b9
		>;
	};

	pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
		fsl,pins = <
			MX6SL_PAD_SD1_CMD__SD1_CMD	0x170f9
			MX6SL_PAD_SD1_CLK__SD1_CLK	0x170f9
			MX6SL_PAD_SD1_DAT0__SD1_DATA0	0x170f9
			MX6SL_PAD_SD1_DAT1__SD1_DATA1	0x170f9
			MX6SL_PAD_SD1_DAT2__SD1_DATA2	0x170f9
			MX6SL_PAD_SD1_DAT3__SD1_DATA3	0x170f9
			MX6SL_PAD_SD1_DAT4__SD1_DATA4	0x170b9
			MX6SL_PAD_SD1_DAT5__SD1_DATA5	0x170b9
			MX6SL_PAD_SD1_DAT6__SD1_DATA6	0x170b9
			MX6SL_PAD_SD1_DAT7__SD1_DATA7	0x170b9
		>;
	};

	pinctrl_usdhc1_sleep: usdhc1-sleepgrp {
		fsl,pins = <
			MX6SL_PAD_SD1_CMD__SD1_CMD	0x10059
			MX6SL_PAD_SD1_CLK__SD1_CLK	0x10059
			MX6SL_PAD_SD1_DAT0__SD1_DATA0	0x10059
			MX6SL_PAD_SD1_DAT1__SD1_DATA1	0x10059
			MX6SL_PAD_SD1_DAT2__SD1_DATA2	0x10059
			MX6SL_PAD_SD1_DAT3__SD1_DATA3	0x10059
			MX6SL_PAD_SD1_DAT4__SD1_DATA4	0x10059
			MX6SL_PAD_SD1_DAT5__SD1_DATA5	0x10059
			MX6SL_PAD_SD1_DAT6__SD1_DATA6	0x10059
			MX6SL_PAD_SD1_DAT7__SD1_DATA7	0x10059
		>;
	};

	pinctrl_usdhc3: usdhc3grp {
		fsl,pins = <
			MX6SL_PAD_SD3_CMD__SD3_CMD	0x11059
			MX6SL_PAD_SD3_CLK__SD3_CLK	0x11059
			MX6SL_PAD_SD3_DAT0__SD3_DATA0	0x11059
			MX6SL_PAD_SD3_DAT1__SD3_DATA1	0x11059
			MX6SL_PAD_SD3_DAT2__SD3_DATA2	0x11059
			MX6SL_PAD_SD3_DAT3__SD3_DATA3	0x11059
		>;
	};

	pinctrl_usdhc3_100mhz: usdhc3-100mhzgrp {
		fsl,pins = <
			MX6SL_PAD_SD3_CMD__SD3_CMD	0x170b9
			MX6SL_PAD_SD3_CLK__SD3_CLK	0x170b9
			MX6SL_PAD_SD3_DAT0__SD3_DATA0	0x170b9
			MX6SL_PAD_SD3_DAT1__SD3_DATA1	0x170b9
			MX6SL_PAD_SD3_DAT2__SD3_DATA2	0x170b9
			MX6SL_PAD_SD3_DAT3__SD3_DATA3	0x170b9
		>;
	};

	pinctrl_usdhc3_200mhz: usdhc3-200mhzgrp {
		fsl,pins = <
			MX6SL_PAD_SD3_CMD__SD3_CMD	0x170f9
			MX6SL_PAD_SD3_CLK__SD3_CLK	0x170f9
			MX6SL_PAD_SD3_DAT0__SD3_DATA0	0x170f9
			MX6SL_PAD_SD3_DAT1__SD3_DATA1	0x170f9
			MX6SL_PAD_SD3_DAT2__SD3_DATA2	0x170f9
			MX6SL_PAD_SD3_DAT3__SD3_DATA3	0x170f9
		>;
	};

	pinctrl_usdhc3_sleep: usdhc3-sleepgrp {
		fsl,pins = <
			MX6SL_PAD_SD3_CMD__GPIO5_IO21	0x100c1
			MX6SL_PAD_SD3_CLK__GPIO5_IO18	0x100c1
			MX6SL_PAD_SD3_DAT0__GPIO5_IO19	0x100c1
			MX6SL_PAD_SD3_DAT1__GPIO5_IO20	0x100c1
			MX6SL_PAD_SD3_DAT2__GPIO5_IO16	0x100c1
			MX6SL_PAD_SD3_DAT3__GPIO5_IO17	0x100c1
		>;
	};

	pinctrl_wifi_power: wifi-powergrp {
		fsl,pins = <
			MX6SL_PAD_SD2_DAT6__GPIO4_IO29	0x10059	 /* WIFI_3V3_ON */
		>;
	};

	pinctrl_wifi_reset: wifi-resetgrp {
		fsl,pins = <
			MX6SL_PAD_SD2_DAT7__GPIO5_IO00	0x10059	/* WIFI_RST */
		>;
	};
};

&leds {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_led>;
};

&lm3630a {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_lm3630a_bl_gpio>;
};

&reg_wifi {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_wifi_power>;
};

&reg_vdd1p1 {
	vin-supply = <&dcdc2_reg>;
};

&reg_vdd2p5 {
	vin-supply = <&dcdc2_reg>;
};

&reg_arm {
	vin-supply = <&dcdc3_reg>;
};

&reg_soc {
	vin-supply = <&dcdc1_reg>;
};

&reg_pu {
	vin-supply = <&dcdc1_reg>;
};

&ricoh619 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_ricoh_gpio>;
};

&uart1 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart1>;
};

&usdhc1 {
	pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
	pinctrl-0 = <&pinctrl_usdhc1>;
	pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
	pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
	pinctrl-3 = <&pinctrl_usdhc1_sleep>;
};

&usdhc3 {
	pinctrl-names = "default", "state_100mhz", "state_200mhz","sleep";
	pinctrl-0 = <&pinctrl_usdhc3>;
	pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
	pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
	pinctrl-3 = <&pinctrl_usdhc3_sleep>;
};

&wifi_pwrseq {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_wifi_reset>;
};
