记录在展讯9820,MTK6739平台配置Camera驱动的经验
展讯平台
1.项目对应kernel/dts文件配置
1 |
|
(1).compatible = “sprd,sensor-main”, 这里不需要配摄像头的I2C Device Address,
alps/kernel/drivers/misc/sprd_camera/sensor/sprd_sensor_drv.c 会读取这里的id进行处理
具体的I2C地址在sensor驱动中配置
(2).reset-gpios,power-down-gpios可通过查看机器板子的原理图来确定对应gpio的引脚修改
2.项目对应device/../../BoardConfig.mk配置
(1).配上前后置摄像头对应Camera Sensor的型号,如:
CAMERA_SENSOR_TYPE_BACK := “sp2509 c2590”
CAMERA_SENSOR_TYPE_FRONT := “gc030a”
(2).若模组厂打样时摄像头拍照方向为横屏,则TARGET_BOARD_BACK_CAMERA_ROTATION/TARGET_BOARD_FRONT_CAMERA_ROTATION设置为false,否则设置为true。
(3).配置Camera支持的分辨率
1 |
|
3.vendor/sprd/../../libcamera配置和添加Camera驱动代码
(1).在vendor/sprd/../../libcamera/sensor下放置已经适配了平台的sensor_drv代码,
如果没有已经适配了平台的驱动代码,那只能按平台已有的驱动代码为模板按硬件文档进行适配修改。
注意修改时尽量按平台已有的camera驱动代码为规范。这方面可以自己修改也可以找FAE帮忙。
(2).修改vendor/sprd/../../libcamera/sensorsensor_cfg.c,配置新Camera
1 |
|
MTK平台
1.kernel-4.4/drivers/misc/mediatek/imgsensor/inc/kd_imgsensor.h配置
1 |
|
2.项目对应kernel-4.4/arch/arm/configs/…/xxx_defconfig配置
可通过查看device目录下项目mk文件里 KERNEL_DEFCONFIG 指向的是哪个config文件
CONFIG_CUSTOM_KERNEL_IMGSENSOR=”s5k4h8_mipi_raw”
带debug标签的用于编译过程中查看调试信息
3.项目对应ProjectConfig.mk配置
1 |
|
4.kernel-4.4/drivers/misc/mediatek/imgsensor/src/xxx/xxx/imgsensor_sensor_list.c添加
1 |
|
5.kernel-4.4/drivers/misc/mediatek/imgsensor/src/xxx/xxx/imgsensor_sensor_list.h添加
1 |
|
6.kernel-4.4/drivers/misc/mediatek/imgsensor/src/xxx/xxx 配置和添加Camera sensor驱动代码
7.kernel-4.4/drivers/misc/mediatek/imgsensor/src/xxx/xxx/imgsensor_cfg_table.c 配置上下电时序
1 |
|
8.vendor/mediatek/proprietary/custom/xxxx/hal/imgsensor/ 添加对应Camera驱动代码
9.vendor/mediatek/proprietary/custom/xxxx/hal/imgsensor_src/sensorlist.cpp添加
1 |
|
10.vendor/mediatek/proprietary/custom/xxxx/hal/lens/src/lenslist.cpp添加
extern PFUNC_GETLENSDEFAULT pDW9714AF_S5K4H8_SUNWIN_P130_getDefaultData;