/*
 * Copyright (c) 2020 Teslabs Engineering S.L.
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#include <dt-bindings/display/ili9xxx.h>

&arduino_spi {
	status = "okay";
	cs-gpios = <&arduino_header 15 GPIO_ACTIVE_LOW>; /* D9 */

	ili9488@0 {
		compatible = "ilitek,ili9488";
		label = "DISPLAY";
		spi-max-frequency = <25000000>;
		reg = <0>;
		cmd-data-gpios = <&arduino_header 13 GPIO_ACTIVE_LOW>; /* D7 */
		reset-gpios = <&arduino_header 16 GPIO_ACTIVE_LOW>; /* D10 */
		pixel-format = <ILI9XXX_PIXEL_FORMAT_RGB888>;
		rotation = <0>;
		frmctr1 = [a0 11];
		pwctrl1 = [17 15];
		pwctrl2 = [41];
		pgamctrl = [00 03 09 08 16 0a 3f 78 4c 09 0a 08 16 1a 0f];
		ngamctrl = [00 16 19 03 0f 05 32 45 46 04 0e 0d 35 37 0f];
	};
};

&arduino_i2c {
	ft5336@38 {
		compatible = "focaltech,ft5336";
		reg = <0x38>;
		label = "TOUCH";
		/* Uncomment if IRQ line is available (requires to solder jumper) */
		/* int-gpios = <&arduino_header 11 GPIO_ACTIVE_LOW>; */ /* D5 */
	};
};
