aboutsummaryrefslogtreecommitdiff
path: root/include/npu.h
diff options
context:
space:
mode:
authorGavin Shan <gwshan@linux.vnet.ibm.com>2016-08-11 12:12:37 +1000
committerStewart Smith <stewart@linux.vnet.ibm.com>2016-09-02 15:27:39 +1000
commit85daa7f00c5001593f28eb0e975b94921f3cd023 (patch)
treea3ff8b15610c021c9851a1e0349e81bdd4e036c1 /include/npu.h
parentb9801047a12c27d1d205ba5c250a9c399a9f8fd1 (diff)
downloadskiboot-85daa7f00c5001593f28eb0e975b94921f3cd023.zip
skiboot-85daa7f00c5001593f28eb0e975b94921f3cd023.tar.gz
skiboot-85daa7f00c5001593f28eb0e975b94921f3cd023.tar.bz2
core/pci: Support virtual device
The NVLinks (v1 and v2 to be supported in future) are exposed to Linux kernel by emulated PCI devices (aka PCI virtual devices). Currently, the implementation is covered by NVLink driver (npu.c), meaning npu2.c will have similar implementation though it will be totally duplicated with that in npu.c. This supports PCI virtual device in the generic layer so that it can be shared by all NVLink drivers. The design is highlighted as: * There are 3 config spaces for every PCI virtual device, corresponds to the cached config space, readonly space, write-1-clear space. * Reuse PCI config register filter mechanism to allow NVLink driver to emulate the access to the designated config registers. The config values are fetched from or written to the cached config space when the config registers aren't covered by filter. Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com> Reviewed-by: Russell Currey <ruscur@russell.cc> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'include/npu.h')
0 files changed, 0 insertions, 0 deletions