aboutsummaryrefslogtreecommitdiff
path: root/arch/x86/cpu/pci.c
diff options
context:
space:
mode:
authorBin Meng <bmeng.cn@gmail.com>2014-12-30 22:53:21 +0800
committerSimon Glass <sjg@chromium.org>2015-01-12 17:03:41 -0800
commit8f9052fd98e2e97e33b0e5ccf57f028e595abb5d (patch)
tree91758ad4dbde4d84f0e98da36c29569749055ea6 /arch/x86/cpu/pci.c
parentfa5530b85dd48e58700188754ee852444466bf28 (diff)
downloadu-boot-8f9052fd98e2e97e33b0e5ccf57f028e595abb5d.zip
u-boot-8f9052fd98e2e97e33b0e5ccf57f028e595abb5d.tar.gz
u-boot-8f9052fd98e2e97e33b0e5ccf57f028e595abb5d.tar.bz2
pci: Make pci apis usable before relocation
Introduce a gd->hose to save the pci hose in the early phase so that apis in drivers/pci/pci.c can be used before relocation. Architecture codes need assign a valid gd->hose in the early phase. Some variables are declared as static so change them to be either stack variable or global data member so that they can be used before relocation, except the 'indent' used by CONFIG_PCI_SCAN_SHOW which just affects some print format. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch/x86/cpu/pci.c')
-rw-r--r--arch/x86/cpu/pci.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/x86/cpu/pci.c b/arch/x86/cpu/pci.c
index 1eee08b..ab1aaaa 100644
--- a/arch/x86/cpu/pci.c
+++ b/arch/x86/cpu/pci.c
@@ -30,7 +30,7 @@ int pci_early_init_hose(struct pci_controller **hosep)
board_pci_setup_hose(hose);
pci_setup_type1(hose);
hose->last_busno = pci_hose_scan(hose);
- gd->arch.hose = hose;
+ gd->hose = hose;
*hosep = hose;
return 0;
@@ -51,7 +51,7 @@ void pci_init_board(void)
struct pci_controller *hose = &x86_hose;
/* Stop using the early hose */
- gd->arch.hose = NULL;
+ gd->hose = NULL;
board_pci_setup_hose(hose);
pci_setup_type1(hose);
@@ -64,8 +64,8 @@ void pci_init_board(void)
static struct pci_controller *get_hose(void)
{
- if (gd->arch.hose)
- return gd->arch.hose;
+ if (gd->hose)
+ return gd->hose;
return pci_bus_to_hose(0);
}