msm: camera: isp: Add new WM port for VFE880
Add output port for STATS_ALSC for VFE880 and update all mappings associated with the port. CRs-Fixed: 3168484 Change-Id: I0a674e7d2d6fe5fa5a51ff31e22f066fa222e5b7 Signed-off-by: Anand Ravi <quic_ananravi@quicinc.com>
This commit is contained in:

committed by
Camera Software Integration

parent
4b474624a1
commit
2dc1ecbc90
@@ -1037,6 +1037,7 @@ static char *__cam_isp_ife_sfe_resource_handle_id_to_type(
|
|||||||
case CAM_ISP_IFE_OUT_RES_STATS_CAF: return "IFE_STATS_CAF";
|
case CAM_ISP_IFE_OUT_RES_STATS_CAF: return "IFE_STATS_CAF";
|
||||||
case CAM_ISP_IFE_OUT_RES_STATS_BAYER_RS: return "IFE_STATS_BAYER_RS";
|
case CAM_ISP_IFE_OUT_RES_STATS_BAYER_RS: return "IFE_STATS_BAYER_RS";
|
||||||
case CAM_ISP_IFE_OUT_RES_PDAF_PARSED_DATA: return "IFE_PDAF_PARSED_DATA";
|
case CAM_ISP_IFE_OUT_RES_PDAF_PARSED_DATA: return "IFE_PDAF_PARSED_DATA";
|
||||||
|
case CAM_ISP_IFE_OUT_RES_STATS_ALSC: return "IFE_STATS_ALSC";
|
||||||
/* SFE output ports */
|
/* SFE output ports */
|
||||||
case CAM_ISP_SFE_OUT_RES_RDI_0: return "SFE_RDI_0";
|
case CAM_ISP_SFE_OUT_RES_RDI_0: return "SFE_RDI_0";
|
||||||
case CAM_ISP_SFE_OUT_RES_RDI_1: return "SFE_RDI_1";
|
case CAM_ISP_SFE_OUT_RES_RDI_1: return "SFE_RDI_1";
|
||||||
|
@@ -1,6 +1,7 @@
|
|||||||
// SPDX-License-Identifier: GPL-2.0-only
|
// SPDX-License-Identifier: GPL-2.0-only
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2017-2021, The Linux Foundation. All rights reserved.
|
* Copyright (c) 2017-2021, The Linux Foundation. All rights reserved.
|
||||||
|
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
|
@@ -323,6 +323,7 @@ static bool cam_vfe_bus_ver3_can_be_secure(uint32_t out_type)
|
|||||||
case CAM_VFE_BUS_VER3_VFE_OUT_STATS_IHIST:
|
case CAM_VFE_BUS_VER3_VFE_OUT_STATS_IHIST:
|
||||||
case CAM_VFE_BUS_VER3_VFE_OUT_STATS_CAF:
|
case CAM_VFE_BUS_VER3_VFE_OUT_STATS_CAF:
|
||||||
case CAM_VFE_BUS_VER3_VFE_OUT_STATS_BAYER_RS:
|
case CAM_VFE_BUS_VER3_VFE_OUT_STATS_BAYER_RS:
|
||||||
|
case CAM_VFE_BUS_VER3_VFE_OUT_STATS_ALSC:
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -438,6 +439,9 @@ static enum cam_vfe_bus_ver3_vfe_out_type
|
|||||||
case CAM_ISP_IFE_OUT_RES_PDAF_PARSED_DATA:
|
case CAM_ISP_IFE_OUT_RES_PDAF_PARSED_DATA:
|
||||||
vfe_out_type = CAM_VFE_BUS_VER3_VFE_OUT_PDAF_PARSED;
|
vfe_out_type = CAM_VFE_BUS_VER3_VFE_OUT_PDAF_PARSED;
|
||||||
break;
|
break;
|
||||||
|
case CAM_ISP_IFE_OUT_RES_STATS_ALSC:
|
||||||
|
vfe_out_type = CAM_VFE_BUS_VER3_VFE_OUT_STATS_ALSC;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
CAM_WARN(CAM_ISP, "Invalid isp res id: %d , assigning max",
|
CAM_WARN(CAM_ISP, "Invalid isp res id: %d , assigning max",
|
||||||
res_type);
|
res_type);
|
||||||
@@ -560,6 +564,9 @@ static int cam_vfe_bus_ver3_get_comp_vfe_out_res_id_list(
|
|||||||
if (comp_mask & (BIT_ULL(CAM_VFE_BUS_VER3_VFE_OUT_PDAF_PARSED)))
|
if (comp_mask & (BIT_ULL(CAM_VFE_BUS_VER3_VFE_OUT_PDAF_PARSED)))
|
||||||
out_list[count++] = CAM_ISP_IFE_OUT_RES_PDAF_PARSED_DATA;
|
out_list[count++] = CAM_ISP_IFE_OUT_RES_PDAF_PARSED_DATA;
|
||||||
|
|
||||||
|
if (comp_mask & (BIT_ULL(CAM_VFE_BUS_VER3_VFE_OUT_STATS_ALSC)))
|
||||||
|
out_list[count++] = CAM_ISP_IFE_OUT_RES_STATS_ALSC;
|
||||||
|
|
||||||
*num_out = count;
|
*num_out = count;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -1220,7 +1227,8 @@ static int cam_vfe_bus_ver3_acquire_wm(
|
|||||||
rsrc_data->width = rsrc_data->width / 2;
|
rsrc_data->width = rsrc_data->width / 2;
|
||||||
rsrc_data->en_cfg = 0x1;
|
rsrc_data->en_cfg = 0x1;
|
||||||
|
|
||||||
} else if (vfe_out_res_id == CAM_VFE_BUS_VER3_VFE_OUT_AWB_BFW) {
|
} else if ((vfe_out_res_id == CAM_VFE_BUS_VER3_VFE_OUT_AWB_BFW) ||
|
||||||
|
(vfe_out_res_id == CAM_VFE_BUS_VER3_VFE_OUT_STATS_ALSC)) {
|
||||||
switch (rsrc_data->format) {
|
switch (rsrc_data->format) {
|
||||||
case CAM_FORMAT_PLAIN64:
|
case CAM_FORMAT_PLAIN64:
|
||||||
rsrc_data->width = 0;
|
rsrc_data->width = 0;
|
||||||
|
@@ -1,6 +1,7 @@
|
|||||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2019-2021, The Linux Foundation. All rights reserved.
|
* Copyright (c) 2019-2021, The Linux Foundation. All rights reserved.
|
||||||
|
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@@ -88,6 +89,7 @@ enum cam_vfe_bus_ver3_vfe_out_type {
|
|||||||
CAM_VFE_BUS_VER3_VFE_OUT_STATS_CAF,
|
CAM_VFE_BUS_VER3_VFE_OUT_STATS_CAF,
|
||||||
CAM_VFE_BUS_VER3_VFE_OUT_STATS_BAYER_RS,
|
CAM_VFE_BUS_VER3_VFE_OUT_STATS_BAYER_RS,
|
||||||
CAM_VFE_BUS_VER3_VFE_OUT_PDAF_PARSED,
|
CAM_VFE_BUS_VER3_VFE_OUT_PDAF_PARSED,
|
||||||
|
CAM_VFE_BUS_VER3_VFE_OUT_STATS_ALSC,
|
||||||
CAM_VFE_BUS_VER3_VFE_OUT_MAX,
|
CAM_VFE_BUS_VER3_VFE_OUT_MAX,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -1,6 +1,7 @@
|
|||||||
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
|
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2016-2021, The Linux Foundation. All rights reserved.
|
* Copyright (c) 2016-2021, The Linux Foundation. All rights reserved.
|
||||||
|
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __UAPI_CAM_ISP_IFE_H__
|
#ifndef __UAPI_CAM_ISP_IFE_H__
|
||||||
@@ -45,6 +46,7 @@
|
|||||||
#define CAM_ISP_IFE_OUT_RES_STATS_CAF (CAM_ISP_IFE_OUT_RES_BASE + 33)
|
#define CAM_ISP_IFE_OUT_RES_STATS_CAF (CAM_ISP_IFE_OUT_RES_BASE + 33)
|
||||||
#define CAM_ISP_IFE_OUT_RES_STATS_BAYER_RS (CAM_ISP_IFE_OUT_RES_BASE + 34)
|
#define CAM_ISP_IFE_OUT_RES_STATS_BAYER_RS (CAM_ISP_IFE_OUT_RES_BASE + 34)
|
||||||
#define CAM_ISP_IFE_OUT_RES_PDAF_PARSED_DATA (CAM_ISP_IFE_OUT_RES_BASE + 35)
|
#define CAM_ISP_IFE_OUT_RES_PDAF_PARSED_DATA (CAM_ISP_IFE_OUT_RES_BASE + 35)
|
||||||
|
#define CAM_ISP_IFE_OUT_RES_STATS_ALSC (CAM_ISP_IFE_OUT_RES_BASE + 36)
|
||||||
|
|
||||||
/* IFE input port resource type (global unique) */
|
/* IFE input port resource type (global unique) */
|
||||||
#define CAM_ISP_IFE_IN_RES_BASE 0x4000
|
#define CAM_ISP_IFE_IN_RES_BASE 0x4000
|
||||||
|
Reference in New Issue
Block a user