HOME
  • GM-3568JHF
  • M4-R1
  • M5-R1
  • SC-3568HA
  • M-K1HSE
  • CF-NRS1
  • CF-CRA2
  • 1684XB-32T
  • 1684X-416T
  • C-3568BQ
  • C-3588LQ
  • GC-3568JBAF
  • C-K1BA
Shop
  • English
  • 简体中文
HOME
  • GM-3568JHF
  • M4-R1
  • M5-R1
  • SC-3568HA
  • M-K1HSE
  • CF-NRS1
  • CF-CRA2
  • 1684XB-32T
  • 1684X-416T
  • C-3568BQ
  • C-3588LQ
  • GC-3568JBAF
  • C-K1BA
Shop
  • English
  • 简体中文
  • SC-3568HA

    • Introduction

      • SC-3568HA Overview
    • Quick Start Guide

      • OpenHarmony Overview
      • Image Flashing
      • Setting Up the Development Environment
      • Hello World Application and Deployment
    • Application Development

      • ArkUI

        • Chapter 1 Introduction to ArkTS Language
        • Chapter 2 Introduction to UI Components and Practical Applications (Part 1)
        • Chapter 3 Introduction to UI Components and Practical Applications (Part 2)
        • Chapter 4 Introduction to UI Components and Practical Applications (Part 3)
      • Expand

        • Chapter 1 Getting Started Guide
        • Chapter 2 Referencing and Using Third-Party Libraries
        • Chapter 3: Application Compilation and Deployment
        • Chapter 4: Command-Line Factory Reset
        • Chapter 5: System Debugging -- HDC (Huawei Device Connector) Debugging
        • Chapter 6 APP Stability Testing
        • Chapter 7 Application Testing
    • Device Development

      • Chapter 1 Environment Setup
      • Chapter 2 Download Source Code
      • Chapter 3 Compiling Source Code
    • Peripheral And Iinterface

      • Raspberry Pi interface
      • GPIO Interface
      • I2C Interface
      • SPI communication
      • PWM (Pulse Width Modulation) control
      • Serial port communication
      • TF Card
      • Display Screen
      • Touch
      • Audio
      • RTC
      • Ethernet
      • M.2
      • MINI-PCIE
      • Camera
      • WIFI&BT
      • Raspberry Pi expansion board
    • Frequently Asked Questions

      • Resource Downloads
  • M-K1HSE

    • Introduction

      • M-K1HSE Introduction
    • Quick Start

      • Development environment construction
      • Source code acquisition
      • Compilation Notes
      • Burning Guide
    • Peripherals and interfaces

      • 01 Audio
      • 02 RS485
      • 03 Display
    • System customization development

      • System transplant
      • System customization
      • Driver Development
      • System Debugging
      • OTA Update

Display Screen

Currently, the SC-3568HA supports four display modes: MIPI0, MIPI1, EDP, and HDMI. The default display mode is the simultaneous display of MIPI0 and HDMI

When it is necessary to switch the screen for use, modify the file arch/arm64/boot/dts/rockchip/rk3568-toybrick-x0-linux.dts

Modify as follows:

    //Use MIPI0
    /dts-v1/;
    #include "rk3568.dtsi"
    #include "rk3568-linux.dtsi"
    #include "rk3568-toybrick-x0.dtsi"
    #include "rk3568-toybrick-mipi-tx0-beiqicloud.dtsi"
    //#include "rk3568-toybrick-mipi-tx1.dtsi"
    //#include "rk3568-toybrick-edp.dtsi"

    //Use MIPI1
    /dts-v1/;
    #include "rk3568.dtsi"
    #include "rk3568-linux.dtsi"
    #include "rk3568-toybrick-x0.dtsi"
    //#include "rk3568-toybrick-mipi-tx0-beiqicloud.dtsi"
    #include "rk3568-toybrick-mipi-tx1.dtsi"
    //#include "rk3568-toybrick-edp.dtsi"

    //Use EDP
    /dts-v1/;
    #include "rk3568.dtsi"
    #include "rk3568-linux.dtsi"
    #include "rk3568-toybrick-x0.dtsi"
    //#include "rk3568-toybrick-mipi-tx0-beiqicloud.dtsi"
    //include "rk3568-toybrick-mipi-tx1.dtsi"
    #include "rk3568-toybrick-edp.dtsi"

1. MIPI0 DTS Configuration

To modify the MIPI0 configuration, you need to modify arch/arm64/boot/dts/rockchiprk3568-toybrick-mipi-tx0-beiqicloud.dtsi

//HOST
    &dsi0 {
        status = "okay";

        //PANEL
        dsi0_panel: panel@0 {
            compatible = "simple-panel-dsi";
            reg = <0>;
            backlight = <&backlight>;   //Use the first path of the backlight
        //	power-supply = <&lcd_pwr>;
            prepare-delay-ms = <2>;
            reset-delay-ms = <100>;
            init-delay-ms = <20>;
            pinctrl-names = "default";
            pinctrl-0 = <&mipi_power_en>;
            enable-gpios = <&gpio3 RK_PB5 GPIO_ACTIVE_HIGH>;
            enable-delay-ms = <120>;
            disable-delay-ms = <50>;
            unprepare-delay-ms = <20>;
            width-mm = <68>;
            height-mm = <121>;

            dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
                    MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
            dsi,format = <MIPI_DSI_FMT_RGB888>;
            dsi,lanes = <4>;
            pnel-type = <5>;

            //初始化代码
            panel-init-sequence = [
                            05 64 01 11 
														39 00 04 FF 98 81 03
                            15 00 02 01 00
                            15 00 02 02 00

                            ......

                            05 32 01 29
                            15 00 02 35 00	
                    ];

            panel-exit-sequence = [
                    05 32 01 28
                    05 C8 01 10
            ];

            //Screen timing parameters
            disp_timings:display-timings {
                    native-mode = <&dsi0_timing0>;

                    dsi0_timing0: timing0 {
                            clock-frequency = <75000000>;
                            hactive = <720>;
                            vactive = <1280>;
                            hfront-porch = <40>;
                            hsync-len = <10>;
                            hback-porch = <40>;
                            vfront-porch = <10>;
                            vsync-len = <36>;
                            vback-porch = <15>;
                            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_dsi: endpoint {
                        remote-endpoint = <&dsi_out_panel>;
                    };
                };
            };
        };

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

            port@1 {
                reg = <1>;
                dsi_out_panel: endpoint {
                    remote-endpoint = <&panel_in_dsi>;
                };
            };
        };

    };

    //VOP Routing (画面显示在VOP1上)
    &dsi0_in_vp0 {
        status = "disabled";
    };

    &dsi0_in_vp1 {
        status = "okay";
    };

    //BACKLIGHT
    &backlight {
        status = "okay";
    };

    //PHY
    &video_phy0 {
        status = "okay";
    };

    //LOGO (开机LOGO也对应VOP1)
    &route_dsi0 {
        status = "okay";
        connect = <&vp1_out_dsi0>;
    };

    //GPIO0_C7为屏幕供电使能脚
    &vcc3v3_lcd0_n {
        gpio = <&gpio0 RK_PC7 GPIO_ACTIVE_HIGH>;
        regulator-always-on;
        enable-active-high;
    };

    //配置屏幕使能脚复用为GPIO
    &pinctrl {
        mipi_pwren {
            mipi_power_en: mipi_power_en {
                rockchip,pins = <3 RK_PB5 RK_FUNC_GPIO &pcfg_output_high>;
            };
        };
    };

2. MIPI1 DTS Configuration

To modify the MIPI1 configuration, you need to modify arch/arm64/boot/dts/rockchiprk3568-toybrick-mipi-tx1.dtsi

    //HOST
    &dsi1 {
	    status = "okay";
    };

    //PANEL
    &dsi1_panel {
        status = "okay";
        compatible = "simple-panel-dsi";
        reg = <0>;
        backlight = <&backlight1>;  //使用第二路backlight
    //	power-supply = <&lcd_pwr>;
        prepare-delay-ms = <2>;
                reset-delay-ms = <100>;
        init-delay-ms = <20>;
        pinctrl-names = "default";
        pinctrl-0 = <&mipi1_power_en>;
        enable-gpios = <&gpio3 RK_PB6 GPIO_ACTIVE_HIGH>;
        enable-delay-ms = <120>;
        disable-delay-ms = <50>;
        unprepare-delay-ms = <20>;
        width-mm = <68>;
        height-mm = <121>;

        dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
                    MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
        dsi,format = <MIPI_DSI_FMT_RGB888>;
        dsi,lanes = <4>;
        pnel-type = <5>;
        
        //初始化代码
        panel-init-sequence = [
                        05 64 01 11 
                                                       39 00 04 FF 98 81 03
                        15 00 02 01 00
                      
                        ......

                        15 00 02 D2 65
                        15 00 02 D3 3F
                        39 00 04 FF 98 81 00
                        
                        05 32 01 29
                        15 00 02 35 00	
                ];

                panel-exit-sequence = [
                        05 32 01 28
                        05 C8 01 10
                ];

                disp1_timings:display-timings {
                        native-mode = <&dsi1_timing0>;

                        dsi1_timing0: timing0 {
                                clock-frequency = <75000000>;
                                hactive = <720>;
                                vactive = <1280>;
                                hfront-porch = <40>;
                                hsync-len = <10>;
                                hback-porch = <40>;
                                vfront-porch = <10>;
                                vsync-len = <36>;
                                vback-porch = <15>;
                                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_dsi1: endpoint {
                    remote-endpoint = <&dsi1_out_panel>;
                };
            };
        };
    };

    //VOP Routing (画面显示在VOP1上)
    &dsi1_in_vp0 {
        status = "disabled";
        
    };

    &dsi1_in_vp1 {
        status = "okay";
    };

    //BACKLIGHT
    &backlight1 {
        status = "okay";
    };

    //PHY
    &video_phy1 {
        status = "okay";
    };

    //LOGO (开机LOGO也对应VOP1)
    &route_dsi1{
        status = "okay";
        connect = <&vp1_out_dsi1>;
    };

    //GPIO0_C5为屏幕供电使能脚
    &vcc3v3_lcd1_n {
        gpio = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
        regulator-always-on;
        enable-active-high;
    };

    //配置屏幕使能脚复用为GPIO
    &pinctrl {
        mipi1_pwren {
            mipi1_power_en: mipi1_power_en {
                rockchip,pins = <3 RK_PB6 RK_FUNC_GPIO &pcfg_output_high>;
            };
        };
    };

3. EDP DTS configuration

To modify the EDP configuration, you need to modify arch/arm64/boot/dts/rockchiprk3568-toybrick-edp.dtsi

    //HOST
    &edp {
        status = "okay";
        force-hpd;

        ports {
            port@1 {
                reg = <1>;

                edp_out: endpoint {
                    remote-endpoint = <&panel_in>;
                };
            };
        };

    };

    //PANEL
	edp_panel: edp_panel {
		compatible = "simple-panel";
		backlight = <&backlight>;   //使用第一路BACKLIGHT
		prepare-delay-ms = <20>;
		enable-delay-ms = <20>;
		reset-delay-ms = <20>;

        //屏幕timing参数
		display-timings {
			native-mode = <&timing0>;

			timing0: timing0 {
				clock-frequency = <153000000>;
				hactive = <1920>;
				vactive = <1080>;
				hfront-porch = <160>;
				hsync-len = <20>;
				hback-porch = <140>;
				vfront-porch = <25>;
				vsync-len = <10>;
				vback-porch = <25>;
				hsync-active = <0>;
				vsync-active = <0>;
				de-active = <0>;
				pixelclk-active = <0>;
			};
		};

		ports {
			panel_in: endpoint {
				remote-endpoint = <&edp_out>;
			};
		};
	};

    //BACKLIGHT
    &backlight {
        status = "okay";
        enable-gpios = <&gpio3 RK_PB5 GPIO_ACTIVE_HIGH>;    //背光使能脚
        pinctrl-names = "default";
        pinctrl-0 = <&backlight_en>;
    };

    //PHY
    &edp_phy {
        status = "okay";
    };

    //VOP Routing (画面显示在VOP1上)
    &edp_in_vp0 {
        status = "disabled";
    };

    &edp_in_vp1 {
        status = "okay";
    };

    //LOGO (开机LOGO也对应VOP1)
    &route_edp {
        status = "okay";
        connect = <&vp1_out_edp>;
    };

    //GPIO0_C7为屏幕供电使能脚
    &vcc3v3_lcd0_n {
        gpio = <&gpio0 RK_PC7 GPIO_ACTIVE_HIGH>;
        enable-active-high;
    };

    //配置背光使能脚复用为GPIO
    &pinctrl{
        backlight {
            backlight_en: backlight-en {
                rockchip,pins = <3 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>;
            };
        };
    };

3. HDMI DTS Configuration

HDMI is always on by default and the image is projected onto VOP0. If you need to turn it off, modify rch/arm64/boot/dts/rockchip/rk3568-toybrick-x0-linux.dts

Modify as follows:

    &hdmi{
        status = "disabled";
    };

    //关闭hdmi音频
    &hdmi_sound{
        status = "disabled";
    };

Edit this page on GitHub
Last Updated:
Contributors: zsl, zwhuang
Prev
TF Card
Next
Touch