Merge "msm: camera: isp: Fix config of vfe out ports" into camera-kernel.lnx.5.0
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

commit
1a11831377
@@ -584,6 +584,8 @@ static const char *__cam_isp_resource_handle_id_to_type(
|
||||
return "STATS_BG";
|
||||
case CAM_ISP_IFE_LITE_OUT_RES_PREPROCESS_RAW:
|
||||
return "PREPROCESS_RAW";
|
||||
case CAM_ISP_IFE_OUT_RES_SPARSE_PD:
|
||||
return "SPARSE_PD";
|
||||
default:
|
||||
return "CAM_ISP_Invalid_Resource_Type";
|
||||
}
|
||||
|
@@ -1246,7 +1246,7 @@ static struct cam_vfe_bus_ver3_hw_info vfe680_bus_hw_info = {
|
||||
.comp_group = CAM_VFE_BUS_VER3_COMP_GRP_10,
|
||||
.ubwc_regs = NULL,
|
||||
},
|
||||
/* BUS Client 20 CAMIF PD - PDAF */
|
||||
/* BUS Client 20 SPARSE PD */
|
||||
{
|
||||
.cfg = 0x00002200,
|
||||
.image_addr = 0x00002204,
|
||||
@@ -1604,9 +1604,9 @@ static struct cam_vfe_bus_ver3_hw_info vfe680_bus_hw_info = {
|
||||
},
|
||||
},
|
||||
{
|
||||
.vfe_out_type = CAM_VFE_BUS_VER3_VFE_OUT_PDAF,
|
||||
.max_width = -1,
|
||||
.max_height = -1,
|
||||
.vfe_out_type = CAM_VFE_BUS_VER3_VFE_OUT_SPARSE_PD,
|
||||
.max_width = 1920,
|
||||
.max_height = 1080,
|
||||
.source_group = CAM_VFE_BUS_VER3_SRC_GRP_0,
|
||||
.mid[0] = 4,
|
||||
.num_wm = 1,
|
||||
|
@@ -669,6 +669,9 @@ static enum cam_vfe_bus_ver3_vfe_out_type
|
||||
case CAM_ISP_IFE_OUT_RES_AWB_BFW:
|
||||
vfe_out_type = CAM_VFE_BUS_VER3_VFE_OUT_AWB_BFW;
|
||||
break;
|
||||
case CAM_ISP_IFE_OUT_RES_SPARSE_PD:
|
||||
vfe_out_type = CAM_VFE_BUS_VER3_VFE_OUT_SPARSE_PD;
|
||||
break;
|
||||
case CAM_ISP_IFE_OUT_RES_PREPROCESS_2PD:
|
||||
vfe_out_type = CAM_VFE_BUS_VER3_VFE_OUT_PREPROCESS_2PD;
|
||||
break;
|
||||
@@ -798,6 +801,9 @@ static int cam_vfe_bus_ver3_get_comp_vfe_out_res_id_list(
|
||||
if (comp_mask & (1 << CAM_VFE_BUS_VER3_VFE_OUT_PREPROCESS_RAW))
|
||||
out_list[count++] = CAM_ISP_IFE_LITE_OUT_RES_PREPROCESS_RAW;
|
||||
|
||||
if (comp_mask & (1 << CAM_VFE_BUS_VER3_VFE_OUT_SPARSE_PD))
|
||||
out_list[count++] = CAM_ISP_IFE_OUT_RES_SPARSE_PD;
|
||||
|
||||
*num_out = count;
|
||||
return 0;
|
||||
}
|
||||
@@ -1267,7 +1273,6 @@ static int cam_vfe_bus_ver3_acquire_wm(
|
||||
rsrc_data->en_cfg = (0x1 << 16) | 0x1;
|
||||
|
||||
} else if (vfe_out_res_id == CAM_VFE_BUS_VER3_VFE_OUT_LCR) {
|
||||
|
||||
switch (rsrc_data->format) {
|
||||
case CAM_FORMAT_PLAIN16_16:
|
||||
rsrc_data->stride = ALIGNUP(rsrc_data->width * 2, 8);
|
||||
@@ -1283,6 +1288,18 @@ static int cam_vfe_bus_ver3_acquire_wm(
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
} else if (vfe_out_res_id == CAM_VFE_BUS_VER3_VFE_OUT_SPARSE_PD) {
|
||||
switch (rsrc_data->format) {
|
||||
case CAM_FORMAT_PLAIN16_16:
|
||||
rsrc_data->stride = ALIGNUP(rsrc_data->width * 2, 8);
|
||||
rsrc_data->en_cfg = 0x1;
|
||||
break;
|
||||
default:
|
||||
CAM_ERR(CAM_ISP, "Invalid format %d out_type:%d",
|
||||
rsrc_data->format, vfe_out_res_id);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
} else if ((vfe_out_res_id == CAM_VFE_BUS_VER3_VFE_OUT_DS4) ||
|
||||
(vfe_out_res_id == CAM_VFE_BUS_VER3_VFE_OUT_DS16) ||
|
||||
(vfe_out_res_id == CAM_VFE_BUS_VER3_VFE_OUT_DS4_DISP) ||
|
||||
@@ -1292,8 +1309,7 @@ static int cam_vfe_bus_ver3_acquire_wm(
|
||||
rsrc_data->width = rsrc_data->width / 2;
|
||||
rsrc_data->en_cfg = 0x1;
|
||||
|
||||
} else if ((vfe_out_res_id >= CAM_VFE_BUS_VER3_VFE_OUT_AWB_BFW) &&
|
||||
(vfe_out_res_id <= CAM_VFE_BUS_VER3_VFE_OUT_PREPROCESS_2PD)) {
|
||||
} else if (vfe_out_res_id == CAM_VFE_BUS_VER3_VFE_OUT_AWB_BFW) {
|
||||
switch (rsrc_data->format) {
|
||||
case CAM_FORMAT_PLAIN64:
|
||||
rsrc_data->width = 0;
|
||||
@@ -1307,6 +1323,18 @@ static int cam_vfe_bus_ver3_acquire_wm(
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
} else if (vfe_out_res_id == CAM_VFE_BUS_VER3_VFE_OUT_PREPROCESS_2PD) {
|
||||
switch (rsrc_data->format) {
|
||||
case CAM_FORMAT_PLAIN16_16:
|
||||
rsrc_data->stride = ALIGNUP(rsrc_data->width * 2, 8);
|
||||
rsrc_data->en_cfg = 0x1;
|
||||
break;
|
||||
default:
|
||||
CAM_ERR(CAM_ISP, "Invalid format %d out_type:%d",
|
||||
rsrc_data->format, vfe_out_res_id);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
} else if (vfe_out_res_id == CAM_VFE_BUS_VER3_VFE_OUT_LTM_STATS) {
|
||||
switch (rsrc_data->format) {
|
||||
case CAM_FORMAT_PLAIN32:
|
||||
|
@@ -77,6 +77,7 @@ enum cam_vfe_bus_ver3_vfe_out_type {
|
||||
CAM_VFE_BUS_VER3_VFE_OUT_DS16_DISP,
|
||||
CAM_VFE_BUS_VER3_VFE_OUT_2PD,
|
||||
CAM_VFE_BUS_VER3_VFE_OUT_LCR,
|
||||
CAM_VFE_BUS_VER3_VFE_OUT_SPARSE_PD,
|
||||
CAM_VFE_BUS_VER3_VFE_OUT_AWB_BFW,
|
||||
CAM_VFE_BUS_VER3_VFE_OUT_PREPROCESS_2PD,
|
||||
CAM_VFE_BUS_VER3_VFE_OUT_STATS_AEC_BE,
|
||||
|
Reference in New Issue
Block a user