diff mbox series

media: i2c: rdamc21: Fix warning on u8 cast

Message ID 20210208132749.97738-1-jacopo+renesas@jmondi.org
State Superseded
Headers show
Series media: i2c: rdamc21: Fix warning on u8 cast | expand

Commit Message

Jacopo Mondi Feb. 8, 2021, 1:27 p.m. UTC
Sparse reports a warning on a cast to u8 of a 16 bits constant.

drivers/media/i2c/rdacm21.c:348:62: warning: cast truncates bits
from constant value (300a becomes a)

Even if the behaviour is intended, silence the sparse warning replacing
the cast with a bitwise & operation.

Fixes: a59f853b3b4b ("media: i2c: Add driver for RDACM21 camera module")
Reported-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
---
 drivers/media/i2c/rdacm21.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--
2.30.0

Comments

Jacopo Mondi Feb. 13, 2021, 8:53 a.m. UTC | #1
Hello,

On Mon, Feb 08, 2021 at 02:27:49PM +0100, Jacopo Mondi wrote:
> Sparse reports a warning on a cast to u8 of a 16 bits constant.

>

> drivers/media/i2c/rdacm21.c:348:62: warning: cast truncates bits

> from constant value (300a becomes a)

>

> Even if the behaviour is intended, silence the sparse warning replacing

> the cast with a bitwise & operation.

>

> Fixes: a59f853b3b4b ("media: i2c: Add driver for RDACM21 camera module")

> Reported-by: Hans Verkuil <hverkuil@xs4all.nl>

> Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>


I don't see this last fix for this window collected in the most recent
media tree.

Is it too late already ? It's really a trivial fix but silences a
sparse warning, so it might be worth collecting it ?

Thanks
   j

> ---

>  drivers/media/i2c/rdacm21.c | 2 +-

>  1 file changed, 1 insertion(+), 1 deletion(-)

>

> diff --git a/drivers/media/i2c/rdacm21.c b/drivers/media/i2c/rdacm21.c

> index dcc21515e5a4..179d107f494c 100644

> --- a/drivers/media/i2c/rdacm21.c

> +++ b/drivers/media/i2c/rdacm21.c

> @@ -345,7 +345,7 @@ static int ov10640_initialize(struct rdacm21_device *dev)

>  	/* Read OV10640 ID to test communications. */

>  	ov490_write_reg(dev, OV490_SCCB_SLAVE0_DIR, OV490_SCCB_SLAVE_READ);

>  	ov490_write_reg(dev, OV490_SCCB_SLAVE0_ADDR_HIGH, OV10640_CHIP_ID >> 8);

> -	ov490_write_reg(dev, OV490_SCCB_SLAVE0_ADDR_LOW, (u8)OV10640_CHIP_ID);

> +	ov490_write_reg(dev, OV490_SCCB_SLAVE0_ADDR_LOW, OV10640_CHIP_ID & 0xff);

>

>  	/* Trigger SCCB slave transaction and give it some time to complete. */

>  	ov490_write_reg(dev, OV490_HOST_CMD, OV490_HOST_CMD_TRIGGER);

> --

> 2.30.0

>
diff mbox series

Patch

diff --git a/drivers/media/i2c/rdacm21.c b/drivers/media/i2c/rdacm21.c
index dcc21515e5a4..179d107f494c 100644
--- a/drivers/media/i2c/rdacm21.c
+++ b/drivers/media/i2c/rdacm21.c
@@ -345,7 +345,7 @@  static int ov10640_initialize(struct rdacm21_device *dev)
 	/* Read OV10640 ID to test communications. */
 	ov490_write_reg(dev, OV490_SCCB_SLAVE0_DIR, OV490_SCCB_SLAVE_READ);
 	ov490_write_reg(dev, OV490_SCCB_SLAVE0_ADDR_HIGH, OV10640_CHIP_ID >> 8);
-	ov490_write_reg(dev, OV490_SCCB_SLAVE0_ADDR_LOW, (u8)OV10640_CHIP_ID);
+	ov490_write_reg(dev, OV490_SCCB_SLAVE0_ADDR_LOW, OV10640_CHIP_ID & 0xff);

 	/* Trigger SCCB slave transaction and give it some time to complete. */
 	ov490_write_reg(dev, OV490_HOST_CMD, OV490_HOST_CMD_TRIGGER);