Re: [PATCH 3/3] iio: sx9310: Enable regulator for svdd supply

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Quoting Doug Anderson (2020-07-24 13:25:01)
> On Thu, Jul 23, 2020 at 4:03 PM Stephen Boyd <swboyd@xxxxxxxxxxxx> wrote:
> >         /*
> >          * Last reading of the proximity status for each channel.
> >          * We only send an event to user space when this changes.
> > @@ -914,21 +916,31 @@ static int sx9310_probe(struct i2c_client *client,
> >         mutex_init(&data->mutex);
> >         init_completion(&data->completion);
> >
> > +       data->supply = devm_regulator_get(&client->dev, "svdd");
> > +       if (IS_ERR(data->supply))
> > +               return PTR_ERR(data->supply);
> > +
> >         data->regmap = devm_regmap_init_i2c(client, &sx9310_regmap_config);
> >         if (IS_ERR(data->regmap))
> >                 return PTR_ERR(data->regmap);
> >
> > +       ret = regulator_enable(data->supply);
> > +       if (ret)
> > +               return ret;
> > +       /* Must wait for Tpor time after initial power up */
> > +       usleep_range(1000, 1100);
> 
> ret = devm_add_action_or_reset(&client->dev, sx9310_regulator_disable, supply);
> if (ret)
>   return ret;
> 
> static void sx9310_regulator_disable(void *regulator) {
>   regulator_disable(regulator);
> }
> 
> Then drop all changes below this line.

Ok. I originally had code to turn off the supply during suspend/resume
but I removed it because I wasn't sure that the device would be OK with
the IO interface dropping after the device went to sleep.

> 
> 
> Seems like you could add support for the other regulator listed in the
> bindings, too?
> 

Sure. I will use the bulk APIs.




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux