Add PCI Express driver for the ARM Neoverse N1 System DevelopmentPlatform (N1SDP).Neoverse N1 is a high-performance ARM microarchitecture designedby the ARM Holdings for the server market.The P
Add PCI Express driver for the ARM Neoverse N1 System DevelopmentPlatform (N1SDP).Neoverse N1 is a high-performance ARM microarchitecture designedby the ARM Holdings for the server market.The PCI part on N1SDP was shipped untested and suffers from someintegration 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 allowsus to filter-out accesses to invalid BDFs in this driver.Also the root complex config space (BDF == 0) has an unusuallocation 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 Ltdto the DARPA CHERI Project.In collaboration with: andrewReviewed by: andrewSponsored by: DARPA, AFRLDifferential Revision: https://reviews.freebsd.org/D23349
show more ...