1ae56c940SFabrizio Castro// SPDX-License-Identifier: GPL-2.0 2ae56c940SFabrizio Castro/* 3ae56c940SFabrizio Castro * Device Tree Source for the Silicon Linux RZ/G2E evaluation kit (EK874), 4ae56c940SFabrizio Castro * connected to an Advantech IDK-2121WR 21.5" LVDS panel 5ae56c940SFabrizio Castro * 6ae56c940SFabrizio Castro * Copyright (C) 2019 Renesas Electronics Corp. 7ae56c940SFabrizio Castro */ 8ae56c940SFabrizio Castro 9ae56c940SFabrizio Castro#include "r8a774c0-ek874.dts" 10ae56c940SFabrizio Castro 11ae56c940SFabrizio Castro/ { 12ae56c940SFabrizio Castro backlight: backlight { 13ae56c940SFabrizio Castro compatible = "pwm-backlight"; 14ae56c940SFabrizio Castro pwms = <&pwm5 0 50000>; 15ae56c940SFabrizio Castro 16ae56c940SFabrizio Castro brightness-levels = <0 4 8 16 32 64 128 255>; 17ae56c940SFabrizio Castro default-brightness-level = <6>; 18ae56c940SFabrizio Castro 19ae56c940SFabrizio Castro power-supply = <®_12p0v>; 20ae56c940SFabrizio Castro enable-gpios = <&gpio6 12 GPIO_ACTIVE_HIGH>; 21ae56c940SFabrizio Castro }; 22ae56c940SFabrizio Castro 23ae56c940SFabrizio Castro panel-lvds { 24ae56c940SFabrizio Castro compatible = "advantech,idk-2121wr", "panel-lvds"; 25ae56c940SFabrizio Castro 26ae56c940SFabrizio Castro width-mm = <476>; 27ae56c940SFabrizio Castro height-mm = <268>; 28ae56c940SFabrizio Castro 29ae56c940SFabrizio Castro data-mapping = "vesa-24"; 30ae56c940SFabrizio Castro 31ae56c940SFabrizio Castro panel-timing { 32ae56c940SFabrizio Castro clock-frequency = <148500000>; 33ae56c940SFabrizio Castro hactive = <1920>; 34ae56c940SFabrizio Castro vactive = <1080>; 35ae56c940SFabrizio Castro hsync-len = <44>; 36ae56c940SFabrizio Castro hfront-porch = <88>; 37ae56c940SFabrizio Castro hback-porch = <148>; 38ae56c940SFabrizio Castro vfront-porch = <4>; 39ae56c940SFabrizio Castro vback-porch = <36>; 40ae56c940SFabrizio Castro vsync-len = <5>; 41ae56c940SFabrizio Castro }; 42ae56c940SFabrizio Castro 43ae56c940SFabrizio Castro ports { 44ae56c940SFabrizio Castro #address-cells = <1>; 45ae56c940SFabrizio Castro #size-cells = <0>; 46ae56c940SFabrizio Castro 47ae56c940SFabrizio Castro port@0 { 48ae56c940SFabrizio Castro reg = <0>; 49ae56c940SFabrizio Castro dual-lvds-odd-pixels; 50ae56c940SFabrizio Castro panel_in0: endpoint { 51ae56c940SFabrizio Castro remote-endpoint = <&lvds0_out>; 52ae56c940SFabrizio Castro }; 53ae56c940SFabrizio Castro }; 54ae56c940SFabrizio Castro 55ae56c940SFabrizio Castro port@1 { 56ae56c940SFabrizio Castro reg = <1>; 57ae56c940SFabrizio Castro dual-lvds-even-pixels; 58ae56c940SFabrizio Castro panel_in1: endpoint { 59ae56c940SFabrizio Castro remote-endpoint = <&lvds1_out>; 60ae56c940SFabrizio Castro }; 61ae56c940SFabrizio Castro }; 62ae56c940SFabrizio Castro }; 63ae56c940SFabrizio Castro }; 64ae56c940SFabrizio Castro}; 65ae56c940SFabrizio Castro 66ae56c940SFabrizio Castro&gpio0 { 67ae56c940SFabrizio Castro /* 68ae56c940SFabrizio Castro * When GP0_17 is low LVDS[01] are connected to the LVDS connector 69ae56c940SFabrizio Castro * When GP0_17 is high LVDS[01] are connected to the LT8918L 70ae56c940SFabrizio Castro */ 71*48d8ee5bSGeert Uytterhoeven lvds-connector-en-hog { 72ae56c940SFabrizio Castro gpio-hog; 73ae56c940SFabrizio Castro gpios = <17 GPIO_ACTIVE_HIGH>; 74ae56c940SFabrizio Castro output-low; 75ae56c940SFabrizio Castro line-name = "lvds-connector-en-gpio"; 76ae56c940SFabrizio Castro }; 77ae56c940SFabrizio Castro}; 78ae56c940SFabrizio Castro 79ae56c940SFabrizio Castro&lvds0 { 80ae56c940SFabrizio Castro ports { 81ae56c940SFabrizio Castro port@1 { 82ae56c940SFabrizio Castro lvds0_out: endpoint { 83ae56c940SFabrizio Castro remote-endpoint = <&panel_in0>; 84ae56c940SFabrizio Castro }; 85ae56c940SFabrizio Castro }; 86ae56c940SFabrizio Castro }; 87ae56c940SFabrizio Castro}; 88ae56c940SFabrizio Castro 89ae56c940SFabrizio Castro&lvds1 { 90ae56c940SFabrizio Castro status = "okay"; 91ae56c940SFabrizio Castro 92ae56c940SFabrizio Castro clocks = <&cpg CPG_MOD 727>, <&x13_clk>, <&extal_clk>; 93ae56c940SFabrizio Castro clock-names = "fck", "dclkin.0", "extal"; 94ae56c940SFabrizio Castro 95ae56c940SFabrizio Castro ports { 96ae56c940SFabrizio Castro port@1 { 97ae56c940SFabrizio Castro lvds1_out: endpoint { 98ae56c940SFabrizio Castro remote-endpoint = <&panel_in1>; 99ae56c940SFabrizio Castro }; 100ae56c940SFabrizio Castro }; 101ae56c940SFabrizio Castro }; 102ae56c940SFabrizio Castro}; 103ae56c940SFabrizio Castro 104ae56c940SFabrizio Castro&pfc { 105ae56c940SFabrizio Castro pwm5_pins: pwm5 { 106ae56c940SFabrizio Castro groups = "pwm5_a"; 107ae56c940SFabrizio Castro function = "pwm5"; 108ae56c940SFabrizio Castro }; 109ae56c940SFabrizio Castro}; 110ae56c940SFabrizio Castro 111ae56c940SFabrizio Castro&pwm5 { 112ae56c940SFabrizio Castro pinctrl-0 = <&pwm5_pins>; 113ae56c940SFabrizio Castro pinctrl-names = "default"; 114ae56c940SFabrizio Castro 115ae56c940SFabrizio Castro status = "okay"; 116ae56c940SFabrizio Castro}; 117