MTK Android Driver :lcm

原创 2013年12月20日 12:07:05

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提供修改方式)。

Android LCM兼容设置

QUESTION : 如何实现lcm兼容设计? RESOLUTION: 以下以 hx8369 及 nt35582_MCU 为例: 1:打开alps\mediatek\con...
  • u014717231
  • u014717231
  • 2016年11月11日 14:59
  • 497

mtk设备模型之LCM--学习

1、Linux设备模型 站在BSP的角度来看,整个系统可以由三部分组成:设备、总线、驱动。 Linux kernel有一些总线,比如USB、I2C等。对于每一个总线都会...
  • gnnulzy
  • gnnulzy
  • 2016年09月22日 14:30
  • 1396

mtk lcm驱动流程

lcm驱动流程: lcm模组驱动,ili9881c_dsi_hd_vdo_dj_sp603_drv LCM_DRIVER ili9881c_dsi_hd_vdo_dj_sp603_drv = ...
  • zyaiwmy
  • zyaiwmy
  • 2017年01月10日 13:48
  • 780

对MTK安卓平台LCM驱动的理解

一个项目兼容两块LCM或者更多,在工作中很常见,但是最近碰到个麻烦的事情,两块屏读出的ID总是相同的,搞了很久最后只能通过ADC的方法读LCM的一个分压电阻的电压来区分,具体做法是: 使用封装好了的A...
  • xiaocaohuyang
  • xiaocaohuyang
  • 2016年02月29日 09:58
  • 1820

Android系统下的基于MIPI-DSI协议的LCM的研究

摘要:介绍了为满足智能手机的快速发展产生的LCM的MIPI-DSI协议的优点,描述了DSI协议的操作方式,分析了DSI协议的定义中的数据包格式及其传输方式。还完成了硬件电路的设计,详细阐述了Andro...
  • IvaanLove
  • IvaanLove
  • 2015年07月05日 16:07
  • 1991

android lcm驱动解读及调试

lcm驱动的源代码解读在我们调屏之前,我们一定要弄懂源代码框架以及每一行代码代表的意思,那么就让我们首先来看看代码(以ili9806e为例) 1 #if defined(BUILD_LK) 2...
  • mahao1107
  • mahao1107
  • 2016年11月30日 10:29
  • 2875

MTK LCM代码的实现以及常见的问题

  • 2014年05月15日 10:15
  • 485KB
  • 下载

基于MTK65xx平台lcm和背光驱动的编写

一、 与LCD驱动相关的主要文件路径 \mediatek\platform\mt6573\uboot\mt6573_disp_drv.c \mediatek\platform\mt6573\ubo...
  • S510121202
  • S510121202
  • 2013年07月27日 17:44
  • 3289

mtk lcm调试

1.驱动添加 alps\kernel‐3.10\drivers\misc\mediatek\lcm\ alps\bootable\bootloader\lk\dev\lcm\2.makefil...
  • oJiuYue1234567890
  • oJiuYue1234567890
  • 2016年10月29日 12:04
  • 381

MTK lcm 驱动加载流程 android M

一直有一种强迫症,不把整个流程屡清楚就是蓝瘦香菇。做项目读博客多了,也就慢慢地搞清楚了。 安卓系统从power键按下释放,到lcm驱动显示,整个驱动的加载流程as follows: lk阶段,还是...
  • sinat_30545941
  • sinat_30545941
  • 2017年04月07日 11:52
  • 1184
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MTK Android Driver :lcm
举报原因:
原因补充:

(最多只允许输入30个字)