6.2.2.2. disp_conf头文件配置

显示驱动中包含一个 disp_conf.h 头文件,通过宏定义的方式配置了部分显示参数。

bsp/zx/drv/display/disp_conf.h

menuconfig 主要配置跟 LCD 外设强相关或者改动较为频繁的参数,而 disp_conf.h 主要配置显示接口相关的参数。

备注

引入 disp_conf.h 头文件的目的,是为了避免 menuconfig 参数过多导致误改。

这部分参数可方便 PCB layout 走线,配置有误会导致显示异常。推荐在硬件工程师的确认下,结合芯片手册进行修改。

6.2.2.2.1. 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
  • AIC_LVDS_SYNC_MODE_EN

    开启 lvds 同步前端信号模式。 防止前端给到半帧数据时打开LVDS模块,出现显示异常,不推荐关闭。

  • AIC_LVDS_LINK_SWAP_EN

    lvds link 互换使能,link 0 通道与 link 1 通道输出互换

  • AIC_LVDS_LINES

    lvds link 通道内输出选择。控制 lvds link 内部 5 个通道的差分信号输出,允许 5 对差分信号任意互换

    5 个通道分别为 D3 CK D2 D1 D0,缺省值为:0x43210

    0x43210 表示 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 寄存器的数值,推荐结合芯片手册进行修改。

6.2.2.2.2. MIPI-DSI 参数

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

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

/* data clk inverse */
#define CLK_INVERSE      1
  • LANE_ASSIGNMENTS

    数据通道输出选择,默认为 0x0123,可方便 layout 走线

    0x0123 表示数据通道3 输出 DATA0,数据通道2 输出 DATA1,数据通道1 输出 DATA2, 数据通道0 输出 DATA3

    0x3012 表示数据通道3 输出 DATA3,数据通道2 输出 DATA0,数据通道1 输出 DATA1,数据通道0 输出 DATA2

    如果是两个 lane,可配置成 0x01,表示数据通道1 输出 DATA0,数据通道0 输出DATA1

  • LANE_POLARITIES

    数据通道极性是否正负极取反,默认为 0b1111,与 LANE_ASSIGNMENTS 配置的通道顺序保持一致。

    LANE_ASSIGNMENTS = <0x3012>; LANE_POLARITIES = <0b1010>; 表示 DATA3 和 DATA1 正负极取反

  • CLK_INVERSE

    CLK Lane 正负极取反