kionix-kx022a.c (e932fb64c017dccbee44b7ee781584dbc65449ed) kionix-kx022a.c (f700e55ef6ef9ec723164659ed4385900981c872)
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright (C) 2022 ROHM Semiconductors
4 *
5 * ROHM/KIONIX KX022A accelerometer driver
6 */
7
8#include <linux/delay.h>

--- 885 unchanged lines hidden (view full) ---

894{
895 struct iio_dev *idev = private;
896 struct kx022a_data *data = iio_priv(idev);
897 irqreturn_t ret = IRQ_NONE;
898
899 mutex_lock(&data->mutex);
900
901 if (data->trigger_enabled) {
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright (C) 2022 ROHM Semiconductors
4 *
5 * ROHM/KIONIX KX022A accelerometer driver
6 */
7
8#include <linux/delay.h>

--- 885 unchanged lines hidden (view full) ---

894{
895 struct iio_dev *idev = private;
896 struct kx022a_data *data = iio_priv(idev);
897 irqreturn_t ret = IRQ_NONE;
898
899 mutex_lock(&data->mutex);
900
901 if (data->trigger_enabled) {
902 iio_trigger_poll_chained(data->trig);
902 iio_trigger_poll_nested(data->trig);
903 ret = IRQ_HANDLED;
904 }
905
906 if (data->state & KX022A_STATE_FIFO) {
907 int ok;
908
909 ok = __kx022a_fifo_flush(idev, KX022A_FIFO_LENGTH, true);
910 if (ok > 0)

--- 231 unchanged lines hidden ---
903 ret = IRQ_HANDLED;
904 }
905
906 if (data->state & KX022A_STATE_FIFO) {
907 int ok;
908
909 ok = __kx022a_fifo_flush(idev, KX022A_FIFO_LENGTH, true);
910 if (ok > 0)

--- 231 unchanged lines hidden ---