Re: [PATCH v2 06/14] iio: accel: bma220: add get regulator check

Petre Rodan
2025-09-10T18:52:07Z

Hello Jonathan,

thank you for the blazing fast feedback!

On Wed, Sep 10, 2025 at 06:58:41PM +0100, Jonathan Cameron wrote:
> On Wed, 10 Sep 2025 10:57:11 +0300
> Petre Rodan <petre.rodan@subdimension.ro> wrote:
>
> I don't follow the 'add get regulator check' of the patch description.
> This is ensuring they are powered up if necessary. So I'd
> just go with the vague: "turn power supplies on"

to be honest I added this just because I've seen the devm_regulator_bulk_get_enable() function used all over the place in iio code.
but looking at the linux/regulator/consumers.h header I was more puzzled.
just some forward declarations and then static functions doing exactly nothing.
I'm afraid to ask what that is all about. placeholder for a future API?

best regards,
peter

> > +#include <linux/regulator/consumer.h>
> > #include <linux/types.h>
> > #include <linux/spi/spi.h>
> >
> > @@ -205,6 +206,13 @@ static const struct iio_info bma220_info = {
> > static int bma220_init(struct spi_device *spi)
> > {
> > int ret;
> > + static const char * const regulator_names[] = { "vddd", "vddio", "vdda" };
> > +
> > + ret = devm_regulator_bulk_get_enable(&spi->dev,
> > + ARRAY_SIZE(regulator_names),
> > + regulator_names);
> > + if (ret)
> > + return dev_err_probe(&spi->dev, ret, "Failed to get regulators\n");