• 周三. 5月 21st, 2025

rockchip — Simple display panel dts配置

关键词:rockchip; simple-panel; simple-panel-dsi;lcd; 显示屏驱动调试;

rockchip — Simple display panel dts配置

文章中display-timing的配置,请参考《ROCKCHIP — DISPLAY-TIMING DTS配置

1、属性值配置:

- power-supply: 配置电源
- compatible: 可以配置成以下值:
		"simple-panel";
		"simple-panel-dsi";

- ddc-i2c-bus: 给DDC EDID配置I2C控制器;
- enable-gpios: 配置panel的使能脚;
- reset-gpios: 配置panel的复位脚;
- backlight: 指向背光的dts配置节点;
- reset-delay-ms: 配置reset的脉冲时延;
- enable-delay-ms: 配置panel显示前的延时值;
- prepare-delay-ms: 配置panel接收图像数据前的延时值;
- disable-delay-ms: 配置panel关闭前的延时值;
- unprepare-delay-ms: 配置panel黑屏前的延时值;
- width-mm: 配置panel的物理宽度尺寸[mm];
- height-mm: 配置panel的物理高度尺寸[mm];
- bpc: 配置像素点位深;
- display-timings: 配置timing节点;
- dsi,flags:  配置panel的使用的模式;
- dsi,format: 配置panel像素格式;
- dsi,lanes: 配置panel使用的lane数;
- init-delay-ms: 配置panel在初始化前的延时值;
- panel-init-sequence: 
	byte 0: dcs 数据类型
	byte 1: 指令发送之后的延时
	byte 2: 指令长度
	byte 3:数据
- panel-exit-sequence:
	byte 0: dcs 数据类型
	byte 1: 指令发送之后的延时
	byte 2: 指令长度
	byte 3:数据

- power-invert:配置电源反转
	if power-invert exist the panel power need to disable ldo when power on
	and enable ldo when power off otherwise it's opposite.

2、实例:

Example:

	panel: panel {
		compatible = "cptt,claa101wb01";
		ddc-i2c-bus = <&panelddc>;

		power-supply = <&vdd_pnl_reg>;
		enable-gpios = <&gpio 90 0>;

		backlight = <&backlight>;
	};

Or:

&dsi {
	panel@0 {
		compatible = "simple-panel-dsi";
		reg = <0>;
		backlight = <&backlight>;

		power-supply = <&vcc_lcd>;
		enable-gpios = <&gpio2 27 GPIO_ACTIVE_HIGH>;
		reset-gpios = <&gpio3 13 GPIO_ACTIVE_LOW>;

		reset-delay-ms = <120>;
		init-delay-ms = <120>;
		enable-delay-ms = <120>;
		prepare-delay-ms = <120>;
		disable-delay-ms = <120>;
		unprepare-delay-ms = <120>;

		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>;

		panel-init-sequence = [
			39 00 10 b1 6c 15 15 24 E4 11 f1 80 e4
				 d7 23 80 c0 d2 58
			...
			05 78 01 11
			05 78 01 29
		];

		panel-exit-sequence = [
			05 00 01 28
			05 78 01 10
		];

		display-timings {
			native-mode = <&timing0>;

			timing0: timing0 {
				clock-frequency = <160000000>;
				hactive = <1200>;
				vactive = <1920>;
				hback-porch = <21>;
				hfront-porch = <120>;
				vback-porch = <18>;
				vfront-porch = <21>;
				hsync-len = <20>;
				vsync-len = <3>;
				hsync-active = <0>;
				vsync-active = <0>;
				de-active = <0>;
				pixelclk-active = <0>;
			};
		};
	};
};

发表评论

您的电子邮箱地址不会被公开。