iio:adc:lpc32xx Handle return value of clk_prepare_enable
clk_prepare_enable() can fail here and we must check its return value. Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
This commit is contained in:
parent
f4f93bf77d
commit
42d97ac6a8
|
@ -76,10 +76,14 @@ static int lpc32xx_read_raw(struct iio_dev *indio_dev,
|
||||||
long mask)
|
long mask)
|
||||||
{
|
{
|
||||||
struct lpc32xx_adc_state *st = iio_priv(indio_dev);
|
struct lpc32xx_adc_state *st = iio_priv(indio_dev);
|
||||||
|
int ret;
|
||||||
if (mask == IIO_CHAN_INFO_RAW) {
|
if (mask == IIO_CHAN_INFO_RAW) {
|
||||||
mutex_lock(&indio_dev->mlock);
|
mutex_lock(&indio_dev->mlock);
|
||||||
clk_prepare_enable(st->clk);
|
ret = clk_prepare_enable(st->clk);
|
||||||
|
if (ret) {
|
||||||
|
mutex_unlock(&indio_dev->mlock);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
/* Measurement setup */
|
/* Measurement setup */
|
||||||
__raw_writel(LPC32XXAD_INTERNAL | (chan->address) |
|
__raw_writel(LPC32XXAD_INTERNAL | (chan->address) |
|
||||||
LPC32XXAD_REFp | LPC32XXAD_REFm,
|
LPC32XXAD_REFp | LPC32XXAD_REFm,
|
||||||
|
|
Loading…
Reference in New Issue