This commit adds demo dts about the various possible uses of LVDS:
1. Single channel LVDS
2. Dual LVDS
3. Two Video Port use two separate single channel LVDS
4. One Video Port use two separate single channel LVDS
For case 1, the video port outputs as follows:
VP1 -> LVDS0 or VP1 -> LVDS1
or VP2 -> LVDS0 or VP2 -> LVDS1
For case 2, the video port outputs as follows:
VP1 -> LVDS0, VP1 -> LVDS1
or VP2-> LVDS0, VP2-> LVDS1
For case 3, the video port outputs as follows:
VP1 -> LVDS0, VP2 -> LVDS1
or VP1 -> LVDS1, VP2 -> LVDS0
For case 4, the video port outputs as follows:
VP1 -> LVDS0, VP1 -> LVDS1
or VP2-> LVDS0, VP2-> LVDS1
Change-Id: I426ba9033863cc1442834daf8fa63aaa472274c5
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
199 lines
3.3 KiB
Plaintext
199 lines
3.3 KiB
Plaintext
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
/*
|
|
* Copyright (c) 2023 Rockchip Electronics Co., Ltd.
|
|
*/
|
|
|
|
#include <dt-bindings/display/media-bus-format.h>
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
#include <dt-bindings/pinctrl/rockchip.h>
|
|
#include "rk3568-evb1-ddr4-v10.dtsi"
|
|
#include "rk3568-android.dtsi"
|
|
|
|
/ {
|
|
model = "Rockchip RK3568 EVB1 V10 Board with two vp two separate single channel lvds";
|
|
compatible = "rockchip,rk3568-evb1-ddr4-v10-two-vp-two-separate-single-channel-lvds", "rockchip,rk3568";
|
|
|
|
/**
|
|
* VP1 -> LVDS0 -> Panel0
|
|
* VP2 -> LVDS1 -> Panel1
|
|
*/
|
|
|
|
/* panel: claa070wp03xg */
|
|
panel-lvds0 {
|
|
compatible = "simple-panel";
|
|
backlight = <&backlight>;
|
|
power-supply = <&vcc3v3_lcd0_n>;
|
|
enable-delay-ms = <20>;
|
|
prepare-delay-ms = <20>;
|
|
unprepare-delay-ms = <20>;
|
|
disable-delay-ms = <20>;
|
|
bus-format = <MEDIA_BUS_FMT_RGB666_1X7X3_SPWG>;
|
|
width-mm = <217>;
|
|
height-mm = <136>;
|
|
|
|
display-timings {
|
|
native-mode = <&timing0>;
|
|
timing0: timing0 {
|
|
clock-frequency = <67000000>;
|
|
hactive = <800>;
|
|
vactive = <1280>;
|
|
hback-porch = <60>;
|
|
hfront-porch = <60>;
|
|
vback-porch = <4>;
|
|
vfront-porch = <2>;
|
|
hsync-len = <8>;
|
|
vsync-len = <8>;
|
|
hsync-active = <0>;
|
|
vsync-active = <0>;
|
|
de-active = <0>;
|
|
pixelclk-active = <0>;
|
|
};
|
|
};
|
|
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
port@0 {
|
|
reg = <0>;
|
|
panel_in_lvds0: endpoint {
|
|
remote-endpoint = <&lvds0_out_panel>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
/* panel: claa070wp03xg */
|
|
panel-lvds1 {
|
|
compatible = "simple-panel";
|
|
backlight = <&backlight1>;
|
|
power-supply = <&vcc3v3_lcd1_n>;
|
|
enable-delay-ms = <20>;
|
|
prepare-delay-ms = <20>;
|
|
unprepare-delay-ms = <20>;
|
|
disable-delay-ms = <20>;
|
|
bus-format = <MEDIA_BUS_FMT_RGB666_1X7X3_SPWG>;
|
|
width-mm = <217>;
|
|
height-mm = <136>;
|
|
|
|
display-timings {
|
|
native-mode = <&timing1>;
|
|
timing1: timing1 {
|
|
clock-frequency = <67000000>;
|
|
hactive = <800>;
|
|
vactive = <1280>;
|
|
hback-porch = <60>;
|
|
hfront-porch = <60>;
|
|
vback-porch = <4>;
|
|
vfront-porch = <2>;
|
|
hsync-len = <8>;
|
|
vsync-len = <8>;
|
|
hsync-active = <0>;
|
|
vsync-active = <0>;
|
|
de-active = <0>;
|
|
pixelclk-active = <0>;
|
|
};
|
|
};
|
|
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
port@0 {
|
|
reg = <0>;
|
|
panel_in_lvds1: endpoint {
|
|
remote-endpoint = <&lvds1_out_panel>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&backlight {
|
|
status = "okay";
|
|
};
|
|
|
|
&backlight1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&dsi0 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&dsi0_in_vp0 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&dsi0_in_vp1 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&dsi1_in_vp1 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&edp_in_vp1 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&hdmi_in_vp1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&lvds0 {
|
|
status = "okay";
|
|
ports {
|
|
port@1 {
|
|
reg = <1>;
|
|
lvds0_out_panel: endpoint {
|
|
remote-endpoint = <&panel_in_lvds0>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&lvds0_in_vp1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&lvds1 {
|
|
status = "okay";
|
|
ports {
|
|
port@1 {
|
|
reg = <1>;
|
|
lvds1_out_panel: endpoint {
|
|
remote-endpoint = <&panel_in_lvds1>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&lvds1_in_vp1 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&lvds1_in_vp2 {
|
|
status = "okay";
|
|
};
|
|
|
|
&rgb_in_vp2 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&vcc3v3_lcd0_n {
|
|
gpio = <&gpio0 RK_PC7 GPIO_ACTIVE_HIGH>;
|
|
enable-active-high;
|
|
};
|
|
|
|
&vcc3v3_lcd1_n {
|
|
gpio = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
|
|
enable-active-high;
|
|
};
|
|
|
|
&video_phy0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&video_phy1 {
|
|
status = "okay";
|
|
};
|