[PATCH 05/12] iio: dac: rohm-bd79703: Do not allow writing SCALE
From: Matti Vaittinen
Date: Mon Aug 10 2026 - 03:54:30 EST
From: Matti Vaittinen <mazziesaccount@xxxxxxxxx>
The BD79703 has adds IIO_CHAN_INFO_SCALE in the info_mask_shared_by_type
so users can read the scale, which depends on the used reference
voltage. This, however, enables users to try writing the scale as well.
This isn't really supported but the bd79703_write_raw() does not check
the mask, and if written scale values pass the validation, the driver
will proceed writing the DAC value when users writes the scale.
Prevent the unsupported scale setting and return an error.
Signed-off-by: Matti Vaittinen <mazziesaccount@xxxxxxxxx>
Fixes: af6aca656a85 ("iio: dac: Support ROHM BD79703 DAC")
---
drivers/iio/dac/rohm-bd79703.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/iio/dac/rohm-bd79703.c b/drivers/iio/dac/rohm-bd79703.c
index e91090e4a66d..68e66e7286d8 100644
--- a/drivers/iio/dac/rohm-bd79703.c
+++ b/drivers/iio/dac/rohm-bd79703.c
@@ -73,6 +73,9 @@ static int bd79703_write_raw(struct iio_dev *idev,
{
struct bd79703_data *data = iio_priv(idev);
+ if (mask != IIO_CHAN_INFO_RAW)
+ return -EINVAL;
+
if (val < 0 || val >= 1 << BD79703_DAC_BITS)
return -EINVAL;
--
2.55.0
Attachment:
signature.asc
Description: PGP signature