[PATCH 1/3] media: rockchip: rkisp1: Set DPCC methods enable bits inside loop
paul.elder at ideasonboard.com
paul.elder at ideasonboard.com
Fri Jul 15 00:44:28 PDT 2022
Hi Laurent,
On Thu, Jun 16, 2022 at 07:04:54PM +0300, Laurent Pinchart wrote:
> The rkisp1_dpcc_config() function looks over methods sets to configure
> them, but sets the RKISP1_CIF_ISP_DPCC_METHODS_SET_* registers outside
> of the loop with hand-unrolled code. Move this to the loop to simplify
> the code.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
Reviewed-by: Paul Elder <paul.elder at ideasonboard.com>
> ---
> drivers/media/platform/rockchip/rkisp1/rkisp1-params.c | 10 ++++------
> 1 file changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/media/platform/rockchip/rkisp1/rkisp1-params.c b/drivers/media/platform/rockchip/rkisp1/rkisp1-params.c
> index c88a9c0fa86e..140012fa18f0 100644
> --- a/drivers/media/platform/rockchip/rkisp1/rkisp1-params.c
> +++ b/drivers/media/platform/rockchip/rkisp1/rkisp1-params.c
> @@ -18,6 +18,8 @@
> #define RKISP1_ISP_PARAMS_REQ_BUFS_MIN 2
> #define RKISP1_ISP_PARAMS_REQ_BUFS_MAX 8
>
> +#define RKISP1_ISP_DPCC_METHODS_SET(n) \
> + (RKISP1_CIF_ISP_DPCC_METHODS_SET_1 + 0x4 * (n))
> #define RKISP1_ISP_DPCC_LINE_THRESH(n) \
> (RKISP1_CIF_ISP_DPCC_LINE_THRESH_1 + 0x14 * (n))
> #define RKISP1_ISP_DPCC_LINE_MAD_FAC(n) \
> @@ -66,13 +68,9 @@ static void rkisp1_dpcc_config(struct rkisp1_params *params,
> rkisp1_write(params->rkisp1, RKISP1_CIF_ISP_DPCC_SET_USE,
> arg->set_use);
>
> - rkisp1_write(params->rkisp1, RKISP1_CIF_ISP_DPCC_METHODS_SET_1,
> - arg->methods[0].method);
> - rkisp1_write(params->rkisp1, RKISP1_CIF_ISP_DPCC_METHODS_SET_2,
> - arg->methods[1].method);
> - rkisp1_write(params->rkisp1, RKISP1_CIF_ISP_DPCC_METHODS_SET_3,
> - arg->methods[2].method);
> for (i = 0; i < RKISP1_CIF_ISP_DPCC_METHODS_MAX; i++) {
> + rkisp1_write(params->rkisp1, RKISP1_ISP_DPCC_METHODS_SET(i),
> + arg->methods[i].method);
> rkisp1_write(params->rkisp1, RKISP1_ISP_DPCC_LINE_THRESH(i),
> arg->methods[i].line_thresh);
> rkisp1_write(params->rkisp1, RKISP1_ISP_DPCC_LINE_MAD_FAC(i),
More information about the Linux-rockchip
mailing list