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

From: David Daney
Date: Wed Sep 23 2015 - 20:34:23 EST


Hi Sean,

Thanks for doing this, I think we will use it for Cavium ThunderX. A couple of questions...


On 09/23/2015 03:27 PM, Sean O. Stalley wrote:
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).

Why not all devices? The spec. allows for EA on devices behind bridges.


- Removed some debugging messages leftover from early testing.


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

drivers/pci/pci.c | 174 ++++++++++++++++++++++++++++++++++++++++++
drivers/pci/pci.h | 1 +
drivers/pci/probe.c | 3 +
include/uapi/linux/pci_regs.h | 40 +++++++++-
4 files changed, 217 insertions(+), 1 deletion(-)


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