powerpc/PCI: make pci_probe_only default to 0
authorBjorn Helgaas <bhelgaas@google.com>
Fri, 24 Feb 2012 03:18:58 +0000 (20:18 -0700)
committerBjorn Helgaas <bhelgaas@google.com>
Fri, 24 Feb 2012 03:18:58 +0000 (20:18 -0700)
pci_probe_only is set on ppc64 to prevent resource re-allocation
by the core. It's meant to be used in very specific circumstances
such as when operating under a hypervisor that may prevent such
re-allocation.

Instead of default to 1, we make it default to 0 and explicitly
set it in the few cases where we need it.

This fixes FSL PCI which wants it clear among others.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
arch/powerpc/kernel/pci_64.c
arch/powerpc/platforms/powermac/pci.c
arch/powerpc/platforms/powernv/pci.c
arch/powerpc/platforms/pseries/setup.c
arch/powerpc/platforms/wsp/wsp_pci.c

index 3318d39b7d4c34b8c8fe3815eed7aa1fb5a0e09c..f627eb7be9e2f08ad80b3ee8c8382325a2742f19 100644 (file)
@@ -33,7 +33,7 @@
 #include <asm/machdep.h>
 #include <asm/ppc-pci.h>
 
-unsigned long pci_probe_only = 1;
+unsigned long pci_probe_only = 0;
 
 /* pci_io_base -- the base address from which io bars are offsets.
  * This is the lowest I/O base address (so bar values are always positive),
index 31a7d3a7ce25b8c1f94d8cc9e9742d16b0c4ccf2..43bbe1bda9391ad5801112bd4135b6dd813e69c1 100644 (file)
@@ -1059,9 +1059,6 @@ void __init pmac_pci_init(void)
        }
        /* pmac_check_ht_link(); */
 
-       /* We can allocate missing resources if any */
-       pci_probe_only = 0;
-
 #else /* CONFIG_PPC64 */
        init_p2pbridge();
        init_second_ohare();
index a70bc1e385eba68e49815599eeec52de1492e6d2..a053f4fe5db8a42c3022f106f9a0e1cbc2bd2604 100644 (file)
@@ -557,9 +557,6 @@ void __init pnv_pci_init(void)
 
        pci_set_flags(PCI_CAN_SKIP_ISA_ALIGN);
 
-       /* We do not want to just probe */
-       pci_probe_only = 0;
-
        /* OPAL absent, try POPAL first then RTAS detection of PHBs */
        if (!firmware_has_feature(FW_FEATURE_OPAL)) {
 #ifdef CONFIG_PPC_POWERNV_RTAS
index f79f1278dfca84ad03ac28d1c23fe542da34d2a4..386e2656c2315c4d67c1fc39027daf17adb855df 100644 (file)
@@ -380,6 +380,9 @@ static void __init pSeries_setup_arch(void)
 
        fwnmi_init();
 
+       /* By default, only probe PCI (can be overriden by rtas_pci */
+       pci_probe_only = 1;
+
        /* Find and initialize PCI host bridges */
        init_pci_config_tokens();
        find_and_init_phbs();
index e0262cd0e2d3954e143cb4f8ffa490d88803a192..299157afb517049b6a1f44d6696af07ad374c474 100644 (file)
@@ -682,7 +682,6 @@ static int __init wsp_setup_one_phb(struct device_node *np)
        /* XXX Force re-assigning of everything for now */
        pci_add_flags(PCI_REASSIGN_ALL_BUS | PCI_REASSIGN_ALL_RSRC |
                      PCI_ENABLE_PROC_DOMAINS);
-       pci_probe_only = 0;
 
        /* Calculate how the TCE space is divided */
        phb->dma32_base         = 0;