From: suijingfeng <suijingfeng@xxxxxxxxxxx> ___________________ ____________________ | -------| | | | CRTC0 --> | DVO0 ------------------------> | 1024x600 DPI Panel | | _ _ -------| | Which panel to use |____________________| | | | | | | | with this board is a ___________________ | |_| |_| | | choice of the user | | | | +--------------------> | 800x480 DPI Panel | | DC In LS2K1000 | |___________________| | _ _ | +------+ | | | | | <---->| i2c1 |-----------+ | |_| |_| | +------+ | | | | | _________ | -------| +---------+ | | | | CRTC1 --> | DVO1 ---> | sii9022 | --> HDMI connector --> | Monitor | | -------| +---------+ |_________| |___________________| The sii9022 HDMI transmitter working in transparent mode, in this case the edid is read from the monitor directly, not through sil9022's ddc channel. The PMON[2] firmware of this board is responsible for configure the sii9022 encoder at boot time. Due to i2c driver for lsk2000 SoC is not upstream yet, we simply replace the sii9022 with a 1024x768 panel. The i2c0 is not get used by lsdc driver for this board, so there no need to worry about DVO0. [1] https://wiki.debian.org/InstallingDebianOn/Lemote/Loongson2K1000 [2] https://github.com/loongson-community/pmon Signed-off-by: suijingfeng <suijingfeng@xxxxxxxxxxx> Signed-off-by: Sui Jingfeng <15330273260@xxxxxx> --- arch/mips/boot/dts/loongson/ls2k1000_pai.dts | 102 +++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 arch/mips/boot/dts/loongson/ls2k1000_pai.dts diff --git a/arch/mips/boot/dts/loongson/ls2k1000_pai.dts b/arch/mips/boot/dts/loongson/ls2k1000_pai.dts new file mode 100644 index 000000000000..0b0172d90677 --- /dev/null +++ b/arch/mips/boot/dts/loongson/ls2k1000_pai.dts @@ -0,0 +1,102 @@ +// SPDX-License-Identifier: GPL-2.0 + +/dts-v1/; + +#include "loongson64-2k1000.dtsi" + +/ { + model = "LS2K1000_PAI_UDB_V1.5"; + + panel: display@0 { + compatible = "hontron,070JII2135-A2", "panel-dpi"; + label = "LCD070CG1024600+DC21"; + + rotation = <0>; + width-mm = <86>; + height-mm = <154>; + + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + #address-cells = <1>; + #size-cells = <0>; + + panel_in: endpoint@0 { + reg = <0>; + remote-endpoint = <&dc_out_rgb0>; + }; + }; + + panel-timing { + clock-frequency = <51200000>; + hactive = <1024>; + vactive = <600>; + hsync-len = <4>; + hfront-porch = <160>; + hback-porch = <156>; + vfront-porch = <11>; + vback-porch = <23>; + vsync-len = <1>; + + hsync-active = <0>; + vsync-active = <0>; + de-active = <1>; + pixelclk-active = <1>; + }; + }; + + monitor: display@1 { + compatible = "panel-dpi"; + + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + #address-cells = <1>; + #size-cells = <0>; + + monitor_in: endpoint@0 { + reg = <0>; + remote-endpoint = <&dc_out_rgb1>; + }; + }; + + panel-timing { + clock-frequency = <65000000>; + hactive = <1024>; + vactive = <768>; + hfront-porch = <24>; + hsync-len = <136>; + hback-porch = <160>; + vfront-porch = <3>; + vback-porch = <6>; + vsync-len = <29>; + + hsync-active = <0>; + vsync-active = <0>; + de-active = <1>; + pixelclk-active = <1>; + }; + }; +}; + +&lsdc { + ports { + port@0 { + endpoint { + remote-endpoint = <&panel_in>; + }; + }; + + port@1 { + endpoint { + remote-endpoint = <&monitor_in>; + }; + }; + }; +}; -- 2.25.1