• Arnd Bergmann's avatar
    iio: adc: handle unknow of_device_id data · 17fa2dcb
    Arnd Bergmann authored
    If we get an unknown 'childmode' value, a number of variables are not
    initialized properly:
    
    drivers/iio/adc/rcar-gyroadc.c: In function 'rcar_gyroadc_probe':
    drivers/iio/adc/rcar-gyroadc.c:390:5: error: 'num_channels' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    drivers/iio/adc/rcar-gyroadc.c:426:22: error: 'sample_width' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    drivers/iio/adc/rcar-gyroadc.c:428:23: error: 'channels' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    
    The driver is currently correct, but handling this properly is more robust
    for possible modifications.
    
    There is also a false-positive warning about adcmode being possibly uninitialized,
    but that cannot happen as we also check the 'first' flag:
    
    drivers/iio/adc/rcar-gyroadc.c:398:26: error: 'adcmode' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    
    This adds an initialization for 'adcmode' and bails out for any unknown childmode.
    
    Fixes: 059c53b3 ("iio: adc: Add Renesas GyroADC driver")
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Acked-by: default avatarMarek Vasut <marek.vasut@gmail.com>
    Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
    17fa2dcb
rcar-gyroadc.c 15.4 KB