staging: pi433: Move limit check to switch default to kill warning
authorGeert Uytterhoeven <geert@linux-m68k.org>
Wed, 6 Sep 2017 15:40:25 +0000 (17:40 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 18 Sep 2017 10:25:31 +0000 (12:25 +0200)
With gcc-4.1.2:

    drivers/staging/pi433/rf69.c: In function ‘rf69_set_dio_mapping’:
    drivers/staging/pi433/rf69.c:566: warning: ‘regaddr’ may be used uninitialized in this function
    drivers/staging/pi433/rf69.c:565: warning: ‘shift’ may be used uninitialized in this function
    drivers/staging/pi433/rf69.c:564: warning: ‘mask’ may be used uninitialized in this function

While this is a false positive, it can easily be fixed by moving the
limit check into the "default" case of the switch statement.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/pi433/rf69.c

index c4b1b21..290b419 100644 (file)
@@ -570,12 +570,6 @@ int rf69_set_dio_mapping(struct spi_device *spi, u8 DIONumber, u8 value)
                dev_dbg(&spi->dev, "set: DIO mapping");
        #endif
 
-       // check DIO number
-       if (DIONumber > 5) {
-               dev_dbg(&spi->dev, "set: illegal input param");
-               return -EINVAL;
-       }
-
        switch (DIONumber) {
        case 0: mask=MASK_DIO0; shift=SHIFT_DIO0; regaddr=REG_DIOMAPPING1; break;
        case 1: mask=MASK_DIO1; shift=SHIFT_DIO1; regaddr=REG_DIOMAPPING1; break;
@@ -583,6 +577,9 @@ int rf69_set_dio_mapping(struct spi_device *spi, u8 DIONumber, u8 value)
        case 3: mask=MASK_DIO3; shift=SHIFT_DIO3; regaddr=REG_DIOMAPPING1; break;
        case 4: mask=MASK_DIO4; shift=SHIFT_DIO4; regaddr=REG_DIOMAPPING2; break;
        case 5: mask=MASK_DIO5; shift=SHIFT_DIO5; regaddr=REG_DIOMAPPING2; break;
+       default:
+               dev_dbg(&spi->dev, "set: illegal input param");
+               return -EINVAL;
        }
 
        // read reg