Re: [PATCH v13 09/12] ACPI: x86: s2idle: Add a function to get constraints for a device

From: Andy Shevchenko
Date: Fri Aug 18 2023 - 06:48:36 EST


On Fri, Aug 18, 2023 at 10:31:03AM +0200, Rafael J. Wysocki wrote:
> On Fri, Aug 18, 2023 at 7:15 AM Mario Limonciello
> <mario.limonciello@xxxxxxx> wrote:

...

> > +int acpi_get_lps0_constraint(struct device *dev)
>
> I think that some overhead would be reduced below if this were taking
> a struct acpi_device pointer as the argument.

Hmm... Either you need a pointer to handle, which involves pointer arithmetics
or something else. I would believe if you tell that ACPI handle should be passed,
but current suggestion is not obvious to me how it may help.

> > +{
> > + struct lpi_constraints *entry;
> > +
> > + for_each_lpi_constraint(entry) {
> > + if (!device_match_acpi_handle(dev, entry->handle))

Here we retrieve handle...

> > + continue;
> > + acpi_handle_debug(entry->handle,
> > + "ACPI device constraint: %d\n", entry->min_dstate);
> > + return entry->min_dstate;
> > + }

> > + dev_dbg(dev, "No ACPI device constraint specified\n");

...and here we are using dev directly (otherwise acpi_handle_dbg() should be used).

> > + return -ENODEV;
>
> ACPI_STATE_UNKNOWN?
>
> > +}

--
With Best Regards,
Andy Shevchenko