ipa: rkisp1: Add compand feature flag to ipa context

Add a compand feature flag to the hardware settings section of the IPA
context, so that we can act accordingly for black level subtraction, and
to pave the way to skipping companding appropriately when support for it
is added.

Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Reviewed-by: Stefan Klug <stefan.klug@ideasonboard.com>
This commit is contained in:
Paul Elder 2024-06-27 22:24:30 +09:00 committed by Laurent Pinchart
parent 974dccd45b
commit 39e4e04f3a
2 changed files with 14 additions and 1 deletions

View file

@ -31,6 +31,7 @@ struct IPAHwSettings {
unsigned int numHistogramBins; unsigned int numHistogramBins;
unsigned int numHistogramWeights; unsigned int numHistogramWeights;
unsigned int numGammaOutSamples; unsigned int numGammaOutSamples;
bool compand;
}; };
struct IPASessionConfiguration { struct IPASessionConfiguration {

View file

@ -92,6 +92,15 @@ const IPAHwSettings ipaHwSettingsV10{
RKISP1_CIF_ISP_HIST_BIN_N_MAX_V10, RKISP1_CIF_ISP_HIST_BIN_N_MAX_V10,
RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE_V10, RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE_V10,
RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES_V10, RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES_V10,
false,
};
const IPAHwSettings ipaHwSettingsIMX8MP{
RKISP1_CIF_ISP_AE_MEAN_MAX_V10,
RKISP1_CIF_ISP_HIST_BIN_N_MAX_V10,
RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE_V10,
RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES_V10,
true,
}; };
const IPAHwSettings ipaHwSettingsV12{ const IPAHwSettings ipaHwSettingsV12{
@ -99,6 +108,7 @@ const IPAHwSettings ipaHwSettingsV12{
RKISP1_CIF_ISP_HIST_BIN_N_MAX_V12, RKISP1_CIF_ISP_HIST_BIN_N_MAX_V12,
RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE_V12, RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE_V12,
RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES_V12, RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES_V12,
false,
}; };
/* List of controls handled by the RkISP1 IPA */ /* List of controls handled by the RkISP1 IPA */
@ -129,9 +139,11 @@ int IPARkISP1::init(const IPASettings &settings, unsigned int hwRevision,
/* \todo Add support for other revisions */ /* \todo Add support for other revisions */
switch (hwRevision) { switch (hwRevision) {
case RKISP1_V10: case RKISP1_V10:
case RKISP1_V_IMX8MP:
context_.hw = &ipaHwSettingsV10; context_.hw = &ipaHwSettingsV10;
break; break;
case RKISP1_V_IMX8MP:
context_.hw = &ipaHwSettingsIMX8MP;
break;
case RKISP1_V12: case RKISP1_V12:
context_.hw = &ipaHwSettingsV12; context_.hw = &ipaHwSettingsV12;
break; break;