diff options
author | Sakari Ailus <sakari.ailus@linux.intel.com> | 2017-03-28 07:52:24 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-08-11 15:49:29 (GMT) |
commit | 1f32e67adac40508e9c8753151effbe0bbf06bdb (patch) | |
tree | 924f66fd9d93725e8964fdd1410fd9113ac5dca5 | |
parent | 347be00b56f72a5a6759930dc7269cb3b1fbbad6 (diff) | |
download | linux-1f32e67adac40508e9c8753151effbe0bbf06bdb.tar.xz |
device property: Make dev_fwnode() public
commit e44bb0cbdc88686c21e2175a990b40bf6db5d005 upstream.
The function to obtain a fwnode related to a struct device is useful for
drivers that use the fwnode property API: it allows not being aware of the
underlying firmware implementation.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Cc: Chris Metcalf <cmetcalf@mellanox.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/base/property.c | 3 | ||||
-rw-r--r-- | include/linux/property.h | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/drivers/base/property.c b/drivers/base/property.c index 43a36d6..06f6668 100644 --- a/drivers/base/property.c +++ b/drivers/base/property.c @@ -182,11 +182,12 @@ static int pset_prop_read_string(struct property_set *pset, return 0; } -static inline struct fwnode_handle *dev_fwnode(struct device *dev) +struct fwnode_handle *dev_fwnode(struct device *dev) { return IS_ENABLED(CONFIG_OF) && dev->of_node ? &dev->of_node->fwnode : dev->fwnode; } +EXPORT_SYMBOL_GPL(dev_fwnode); /** * device_property_present - check if a property of a device is present diff --git a/include/linux/property.h b/include/linux/property.h index 856e50b..338f9b7 100644 --- a/include/linux/property.h +++ b/include/linux/property.h @@ -33,6 +33,8 @@ enum dev_dma_attr { DEV_DMA_COHERENT, }; +struct fwnode_handle *dev_fwnode(struct device *dev); + bool device_property_present(struct device *dev, const char *propname); int device_property_read_u8_array(struct device *dev, const char *propname, u8 *val, size_t nval); |