From: Jonathan Cameron <jic23@kernel.org>
To: iio@vger.kernel.org, Miquel Raynal <miquel.raynal@bootlin.com>,
Nicolas Ferre <nicolas.ferre@microchip.com>,
Alexandre Belloni <alexandre.belloni@bootlin.com>,
Claudiu Beznea <claudiu.beznea@tuxon.dev>,
Song Qiang <songqiang1304521@gmail.com>,
Radu Sabau <radu.sabau@analog.com>,
Maxwell Doose <maxwell@maxwelld.cc>,
Tomasz Duszynski <tduszyns@gmail.com>,
Erikas Bitovtas <xerikasxx@gmail.com>,
Waqar Hameed <waqar.hameed@axis.com>
Cc: "David Lechner" <dlechner@baylibre.com>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
linux-kernel@vger.kernel.org,
"Jonathan Cameron" <jonathan.cameron@oss.qualcomm.com>
Subject: [PATCH 12/14] iio: proximity: irsd200: poll own trigger from interrupt handler
Date: Mon, 9 Nov 2026 03:52:50 +0000 [thread overview]
Message-ID: <20261109035252.1295926-13-jic23@kernel.org> (raw)
In-Reply-To: <20261109035252.1295926-1-jic23@kernel.org>
From: Jonathan Cameron <jonathan.cameron@oss.qualcomm.com>
Keep a pointer to the driver's trigger in struct irsd200_data and poll
that from irsd200_irq_thread() rather than indio_dev->trig. The data
interrupt source is only enabled by the trigger's set_trigger_state()
callback, so it is the driver's own trigger that is in use whenever this
path is reached.
This removes a dependency on the trig field of struct iio_dev, which
is to become private to the IIO core.
Signed-off-by: Jonathan Cameron <jonathan.cameron@oss.qualcomm.com>
---
drivers/iio/proximity/irsd200.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/iio/proximity/irsd200.c b/drivers/iio/proximity/irsd200.c
index b3db7f3a49f6..82edb135f4bf 100644
--- a/drivers/iio/proximity/irsd200.c
+++ b/drivers/iio/proximity/irsd200.c
@@ -122,6 +122,7 @@ struct irsd200_data {
struct regmap *regmap;
struct regmap_field *regfields[IRS_REGF_MAX];
struct device *dev;
+ struct iio_trigger *trig;
};
static int irsd200_setup(struct irsd200_data *data)
@@ -698,7 +699,7 @@ static irqreturn_t irsd200_irq_thread(int irq, void *dev_id)
}
if (status & BIT(IRS_INTR_DATA) && iio_buffer_enabled(indio_dev)) {
- iio_trigger_poll_nested(indio_dev->trig);
+ iio_trigger_poll_nested(data->trig);
clear |= BIT(IRS_INTR_DATA);
}
@@ -917,6 +918,7 @@ static int irsd200_probe(struct i2c_client *client)
if (!trigger)
return -ENOMEM;
+ data->trig = trigger;
trigger->ops = &irsd200_trigger_ops;
iio_trigger_set_drvdata(trigger, data);
--
2.56.0
next prev parent reply other threads:[~2026-11-09 3:53 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-09 3:52 [PATCH 00/14] IIO: Ensure iio_trigger_poll() is of the device owned trigger Jonathan Cameron
2026-11-09 3:52 ` [PATCH 01/14] iio: accel: mma8452: unregister own trigger rather than current one Jonathan Cameron
2026-11-09 3:52 ` [PATCH 02/14] iio: accel: mma8452: poll own trigger from interrupt handler Jonathan Cameron
2026-11-09 3:52 ` [PATCH 03/14] iio: adc: max1027: " Jonathan Cameron
2026-11-09 3:52 ` [PATCH 04/14] iio: adc: ti-ads1119: " Jonathan Cameron
2026-11-09 3:52 ` [PATCH 05/14] iio: adc: mxs-lradc-adc: " Jonathan Cameron
2026-11-09 3:52 ` [PATCH 06/14] iio: adc: at91-sama5d2: poll own trigger on data ready interrupt Jonathan Cameron
2026-11-09 3:52 ` [PATCH 07/14] iio: light: vl6180: poll own trigger from interrupt handler Jonathan Cameron
2026-11-09 3:52 ` [PATCH 08/14] iio: proximity: vl53l0x-i2c: " Jonathan Cameron
2026-11-09 3:52 ` [PATCH 09/14] iio: adc: ad4691: " Jonathan Cameron
2026-11-09 3:52 ` [PATCH 10/14] iio: chemical: scd30: " Jonathan Cameron
2026-11-09 3:52 ` [PATCH 11/14] iio: proximity: vl53l1x-i2c: " Jonathan Cameron
2026-11-09 3:52 ` Jonathan Cameron [this message]
2026-11-09 3:52 ` [PATCH 13/14] iio: light: vcnl4000: " Jonathan Cameron
2026-11-09 3:52 ` [PATCH 14/14] iio: adc: at91_adc: poll the enabled " Jonathan Cameron
2026-11-09 4:22 ` [PATCH 00/14] IIO: Ensure iio_trigger_poll() is of the device owned trigger Jonathan Cameron
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261109035252.1295926-13-jic23@kernel.org \
--to=jic23@kernel.org \
--cc=alexandre.belloni@bootlin.com \
--cc=andy@kernel.org \
--cc=claudiu.beznea@tuxon.dev \
--cc=dlechner@baylibre.com \
--cc=iio@vger.kernel.org \
--cc=jonathan.cameron@oss.qualcomm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=maxwell@maxwelld.cc \
--cc=miquel.raynal@bootlin.com \
--cc=nicolas.ferre@microchip.com \
--cc=nuno.sa@analog.com \
--cc=radu.sabau@analog.com \
--cc=songqiang1304521@gmail.com \
--cc=tduszyns@gmail.com \
--cc=waqar.hameed@axis.com \
--cc=xerikasxx@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®