freebsd-dev/sys/dev/pci
Ruslan Bukin 667c3fc0f6 Add PCI Express driver for the ARM Neoverse N1 System Development
Platform (N1SDP).

Neoverse N1 is a high-performance ARM microarchitecture designed
by the ARM Holdings for the server market.

The PCI part on N1SDP was shipped untested and suffers from some
integration issues.

For instance accessing to not existing BDFs causes System Error
(SError) exception. To mitigate this, the firmware scans the bus,
catches SErrors and creates a table with valid BDFs. That allows
us to filter-out accesses to invalid BDFs in this driver.

Also the root complex config space (BDF == 0) has an unusual
location in memory map, so remapping accesses to it is required.

Finally, the config space is restricted to 32-bit accesses only.

This was tested on the ARM boxes kindly provided by the ARM Ltd
to the DARPA CHERI Project.

In collaboration with:	andrew
Reviewed by:	andrew
Sponsored by:	DARPA, AFRL
Differential Revision:	https://reviews.freebsd.org/D23349
2020-02-11 15:12:09 +00:00
..
controller Add PCI Express driver for the ARM Neoverse N1 System Development 2020-02-11 15:12:09 +00:00
fixup_pci.c
hostb_pci.c Remove "All rights reserved" phrase from copyright notes. 2019-12-04 08:03:33 +00:00
ignore_pci.c
isa_pci.c
pci_dw_if.m Add driver for DesignWare PCIE core, and its Armada 8K specific attachement. 2019-10-20 11:11:32 +00:00
pci_dw_mv.c Add driver for DesignWare PCIE core, and its Armada 8K specific attachement. 2019-10-20 11:11:32 +00:00
pci_dw.c Add driver for DesignWare PCIE core, and its Armada 8K specific attachement. 2019-10-20 11:11:32 +00:00
pci_dw.h Add driver for DesignWare PCIE core, and its Armada 8K specific attachement. 2019-10-20 11:11:32 +00:00
pci_host_generic_acpi.c Add PCI Express driver for the ARM Neoverse N1 System Development 2020-02-11 15:12:09 +00:00
pci_host_generic_acpi.h Add PCI Express driver for the ARM Neoverse N1 System Development 2020-02-11 15:12:09 +00:00
pci_host_generic_fdt.c
pci_host_generic_fdt.h
pci_host_generic.c Move the ECAM macroses to the header file. 2020-01-24 16:08:06 +00:00
pci_host_generic.h Move the ECAM macroses to the header file. 2020-01-24 16:08:06 +00:00
pci_if.m
pci_iov_if.m
pci_iov_private.h
pci_iov_schema.c
pci_iov.c
pci_iov.h
pci_pci.c Abstract the locking for PCIe hotplug. It still uses Giant so there's 2019-12-26 21:00:06 +00:00
pci_private.h Export pci_attach() and pci_detach(). 2019-10-15 18:58:01 +00:00
pci_subr.c
pci_user.c Remove "All rights reserved" phrase from copyright notes. 2019-12-04 08:03:33 +00:00
pci.c Remove VMware MSI-X from the PCI blacklist. 2019-12-18 23:00:56 +00:00
pcib_if.m
pcib_private.h Abstract the locking for PCIe hotplug. It still uses Giant so there's 2019-12-26 21:00:06 +00:00
pcib_support.c
pcireg.h Add accessors for the Vendor Specific Extended Capability (VSEC) 2019-12-13 23:46:59 +00:00
pcivar.h Remove "All rights reserved" phrase from copyright notes. 2019-12-04 08:03:33 +00:00
schema_private.h
vga_pci.c Fix the build after r350570. 2019-08-04 19:47:02 +00:00