Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1234583

[PATCH v3 0/2] PCI: Add support for PCI Enhanced Allocation "BARs"

From David Daney <ddaney.cavm@gmail.com>
Newsgroups linux.kernel
Subject [PATCH v3 0/2] PCI: Add support for PCI Enhanced Allocation "BARs"
Date 2015-09-29 02:20 +0200
Message-ID <qdQOe-6TL-9@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


From: David Daney <david.daney@cavium.com>

The original patches are from Sean O. Stalley. I made a few tweaks,
but feel that it is substancially Sean's work, so I am keeping the
patch set version numbering scheme going.

Tested on Cavium ThunderX system with 4 Root Complexes containing 50
devices/bridges provisioned with EA.

Here is Sean's description of the patches:

PCI Enhanced Allocation is a new method of allocating MMIO & IO
resources for PCI devices & bridges. It can be used instead
of the traditional PCI method of using BARs.

EA entries are hardware-initialized to a fixed address.
Unlike BARs, regions described by EA are cannot be moved.
Because of this, only devices which are permanently connected to
the PCI bus can use EA. A removable PCI card must not use EA.

This patchset adds support for using EA entries instead of BARs
on Root Complex Integrated Endpoints.

The Enhanced Allocation ECN is publicly available here:
https://www.pcisig.com/specifications/conventional/ECN_Enhanced_Allocation_23_Oct_2014_Final.pdf


Changes from V1:
	- Use generic PCI resource claim functions (instead of EA-specific functions)
	- Only add support for RCiEPs (instead of all devices).
	- Removed some debugging messages leftover from early testing.

Changes from V2 (By David Daney):
	- Add ea_cap to struct pci_device, to aid in finding the EA capability.
	- Factored EA entity decoding into a separate function.
	- Add functions to find EA entities by BEI or Property.
	- Add handling of EA provisioned bridges.
	- Add handling of EA SRIOV BARs.
	- Try to assign proper resource parent so that SRIOV device creation can occur.


Sean O. Stalley (2):
  PCI: Add Enhanced Allocation register entries
  PCI: Add support for Enhanced Allocation devices

 drivers/pci/iov.c             |  15 ++-
 drivers/pci/pci.c             | 278 ++++++++++++++++++++++++++++++++++++++++++
 drivers/pci/pci.h             |   4 +
 drivers/pci/probe.c           |  42 ++++++-
 drivers/pci/setup-bus.c       |   3 +
 include/linux/pci.h           |   1 +
 include/uapi/linux/pci_regs.h |  42 ++++++-
 7 files changed, 380 insertions(+), 5 deletions(-)

-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[PATCH v3 0/2] PCI: Add support for PCI Enhanced Allocation "BARs" David Daney <ddaney.cavm@gmail.com> - 2015-09-29 02:20 +0200
  [PATCH v3 2/2] PCI: Add support for Enhanced Allocation devices David Daney <ddaney.cavm@gmail.com> - 2015-09-29 02:20 +0200
    Re: [PATCH v3 2/2] PCI: Add support for Enhanced Allocation devices "Sean O. Stalley" <sean.stalley@intel.com> - 2015-09-29 21:40 +0200
      Re: [PATCH v3 2/2] PCI: Add support for Enhanced Allocation devices David Daney <ddaney.cavm@gmail.com> - 2015-09-29 22:30 +0200
        Re: [PATCH v3 2/2] PCI: Add support for Enhanced Allocation devices "Sean O. Stalley" <sean.stalley@intel.com> - 2015-09-30 01:00 +0200
          Re: [PATCH v3 2/2] PCI: Add support for Enhanced Allocation devices "Sean O. Stalley" <sean.stalley@intel.com> - 2015-10-01 01:00 +0200
  [PATCH v3 1/2] PCI: Add Enhanced Allocation register entries David Daney <ddaney.cavm@gmail.com> - 2015-09-29 02:20 +0200

csiph-web