• Bjorn Helgaas's avatar
    Merge branches 'pci/host-altera', 'pci/host-designware', 'pci/host-generic',... · c2df02bd
    Bjorn Helgaas authored
    Merge branches 'pci/host-altera', 'pci/host-designware', 'pci/host-generic', 'pci/host-imx6', 'pci/host-iproc', 'pci/host-mvebu', 'pci/host-rcar', 'pci/host-tegra' and 'pci/host-xgene' into next
    
    * pci/host-altera:
      PCI: altera: Add Altera PCIe MSI driver
      PCI: altera: Add Altera PCIe host controller driver
      ARM: Add msi.h to Kbuild
    
    * pci/host-designware:
      PCI: designware: Make "clocks" and "clock-names" optional DT properties
      PCI: designware: Make driver arch-agnostic
      ARM/PCI: Replace pci_sys_data->align_resource with global function pointer
      PCI: designware: Use of_pci_get_host_bridge_resources() to parse DT
      Revert "PCI: designware: Program ATU with untranslated address"
      PCI: designware: Move calculation of bus addresses to DRA7xx
      PCI: designware: Make "num-lanes" an optional DT property
      PCI: designware: Require config accesses to be naturally aligned
      PCI: designware: Simplify dw_pcie_cfg_read/write() interfaces
      PCI: designware: Use exact access size in dw_pcie_cfg_read()
      PCI: spear: Fix dw_pcie_cfg_read/write() usage
      PCI: designware: Set up high part of MSI target address
      PCI: designware: Make get_msi_addr() return phys_addr_t, not u32
      PCI: designware: Implement multivector MSI IRQ setup
      PCI: designware: Factor out MSI msg setup
      PCI: Add msi_controller setup_irqs() method for special multivector setup
      PCI: designware: Fix PORT_LOGIC_LINK_WIDTH_MASK
    
    * pci/host-generic:
      PCI: generic: Fix address window calculation for non-zero starting bus
      PCI: generic: Pass starting bus number to pci_scan_root_bus()
      PCI: generic: Allow multiple hosts with different map_bus() methods
      arm64: dts: Drop linux,pci-probe-only from the Seattle DTS
      powerpc/PCI: Fix lookup of linux,pci-probe-only property
      PCI: generic: Fix lookup of linux,pci-probe-only property
      of/pci: Add of_pci_check_probe_only to parse "linux,pci-probe-only"
    
    * pci/host-imx6:
      PCI: imx6: Add PCIE_PHY_RX_ASIC_OUT_VALID definition
      PCI: imx6: Return real error code from imx6_add_pcie_port()
    
    * pci/host-iproc:
      PCI: iproc: Fix header comment "Corporation" misspelling
      PCI: iproc: Add outbound mapping support
      PCI: iproc: Update PCIe device tree bindings
      PCI: iproc: Improve link detection logic
      PCI: iproc: Fix PCIe reset logic
      PCI: iproc: Call pci_fixup_irqs() for ARM64 as well as ARM
      PCI: iproc: Remove unused struct iproc_pcie.irqs[]
      PCI: iproc: Fix code comment to match code
    
    * pci/host-mvebu:
      PCI: mvebu: Remove code restricting accesses to slot 0
      PCI: mvebu: Add PCI Express root complex capability block
      PCI: mvebu: Improve clock/reset handling
      PCI: mvebu: Use gpio_desc to carry around gpio
      PCI: mvebu: Use devm_kcalloc() to allocate an array
      PCI: mvebu: Use gpio_set_value_cansleep()
      PCI: mvebu: Split port parsing and resource claiming from  port setup
      PCI: mvebu: Fix memory leaks and refcount leaks
      PCI: mvebu: Move port parsing and resource claiming to  separate function
      PCI: mvebu: Use port->name rather than "PCIe%d.%d"
      PCI: mvebu: Report full node name when reporting a DT error
      PCI: mvebu: Use for_each_available_child_of_node() to walk child nodes
      PCI: mvebu: Use of_get_available_child_count()
      PCI: mvebu: Use exact config access size; don't read/modify/write
      PCI: mvebu: Return zero for reserved or unimplemented config space
    
    * pci/host-rcar:
      PCI: rcar: Fix I/O offset for multiple host bridges
      PCI: rcar: Set root bus nr to that provided in DT
      PCI: rcar: Remove dependency on ARM-specific struct hw_pci
      PCI: rcar: Make PCI aware of the I/O resources
      PCI: rcar: Build pcie-rcar.c only on ARM
      PCI: rcar: Build pci-rcar-gen2.c only on ARM
    
    * pci/host-tegra:
      PCI: tegra: Wrap static pgprot_t initializer with __pgprot()
    
    * pci/host-xgene:
      PCI/MSI: xgene: Remove msi_controller assignment
    c2df02bd
msi.c 33.9 KB