[PATCH 1/2] iio: mpl3115: add ctrl_reg4 to mpl3115_data
From: Antoni Pokusinski
Date: Tue Oct 28 2025 - 17:34:27 EST
Cache the value of CTRL_REG4 in the mpl3115_data structure. This is a
preparation for adding support for the threshold events.
Signed-off-by: Antoni Pokusinski <apokusinski01@xxxxxxxxx>
---
drivers/iio/pressure/mpl3115.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/drivers/iio/pressure/mpl3115.c b/drivers/iio/pressure/mpl3115.c
index c212dfdf59ff..4cc103e20a39 100644
--- a/drivers/iio/pressure/mpl3115.c
+++ b/drivers/iio/pressure/mpl3115.c
@@ -83,6 +83,7 @@ struct mpl3115_data {
struct iio_trigger *drdy_trig;
struct mutex lock;
u8 ctrl_reg1;
+ u8 ctrl_reg4;
};
enum mpl3115_irq_pin {
@@ -376,6 +377,7 @@ static int mpl3115_config_interrupt(struct mpl3115_data *data,
goto reg1_cleanup;
data->ctrl_reg1 = ctrl_reg1;
+ data->ctrl_reg4 = ctrl_reg4;
return 0;
@@ -390,12 +392,15 @@ static int mpl3115_set_trigger_state(struct iio_trigger *trig, bool state)
struct iio_dev *indio_dev = iio_trigger_get_drvdata(trig);
struct mpl3115_data *data = iio_priv(indio_dev);
u8 ctrl_reg1 = data->ctrl_reg1;
- u8 ctrl_reg4 = state ? MPL3115_CTRL4_INT_EN_DRDY : 0;
+ u8 ctrl_reg4 = data->ctrl_reg4;
- if (state)
+ if (state) {
ctrl_reg1 |= MPL3115_CTRL1_ACTIVE;
- else
+ ctrl_reg4 |= MPL3115_CTRL4_INT_EN_DRDY;
+ } else {
ctrl_reg1 &= ~MPL3115_CTRL1_ACTIVE;
+ ctrl_reg4 &= ~MPL3115_CTRL4_INT_EN_DRDY;
+ }
guard(mutex)(&data->lock);
--
2.25.1