[PATCH v8 4/6] media: rockchip: rkisp1: reduce number of histogram grid elements in uapi
Helen Koike
helen.koike at collabora.com
Thu Jan 21 12:22:10 EST 2021
On 1/21/21 2:12 PM, Heiko Stübner wrote:
> Hi Helen,
>
> Am Donnerstag, 21. Januar 2021, 18:04:49 CET schrieb Helen Koike:
>> Hi Dafna,
>>
>> On 1/21/21 11:44 AM, Dafna Hirschfeld wrote:
>>> From: Heiko Stuebner <heiko.stuebner at theobroma-systems.com>
>>>
>>> The uapi right now specifies an array size of 28 but the actual number
>>> of elements is only 25 with the last 3 being unused.
>>>
>>> Reduce the array size to the correct number of elements and change
>>> the params code to iterate the array 25 times.
>>>
>>> Signed-off-by: Heiko Stuebner <heiko.stuebner at theobroma-systems.com>
>>> Signed-off-by: Dafna Hirschfeld <dafna.hirschfeld at collabora.com>
>>> ---
>>> drivers/media/platform/rockchip/rkisp1/rkisp1-params.c | 3 ++-
>>> include/uapi/linux/rkisp1-config.h | 3 +--
>>> 2 files changed, 3 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/drivers/media/platform/rockchip/rkisp1/rkisp1-params.c b/drivers/media/platform/rockchip/rkisp1/rkisp1-params.c
>>> index 6af4d551ffb5..021939466b24 100644
>>> --- a/drivers/media/platform/rockchip/rkisp1/rkisp1-params.c
>>> +++ b/drivers/media/platform/rockchip/rkisp1/rkisp1-params.c
>>> @@ -589,7 +589,6 @@ static void rkisp1_hst_config(struct rkisp1_params *params,
>>> RKISP1_CIF_ISP_HIST_WEIGHT_22TO03,
>>> RKISP1_CIF_ISP_HIST_WEIGHT_13TO43,
>>> RKISP1_CIF_ISP_HIST_WEIGHT_04TO34,
>>> - RKISP1_CIF_ISP_HIST_WEIGHT_44,
>>> };
>>> const u8 *weight;
>>> unsigned int i;
>>> @@ -622,6 +621,8 @@ static void rkisp1_hst_config(struct rkisp1_params *params,
>>> weight[2],
>>> weight[3]),
>>> hist_weight_regs[i]);
>>> +
>>> + rkisp1_write(params->rkisp1, weight[0] & 0x1F, RKISP1_CIF_ISP_HIST_WEIGHT_44);
>>
>> I just noticed that the default value to arg->hist_weight was:
>>
>> memset(hst.hist_weight, 0x01, sizeof(hst.hist_weight));
>>
>> Shouldn't the value be RKISP1_CIF_ISP_HIST_WEIGHT_SET(weight[0], 0x01, 0x01, 0x01) ?
>> Or am I missing something?
>
> The last register only has that one value from weight[24];
>
> I.e. before we were writing the 4 values into that last register as well
> from indices 24, 25, 26, 27 ... hence the 3 unused values in the weight array.
>
> But that was merely a crutch to make that fit into the write loop.
right, lgtm, thank you and Dafna for working on this.
For the whole series:
Acked-by: Helen Koike <helen.koike at collabora.com>
Regards,
Helen
>
>
> Heiko
>
>
>>> }
>>>
>>> static void
>>> diff --git a/include/uapi/linux/rkisp1-config.h b/include/uapi/linux/rkisp1-config.h
>>> index 24f05d6d258f..35aa82d5f6dd 100644
>>> --- a/include/uapi/linux/rkisp1-config.h
>>> +++ b/include/uapi/linux/rkisp1-config.h
>>> @@ -102,8 +102,7 @@
>>> /*
>>> * Histogram calculation
>>> */
>>> -/* Last 3 values unused. */
>>> -#define RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE 28
>>> +#define RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE 25
>>>
>>> /*
>>> * Defect Pixel Cluster Correction
>>>
>>
>
>
>
>
More information about the Linux-rockchip
mailing list