[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5D7B41F2.2080607@bfs.de>
Date: Fri, 13 Sep 2019 09:14:58 +0200
From: walter harms <wharms@....de>
To: Christophe JAILLET <christophe.jaillet@...adoo.fr>
CC: mripard@...nel.org, mchehab@...nel.org,
linux-media@...r.kernel.org, linux-kernel@...r.kernel.org,
kernel-janitors@...r.kernel.org
Subject: Re: [PATCH] media: v4l: cadence: Fix how unsued lanes are handled
in 'csi2rx_start()'
Am 12.09.2019 22:44, schrieb Christophe JAILLET:
> The 2nd parameter of 'find_first_zero_bit()' is a number of bits, not of
> bytes. So use 'BITS_PER_LONG' instead of 'sizeof(lanes_used)'.
>
> Fixes: 1fc3b37f34f6 ("media: v4l: cadence: Add Cadence MIPI-CSI2 RX driver")
> Signed-off-by: Christophe JAILLET <christophe.jaillet@...adoo.fr>
> ---
> This patch is purely speculative. Using BITS_PER_LONG looks logical to me,
> but I'm not 100% sure that it is what is expected here. 'csi2rx->max_lanes'
> could also be a good candidate.
> ---
> drivers/media/platform/cadence/cdns-csi2rx.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/cadence/cdns-csi2rx.c b/drivers/media/platform/cadence/cdns-csi2rx.c
> index 31ace114eda1..28765ccb1b12 100644
> --- a/drivers/media/platform/cadence/cdns-csi2rx.c
> +++ b/drivers/media/platform/cadence/cdns-csi2rx.c
> @@ -129,7 +129,7 @@ static int csi2rx_start(struct csi2rx_priv *csi2rx)
> */
> for (i = csi2rx->num_lanes; i < csi2rx->max_lanes; i++) {
> unsigned int idx = find_first_zero_bit(&lanes_used,
> - sizeof(lanes_used));
> + BITS_PER_LONG);
why not CHAR_BIT*sizeof(lanes_used) ?
this would have the advantage that it is independent of future changes of lanes_used.
re,
wh
> set_bit(idx, &lanes_used);
> reg |= CSI2RX_STATIC_CFG_DLANE_MAP(i, i + 1);
> }
Powered by blists - more mailing lists