On Fri, Jul 5, 2013 at 1:51 AM, Linux Kernel Mailing List
<[email protected]> wrote:
> +++ b/drivers/input/touchscreen/cyttsp4_spi.c
> +static int cyttsp_spi_xfer(struct device *dev, u8 *xfer_buf,
> + u8 op, u8 reg, u8 *buf, int length)
> +{
> + if (reg > 255)
As "reg" is "u8", this is never true:
drivers/input/touchscreen/cyttsp4_spi.c: In function ‘cyttsp_spi_xfer’:
drivers/input/touchscreen/cyttsp4_spi.c:66: warning: comparison is
always false due to limited range of data type
> + wr_buf[0] = op + CY_SPI_A8_BIT;
> + else
> + wr_buf[0] = op;
Can the if-clause and the first branch just be removed, or is there a real bug
involved (e.g. wrong type for "reg")?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
On 07/07/2013 10:15 PM, Geert Uytterhoeven wrote:
> On Fri, Jul 5, 2013 at 1:51 AM, Linux Kernel Mailing List
> <[email protected]> wrote:
>> +++ b/drivers/input/touchscreen/cyttsp4_spi.c
>
>> +static int cyttsp_spi_xfer(struct device *dev, u8 *xfer_buf,
>> + u8 op, u8 reg, u8 *buf, int length)
>> +{
>
>> + if (reg > 255)
>
> As "reg" is "u8", this is never true:
>
> drivers/input/touchscreen/cyttsp4_spi.c: In function ‘cyttsp_spi_xfer’:
> drivers/input/touchscreen/cyttsp4_spi.c:66: warning: comparison is
> always false due to limited range of data type
>
>> + wr_buf[0] = op + CY_SPI_A8_BIT;
>> + else
>> + wr_buf[0] = op;
>
> Can the if-clause and the first branch just be removed, or is there a real bug
> involved (e.g. wrong type for "reg")?
Yes there was a bug here, and already sent a patch for this, please
check https://patchwork.kernel.org/patch/2820561/
thanks,
ferruh
This message and any attachments may contain Cypress (or its subsidiaries) confidential information. If it has been received in error, please advise the sender and immediately delete this message.