]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
iio: adc: ti-ads1119: Reinit completion before wait_for_completion_timeout()
authorFelix Gu <ustc.gu@gmail.com>
Tue, 3 Mar 2026 13:47:33 +0000 (21:47 +0800)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sat, 7 Mar 2026 13:18:09 +0000 (13:18 +0000)
The completion is not reinit before wait_for_completion_timeout(),
so wait_for_completion_timeout() will return immediately after
the first successful completion.

Fixes: a9306887eba4 ("iio: adc: ti-ads1119: Add driver")
Signed-off-by: Felix Gu <ustc.gu@gmail.com>
Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Cc: <Stable@vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/ti-ads1119.c

index 7f771c7023b8fc6a426b155a3f2fe15fc998c67e..79be71b4de963a7a50ce978922315ca11f8f9655 100644 (file)
@@ -280,6 +280,9 @@ static int ads1119_single_conversion(struct ads1119_state *st,
        if (ret)
                goto pdown;
 
+       if (st->client->irq)
+               reinit_completion(&st->completion);
+
        ret = i2c_smbus_write_byte(st->client, ADS1119_CMD_START_SYNC);
        if (ret)
                goto pdown;