linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/7] PCI: try "pci=use_crs" again
@ 2010-02-12 16:59 Bjorn Helgaas
  2010-02-12 16:59 ` [PATCH v3 1/7] PCI: split up pci_read_bridge_bases() Bjorn Helgaas
                   ` (6 more replies)
  0 siblings, 7 replies; 9+ messages in thread
From: Bjorn Helgaas @ 2010-02-12 16:59 UTC (permalink / raw)
  To: Jesse Barnes
  Cc: Matthew Garrett, Tony Luck, linuxppc-dev, linux-pci, Peter Haight,
	Gary Hade, linux-kernel, Linus Torvalds, linux-acpi,
	linux-am33-list, linux-alpha, Ingo Molnar, Yinghai Lu,
	Larry Finger

Historically, Linux has assumed a single PCI host bridge, with that bridge
claiming all the address space left after RAM and legacy devices are taken out.

If the system contains multiple host bridges, we can no longer operate under
that assumption.  We have to know what parts of the address space are claimed
by each bridge so that when we assign resources to a PCI device, we take them
from a range claimed by the upstream host bridge.

On x86 and ia64, we use ACPI to enumerate all the PCI host bridges in the
system, and part of the host bridge description is the "_CRS" (current resource
settings" property, which lists the address space used by the bridge.  On x86,
we currently ignore most of the _CRS information.  This patch series changes
this, so we will use _CRS to learn about the host bridge windows.

Since most x86 machines with multiple host bridges are relatively new, this
series only turns this on for machines with BIOS dates of 2008 or newer.

Changes from v2 to v3:
    - Fix alpha, powerpc, and mn10300 references to pci_bus resource table
    - Turn on "pci=use_crs" for 2008 and newer, not 2010 and newer
    - Remove Toshiba A355 quirk (BIOS date is 2009, so automatically included)
    - Remove IBM x3850 and x3950 quirks (BIOS dates in 2008, so automatically
      included)
    - Leave IBM x3800 quirk (pre-2008 BIOS)
    - Use "bool" for pci_use_crs (new to me, but I see akpm suggesting it)
    - Reorder so the important patches are first

Changes from v1 to v2:
    - Rebase to be6e9f7853e
    - Add patch to clean up "disabled window" printk
    - Add bugzilla reference comment in use_crs DMI quirk

---

Bjorn Helgaas (7):
      PCI: split up pci_read_bridge_bases()
      PCI: read bridge windows before filling in subtractive decode resources
      PCI: replace bus resource table with a list
      x86/PCI: use host bridge _CRS info by default on 2008 and newer machines
      PCI: make disabled window printk style match the enabled ones
      PCI: break out primary/secondary/subordinate for readability
      PCI: reference bridge window resources explicitly


 Documentation/kernel-parameters.txt  |    8 +-
 arch/alpha/kernel/pci.c              |    5 +
 arch/ia64/include/asm/acpi.h         |    1 
 arch/ia64/pci/pci.c                  |   20 ++--
 arch/mn10300/unit-asb2305/pci.c      |    7 +
 arch/powerpc/kernel/pci-common.c     |   26 +++--
 arch/powerpc/kernel/pci_64.c         |   18 ++--
 arch/powerpc/kernel/pci_of_scan.c    |   12 ++
 arch/powerpc/platforms/fsl_uli1575.c |   15 ++-
 arch/x86/include/asm/pci_x86.h       |    1 
 arch/x86/pci/acpi.c                  |   82 ++++++++++-------
 arch/x86/pci/bus_numa.c              |    9 +-
 arch/x86/pci/bus_numa.h              |    3 -
 arch/x86/pci/common.c                |    3 +
 drivers/acpi/pci_root.c              |    1 
 drivers/eisa/pci_eisa.c              |    4 -
 drivers/pci/bus.c                    |   50 ++++++++++
 drivers/pci/hotplug/shpchp_sysfs.c   |   15 ++-
 drivers/pci/pci.c                    |    6 +
 drivers/pci/probe.c                  |  108 +++++++++++++++-------
 drivers/pci/quirks.c                 |    4 -
 drivers/pci/setup-bus.c              |  168 +++++++++++++++++-----------------
 drivers/pcmcia/rsrc_nonstatic.c      |    7 +
 drivers/pcmcia/yenta_socket.c        |   46 +++++----
 include/acpi/acpi_drivers.h          |    1 
 include/linux/pci.h                  |   27 ++++-
 26 files changed, 401 insertions(+), 246 deletions(-)

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2010-02-12 21:34 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-12 16:59 [PATCH v3 0/7] PCI: try "pci=use_crs" again Bjorn Helgaas
2010-02-12 16:59 ` [PATCH v3 1/7] PCI: split up pci_read_bridge_bases() Bjorn Helgaas
2010-02-12 21:26   ` Jesse Barnes
2010-02-12 16:59 ` [PATCH v3 2/7] PCI: read bridge windows before filling in subtractive decode resources Bjorn Helgaas
2010-02-12 17:00 ` [PATCH v3 3/7] PCI: replace bus resource table with a list Bjorn Helgaas
2010-02-12 17:00 ` [PATCH v3 4/7] x86/PCI: use host bridge _CRS info by default on 2008 and newer machines Bjorn Helgaas
2010-02-12 17:00 ` [PATCH v3 5/7] PCI: make disabled window printk style match the enabled ones Bjorn Helgaas
2010-02-12 17:00 ` [PATCH v3 6/7] PCI: break out primary/secondary/subordinate for readability Bjorn Helgaas
2010-02-12 17:00 ` [PATCH v3 7/7] PCI: reference bridge window resources explicitly Bjorn Helgaas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).