Linus Torvalds
3c87b79188
Merge tag 'pci-v4.4-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci
Pull PCI updates from Bjorn Helgaas:
"Resource management:
- Add support for Enhanced Allocation devices (Sean O. Stalley)
- Add Enhanced Allocation register entries (Sean O. Stalley)
- Handle IORESOURCE_PCI_FIXED when sizing resources (David Daney)
- Handle IORESOURCE_PCI_FIXED when assigning resources (David Daney)
- Handle Enhanced Allocation capability for SR-IOV devices (David Daney)
- Clear IORESOURCE_UNSET when reverting to firmware-assigned address (Bjorn Helgaas)
- Make Enhanced Allocation bitmasks more obvious (Bjorn Helgaas)
- Expand Enhanced Allocation BAR output (Bjorn Helgaas)
- Add of_pci_check_probe_only to parse "linux,pci-probe-only" (Marc Zyngier)
- Fix lookup of linux,pci-probe-only property (Marc Zyngier)
- Add sparc mem64 resource parsing for root bus (Yinghai Lu)
PCI device hotplug:
- pciehp: Queue power work requests in dedicated function (Guenter Roeck)
Driver binding:
- Add builtin_pci_driver() to avoid registration boilerplate (Paul Gortmaker)
Virtualization:
- Set SR-IOV NumVFs to zero after enumeration (Alexander Duyck)
- Remove redundant validation of SR-IOV offset/stride registers (Alexander Duyck)
- Remove VFs in reverse order if virtfn_add() fails (Alexander Duyck)
- Reorder pcibios_sriov_disable() (Alexander Duyck)
- Wait 1 second between disabling VFs and clearing NumVFs (Alexander Duyck)
- Fix sriov_enable() error path for pcibios_enable_sriov() failures (Alexander Duyck)
- Enable SR-IOV ARI Capable Hierarchy before reading TotalVFs (Ben Shelton)
- Don't try to restore VF BARs (Wei Yang)
MSI:
- Don't alloc pcibios-irq when MSI is enabled (Joerg Roedel)
- Add msi_controller setup_irqs() method for special multivector setup (Lucas Stach)
- Export all remapped MSIs to sysfs attributes (Romain Bezut)
- Disable MSI on SiS 761 (Ondrej Zary)
AER:
- Clear error status registers during enumeration and restore (Taku Izumi)
Generic host bridge driver:
- Fix lookup of linux,pci-probe-only property (Marc Zyngier)
- Allow multiple hosts with different map_bus() methods (David Daney)
- Pass starting bus number to pci_scan_root_bus() (David Daney)
- Fix address window calculation for non-zero starting bus (David Daney)
Altera host bridge driver:
- Add msi.h to ARM Kbuild (Ley Foon Tan)
- Add Altera PCIe host controller driver (Ley Foon Tan)
- Add Altera PCIe MSI driver (Ley Foon Tan)
APM X-Gene host bridge driver:
- Remove msi_controller assignment (Duc Dang)
Broadcom iProc host bridge driver:
- Fix header comment "Corporation" misspelling (Florian Fainelli)
- Fix code comment to match code (Ray Jui)
- Remove unused struct iproc_pcie.irqs[] (Ray Jui)
- Call pci_fixup_irqs() for ARM64 as well as ARM (Ray Jui)
- Fix PCIe reset logic (Ray Jui)
- Improve link detection logic (Ray Jui)
- Update PCIe device tree bindings (Ray Jui)
- Add outbound mapping support (Ray Jui)
Freescale i.MX6 host bridge driver:
- Return real error code from imx6_add_pcie_port() (Fabio Estevam)
- Add PCIE_PHY_RX_ASIC_OUT_VALID definition (Fabio Estevam)
Freescale Layerscape host bridge driver:
- Remove ls_pcie_establish_link() (Minghuan Lian)
- Ignore PCIe controllers in Endpoint mode (Minghuan Lian)
- Factor out SCFG related function (Minghuan Lian)
- Update ls_add_pcie_port() (Minghuan Lian)
- Remove unused fields from struct ls_pcie (Minghuan Lian)
- Add support for LS1043a and LS2080a (Minghuan Lian)
- Add ls_pcie_msi_host_init() (Minghuan Lian)
HiSilicon host bridge driver:
- Add HiSilicon SoC Hip05 PCIe driver (Zhou Wang)
Marvell MVEBU host bridge driver:
- Return zero for reserved or unimplemented config space (Russell King)
- Use exact config access size; don't read/modify/write (Russell King)
- Use of_get_available_child_count() (Russell King)
- Use for_each_available_child_of_node() to walk child nodes (Russell King)
- Report full node name when reporting a DT error (Russell King)
- Use port->name rather than "PCIe%d.%d" (Russell King)
- Move port parsing and resource claiming to separate function (Russell King)
- Fix memory leaks and refcount leaks (Russell King)
- Split port parsing and resource claiming from port setup (Russell King)
- Use gpio_set_value_cansleep() (Russell King)
- Use devm_kcalloc() to allocate an array (Russell King)
- Use gpio_desc to carry around gpio (Russell King)
- Improve clock/reset handling (Russell King)
- Add PCI Express root complex capability block (Russell King)
- Remove code restricting accesses to slot 0 (Russell King)
NVIDIA Tegra host bridge driver:
- Wrap static pgprot_t initializer with __pgprot() (Ard Biesheuvel)
Renesas R-Car host bridge driver:
- Build pci-rcar-gen2.c only on ARM (Geert Uytterhoeven)
- Build pcie-rcar.c only on ARM (Geert Uytterhoeven)
- Make PCI aware of the I/O resources (Phil Edworthy)
- Remove dependency on ARM-specific struct hw_pci (Phil Edworthy)
- Set root bus nr to that provided in DT (Phil Edworthy)
- Fix I/O offset for multiple host bridges (Phil Edworthy)
ST Microelectronics SPEAr13xx host bridge driver:
- Fix dw_pcie_cfg_read/write() usage (Gabriele Paoloni)
Synopsys DesignWare host bridge driver:
- Make "clocks" and "clock-names" optional DT properties (Bhupesh Sharma)
- Use exact access size in dw_pcie_cfg_read() (Gabriele Paoloni)
- Simplify dw_pcie_cfg_read/write() interfaces (Gabriele Paoloni)
- Require config accesses to be naturally aligned (Gabriele Paoloni)
- Make "num-lanes" an optional DT property (Gabriele Paoloni)
- Move calculation of bus addresses to DRA7xx (Gabriele Paoloni)
- Replace ARM pci_sys_data->align_resource with global function pointer (Gabriele Paoloni)
- Factor out MSI msg setup (Lucas Stach)
- Implement multivector MSI IRQ setup (Lucas Stach)
- Make get_msi_addr() return phys_addr_t, not u32 (Lucas Stach)
- Set up high part of MSI target address (Lucas Stach)
- Fix PORT_LOGIC_LINK_WIDTH_MASK (Zhou Wang)
- Revert "PCI: designware: Program ATU with untranslated address" (Zhou Wang)
- Use of_pci_get_host_bridge_resources() to parse DT (Zhou Wang)
- Make driver arch-agnostic (Zhou Wang)
Miscellaneous:
- Make x86 pci_subsys_init() static (Alexander Kuleshov)
- Turn off Request Attributes to avoid Chelsio T5 Completion erratum (Hariprasad Shenai)"
* tag 'pci-v4.4-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (94 commits)
PCI: altera: Add Altera PCIe MSI driver
PCI: hisi: Add HiSilicon SoC Hip05 PCIe driver
PCI: layerscape: Add ls_pcie_msi_host_init()
PCI: layerscape: Add support for LS1043a and LS2080a
PCI: layerscape: Remove unused fields from struct ls_pcie
PCI: layerscape: Update ls_add_pcie_port()
PCI: layerscape: Factor out SCFG related function
PCI: layerscape: Ignore PCIe controllers in Endpoint mode
PCI: layerscape: Remove ls_pcie_establish_link()
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
...
2015-11-06 11:29:53 -08:00
..
2015-09-16 15:47:51 +02:00
2015-11-06 11:29:53 -08:00
2015-10-23 14:20:47 +01:00
2015-10-09 23:11:55 +01:00
2014-12-04 23:30:26 -08:00
2015-03-27 13:44:35 +00:00
2015-09-14 12:24:10 -07:00
2015-10-20 10:17:23 +02:00
2015-03-27 22:20:45 +00:00
2015-09-03 16:27:01 -07:00
2015-08-18 14:00:30 +01:00
2015-01-16 14:06:18 +00:00
2013-09-23 18:47:31 -04:00
2015-09-11 19:18:19 +01:00
2015-08-11 18:45:00 +01:00
2013-12-29 12:32:41 +00:00
2013-12-04 17:19:44 +01:00
2015-10-09 16:22:54 +01:00
2015-02-10 10:23:11 +00:00
2014-06-02 09:20:18 +01:00
2012-11-19 14:51:11 +00:00
2015-03-24 10:16:01 +01:00
2015-03-28 15:46:15 +00:00
2013-01-10 21:13:05 +00:00
2014-05-28 13:33:18 -07:00
2013-04-03 16:45:50 +01:00
2014-12-04 12:41:50 +00:00
2014-04-22 22:23:57 +01:00
2013-08-27 09:18:29 +02:00
2015-05-03 23:21:55 +01:00
2015-09-10 13:29:01 -07:00
2015-05-05 13:35:39 -06:00
2015-09-11 16:08:18 +01:00
2015-05-28 15:31:53 +02:00
2015-04-14 21:03:26 -07:00
2015-05-08 17:33:50 +01:00
2015-06-06 02:17:56 +09:00
2015-08-18 14:00:29 +01:00
2014-03-12 10:32:29 +00:00
2014-09-26 14:40:03 +01:00
2015-08-25 16:14:43 +01:00
2015-08-01 22:25:04 +01:00
2014-05-30 01:12:30 +01:00
2014-07-18 12:29:37 +01:00
2014-06-30 21:37:39 +02:00
2013-11-12 10:58:59 +00:00
2014-04-23 11:09:42 +01:00
2013-06-04 16:52:37 +01:00
2015-06-25 17:00:35 -07:00
2014-02-10 11:48:05 +00:00
2015-09-16 16:53:39 +02:00
2014-02-25 11:40:48 +00:00
2013-04-28 22:23:08 -07:00
2015-01-13 16:10:17 +00:00
2015-07-03 20:46:15 +01:00
2014-09-13 18:38:39 +02:00
2015-07-17 12:23:30 +01:00
2015-09-22 08:13:56 +01:00
2015-08-03 11:34:15 +02:00
2015-10-23 13:06:27 -05:00
2013-10-19 20:46:35 +01:00
2015-01-14 12:24:52 +00:00
2015-10-22 23:01:47 +02:00
2015-06-23 14:08:54 -07:00
2013-01-23 13:29:14 -05:00
2015-02-13 09:55:09 -08:00
2015-10-22 23:01:46 +02:00
2015-03-30 17:07:19 +01:00
2015-04-16 13:58:29 -05:00
2014-04-30 04:18:57 -07:00
2015-05-06 11:47:10 -04:00
2014-07-18 12:29:35 +01:00
2014-06-01 01:17:12 +01:00
2015-09-22 08:13:57 +01:00
2013-07-26 12:02:09 +01:00
2015-03-27 22:20:45 +00:00
2015-05-08 10:42:34 +01:00
2013-06-17 15:13:18 +01:00
2013-07-08 22:08:51 +01:00
2013-01-10 21:10:20 +00:00
2013-01-10 21:10:20 +00:00
2015-07-25 15:28:05 +01:00
2013-08-01 14:31:58 +01:00
2015-01-09 09:36:50 +00:00
2015-06-08 07:56:43 -05:00
2014-11-13 23:58:06 +00:00
2015-05-27 16:12:05 +01:00
2014-12-03 15:57:45 +00:00
2015-08-21 13:55:53 +01:00
2015-07-03 17:06:57 +01:00
2014-12-03 15:57:45 +00:00
2015-02-13 09:55:09 -08:00
2015-02-11 17:06:03 -08:00
2015-09-22 08:13:57 +01:00
2015-01-14 12:24:52 +00:00
2015-06-01 23:48:19 +01:00
2014-07-17 12:32:47 +02:00
2014-04-30 00:59:17 -05:00
2015-08-03 15:38:39 +01:00
2014-11-13 23:58:07 +00:00
2014-06-01 01:17:12 +01:00
2013-02-03 18:15:47 -05:00
2015-07-31 18:58:30 +01:00
2014-07-18 12:29:02 +01:00
2013-03-11 08:42:08 -05:00
2015-09-22 08:13:57 +01:00
2013-09-30 16:42:55 +01:00
2014-12-18 09:54:40 +01:00
2014-07-18 12:29:11 +01:00
2015-06-12 21:17:17 +01:00
2015-08-04 09:37:52 +02:00
2014-02-25 11:33:37 +00:00
2014-09-26 14:39:53 +01:00
2015-05-08 10:42:35 +01:00
2013-07-09 10:33:29 -07:00
2015-09-14 12:24:10 -07:00
2013-12-20 17:17:16 +01:00
2014-10-09 22:26:01 -04:00
2013-10-29 11:06:13 +00:00
2014-09-30 16:55:23 +01:00
2015-05-27 15:22:15 +02:00
2014-05-23 21:28:11 +02:00
2013-08-25 17:09:46 +01:00
2015-09-03 15:28:37 +01:00
2015-05-08 17:33:50 +01:00
2015-10-29 15:21:30 +00:00
2014-03-18 16:39:40 -04:00
2013-09-02 13:49:29 +01:00
2015-03-27 22:20:45 +00:00
2015-03-27 22:20:45 +00:00
2015-05-20 15:07:00 -07:00
2013-07-26 12:01:17 +01:00
2015-03-29 23:11:56 +01:00
2013-07-08 22:09:06 +01:00