MTK Android Driver :lcm

1.1怎样新建一个LCD驱动

LCD模组主要包括LCD显示屏和驱动IC。比如LF040DNYB16a模组的驱动IC型号为NT35510。要在MTK6577平台上新建这个lcd的驱动,步骤如下:

A.      新建文件夹nt35510:

\mediatek\custom\common\kernel\lcm\ nt35510

\mediatek\custom\common\lk\lcm\ nt35510 //\mediatek\custom\common\uboot\lcm\nt35510 

 

B.修改\mediatek\custom\common\kernel\lcm\ mt65xx_lcm_list.c, 在lcm_driver_list [ lcm_count ] 中增加nt35510_lcm_drv。

C.打开mediatek\config\prj\ProjectConfig.mk:

BUILD_LK=yes //BUILD_UBOOT=yes

BOOT_LOGO=wsvganl

 

CUSTOM_KERNEL_LCM = nt35510

CUSTOM_LK_LCM= nt35510 // CUSTOM_UBOOT_LCM =nt35510

 

LCM_WIDTH=600

LCM_HEIGHT=1024

驱动文件移植原则:

根据具体平台,填充对应的函数,不能直接复制整个文件,避免不必要编译和接口错误。

 

1.3 LCD显示旋转(横竖屏旋转,关联到很多界面,需要统一修改)

方式一:横竖屏分辨率修改(还需要修改TP驱动):

LCM_WIDTH=1024

LCM_HEIGHT=600

 

方式二:lcm显示旋转,只需要修改:(还需要旋转camera驱动)

MTK_LCM_PHYSICAL_ROTATION=90

MTK_TOUCH_PHYSICAL_ROTATION_RELATIVE_TO_LCM=90

camera 旋转

\alps\mediatek\custom\prj\hal\imgsensor\src\cfg_setting_imgsensor.cpp

    static SensorOrientation_T const inst = {

        u4Degree_0  : 180,//90,  //  main sensor in degree (0, 90,180, 270)

        u4Degree_1  : 0,//90,   //  sub  sensor in degree (0, 90, 180, 270)

 

 

1.4 lcm参数修改

\mediatek\custom\common\kernel\lcm\rgb_mt8193

staticvoid lcm_get_params(LCM_PARAMS *params){}

lcd rgb频率:

//params->dpi.mipi_pll_clk_ref  =536870912;

params->dpi.mipi_pll_clk_ref= (33.3*(16777216*8*2))/26;  //33.3MHz

//params->dpi.mipi_pll_clk_ref= 536870912;  //52.0MHz

colorformat 修改

params->dpi.format            = LCM_DPI_FORMAT_RGB888;   // format is 24 bit//LCM_DPI_FORMAT_RGB666

 

1.5 修改显示分辨率:

1.5.1配置修改:

打开mediatek\config\prj\ProjectConfig.mk:

LCM_WIDTH=600

LCM_HEIGHT=1024

Lk_logo= wsvganl

15.2 lcm驱动分辨率修改(注意横竖数值对应)

对应的lcm :\mediatek\custom\common\kernel\lcm\rgb_mt8193

#defineFRAME_WIDTH  (1024)

#defineFRAME_HEIGHT (600)

 

15.3 tpsensor driver修改,对应分辨率(sensor fae提供修改方式)。

你可能感兴趣的:(MTK Android Driver :lcm)