summaryrefslogtreecommitdiffstats
path: root/drivers/bcma/main.c
diff options
context:
space:
mode:
authorRafał Miłecki <zajec5@gmail.com>2015-06-28 17:17:13 +0200
committerKalle Valo <kvalo@codeaurora.org>2015-07-21 16:06:06 +0200
commitcae761b5a6bdc597ba476a040fdcd5b4bc559b85 (patch)
treed6883f03da75274723beeb2530a21ee097bd9382 /drivers/bcma/main.c
parentmwifiex: fix for p2p broken link (diff)
downloadlinux-cae761b5a6bdc597ba476a040fdcd5b4bc559b85.tar.xz
linux-cae761b5a6bdc597ba476a040fdcd5b4bc559b85.zip
bcma: populate bus DT subnodes as platform_device-s
Our bus should allow defining children nodes as we may want to specify devices attached to the bus. This is required e.g. to specify NAND or ChipCommon cores and use bus's address and IRQ mappings. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Diffstat (limited to 'drivers/bcma/main.c')
-rw-r--r--drivers/bcma/main.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/bcma/main.c b/drivers/bcma/main.c
index 9635f1033ce5..59128478a90f 100644
--- a/drivers/bcma/main.c
+++ b/drivers/bcma/main.c
@@ -12,6 +12,7 @@
#include <linux/slab.h>
#include <linux/of_address.h>
#include <linux/of_irq.h>
+#include <linux/of_platform.h>
MODULE_DESCRIPTION("Broadcom's specific AMBA driver");
MODULE_LICENSE("GPL");
@@ -409,6 +410,13 @@ int bcma_bus_register(struct bcma_bus *bus)
bcma_core_pci_early_init(&bus->drv_pci[0]);
}
+ if (bus->host_pdev) {
+ struct device *dev = &bus->host_pdev->dev;
+
+ of_platform_populate(dev->of_node, of_default_bus_match_table,
+ NULL, dev);
+ }
+
/* Cores providing flash access go before SPROM init */
list_for_each_entry(core, &bus->cores, list) {
if (bcma_is_core_needed_early(core->id.id))