summaryrefslogtreecommitdiffstats
path: root/drivers/bcma/main.c
diff options
context:
space:
mode:
authorRafał Miłecki <zajec5@gmail.com>2015-01-25 11:11:14 +0100
committerKalle Valo <kvalo@codeaurora.org>2015-01-29 10:53:08 +0200
commitb504075f5903b969a54ef3a6ae994c0872edb259 (patch)
treec3026773a3f9dead1b204b0a6858394cdcd9776e /drivers/bcma/main.c
parentae8ce289e55e6f9911016f73ac85dcb2e0c0c9c1 (diff)
downloadop-kernel-dev-b504075f5903b969a54ef3a6ae994c0872edb259.zip
op-kernel-dev-b504075f5903b969a54ef3a6ae994c0872edb259.tar.gz
bcma: add early_init function for PCIe core and move some fix into it
There are some PCIe core fixes that need to be applied before accessing SPROM, otherwise reading it may fail. 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.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/bcma/main.c b/drivers/bcma/main.c
index 73b2ee3..38bde6e 100644
--- a/drivers/bcma/main.c
+++ b/drivers/bcma/main.c
@@ -402,6 +402,13 @@ int bcma_bus_register(struct bcma_bus *bus)
bcma_core_chipcommon_early_init(&bus->drv_cc);
}
+ /* Early init PCIE core */
+ core = bcma_find_core(bus, BCMA_CORE_PCIE);
+ if (core) {
+ bus->drv_pci[0].core = core;
+ bcma_core_pci_early_init(&bus->drv_pci[0]);
+ }
+
/* 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))
OpenPOWER on IntegriCloud