Re: [PATCH v3 4/5] iio: magnetometer: qmc5883p: add oversampling ratio support

From: Jonathan Cameron

Date: Mon Apr 20 2026 - 11:18:52 EST


On Sun, 19 Apr 2026 22:32:56 +0000
Hardik Phalet <hardik.phalet@xxxxx> wrote:

> Expose the CTRL_1 OSR field through IIO_CHAN_INFO_OVERSAMPLING_RATIO so
> userspace can select among the four oversampling settings (1, 2, 4, 8)
> supported by the device. Read, write and available handlers mirror the
> existing SAMP_FREQ plumbing and use the already-present rf.osr regmap
> field.
>
> Signed-off-by: Hardik Phalet <hardik.phalet@xxxxx>
> ---

> @@ -306,6 +320,18 @@ static int qmc5883p_write_odr(struct qmc5883p_data *data, int val)
> return -EINVAL;
> }
>
> +static int qmc5883p_write_osr(struct qmc5883p_data *data, int val)
> +{
> + int i;
> +
> + for (i = 0; i < ARRAY_SIZE(qmc5883p_osr); i++) {

Whilst a fairly recent thing, it is now considered fine to do
for (int i = 0; i < ...

> + if (qmc5883p_osr[i] == val)
> + return regmap_field_write(data->rf.osr, i);
> + }
> +
> + return -EINVAL;
> +}