disp_conf 头文件配置
28 Oct 2024
Read time: 4 minute(s)
在显示驱动中,disp_conf.h
头文件用于配置显示接口的宏定义。引入 disp_conf.h
头文件是为了避免 menuconfig 参数过多导致误改。这部分参数可方便 PCB layout
走线,配置有误会导致显示异常。推荐在硬件工程师的确认下,结合芯片手册进行修改。
本节介绍了常见的 LVDS 和 MIPI-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
参数名称 | 功能定义 | 备注 |
---|---|---|
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 内部五个通道的差分信号输出,允许五对差分信号任意互换:
|
AIC_LVDS_POL |
LVDS 通道极性控制 |
低 5 bit 分别控制 LVDS 五个通道差分信号的极性,通道默认顺序为 D3 CK D2 D1 D0:
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
参数名称 | 功能定义 | 备注 |
---|---|---|
LANE_ASSIGNMENTS | 数据通道输出选择,方便 layout 走线 4 个 bit 表示一个通道。 |
|
LANE_POLARITIES | 数据通道极性是否正负极取反 | 默认值:0b1111 二进制参数,1 个 bit 对应一个通道,与 LANE_ASSIGNMENTS 配置的通道顺序保持一致。 示例:LANE_ASSIGNMENTS = <0x3012>, LANE_POLARITIES = <0b1010>,表示 DATA3 和 DATA1 正负极取反。 |
CLK_INVERSE |
CLK Lane 正负极取反 |
- |