Re: [PATCH] NFC: trf7970a: fix check of clock frequencies, use && instead of ||

From: Geoff Lansberry
Date: Tue Apr 25 2017 - 09:19:11 EST


On Mon, Apr 24, 2017 at 9:36 AM, Colin King <colin.king@xxxxxxxxxxxxx> wrote:
> From: Colin Ian King <colin.king@xxxxxxxxxxxxx>
>
> The "or" condition (clk_freq != TRF7970A_27MHZ_CLOCK_FREQUENCY) ||
> (clk_freq != TRF7970A_13MHZ_CLOCK_FREQUE) will always be true because
> clk_freq cannot be equal to two different values at the same time. Use
> the && operator instead of || to fix this.
>
> Detected by CoverityScan, CID#1430468 ("Constant expression result")
>
> Fixes: 837eb4d21ecde7 ("NFC: trf7970a: add device tree option for 27MHz clock")
> Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
> ---
> drivers/nfc/trf7970a.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/nfc/trf7970a.c b/drivers/nfc/trf7970a.c
> index 2d1c8ca6e679..00eb6cd2b22f 100644
> --- a/drivers/nfc/trf7970a.c
> +++ b/drivers/nfc/trf7970a.c
> @@ -2071,8 +2071,8 @@ static int trf7970a_probe(struct spi_device *spi)
> }
>
> of_property_read_u32(np, "clock-frequency", &clk_freq);
> - if ((clk_freq != TRF7970A_27MHZ_CLOCK_FREQUENCY) ||
> - (clk_freq != TRF7970A_13MHZ_CLOCK_FREQUENCY)) {
> + if ((clk_freq != TRF7970A_27MHZ_CLOCK_FREQUENCY) &&
> + (clk_freq != TRF7970A_13MHZ_CLOCK_FREQUENCY)) {
> dev_err(trf->dev,
> "clock-frequency (%u Hz) unsupported\n",
> clk_freq);
> --
> 2.11.0
>
Nice catch.

Acked-by: Geoff Lansberry <geoff@xxxxxxxxx>