diff options
author | Hauke Mehrtens <hauke@hauke-m.de> | 2015-08-02 19:44:43 +0200 |
---|---|---|
committer | Rob Herring <robh@kernel.org> | 2015-08-25 11:29:55 -0500 |
commit | 43443ad692cf1d41a90cac2ed7066a10cd67a9c6 (patch) | |
tree | c106efe1b3b866faf369f700b859a46a674ca128 | |
parent | cebb053bd144d88a4c24b14dd8ac775d8e5972d5 (diff) | |
download | lwn-43443ad692cf1d41a90cac2ed7066a10cd67a9c6.tar.gz lwn-43443ad692cf1d41a90cac2ed7066a10cd67a9c6.zip |
of/platform: add function to populate default bus
When a default bus like the simple-bus should be used someone had to
call of_platform_populate() with the default match table. This match
table was not exported, so it is impossible for code build as a module
to use this. Instead of exporting of_default_bus_match_table, add a new
function which uses this default match table and populates the bus.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Rob Herring <robh@kernel.org>
-rw-r--r-- | drivers/of/platform.c | 9 | ||||
-rw-r--r-- | include/linux/of_platform.h | 9 |
2 files changed, 18 insertions, 0 deletions
diff --git a/drivers/of/platform.c b/drivers/of/platform.c index ddf8e42c9367..918f01f26d4b 100644 --- a/drivers/of/platform.c +++ b/drivers/of/platform.c @@ -456,6 +456,15 @@ int of_platform_populate(struct device_node *root, } EXPORT_SYMBOL_GPL(of_platform_populate); +int of_platform_default_populate(struct device_node *root, + const struct of_dev_auxdata *lookup, + struct device *parent) +{ + return of_platform_populate(root, of_default_bus_match_table, lookup, + parent); +} +EXPORT_SYMBOL_GPL(of_platform_default_populate); + static int of_platform_device_destroy(struct device *dev, void *data) { /* Do not touch devices not populated from the device tree */ diff --git a/include/linux/of_platform.h b/include/linux/of_platform.h index 611a691145c4..956a1006aefc 100644 --- a/include/linux/of_platform.h +++ b/include/linux/of_platform.h @@ -72,6 +72,9 @@ extern int of_platform_populate(struct device_node *root, const struct of_device_id *matches, const struct of_dev_auxdata *lookup, struct device *parent); +extern int of_platform_default_populate(struct device_node *root, + const struct of_dev_auxdata *lookup, + struct device *parent); extern void of_platform_depopulate(struct device *parent); #else static inline int of_platform_populate(struct device_node *root, @@ -81,6 +84,12 @@ static inline int of_platform_populate(struct device_node *root, { return -ENODEV; } +static inline int of_platform_default_populate(struct device_node *root, + const struct of_dev_auxdata *lookup, + struct device *parent) +{ + return -ENODEV; +} static inline void of_platform_depopulate(struct device *parent) { } #endif |