Re: [PATCH v3 3/7] acpi: add acpi_of_match_device_ids
"Rafael J. Wysocki" <[email protected]>
| Newsgroups | dev.linux.lists.acpica-devel,dev.linux.lists.driver-core,org.kernel.vger.linux-acpi,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-leds,org.kernel.vger.linux-pci,org.kernel.vger.rust-for-linux |
|---|---|
| Message-ID | <CAJZ5v0jxHO2EH5NeEsMkxGz5xqVL00tO-W1JpaVd=GhwgQ3T=A@mail.gmail.com> |
On Fri, Mar 13, 2026 at 8:03 PM Markus Probst via B4 Relay <[email protected]> wrote: > > From: Markus Probst <[email protected]> > > Add a function to match acpi devices against of_device_ids. This will be > used in the following commit ("mfd: match acpi devices against PRP0001") > to match mfd sub-devices against a of compatible string. Please always spell ACPI in capitals in patch subjects, comments, changelogs, etc. It is not a regular word. > Signed-off-by: Markus Probst <[email protected]> > --- > drivers/acpi/bus.c | 7 +++++++ > include/acpi/acpi_bus.h | 2 ++ > 2 files changed, 9 insertions(+) > > diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c > index f6707325f582..5ddcc56edc87 100644 > --- a/drivers/acpi/bus.c > +++ b/drivers/acpi/bus.c > @@ -1044,6 +1044,13 @@ int acpi_match_device_ids(struct acpi_device *device, > } > EXPORT_SYMBOL(acpi_match_device_ids); > Missing kerneldoc. > +int acpi_of_match_device_ids(struct acpi_device *device, > + const struct of_device_id *ids) > +{ > + return __acpi_match_device(device, NULL, ids, NULL, NULL) ? 0 : -ENOENT; > +} > +EXPORT_SYMBOL(acpi_of_match_device_ids); Are you aware of the consensus that using PRP0001 in production platform firmware will be regarded as invalid? Because of that, it is not an option for a driver to avoid providing ACPI match data on a platform that uses ACPI. > + > bool acpi_driver_match_device(struct device *dev, > const struct device_driver *drv) > { > diff --git a/include/acpi/acpi_bus.h b/include/acpi/acpi_bus.h > index aad1a95e6863..0081b9e4aaee 100644 > --- a/include/acpi/acpi_bus.h > +++ b/include/acpi/acpi_bus.h > @@ -677,6 +677,8 @@ void acpi_bus_trim(struct acpi_device *start); > acpi_status acpi_bus_get_ejd(acpi_handle handle, acpi_handle * ejd); > int acpi_match_device_ids(struct acpi_device *device, > const struct acpi_device_id *ids); > +int acpi_of_match_device_ids(struct acpi_device *device, > + const struct of_device_id *ids); > void acpi_set_modalias(struct acpi_device *adev, const char *default_id, > char *modalias, size_t len); > > > -- > 2.52.0 > >