1. 17 9月, 2012 1 次提交
    • G
      powerpc/powernv: Create bus sensitive PEs · fb446ad0
      Gavin Shan 提交于
      Basically, there're 2 types of PCI bus sensitive PEs: (A) The PE
      includes single PCI bus. (B) The PE includes the PCI bus and all
      the subordinate PCI buses. At present, we'd like to put PCI bus
      originated by PCI-e link to form PE that contains single PCI bus,
      and the PCIe-to-PCI bridge will form the 2nd type of PE. We don't
      figure out to detect PLX bridge yet. Once we can detect PLX bridge
      some day, we have to put PCI buses originated from the downstream
      port of PLX bridge to the 2nd type of PE.
      
      The patch changes the original implementation for a little bit
      to support 2 types of PCI bus sensitive PEs described as above.
      Also, the function used to retrieve the corresponding PE according
      to the given PCI device has been changed based on that because each
      PCI device should trace the directly associated PE.
      Signed-off-by: NGavin Shan <shangw@linux.vnet.ibm.com>
      Reviewed-by: NRam Pai <linuxram@us.ibm.com>
      Reviewed-by: NRichard Yang <weiyang@linux.vnet.ibm.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      fb446ad0
  2. 12 9月, 2012 1 次提交
    • G
      powerpc/powernv: I/O and memory alignment for P2P bridges · 271fd03a
      Gavin Shan 提交于
      The patch implements ppc_md.pcibios_window_alignment for powernv
      platform so that the resource reassignment in PCI core will be
      done according to the I/O and memory alignment returned from
      powernv platform. The alignments returned from powernv platform
      is closely depending on the scheme for PE segmenting. Besides,
      the patch isn't useful for now, but the subsequent patches will
      be working based on it.
      
      [bhelgaas: use pci_pcie_type() since pci_dev.pcie_type was removed]
      Signed-off-by: NGavin Shan <shangw@linux.vnet.ibm.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      271fd03a
  3. 05 9月, 2012 1 次提交
  4. 23 8月, 2012 1 次提交
  5. 14 6月, 2012 1 次提交
  6. 24 2月, 2012 1 次提交
    • B
      powerpc/PCI: replace pci_probe_only with pci_flags · 673c9756
      Bjorn Helgaas 提交于
      We already use pci_flags, so this just sets pci_flags directly and removes
      the intermediate step of figuring out pci_probe_only, then using it to set
      pci_flags.
      
      The PCI core provides a pci_flags definition (currently __weak), so drop
      the powerpc definitions in favor of that.
      
      CC: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      CC: linuxppc-dev@lists.ozlabs.org
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      673c9756
  7. 25 1月, 2012 1 次提交
  8. 07 12月, 2011 2 次提交
  9. 25 11月, 2011 1 次提交
    • B
      powerpc/powernv: PCI support for p7IOC under OPAL v2 · 184cd4a3
      Benjamin Herrenschmidt 提交于
      This adds support for p7IOC (and possibly other IODA v1 IO Hubs)
      using OPAL v2 interfaces.
      
      We completely take over resource assignment and assign them using an
      algorithm that hands out device BARs in a way that makes them fit in
      individual segments of the M32 window of the bridge, which enables us
      to assign individual PEs to devices and functions.
      
      The current implementation gives out a PE per functions on PCIe, and a
      PE for the entire bridge for PCIe to PCI-X bridges.
      
      This can be adjusted / fine tuned later.
      
      We also setup DMA resources (32-bit only for now) and MSIs (both 32-bit
      and 64-bit MSI are supported).
      
      The DMA allocation tries to divide the available 256M segments of the
      32-bit DMA address space "fairly" among PEs. This is done using a
      "weight" heuristic which assigns less value to things like OHCI USB
      controllers than, for example SCSI RAID controllers. This algorithm
      will probably want some fine tuning for specific devices or device
      types.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      184cd4a3