迅为 RK3399开发板Android8系统-ov13850摄像头移植分析

迅为 RK3399开发板Android8系统-ov13850摄像头移植分析

本文将讲解 OV13850 摄像头在开发板上的配置过程。接口效果图如下所示:

迅为 RK3399开发板Android8系统-ov13850摄像头移植分析_第1张图片

21.18.1 设备树配置

1 打开设备树 itop-3399_8.1/kernel/arch/arm64/boot/dts/rockchip/rk3399-android.dtsi 文件,如下图所示。

camera 我们使用 ISP1

 

迅为 RK3399开发板Android8系统-ov13850摄像头移植分析_第2张图片

21.18.2 驱动说明

Android 部分:

itop-3399_8.1/hardware/rockchip/camera/CameraHal 是摄像头的 HAL 源码

itop-3399_8.1/hardware/rockchip/camera/SiliconImage 是 ISP 库,包括所有支持模组的驱动源码

itop-3399_8.1/hardware/rockchip/camera/SiliconImage/isi/drv/OV13850 是 OV13850 模组的驱动源码

itop-3399_8.1/hardware/rockchip/camera/SiliconImage/isi/drv/OV13850/calib/OV13850.xml 是 OV13850 模组的

调校参数

itop-3399_8.1/hardware/rockchip/camera/Config/cam_board_rk3399.xml 文件可以设置摄像头的参数

Kernel 部分:

itop-3399_8.1/kernel/drivers/media/video/rk_camsys 是 CamSys 驱动源码

21.18.3 原理图分析

配置摄像头需要配置摄像头的 GPIO 和时钟,即可完成配置。我们打开摄像头的原理图,如下图所示:

 

迅为 RK3399开发板Android8系统-ov13850摄像头移植分析_第3张图片

然后在开发板的底板原理图找到这俩个引脚,再在找到核心板原理图中找到对应的引脚,如下图所示:

 

迅为 RK3399开发板Android8系统-ov13850摄像头移植分析_第4张图片

对应的接口

 

迅为 RK3399开发板Android8系统-ov13850摄像头移植分析_第5张图片

21.18.4 配置 Android

1 修改 itop-3399_8.1/itop-3399_8.1/hardware/rockchip/camera/Config/cam_board_rk3399.xml 文件用来

注册摄像头,如下图所示:

 

迅为 RK3399开发板Android8系统-ov13850摄像头移植分析_第6张图片

接下来我们来分析一下分别代表什么含义。

1 Sensor 名称

2 Sensor 软件标识

保证驱动标识不一致即可,可选项有

CAMSYS_DEVID_SENSOR_1A

CAMSYS_DEVID_SENSOR_1B

CAMSYS_DEVID_SENSOR_2

3 Sensor 采集控制器的名称

4 i2c 通道 i2c1,具体通道号请参考摄像头原理图连接主控的 I2C 通道号。原理图查看了是 i2c1。

5 sensor 寄存器地址长度,单位是字节

6 sensor i2c 频率,单位是 Hz,用于设置 I2C 的频率。

7 sensor 输入时钟频率,用于设置摄像头的时钟

8 Sensor AVDD 的 PMU LDO 名称 如果不是连接到 PMU,那么只需填写 NC

9 Sensor DVDD 的 PMU LDO 名称

如果不是连接到 PMU,那么只需填写 NC。注意 min 和 max 值必须填写,决定了 Sensor 的 IO 电压

10 Sensor DOVDD 的 PMU LDO 名称

11 Sensor PowerDown 引脚

//mipi

直接填写名称即可,active 填写休眠的有效电平

12 Sensor Reset 引脚

直接填写名称即可,active 填写复位的有效电平

13 Sensor Power 引脚

直接填写名称即可,active 填写电源的有效电平

14 选择 Sensor 作为前置还是后置

可填写“

front”或“back”

15 Sensor 的接口方式

16 Sensor 的镜像方式

17 Sensor 的角度信息

18 物理接口设置

hyMode: Sensor 接口硬件连接方式,对 MIPI Sensor 来说,该值取"CamSys_ Phy_ Mipir"

Lane: Sensor mipi 接口数据通道数

Phyindex: Sensor mipi 连接的主控 mipi phy 编号

sensorFmt: Sensor 输出数据格式,目前前支持 CamSys_ Fmt. Raw_ 10b

21.18.5 编译内核

我们需要将驱动源码 itop-3399_8.1/kernel/drivers/media/video/rk_camsys 编译进内核,配置方法如下:

(1) itop-3399_8.1/kernel/arch/arm64/configs/rockchip_linux_defconfig 是内核默认配置文件,我们在修改之

前要将其备份。

(2) 然后用 itop-3399_8.1/kernel/arch/arm64/configs/rockchip_linux_defconfig 文件覆盖

itop-3399_8.1/kernel/.config 文件,然后输入 make menuconfig 进行配置,输入以下命令:

cp -r arch/arm64/configs/rockchip_linux_defconfig .config

make menuconfig

 

(3) 将以下配置打开,如下图所示:

-> Device Drivers

-> Multimedia support (MEDIA_SUPPORT [=y])

-> camsys driver (CAMSYS_DRV [=y])

(1)

-> RockChip camera system driver

 

迅为 RK3399开发板Android8系统-ov13850摄像头移植分析_第7张图片

 

迅为 RK3399开发板Android8系统-ov13850摄像头移植分析_第8张图片

迅为 RK3399开发板Android8系统-ov13850摄像头移植分析_第9张图片

迅为 RK3399开发板Android8系统-ov13850摄像头移植分析_第10张图片

(4)配置完之后生成新的.config 文件,我们将其覆盖默认配置文件,然后重新编译内核。

cp -r .config arch/arm64/configs/rockchip_linux_defconfig

编译完成烧写镜像,终端下可以直接修改 /system/etc/cam_board.xml 调试各参数并重启生效。Android8源码里面 itop-3399_8.1/RKDocs 可以查看详细的资料。

迅为 RK3399开发板Android8系统-ov13850摄像头移植分析_第11张图片

 

你可能感兴趣的:(iTOP-3399开发板,android,摄像头,3399开发板)