summaryrefslogtreecommitdiff
path: root/arch/x86/pci/init.c
diff options
context:
space:
mode:
authorAndres Salomon <dilinger@queued.net>2008-06-06 01:14:41 +0400
committerJesse Barnes <jbarnes@virtuousgeek.org>2008-06-06 01:29:25 +0400
commit2bdd1b031b200d55c2512c8d7e0e9bdcf85d011f (patch)
tree519d34fdd9f286c933ab7d747b6ef92f0a3842fe /arch/x86/pci/init.c
parent53c8ba95402be65d412a806cda3430f0e72cd107 (diff)
downloadlinux-2bdd1b031b200d55c2512c8d7e0e9bdcf85d011f.tar.xz
PCI/x86: fix up PCI stuff so that PCI_GOANY supports OLPC
Previously, one would have to specifically choose CONFIG_OLPC and CONFIG_PCI_GOOLPC in order to enable PCI_OLPC. That doesn't really work for distro kernels, so this patch allows one to choose CONFIG_OLPC and CONFIG_PCI_GOANY in order to build in OLPC support in a generic kernel (as requested by Robert Millan). This also moves GOOLPC before GOANY in the menuconfig list. Finally, make pci_access_init return early if we detect OLPC hardware. There's no need to continue probing stuff, and pci_pcbios_init specifically trashes our settings (we didn't run into that before because PCI_GOANY wasn't supported). Signed-off-by: Andres Salomon <dilinger@debian.org> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Diffstat (limited to 'arch/x86/pci/init.c')
-rw-r--r--arch/x86/pci/init.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/pci/init.c b/arch/x86/pci/init.c
index e70b9c57b88e..b821f4462d99 100644
--- a/arch/x86/pci/init.c
+++ b/arch/x86/pci/init.c
@@ -15,7 +15,8 @@ static __init int pci_access_init(void)
pci_mmcfg_early_init();
#ifdef CONFIG_PCI_OLPC
- pci_olpc_init();
+ if (!pci_olpc_init())
+ return 0; /* skip additional checks if it's an XO */
#endif
#ifdef CONFIG_PCI_BIOS
pci_pcbios_init();