Re: [PATCH v4 2/4] iio: imu: bmi270: Add scale and sampling frequency to BMI270 IMU

From: Andy Shevchenko
Date: Mon Oct 28 2024 - 05:33:10 EST


On Sun, Oct 27, 2024 at 10:20:23AM -0700, Justin Weiss wrote:
> Add read and write functions and create _available entries.

...

> +static int bmi270_set_scale(struct bmi270_data *data,
> + int chan_type, int uscale)

There is available space in the previous line, (And I would even join them
despite being 83 characters long.)

...

> +static int bmi270_get_scale(struct bmi270_data *bmi270_device,
> + int chan_type, int *uscale)

Ditto (for chan_type).

...

> +static int bmi270_set_odr(struct bmi270_data *data, int chan_type,
> + int odr, int uodr)

Ditto.

...

> + for (i = 0; i < bmi270_odr_item.num; i++) {
> + if (bmi270_odr_item.tbl[i].odr != odr ||
> + bmi270_odr_item.tbl[i].uodr != uodr)
> + continue;
> +
> + return regmap_update_bits(data->regmap, reg, mask,
> + bmi270_odr_item.vals[i]);
> + }
> +
> + return -EINVAL;

Wouldn't be better to use regular patterns, i.e. checking for errors first?

for (i = 0; i < bmi270_odr_item.num; i++) {
if (bmi270_odr_item.tbl[i].odr == odr ||
bmi270_odr_item.tbl[i].uodr == uodr)
break;
}
if (i == bmi270_odr_item.num)
return -EINVAL;

return regmap_update_bits(data->regmap, reg, mask, bmi270_odr_item.vals[i]);

...

> +static int bmi270_get_odr(struct bmi270_data *data, int chan_type,
> + int *odr, int *uodr)

As per above.

> + for (i = 0; i < bmi270_odr_item.num; i++) {
> + if (val != bmi270_odr_item.vals[i])
> + continue;
> +
> + *odr = bmi270_odr_item.tbl[i].odr;
> + *uodr = bmi270_odr_item.tbl[i].uodr;
> + return 0;
> + }
> +
> + return -EINVAL;

As per above.

--
With Best Regards,
Andy Shevchenko