Message ID | 20230609154900.43024-3-andriy.shevchenko@linux.intel.com |
---|---|
State | New |
Headers | show |
Series | device property: Introduce device_is_compatible() | expand |
Hi Andy, On Fri, Jun 09, 2023 at 06:48:59PM +0300, Andy Shevchenko wrote: > Some users want to use the struct device pointer to see if the > device is compatible in terms of Open Firmware specifications, > i.e. if it has a 'compatible' property and it matches to the > given value. Provide inline helper for the users. > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: Sakari Ailus <sakari.ailus@linux.intel.com>
On Fri, Jun 09, 2023 at 06:48:59PM +0300, Andy Shevchenko wrote: > Some users want to use the struct device pointer to see if the > device is compatible in terms of Open Firmware specifications, > i.e. if it has a 'compatible' property and it matches to the > given value. Provide inline helper for the users. IMO much useful wrapper. Thanks for the patch. Reviewed-by: Serge Semin <fancer.lancer@gmail.com> -Serge(y) > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > --- > include/linux/property.h | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/include/linux/property.h b/include/linux/property.h > index 695053c60306..0222b77dd75c 100644 > --- a/include/linux/property.h > +++ b/include/linux/property.h > @@ -85,6 +85,18 @@ bool fwnode_device_is_compatible(const struct fwnode_handle *fwnode, const char > return fwnode_property_match_string(fwnode, "compatible", compat) >= 0; > } > > +/** > + * device_is_compatible - match 'compatible' property of the device with a given string > + * @dev: Pointer to the struct device > + * @compat: The string to match 'compatible' property with > + * > + * Returns: true if matches, otherwise false. > + */ > +static inline bool device_is_compatible(const struct device *dev, const char *compat) > +{ > + return fwnode_device_is_compatible(dev_fwnode(dev), compat); > +} > + > int fwnode_property_get_reference_args(const struct fwnode_handle *fwnode, > const char *prop, const char *nargs_prop, > unsigned int nargs, unsigned int index, > -- > 2.40.0.1.gaa8946217a0b > >
On Tue, Jun 13, 2023 at 12:45:08PM +0300, Serge Semin wrote: > On Fri, Jun 09, 2023 at 06:48:59PM +0300, Andy Shevchenko wrote: > > Some users want to use the struct device pointer to see if the > > device is compatible in terms of Open Firmware specifications, > > i.e. if it has a 'compatible' property and it matches to the > > given value. Provide inline helper for the users. > > IMO much useful wrapper. Thanks for the patch. > Reviewed-by: Serge Semin <fancer.lancer@gmail.com> There is a v3. Do you mind to tag it as well?
On Tue, Jun 13, 2023 at 06:14:30PM +0300, Andy Shevchenko wrote: > On Tue, Jun 13, 2023 at 12:45:08PM +0300, Serge Semin wrote: > > On Fri, Jun 09, 2023 at 06:48:59PM +0300, Andy Shevchenko wrote: > > > Some users want to use the struct device pointer to see if the > > > device is compatible in terms of Open Firmware specifications, > > > i.e. if it has a 'compatible' property and it matches to the > > > given value. Provide inline helper for the users. > > > > IMO much useful wrapper. Thanks for the patch. > > Reviewed-by: Serge Semin <fancer.lancer@gmail.com> > > There is a v3. Do you mind to tag it as well? Ah, and thank you for review! Appreciate it.
On Tue, Jun 13, 2023 at 06:14:51PM +0300, Andy Shevchenko wrote: > On Tue, Jun 13, 2023 at 06:14:30PM +0300, Andy Shevchenko wrote: > > On Tue, Jun 13, 2023 at 12:45:08PM +0300, Serge Semin wrote: > > > On Fri, Jun 09, 2023 at 06:48:59PM +0300, Andy Shevchenko wrote: > > > > Some users want to use the struct device pointer to see if the > > > > device is compatible in terms of Open Firmware specifications, > > > > i.e. if it has a 'compatible' property and it matches to the > > > > given value. Provide inline helper for the users. > > > > > > IMO much useful wrapper. Thanks for the patch. > > > Reviewed-by: Serge Semin <fancer.lancer@gmail.com> > > > > There is a v3. Do you mind to tag it as well? > > Ah, and thank you for review! Appreciate it. Always welcome.) I've resent the tags for the patches 2 and 3. Patch 1 is out of my competence, sorry. -Serge(y) > > -- > With Best Regards, > Andy Shevchenko > > >
diff --git a/include/linux/property.h b/include/linux/property.h index 695053c60306..0222b77dd75c 100644 --- a/include/linux/property.h +++ b/include/linux/property.h @@ -85,6 +85,18 @@ bool fwnode_device_is_compatible(const struct fwnode_handle *fwnode, const char return fwnode_property_match_string(fwnode, "compatible", compat) >= 0; } +/** + * device_is_compatible - match 'compatible' property of the device with a given string + * @dev: Pointer to the struct device + * @compat: The string to match 'compatible' property with + * + * Returns: true if matches, otherwise false. + */ +static inline bool device_is_compatible(const struct device *dev, const char *compat) +{ + return fwnode_device_is_compatible(dev_fwnode(dev), compat); +} + int fwnode_property_get_reference_args(const struct fwnode_handle *fwnode, const char *prop, const char *nargs_prop, unsigned int nargs, unsigned int index,
Some users want to use the struct device pointer to see if the device is compatible in terms of Open Firmware specifications, i.e. if it has a 'compatible' property and it matches to the given value. Provide inline helper for the users. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> --- include/linux/property.h | 12 ++++++++++++ 1 file changed, 12 insertions(+)