panel-rgb
panel_rgb { compatible = "artinchip,aic-general-rgb-panel"; status = "okay"; rgb-mode = <PRGB>; interface-format = <PRGB_24BIT>; clock-phase = <DEGREE_0>; data-order = <RGB>; backlight = <&backlight>; // enable-gpios = <&gpio_a 4 GPIO_ACTIVE_HIGH>; port { panel_rgb_in: endpoint { remote-endpoint = <&rgb0_out>; }; }; display-timings { native-mode = <&timing0>; timing0: 1024x600 { clock-frequency = <45000000>; hactive = <1024>; vactive = <600>; hback-porch = <140>; hfront-porch = <160>; hsync-len = <20>; vback-porch = <12>; vfront-porch = <20>; vsync-len = <3>; de-active = <1>; pixelclk-active = <1>; }; }; };
相关宏定义取值在文件 include/dt-bindings/display/artinchip,aic-disp.h 中
Required properties:
-
port
连接到 RGB 显示接口的输入端口,将 panel_rgb 结点与 rgb 结点关联起来。
Optional properties:
-
rgb-mode
设置 RGB 显示接口的输出模式,可以设置为并行 RGB、串行 RGB、I8080、SPI。默认为并行 RGB 模式
rgb-mode macro value 并行 RGB PRGB 0 串行 RGB SRGB 1 I8080 I8080 2 SPI SPI 3 -
interface-format
设置 RGB 显示接口的输出格式,默认输出并行 RGB 24-bit。
PRGB 的 18bit/16bit 兼容 2 种输出模式,可根据不同的封装或走线需求进行选择。
- PRGB_18BIT_LD 表示将 24 个 pin 中最低位的 6 个 pin 丢弃
- PRGB_18BIT_HD 表示将 24 个 pin 中最高位的 6 个 pin 丢弃
16 bit 模式同理,丢弃 24 个 pin 中的 8 个,详情可参考芯片数据手册中 LCD 章节中的功能描述。
mode macro value PRGB PRGB_24BIT 0 - PRGB_18BIT_LD 1 - PRGB_18BIT_HD 2 - PRGB_16BIT_LD 3 - PRGB_16BIT_HD 4 SRGB SRGB_8BIT 0 - SRGB_6BIT 1 I8080 I8080_RGB565_8BIT 0 - I8080_RGB666_8BIT 1 - I8080_RGB666_9BIT 2 - I8080_RGB666_16BIT_3CYCLE 3 - I8080_RGB666_16BIT_2CYCLE 4 - I8080_RGB565_16BIT 5 - I8080_RGB666_18BIT 6 - I8080_RGB888_24BIT 7 SPI SPI_3LINE_RGB565 0 - SPI_3LINE_RGB666 1 - SPI_3LINE_RGB888 2 - SPI_4LINE_RGB565 3 - SPI_4LINE_RGB666 4 - SPI_4LINE_RGB888 5 - SPI_4SDA_RGB565 6 - SPI_4SDA_RGB666 7 - SPI_4SDA_RGB888 8 -
clock-phase
pixel 时钟输出相位选择, 允许设置时钟上升沿延后数据 0°/90°/180°/270° 相位。 默认为 0°
degress macro value 0° DEGREE_0 0 90° DEGREE_90 1 180° DEGREE_180 2 270° DEGREE_270 3 -
data-order
RGB 数据的输出顺序,R/G/B 三组信号可按任意顺序输出。默认为 RGB 顺序输出。
数据输出顺序 macro value RGB RGB 0x02100210 RBG RBG 0x02010201 BGR BGR 0x00120012 BRG BRG 0x00210021 GRB GRB 0x01200120 GBR GBR 0x01020102 -
data-mirror
布尔型参数,控制 RGB 数据组内大小端输出。默认输出低位到高位 0 - 7。如果设置则输出变为 7 - 0
-
disp-dither
颜色输出深度控制,使图像过度更平滑。当内存数据为 8bit ,但输出为 6bit 或者 5bit 时,使能 dither 能让图像过度更平滑,否则直接丢弃低位 bit。
配置 dither 时默认使能随机 dither ,获取更好的显示效果。
颜色输出深度 macro value R 分量输出 5bit
G 分量输出 6bit
B 分量输出 5bit
DITHER_RGB565 0x1 R 分量输出 6bit
G 分量输出 6bit
B 分量输出 6bit
DITHER_RGB666 0x2 -
tearing-effect
TE 信号响应模式,配合屏幕 TE 信号使用,控制 DE 模块的输出,避免 LCD 屏幕出现撕裂现象。
-
连续刷新 (default) :忽略 TE 信号, 连续刷新
-
手动刷新:DE timging enable 后在下一个 TE 信号更新画面
-
自动刷新: 每收到一个 TE 信号,自动更新画面,更新期间忽略 TE 信号
手动刷新和自动刷新模式下,需要设定 TE 脉冲宽度,用于检测屏幕 TE 信号。
TE mode macro value 连续刷新 TE_BYPASS 0x0 手动刷新 TE_HOLD 0x1 自动刷新 TE_AUTO 0x2 -
-
te-pulse-width
TE 脉冲宽度,用于检测 TE 同步信号的有效状态,建议设为 5。
-
enable-gpios
预留的屏幕使能引脚,可用于控制屏幕供电,不使用 pwm-backlight 的情况下亦可控制屏幕背光。
-
backlight
屏幕的 pwm-backlight 配置节点。
-
display-timings
屏的时序信号。由屏厂提供。