mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-17 18:56:24 +00:00
iio: adc: ad7280a: simplify with cleanup.h
Allocate the memory with scoped/cleanup.h to reduce error handling and make the code a bit simpler. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Nuno Sa <nuno.sa@analog.com> Link: https://patch.msgid.link/20240705-cleanup-h-iio-v1-2-77114c7e84c5@linaro.org Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
This commit is contained in:
parent
f44c314faa
commit
c74f7c09b5
@ -7,6 +7,7 @@
|
||||
|
||||
#include <linux/bitfield.h>
|
||||
#include <linux/bits.h>
|
||||
#include <linux/cleanup.h>
|
||||
#include <linux/crc8.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/device.h>
|
||||
@ -803,16 +804,16 @@ static irqreturn_t ad7280_event_handler(int irq, void *private)
|
||||
{
|
||||
struct iio_dev *indio_dev = private;
|
||||
struct ad7280_state *st = iio_priv(indio_dev);
|
||||
unsigned int *channels;
|
||||
int i, ret;
|
||||
|
||||
channels = kcalloc(st->scan_cnt, sizeof(*channels), GFP_KERNEL);
|
||||
unsigned int *channels __free(kfree) = kcalloc(st->scan_cnt, sizeof(*channels),
|
||||
GFP_KERNEL);
|
||||
if (!channels)
|
||||
return IRQ_HANDLED;
|
||||
|
||||
ret = ad7280_read_all_channels(st, st->scan_cnt, channels);
|
||||
if (ret < 0)
|
||||
goto out;
|
||||
return IRQ_HANDLED;
|
||||
|
||||
for (i = 0; i < st->scan_cnt; i++) {
|
||||
unsigned int val;
|
||||
@ -852,9 +853,6 @@ static irqreturn_t ad7280_event_handler(int irq, void *private)
|
||||
}
|
||||
}
|
||||
|
||||
out:
|
||||
kfree(channels);
|
||||
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user