On Wed, Feb 07, 2024 at 09:37:37PM +1030, Subhajit Ghosh wrote: ... > > > +static_assert(ARRAY_SIZE(apds9306_repeat_rate_freq) == > > > + APDS9306_NUM_REPEAT_RATES); > > > > Just make that define to be inside [] in the respective array and drop this > > static assert. The assertion might make sense to have different arrays to be > > synchronized and when their maximums are different due to semantics (not your > > case AFAICS). ... > > > +static_assert(ARRAY_SIZE(apds9306_repeat_rate_period) == > > > + APDS9306_NUM_REPEAT_RATES); > > > > Ditto. > I apologize for this. You pointed me out in an earlier review, I misunderstood > it and used the macro in two static asserts! It will be fixed. It might be used, but not must be, use your common sense! In this case it's easier to have all defined properly from the beginning. ... > > > +static int apds9306_runtime_power_on(struct device *dev) > > > +{ > > > + int ret; > > > + > > > + ret = pm_runtime_resume_and_get(dev); > > > + if (ret < 0) > > > + dev_err_ratelimited(dev, "runtime resume failed: %d\n", ret); > > > + > > > + return ret; > > > +} > > > + > > > +static int apds9306_runtime_power_off(struct device *dev) > > > +{ > > > + pm_runtime_mark_last_busy(dev); > > > + pm_runtime_put_autosuspend(dev); > > > + > > > + return 0; > > > +} > > > > Seems to me like useless wrappers. Why do you need that message? > No specific need for that message, however the wrapper was suggested in a previous review: > https://lore.kernel.org/all/ZTuuUl0PBklbVjb9@xxxxxxxxxxxxxxxxxx/ I see, what I meant in previous review is to split to separate helpers. Now, when we see how it looks like and how many actual users, we may go further and drop them. > Do you still want me to use the pm functions directly from the calling functions? It seems a good move forward. > > Btw, it's used only twice, open coding saves the LoCs! > Yes, it makes sense. -- With Best Regards, Andy Shevchenko