mtk camera 移植步骤
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 移植步骤的更多相关文章
- MTK Camera驱动移植
对于MTK Camera驱动移植一般分为四部分: 1.硬件IO口配置: 2.Camera驱动移植: 3.上电时序. 4.改动i2c控制器: 硬件电路: 1.GPIO配置 打开 mediatek\dct ...
- 基于MT6752/32平台 Android L版本驱动移植步骤
基于MT6752/32平台 Android L版本驱动移植步骤 根据MK官网所述,在Android L 版本上Turnkey ABS 架构将会phase out,而Mediatek Turnkey架构 ...
- STemWin5.22在STM32F103上的移植步骤
源:STemWin5.22在STM32F103上的移植步骤
- Mtk Camera
MTK6577+Android之Camera驱动 http://blog.csdn.net/loongembedded/article/details/41695205 MTK Camera 开机启动 ...
- MTK camera 闪光灯Flashlight驱动调试流程
MTK camera 闪光灯Flashlight驱动调试流程 分类: MtkDev | 作者: topicdev 相关 | 发布日期 : 2014-09-26 | 热度 : 153° ...
- MTK Camera 开机启动流程(转载)
一.MTK平台Camera框架 MTK平台的Camera的架构见下图, 这里主要介绍kernel部分和HAL层部分. 1.Kernel 部分主要有两块: 1.1.image sensordriver, ...
- MTK Camera相关的Makefile Option详解
列举了所有Camera相关的MakefileOption,并对其功能含义和OptionValues做了详细的解释.[KEYWORD]Others[SOLUTION]YUVCAM_INTERPOLATI ...
- Linux移植之移植步骤
在这里总结一下我在移植Linux2.6.22.6内核过程时的步骤.移植成功后最终能挂接做好的根文件系统,并且启动第一个init程序.移植的步骤如下: 1.将网上下载的内核源码文件linux-2.6.2 ...
- 标题:u-boot 移植步骤详解
1 U-Boot简介U-Boot,全称Universal Boot Loader,是遵循GPL条款的开放源码项目.从FADSROM.8xxROM.PPCBOOT逐步发展演化而来.其源码目录.编译形式与 ...
随机推荐
- Swift基础之两种选择星星的评价样式并获取星星的索引值
想练练手,所以封装了一个两种选择星星的评价样式的Demo,并且可以获取到点击的星星的索引值,方便记录值,上传数据时使用 首先创建View类,设计初始化方法,并且用到了枚举类型和代理方法 方式一:默认的 ...
- 说一说关于破解支付宝AR红包的事
当朋友圈的你们才开始分享支付宝AR红包的消息的时候,我已经对它动了一二三四次歪脑筋了,虽然事实证明并不是那么顺利,至今我也只在电脑前识别出5个不知道在哪里的红包,其中一个还因为定位信息不符开不了. 昨 ...
- [Android]聊聊ActionMode
最近一段时间都没有更新文章,趁工作之余,更新一篇. 今天介绍一个很常见效果也最容易被忽略的弹出框:ActionMode.主要是ActionMode使用和自己使用过程中遇到的一些问题,相对还是比较简单的 ...
- Android Multimedia框架总结(十)Stagefright框架之音视频输出过程
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/52560012 前言:上篇文中最后 ...
- ORACLE数据库学习之SQL性能优化详解
Oracle sql 性能优化调整 ...
- 分布式缓存组件Hazelcast
Hazelcast是一个Java的开源分布式内存实现,它具有以下特性: 提供java.util.{Queue, Set, List, Map}的分布式实现 提供java.util.concurrent ...
- android自定义view实现progressbar的效果
一键清理是很多Launcher都会带有的功能,其效果也比较美观.实现方式也许有很多中,其中常见的是使用图片drawable来完成的,具体可以参考这篇文章:模仿实现360桌面水晶球式的一键清理特效.本文 ...
- 【Unity Shaders】Mobile Shader Adjustment—— 什么是高效的Shader
本系列主要参考<Unity Shaders and Effects Cookbook>一书(感谢原书作者),同时会加上一点个人理解或拓展. 这里是本书所有的插图.这里是本书所需的代码和资源 ...
- Hessian探究(一)Hessian入门示例
一.hessian的maven信息: [html] view plain copy print? <dependency> <groupId>com.caucho</gr ...
- ubuntu14.04 server ftp 服务安装配置详解
ubuntu14.04 server ftp 服务安装配置详解 cheungmine 2016-01-27 http://wiki.ubuntu.com.cn/Vsftpd 0 安装好vsftpd服务 ...