// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * at91sam9x5dm.dtsi - Device Tree file for SAM9x5 display module
 *
 *  Copyright (C) 2014 Atmel,
 *                2014 Free Electrons
 *
 *  Author: Boris Brezillon <boris.brezillon@free-electrons.com>
 */

/ {
	backlight: backlight {
		compatible = "pwm-backlight";
		pwms = <&hlcdc_pwm 0 50000 0>;
		brightness-levels = <0 4 8 16 32 64 128 255>;
		default-brightness-level = <6>;
		power-supply = <&bl_reg>;
		status = "disabled";
	};

	bl_reg: backlight_regulator {
		compatible = "regulator-fixed";
		regulator-name = "backlight-power-supply";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		status = "disabled";
	};

	panel: panel {
		compatible = "foxlink,fl500wvr00-a0t";
		backlight = <&backlight>;
		power-supply = <&panel_reg>;
		#address-cells = <1>;
		#size-cells = <0>;
		status = "disabled";

		port@0 {
			#address-cells = <1>;
			#size-cells = <0>;

			panel_input: endpoint@0 {
				reg = <0>;
				remote-endpoint = <&hlcdc_panel_output>;
			};
		};
	};

	panel_reg: panel_regulator {
		compatible = "regulator-fixed";
		regulator-name = "panel-power-supply";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		status = "disabled";
	};
};

&adc0 {
	atmel,adc-ts-wires = <4>;
	atmel,adc-ts-pressure-threshold = <10000>;
	status = "okay";
};

&i2c0 {
	keyboard@1b {
		compatible = "qt1070";
		reg = <0x1b>;
		interrupt-parent = <&pioA>;
		interrupts = <7 0x0>;
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_qt1070_irq>;
		wakeup-source;
	};
};

&hlcdc {
	hlcdc-display-controller {
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;

		port@0 {
			hlcdc_panel_output: endpoint@0 {
				reg = <0>;
				remote-endpoint = <&panel_input>;
			};
		};
	};
};

&pinctrl {
	board {
		pinctrl_qt1070_irq: qt1070_irq {
			atmel,pins =
				<AT91_PIOA 7 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
		};
	};
};