On Sat, 3 Sep 2022 14:05:38 +0200 Crt Mori <cmo@xxxxxxxxxxx> wrote: > On Fri, 2 Sept 2022 at 20:39, Andy Shevchenko <andy.shevchenko@xxxxxxxxx> wrote: > > > > On Fri, Sep 2, 2022 at 8:59 PM Crt Mori <cmo@xxxxxxxxxxx> wrote: > > > On Fri, 2 Sept 2022 at 17:28, Andy Shevchenko <andy.shevchenko@xxxxxxxxx> wrote: > > > > On Fri, Sep 2, 2022 at 4:13 PM <cmo@xxxxxxxxxxx> wrote: > > > > > + if (current_powerstatus == MLX90632_PWR_STATUS_SLEEP_STEP) > > > > > + return mlx90632_pwr_set_sleep_step(data->regmap); > > > > > > > > > + else > > > > > > > > Redundant. > > > > > > > No, the powermode changes among the type. > > > > Yes. 'else' keyword is always redundant in the > > > > if (...) > > return / break / continue / goto > > else > > > > cases. > > > In this case current power mode of the sensor is halt, so the else is > needed to set it to continuous mode, which means I can't just remove > the else here because this statement restores the power mode before > this function was entered (and changed powermode for the setup). > > > > > > + return mlx90632_pwr_continuous(data->regmap); > > > > ... > > > > > > > +static int __maybe_unused mlx90632_pm_runtime_suspend(struct device *dev) > > > > > > > > No __maybe_unused, use pm_ptr() / pm_sleep_ptr() below. > > > > > > > Care to explain a bit more about this? I just followed what other > > > drivers have... > > > > And other drivers have what I said, but it's a new feature. > > If you run `git log --no-merges --grep 'pm_ptr' -- drivers/iio > > include/linux/` and read the history it will explain the case. > > > Thanks for the hint. The relevant EXPORT_ for this particular case isn't upstream yet We had a proposal on IIO list, but there was a better one as part of cleaning this up for MFD. I haven't checked if there is a suitable immutable branch for that patch yet... Jonathan