Pdaf数据获取流程
- 根据上层的isCommand命令,在otp中获取到pd info。
- 构建flow control pdaf相关信息的结构体pd_profile,通过sendCommand在snesor driver文件中获取信息pdaf capacity、pdaf info、vc info、crop win info。
- 将矫正数据送入PD core中,会将otp中的pd info和driver中进行对比,不一致则报错。
- 在convertPDBufFormat中将pd点统一转换成raw16的格式,重新排列buffer,L靠前R靠后,即转化成pd algo所需要的pd格式。
Pd info和相关计算 - Pd info结构体
PD Block是PD点分布的最小单位,每个Block内的PD点的位置都是一样的,所以驱动只需要配置一个P
D Block内的PD坐标,再根据起始点的坐标和横向纵向各有多少个PD Block,就能够计算出所有PD点在Bayer raw域上的坐标。
static struct SET_PD_BLOCK_INFO_T imgsensor_pd_info_1920_1080 =
{
.i4OffsetX = 16, // x offset of PD area
.i4OffsetY = 12, // y offset of PD area
.i4PitchX = 16, // x pitch/width of a PD block
.i4PitchY = 16, // y pitch/height of a PD block
.i4PairNum = 8, // num of pairs L/R PD pixel within a PD block
.i4SubBlkW = 8, //一个bloc