[PATCH 2/2] media: rockchip: rkisp1: extend uapi array sizes
Hans Verkuil
hverkuil at xs4all.nl
Tue Jan 12 03:39:43 EST 2021
On 12/01/2021 00:40, Heiko Stuebner wrote:
> From: Heiko Stuebner <heiko.stuebner at theobroma-systems.com>
>
> Later variants of the rkisp1 block use more entries in some arrays:
>
> RKISP1_CIF_ISP_AE_MEAN_MAX 25 -> 81
> RKISP1_CIF_ISP_HIST_BIN_N_MAX 16 -> 32
> RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES 17 -> 34
> RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE 28 -> 81
>
> and we can still extend the uapi during the 5.11-rc cycle, so do that
> now to be on the safe side.
>
> V10 and V11 only need the smaller sizes, while V12 and V13 needed
> the larger sizes.
>
> Signed-off-by: Heiko Stuebner <heiko.stuebner at theobroma-systems.com>
> ---
> changes since rfc:
> - introduce constants for versions and make max use the biggest
>
> include/uapi/linux/rkisp1-config.h | 18 ++++++++++++++----
> 1 file changed, 14 insertions(+), 4 deletions(-)
>
> diff --git a/include/uapi/linux/rkisp1-config.h b/include/uapi/linux/rkisp1-config.h
> index bad46aadf838..20d24656a8b7 100644
> --- a/include/uapi/linux/rkisp1-config.h
> +++ b/include/uapi/linux/rkisp1-config.h
> @@ -49,8 +49,14 @@
> #define RKISP1_CIF_ISP_CTK_COEFF_MAX 0x100
> #define RKISP1_CIF_ISP_CTK_OFFSET_MAX 0x800
>
> -#define RKISP1_CIF_ISP_AE_MEAN_MAX 25
> -#define RKISP1_CIF_ISP_HIST_BIN_N_MAX 16
> +#define RKISP1_CIF_ISP_AE_MEAN_MAX_V10 25
> +#define RKISP1_CIF_ISP_AE_MEAN_MAX_V12 81
> +#define RKISP1_CIF_ISP_AE_MEAN_MAX RKISP1_CIF_ISP_AE_MEAN_MAX_V12
> +
> +#define RKISP1_CIF_ISP_HIST_BIN_N_MAX_V10 16
> +#define RKISP1_CIF_ISP_HIST_BIN_N_MAX_V12 32
> +#define RKISP1_CIF_ISP_HIST_BIN_N_MAX RKISP1_CIF_ISP_HIST_BIN_N_MAX_V12
> +
> #define RKISP1_CIF_ISP_AFM_MAX_WINDOWS 3
> #define RKISP1_CIF_ISP_DEGAMMA_CURVE_SIZE 17
>
> @@ -86,7 +92,9 @@
> * Gamma out
> */
> /* Maximum number of color samples supported */
> -#define RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES 17
> +#define RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES_V10 17
> +#define RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES_V12 34
> +#define RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES_V12
>
> /*
> * Lens shade correction
> @@ -103,7 +111,9 @@
> * Histogram calculation
> */
> /* Last 3 values unused. */
> -#define RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE 28
> +#define RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE_V10 28
> +#define RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE_V12 81
> +#define RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE_V12
>
> /*
> * Defect Pixel Cluster Correction
>
You must update the documentation in this header for the relevant
structs as well, including a mention that this depends on hw_revision.
What happens to the unused parts of these arrays on a V10/V11 SoC?
Are they zeroed? Please check that no kernel memory contents is leaked
in the unused parts.
Regards,
Hans
More information about the Linux-rockchip
mailing list