“MIPI-DSI液晶适配”的版本间的差异
(创建页面,内容为“=原理= MIPI液晶屏首先需要对屏驱动IC进行初始化,写入相关指令数据,然后CPU的液晶控制器按照设定的图像时序参数向驱动IC…”) |
(→屏参修改) |
||
第74行: | 第74行: | ||
− | + | lcd_driver_name为初始化代码的名字,后面会提到;lcd_if=4表示使用DSI显示接口;lcd_x/lcd_y/lcd_dclk_freq/lcd_hbp/lcd_ht/lcd_hspw/lcd_vbp/lcd_vt/lcd_vspw这9个参数需要对照液晶面板Datasheet上标注的参数对应填好;lcd_dsi_if/lcd_dsi_lane/lcd_dsi_format/lcd_dsi_te这4个参数对照上文填好即可,无需变动; | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | 对于电源/引脚配置: | ||
+ | A33:确保有lcd_power = "axp22_dc1sw"这项即可;lcdd0~23/lcdclk/lcdde/lcdhsync/lcdvsync/[lcd0_suspend]块无用都可以删去; | ||
+ | A64/A40i:确保有lcd_power = "vcc-mipi"和lcd_fix_power = "vcc-dsi-33",lcd_power为核心板VCC-MIPI输出(默认3V3),lcd_fix_power为CPU的DSI-Bank供电;lcdd0~23/lcdclk/lcdde/lcdhsync/lcdvsync/[lcd0_suspend]块无用都可以删去; | ||
+ | A133:确保有lcd_pin_power = "dcdc1"和lcd_power = "dc1sw"即可;确保引脚配置为pinctrl-0 = <&dsi4lane_pins_a>和pinctrl-1 = <&dsi4lane_pins_b>即可。 | ||
=U-Boot部分修改= | =U-Boot部分修改= |
2022年7月5日 (二) 10:12的版本
原理
MIPI液晶屏首先需要对屏驱动IC进行初始化,写入相关指令数据,然后CPU的液晶控制器按照设定的图像时序参数向驱动IC输出图像数据。所以移植需要屏参(时序参数HBP、VBP一类的)和初始化代码两部分。
屏参修改
对于A33/A64/A40i需要找到FEX文件中找到lcd0参数块;对于A133需要在DTS里找到lcd0节点;以FEX文件为例:
[lcd0]
lcd_used = 1
lcd_driver_name = "AML080WQ05"
lcd_backlight = 100
lcd_if = 4
lcd_x = 800
lcd_y = 1280
lcd_width = 223
lcd_height = 125
lcd_dclk_freq = 70
lcd_pwm_used = 1
lcd_pwm_ch = 0
lcd_pwm_freq = 200
lcd_pwm_pol = 0
lcd_pwm_max_limit = 255
lcd_hbp = 40
lcd_ht = 888
lcd_hspw = 12
lcd_vbp = 20
lcd_vt = 1320
lcd_vspw = 4
lcd_lvds_if = 0
lcd_lvds_colordepth = 0
lcd_lvds_mode = 0
lcd_frm = 1
lcd_hv_clk_phase = 0
lcd_hv_sync_polarity = 0
lcd_dsi_if = 0
lcd_dsi_lane = 4
lcd_dsi_format = 0
lcd_dsi_te = 0
lcd_gamma_en = 0
lcd_bright_curve_en = 0
lcd_cmap_en = 0
lcd_driver_name为初始化代码的名字,后面会提到;lcd_if=4表示使用DSI显示接口;lcd_x/lcd_y/lcd_dclk_freq/lcd_hbp/lcd_ht/lcd_hspw/lcd_vbp/lcd_vt/lcd_vspw这9个参数需要对照液晶面板Datasheet上标注的参数对应填好;lcd_dsi_if/lcd_dsi_lane/lcd_dsi_format/lcd_dsi_te这4个参数对照上文填好即可,无需变动;
对于电源/引脚配置:
A33:确保有lcd_power = "axp22_dc1sw"这项即可;lcdd0~23/lcdclk/lcdde/lcdhsync/lcdvsync/[lcd0_suspend]块无用都可以删去;
A64/A40i:确保有lcd_power = "vcc-mipi"和lcd_fix_power = "vcc-dsi-33",lcd_power为核心板VCC-MIPI输出(默认3V3),lcd_fix_power为CPU的DSI-Bank供电;lcdd0~23/lcdclk/lcdde/lcdhsync/lcdvsync/[lcd0_suspend]块无用都可以删去;
A133:确保有lcd_pin_power = "dcdc1"和lcd_power = "dc1sw"即可;确保引脚配置为pinctrl-0 = <&dsi4lane_pins_a>和pinctrl-1 = <&dsi4lane_pins_b>即可。
U-Boot部分修改
代码位置: