mtk camera 移植步骤:

1, Kernel层驱动代码文件添加

/mediatek/custom/doov92_wet_tdd/kernel/imgsensor/下添加imx179_mipi_raw_

2lane/  目录如下:

imx179_mipi_raw_2lane

- imx179mipiraw_Camera_Sensor_para_2lane.h

- imx179mipiraw_CameraCustomized_2lane.h

- imx179mipiraw_Sensor_2lane.c

- imx179mipiraw_Sensor_2lane.h

看了一下, 基本上所有的驱动文件都是这样的格式.

2, HAL层效果参数文件添加

/mediatek/custom/mt6592/hal/imgsensor/下添加imx179_mipi_raw_2lane目录,该目录list如下:

imx179_mipi_raw_2lane

- camera_AE_PLineTable_imx179raw_2lane.h

- camera_calibration_cam_cal_2lane.cpp

- camera_flicker_para_imx179raw_2lane.cpp

- camera_info_imx179raw_2lane.h

- camera_isp_lsc_imx179raw_2lane.h

- camera_isp_pca_imx179raw_2lane.h

- camera_isp_regs_imx179raw_2lane.h

- camera_tsf_data_imx179raw_2lane.h

- camera_tsf_para_imx179raw_2lane.h

- camera_tuning_para_imx179raw_2lane.cpp

- config.ftbl.imx179_mipi_raw_2lane.h

根据具体的sensor, 文件会有所增减.

3, 驱动结构添加

./mediatek/custom/common/kernel/imgsensor/src/kd_sensorlist.H:

1)UINT32 IMX179_MIPI_RAW_2lane_SensorInit(PSENSOR_FUNCTION_STRUCT *pfFunc);

2) ACDK_KD_SENSOR_INIT_FUNCTION_STRUCT kdSensorList[MAX_NUM_OF_SUPPORT_SENSOR+1] =

{

#if defined(IMX179_MIPI_RAW_2LANE)//addimx179sensor(front), jintao_20140114_camera_front +++

{IMX179_SENSOR_2LANE_ID, SENSOR_DRVNAME_IMX179_MIPI_RAW, IMX179_MIPI_RAW_2lane_SensorInit},

#endif

......

}

4, 定义ID和drv name

./mediatek/custom/common/kernel/imgsensor/inc/kd_imgsensor.h:

#define IMX179_SENSOR_2LANE_ID                       0x0179

#define SENSOR_DRVNAME_IMX179_MIPI_RAW    "imx179mipiraw_2lane"

5, HAL层ID与drv name的衔接

./mediatek/custom/common/hal/imgsensor/src/sensorlist.cpp

MSDK_SENSOR_INIT_FUNCTION_STRUCT SensorList[] =

{

#if defined(IMX179_MIPI_RAW_2LANE)//add imx179 sensor(front), jintao_20140114_camera_front +++

RAW_INFO(IMX179_SENSOR_2LANE_ID, SENSOR_DRVNAME_IMX179_MIPI_RAW, NULL),

#endif

......

}

6, Camera Sensor宏配置

/mediatek/config/doov92_wet_tdd/ProjectConfig.mk      ==配置

CUSTOM_HAL_IMGSENSOR=imx135_mipi_raw imx179_mipi_raw_2lane

CUSTOM_HAL_SUB_IMGSENSOR=imx179_mipi_raw_2lane

CUSTOM_KERNEL_IMGSENSOR=imx135_mipi_raw imx179_mipi_raw_2lane

CUSTOM_KERNEL_SUB_IMGSENSOR=imx179_mipi_raw_2lane

7,时序配置

./mediatek/custom/doov92_wet_tdd/kernel/camera/camera/kd_camera_hw.c

else if (currSensorName && (0 == strcmp(currSensorName,"imx179mipiraw_2lane")))

分别配置上电/下电.              原理图上的PIN脚收集如下.

Main Sensor 控制脚:

CMRST_MAIN     CMPDN_MAIN

VCAM_AF            AF_EN

VCAMD               VCAMA

VCAMIO

SCL               SDA

CMMCLK

MIPI-RDP0    MIPI-RDN0

MIPI-RDP1    MIPI-RDN1

MIPI-RDP2    MIPI-RDN2

MIPI-RDP3    MIPI-RDN3

MIPI-RCP     MIPI-RCN

F-LED+

F-LED1-

F-LED2-

8,Camera预览/拍照储存照片的方向改变

./mediatek/custom/doov92_wet_tdd/hal/imgsensor/src/cfg_setting_imgsensor.cpp //改的是这个

SensorOrientation_T const&

getSensorOrientation()

{

static SensorOrientation_T const inst = {

u4Degree_0  : 270,   //  main sensor in degree (0, 90, 180, 270), 后摄的方向配置.

u4Degree_1  : 270,    //  sub  sensor in degree (0, 90, 180, 270), 前摄的方向配置.

u4Degree_2  : 90,   的方向配置.

};

return inst;

}

mtk camera 移植步骤的更多相关文章

  1. MTK Camera驱动移植

    对于MTK Camera驱动移植一般分为四部分: 1.硬件IO口配置: 2.Camera驱动移植: 3.上电时序. 4.改动i2c控制器: 硬件电路: 1.GPIO配置 打开 mediatek\dct ...

  2. 基于MT6752/32平台 Android L版本驱动移植步骤

    基于MT6752/32平台 Android L版本驱动移植步骤 根据MK官网所述,在Android L 版本上Turnkey ABS 架构将会phase out,而Mediatek Turnkey架构 ...

  3. STemWin5.22在STM32F103上的移植步骤

    源:STemWin5.22在STM32F103上的移植步骤

  4. Mtk Camera

    MTK6577+Android之Camera驱动 http://blog.csdn.net/loongembedded/article/details/41695205 MTK Camera 开机启动 ...

  5. MTK camera 闪光灯Flashlight驱动调试流程

    MTK camera 闪光灯Flashlight驱动调试流程 分类: MtkDev  |  作者: topicdev 相关  |  发布日期 : 2014-09-26  |  热度 : 153°   ...

  6. MTK Camera 开机启动流程(转载)

    一.MTK平台Camera框架 MTK平台的Camera的架构见下图, 这里主要介绍kernel部分和HAL层部分. 1.Kernel 部分主要有两块: 1.1.image sensordriver, ...

  7. MTK Camera相关的Makefile Option详解

    列举了所有Camera相关的MakefileOption,并对其功能含义和OptionValues做了详细的解释.[KEYWORD]Others[SOLUTION]YUVCAM_INTERPOLATI ...

  8. Linux移植之移植步骤

    在这里总结一下我在移植Linux2.6.22.6内核过程时的步骤.移植成功后最终能挂接做好的根文件系统,并且启动第一个init程序.移植的步骤如下: 1.将网上下载的内核源码文件linux-2.6.2 ...

  9. 标题:u-boot 移植步骤详解

    1 U-Boot简介U-Boot,全称Universal Boot Loader,是遵循GPL条款的开放源码项目.从FADSROM.8xxROM.PPCBOOT逐步发展演化而来.其源码目录.编译形式与 ...

随机推荐

  1. Compile C++ code in Matlab with OpenCV support

    Provides a function named as "mex_opencv(src)" The code function mex_opencv(src) ARC = 'x6 ...

  2. mxgraph进阶(四)mxGraph再启程

    mxgraph进阶(四)mxGraph再启程 前言   小论文Constructing User Interaction Behaviors Net from System Log. (AICE 20 ...

  3. Dynamics CRM 删除字段时检测到有组件类型为查看的依赖组件而无法删除问题

    今天在删除一个字段的时候报如下截图错误,点开详细信息会看到是一个快速查找视图,但却在视图列中没有找到我要删的那个字段,然后回过头来又看到组件类型是查看,这是啥类型?有点摸不着头脑了. 最后想到是不是查 ...

  4. UNIX网络编程——ioctl 函数的用法详解

    1.介绍 Linux网络程序与内核交互的方法是通过ioctl来实现的,ioctl与网络协议栈进行交互,可得到网络接口的信息,网卡设备的映射属性和配置网络接口.并且还能够查看,修改,删除ARP高速缓存的 ...

  5. Dynamics CRM2013/2015 检索实体属性的两种方式

    昨天有朋友问起如何查询一个字段属性是否存在于某个实体中,一般这个问题我们会采取最直观的查询方式即MetadataBrowser,该工具是一个zip解决方案包在SDK中的如下目录内"\SDK\ ...

  6. React Native开发工具Nuclide使用

    之前写RN的时候首选webstorm,这是之前做前端已经习惯的工具,其实RN开发官网推荐的是Nuclide工具, Nuclide是Fackbook专门为React开发IDE,今天也来尝试下,如果对we ...

  7. 如何优雅地退出python程序

    如何优雅地退出python程序 一个单模的python程序,启动之后要能够优雅地关闭.即当用户按Ctrl+C或者kill pid的时候,程序都能从容关闭.实现起来非常简单. is_running = ...

  8. JAVA之旅(三十一)——JAVA的图形化界面,GUI布局,Frame,GUI事件监听机制,Action事件,鼠标事件

    JAVA之旅(三十一)--JAVA的图形化界面,GUI布局,Frame,GUI事件监听机制,Action事件,鼠标事件 有段时间没有更新JAVA了,我们今天来说一下JAVA中的图形化界面,也就是GUI ...

  9. android之View绘制

    Android系统的视图结构的设计也采用了组合模式,即View作为所有图形的基类,Viewgroup对View继承扩展为视图容器类,由此就得到了视图部分的基本结构--树形结构 View定义了绘图的基本 ...

  10. 从浏览器直接转跳到APP具体页面---(魔窗)MagicWindow使用教程

    想要实现在网页里一键调到你APP的指定页面吗,好比打开 JD的一个商品的网页,从网页调到APP这个商品的页面.APP服务化, 使用魔窗SDK可以轻松实现! 老规矩:效果图奉上 1.注册魔窗账号,创建A ...