Edit online

disp_conf 头文件配置

28 Oct 2024
Read time: 4 minute(s)

在显示驱动中,disp_conf.h 头文件用于配置显示接口的宏定义。引入 disp_conf.h 头文件是为了避免 menuconfig 参数过多导致误改。这部分参数可方便 PCB layout 走线,配置有误会导致显示异常。推荐在硬件工程师的确认下,结合芯片手册进行修改。

本节介绍了常见的 LVDSMIPI-DSI 参数及其配置。

LVDS 参数

/* lvds link swap enable, swap lvds link0 and link1 */
#define AIC_LVDS_LINK_SWAP_EN   0

/**
 * lvds channel output order
 *
 * works on both link0 and link1 (if exists)
 *
 * default D3 CK D2 D1 D0
 *          4  3  2  1  0
 */
#define AIC_LVDS_LINES      0x43210

/**
 * lvds channel polarities, works on both link0 and link1 (if exists)
 */
#define AIC_LVDS_POL        0x0

/**
 * lvds channel phy config, works on both link0 and link1 (if exists)
 */
#define AIC_LVDS_PHY        0xFA
1. LVDS 参数详细描述
参数名称 功能定义 备注
AIC_LVDS_SYNC_MODE_EN LVDS 同步前端信号模式使能。 防止前端给到半帧数据时打开 LVDS 模块,出现显示异常,不推荐关闭。
AIC_LVDS_LINK_SWAP_EN LVDS Link 互换使能,Link 0 通道与 Link 1 通道输出互换 默认值:禁用 (0)
AIC_LVDS_LINES LVDS Link 通道内输出选择。 控制 LVDS Link 内部五个通道的差分信号输出,允许五对差分信号任意互换:
  • 默认值:0x43210
  • 五个通道:D3 CK D2 D1 D0。
  • 0x43210:缺省值,4 个 bit 表示一个通道。D3 通道输出 D3,CK 通道输出 CK,D2 通道输出 D2,D1 通道输出 D1,D0 通道输出 D0。
  • 0x01234:D3 通道输出 D0,CK 通道输出 D1,D2 通道输出 D2,D1 通道输出 CK,D0 通道输出 D3。
AIC_LVDS_POL

LVDS 通道极性控制

低 5 bit 分别控制 LVDS 五个通道差分信号的极性,通道默认顺序为 D3 CK D2 D1 D0:
  • 0x3 表示 D1 D0 通道极性反相
  • 0x8 表示 CK 通道反相

AIC_LVDS_POL 受 AIC_LVDS_LINES 影响,如果 CK 通道选择输出 D0,则该 bit 控制 D0 相位,0x8 表示 D0 反相。

AIC_LVDS_PHY LVDS 物理层控制 对应芯片手册 LVDS_0_PHY_CTL 和 LVDS_1_PHY_CTL 寄存器的数值,结合芯片手册进行修改。

MIPI-DSI 参数

/* data line assignments */
#define LANE_ASSIGNMENTS 0x0123;

/* data line polarities */
#define LANE_POLARITIES  0b1111;

/* data clk inverse */
#define CLK_INVERSE      1
2. MIPI-DSI 参数详细描述
参数名称 功能定义 备注
LANE_ASSIGNMENTS 数据通道输出选择,方便 layout 走线

4 个 bit 表示一个通道。

  • 0x0123:默认值。
    • 数据通道 3 输出 DATA0
    • 数据通道 2 输出 DATA1
    • 数据通道 1 输出 DATA2
    • 数据通道 0 输出 DATA3
  • 0x3012
    • 数据通道 3 输出 DATA3
    • 数据通道 2 输出 DATA0
    • 数据通道 1 输出 DATA1
    • 数据通道 0 输出 DATA2
  • 0x01:如果是两个 lane,表示数据通道 1 输出 DATA0,数据通道 0 输出 DATA1。
LANE_POLARITIES 数据通道极性是否正负极取反 默认值:0b1111

二进制参数,1 个 bit 对应一个通道,与 LANE_ASSIGNMENTS 配置的通道顺序保持一致。

示例:LANE_ASSIGNMENTS = <0x3012>, LANE_POLARITIES = <0b1010>,表示 DATA3 和 DATA1 正负极取反。

CLK_INVERSE

CLK Lane 正负极取反

-