18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * Device Tree Source for the Silicon Linux RZ/G2E evaluation kit (EK874),
48c2ecf20Sopenharmony_ci * connected to an Advantech IDK-2121WR 21.5" LVDS panel
58c2ecf20Sopenharmony_ci *
68c2ecf20Sopenharmony_ci * Copyright (C) 2019 Renesas Electronics Corp.
78c2ecf20Sopenharmony_ci */
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ci#include "r8a774c0-ek874.dts"
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci/ {
128c2ecf20Sopenharmony_ci	backlight: backlight {
138c2ecf20Sopenharmony_ci		compatible = "pwm-backlight";
148c2ecf20Sopenharmony_ci		pwms = <&pwm5 0 50000>;
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ci		brightness-levels = <0 4 8 16 32 64 128 255>;
178c2ecf20Sopenharmony_ci		default-brightness-level = <6>;
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ci		power-supply = <&reg_12p0v>;
208c2ecf20Sopenharmony_ci		enable-gpios = <&gpio6 12 GPIO_ACTIVE_HIGH>;
218c2ecf20Sopenharmony_ci	};
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ci	panel-lvds {
248c2ecf20Sopenharmony_ci		compatible = "advantech,idk-2121wr", "panel-lvds";
258c2ecf20Sopenharmony_ci
268c2ecf20Sopenharmony_ci		width-mm = <476>;
278c2ecf20Sopenharmony_ci		height-mm = <268>;
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci		data-mapping = "vesa-24";
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ci		panel-timing {
328c2ecf20Sopenharmony_ci			clock-frequency = <148500000>;
338c2ecf20Sopenharmony_ci			hactive = <1920>;
348c2ecf20Sopenharmony_ci			vactive = <1080>;
358c2ecf20Sopenharmony_ci			hsync-len = <44>;
368c2ecf20Sopenharmony_ci			hfront-porch = <88>;
378c2ecf20Sopenharmony_ci			hback-porch = <148>;
388c2ecf20Sopenharmony_ci			vfront-porch = <4>;
398c2ecf20Sopenharmony_ci			vback-porch = <36>;
408c2ecf20Sopenharmony_ci			vsync-len = <5>;
418c2ecf20Sopenharmony_ci		};
428c2ecf20Sopenharmony_ci
438c2ecf20Sopenharmony_ci		ports {
448c2ecf20Sopenharmony_ci			#address-cells = <1>;
458c2ecf20Sopenharmony_ci			#size-cells = <0>;
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ci			port@0 {
488c2ecf20Sopenharmony_ci				reg = <0>;
498c2ecf20Sopenharmony_ci				dual-lvds-odd-pixels;
508c2ecf20Sopenharmony_ci				panel_in0: endpoint {
518c2ecf20Sopenharmony_ci					remote-endpoint = <&lvds0_out>;
528c2ecf20Sopenharmony_ci				};
538c2ecf20Sopenharmony_ci			};
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ci			port@1 {
568c2ecf20Sopenharmony_ci				reg = <1>;
578c2ecf20Sopenharmony_ci				dual-lvds-even-pixels;
588c2ecf20Sopenharmony_ci				panel_in1: endpoint {
598c2ecf20Sopenharmony_ci					remote-endpoint = <&lvds1_out>;
608c2ecf20Sopenharmony_ci				};
618c2ecf20Sopenharmony_ci			};
628c2ecf20Sopenharmony_ci		};
638c2ecf20Sopenharmony_ci	};
648c2ecf20Sopenharmony_ci};
658c2ecf20Sopenharmony_ci
668c2ecf20Sopenharmony_ci&gpio0 {
678c2ecf20Sopenharmony_ci	/*
688c2ecf20Sopenharmony_ci	 * When GP0_17 is low LVDS[01] are connected to the LVDS connector
698c2ecf20Sopenharmony_ci	 * When GP0_17 is high LVDS[01] are connected to the LT8918L
708c2ecf20Sopenharmony_ci	 */
718c2ecf20Sopenharmony_ci	lvds-connector-en-gpio{
728c2ecf20Sopenharmony_ci		gpio-hog;
738c2ecf20Sopenharmony_ci		gpios = <17 GPIO_ACTIVE_HIGH>;
748c2ecf20Sopenharmony_ci		output-low;
758c2ecf20Sopenharmony_ci		line-name = "lvds-connector-en-gpio";
768c2ecf20Sopenharmony_ci	};
778c2ecf20Sopenharmony_ci};
788c2ecf20Sopenharmony_ci
798c2ecf20Sopenharmony_ci&lvds0 {
808c2ecf20Sopenharmony_ci	ports {
818c2ecf20Sopenharmony_ci		port@1 {
828c2ecf20Sopenharmony_ci			lvds0_out: endpoint {
838c2ecf20Sopenharmony_ci				remote-endpoint = <&panel_in0>;
848c2ecf20Sopenharmony_ci			};
858c2ecf20Sopenharmony_ci		};
868c2ecf20Sopenharmony_ci	};
878c2ecf20Sopenharmony_ci};
888c2ecf20Sopenharmony_ci
898c2ecf20Sopenharmony_ci&lvds1 {
908c2ecf20Sopenharmony_ci	status = "okay";
918c2ecf20Sopenharmony_ci
928c2ecf20Sopenharmony_ci	clocks = <&cpg CPG_MOD 727>, <&x13_clk>, <&extal_clk>;
938c2ecf20Sopenharmony_ci	clock-names = "fck", "dclkin.0", "extal";
948c2ecf20Sopenharmony_ci
958c2ecf20Sopenharmony_ci	ports {
968c2ecf20Sopenharmony_ci		port@1 {
978c2ecf20Sopenharmony_ci			lvds1_out: endpoint {
988c2ecf20Sopenharmony_ci				remote-endpoint = <&panel_in1>;
998c2ecf20Sopenharmony_ci			};
1008c2ecf20Sopenharmony_ci		};
1018c2ecf20Sopenharmony_ci	};
1028c2ecf20Sopenharmony_ci};
1038c2ecf20Sopenharmony_ci
1048c2ecf20Sopenharmony_ci&pfc {
1058c2ecf20Sopenharmony_ci	pwm5_pins: pwm5 {
1068c2ecf20Sopenharmony_ci		groups = "pwm5_a";
1078c2ecf20Sopenharmony_ci		function = "pwm5";
1088c2ecf20Sopenharmony_ci	};
1098c2ecf20Sopenharmony_ci};
1108c2ecf20Sopenharmony_ci
1118c2ecf20Sopenharmony_ci&pwm5 {
1128c2ecf20Sopenharmony_ci	pinctrl-0 = <&pwm5_pins>;
1138c2ecf20Sopenharmony_ci	pinctrl-names = "default";
1148c2ecf20Sopenharmony_ci
1158c2ecf20Sopenharmony_ci	status = "okay";
1168c2ecf20Sopenharmony_ci};
117