[Skiboot] [PATCH v2 00/15] Support OpenCAPI and NVLink devices on same NPU on Witherspoon
Andrew Donnellan
andrew.donnellan at au1.ibm.com
Fri Jan 11 12:09:20 AEDT 2019
** This series is based on top of Reza's cleanup patches at
https://patchwork.ozlabs.org/project/skiboot/list/?series=85193 **
This series enables mixing of OpenCAPI and NVLink devices on the same NPU
on Witherspoon systems.
The first half of this series is preparatory refactoring, merging and
simplifying various duplicated code paths.
The second half is the support actually required for mixing both device
types. We fix up some issues in the Witherspoon presence detection code,
merge the brick configuration procedure and do various consequential
cleanups and fixups before finally removing the restriction on mixing
device types at the end.
It could probably do with a bit more testing on both the OpenCAPI and
NVLink sides, and testing on various machine types to make sure it's not
regressing anything, so if you have any OpenCAPI or NVLink hardware test
reports would be very welcome.
- Andrew
---
v1->v2:
- Rebase on top of Reza's cleanups
- Fix a bug in GENID BAR assignment for OpenCAPI devices on OTL1
- Split the BAR assignment refactoring patch up (Alexey)
- Address misc minor comments from Alexey and Fred
Andrew Donnellan (14):
hw/npu2: Simplify BAR structures
hw/npu2: Merge implementations of BAR accessor functions
hw/npu2: Replace npu2_dev::bars array with individual BARs
hw/npu2: Move PHY/NTL/GENID BAR assignment to common code
hw/npu2: Simplify npu2_write_bar()
hw/npu2: Don't repopulate NPU devices in NVLink init path
hw/npu2: Rework npu2_add_interrupt_map() and skip non-NVLink devices
platforms/astbmc/witherspoon: Rework NPU presence detection
hw/npu2: Combined NPU brick configuration procedure
hw/npu2-opencapi: FIR masking for mixed setups
hw/npu2: Fix OpenCAPI PE assignment
hw/npu2: Always check device type when looping through NPU devices
hw/npu2-common: Allow mixed mode NPU setups
hw/npu2-opencapi: Remove completed TODO
Frederic Barrat (1):
hw/npu2: Make IRQ setup code common
hw/npu2-common.c | 411 +++++++++++++++++++++++--
hw/npu2-opencapi.c | 375 ++++-------------------
hw/npu2.c | 560 ++++++++--------------------------
include/npu2-regs.h | 4 +-
include/npu2.h | 55 +--
platforms/astbmc/witherspoon.c | 62 +++-
6 files changed, 693 insertions(+), 774 deletions(-)
base-commit: 1799df83089fb33c8ed41f54e47a0fcfaeafe8ff
--
git-series 0.9.1
More information about the Skiboot
mailing list