高通camera bring up软件流程

http://blog.csdn.net/liwei16611/article/details/51279658

高通camera bring up分为两种类型:YUV和bayer

bring up yuv sensor
1、kernel空间
1) vim kernel/driver/media/platform/msm/camera_v2/sensor
添加sensor驱动文件-可参考其他
修改Makefile
2) kernel/arch/arm/configs
添加CONFIG_<sensor>定义
3) kernel/driver/media/platform/msm/camera_v2/kconfig
添加选项
4) 设备树文件kernel/arch/arm/boot/dts/qcom/<target>_camera*.dtsi
添加新的条目
gpio set
clk set
power set
i2c slave
2、用户空间
1) mm-camera2/media-controller/modules/sensors/sensor_libs/<snesor>
添加lib文件
2) vendor/qcom/proprietary/common/config/device-vendor.mk
加入新的条目
3) 
a、sensor init parameter
2D/3D、前/后置、安装角度
b、sensor output
bayer/yuv、mipi/并口、位数
c、output size
static struct sensor_lib_out_info_t sensor_out_info[] = {
{
/* full size @ 24 fps*/
.x_output = 4208,
.y_output = 3120,
.line_length_pclk = 4572,
.frame_length_lines = 3142,
.vt_pixel_clk = 360000000,
12/26例如
.op_pixel_clk = 360000000,
.binning_factor = 1,
.max_fps = 24.01,
.min_fps = 7.5,
.mode = SENSOR_DEFAULT_MODE,
},
x_output –
sensor 输出有效宽度
y_output – sensor 输出有效高度
line_length_pclk –包含 blanking 的宽度值
frame_length_lines –包含 blanking 的高度值
vt_pixel_clk(video timing clk value) –该虚拟时钟值用于曝光时间计算,用于 AEC 算法
的 banding artifacts 纠正,vt_pixel_clk 的计算如下:
vt_pixel_clk = line_length_pclk * frame_length_lines * frame rate
op_pixel_clk – VFE 时钟,表示每秒 VFE 处理的数据量(in pixel).
op_pixel_clk = (sensor 输出实际比特率)/bits-per-pixel
比如,如果 MIPI DDR
时钟值
(sensor MIPI 的时钟 lane 频率) 为 300Mhz, 同时
sensor 使用 4 个 lane (一组差分信号属于一个lane)传输数据, 每一个 lane 的数据率是 300*2 = 600Mhz. 因此, 总数据
率为 600*4= 2400Mhz. 对于 10bit 的 bayer sensor, op_pixel_clk 值可设置为 2400/10 =
240Mhz.这些值可以从 sensor 的寄存器设置中计算出来。
d、chromatix
e、register addr
f、mipi receiver
g、regiseter setting
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是高通Camera AIS框架的基本流程图: ``` +----------------+ +-----------------------+ +------------------+ | Camera Service | | Camera HAL | | Camera Sensor | | | | | | | | | | | | | | | | | | | | +------------+ | | +-----------------+ | | +--------------+ | | | Application| | | | Camera Provider |<--|-------|>| Camera Driver| | | +------------+ | | +-----------------+ | | +--------------+ | | | | | | | | +------------+ | | | | +--------------+ | | | Camera | | | | | | Camera Sensor| | | | HAL Proxy | | | | | +--------------+ | | +------------+ | | | | | | | | | | | | | | | | | | +------------+ | | | | +--------------+ | | | Camera | | | | | | Camera Sensor| | | | Service | | | | | +--------------+ | | +------------+ | | | | | +----------------+ +-----------------------+ +------------------+ ``` 1. Camera Service:应用程序通过Camera Service调用Camera API,拍照、录像、预览等操作。 2. Camera HAL:Camera Service通过Camera HAL与Camera Provider进行通信。Camera HAL提供了一组API给Camera Provider,使其可以直接访问Camera Sensor硬件。 3. Camera Provider:Camera Provider是Camera HAL的一个实现,通过它可以直接访问Camera Driver。Camera Provider负责将Camera HAL的API转换成底层驱动程序可以理解的指令,从而控制Camera Sensor硬件。 4. Camera Driver:Camera Driver是Camera Sensor硬件的底层驱动程序,负责驱动和控制硬件,将采集到的原始数据传输给Camera Provider。 5. Camera Sensor:Camera Sensor是实现图像采集功能的硬件设备,它可以采集图像或视频数据,传输给Camera Driver进行处理。 6. Camera HAL Proxy:Camera HAL Proxy是Camera HAL和Camera Service之间的代理程序,它负责将Camera HAL的API转发给Camera Service,并将Camera Service的请求转发给Camera HAL。 以上是基本的高通Camera AIS框架流程图,其中还包含了其他一些细节处理,比如图像处理、数据传输等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值