• Linus Walleij's avatar
    iio: magn: ak8975: fix regulator usage · 90e96fdd
    Linus Walleij authored
    IS_ERR_OR_NULL() should never be used with regulators because
    a NULL pointer may be a perfectly valid dummy regulator
    
    We should always succeed to fetch and enable a regulator, but
    it may be a dummy. That is fine, so bail out for any real
    errors or probe deferrals
    
    Include the error code in the warning print so we know what
    kind of problem we're dealing with (for example it is nice to
    see if it is a probe deferral).
    
    As we will bail out of probe if the regulator is erroneous,
    just issue regulator_disable() on the poweroff path: it will
    succeed.
    
    Cc: Mark Brown <broonie@kernel.org>
    Cc: Lars-Peter Clausen Lars-Peter Clausen <lars@metafoo.de>
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
    90e96fdd
ak8975.c 24.8 KB