[Skiboot] [PATCH 0/5] Enable NX 842 and gzip compression engines on Power9
Haren Myneni
haren at linux.vnet.ibm.com
Mon Feb 20 16:35:36 AEDT 2017
NX accelerator support is included since P7+ for 842 HW memory compression
and encryption. In addition to 842 compression, Power9 also introduces GZIP
compression engine in NX accelerator which supports both gzip and zlib
compression formats. Virtual Accelerator Switchboard (VAS) is added on P9
which allows kernel and user space to access NX accelerator. icswx
instruction is used on P7+ and P8 to access NX from kernel. P9 NX also
provides the mechanism for setting up NX compression requests with high or
normal priorities for each coprocessor type (842 and gzip).
This patch series adds functionality to setup and enable/disable 842 and
gzip engines with the appropriate registers available on P9 NX. Also creates
new device-tree entries so that kernel can drive 842 and gzip engines.
Patches has been tested in Simics environment using VAS changes and nx-842
driver changes. This patchset depends on skiboot VAS changes:
https://lists.ozlabs.org/pipermail/skiboot/2017-January/006193.html
Thanks to Sukadev Bhattiprolu for his input and testing with VAS changes.
Haren Myneni (5):
NX: Add P9 NX register defines for 842 / gzip engines
NX: Organize NX compression code to include 842 and gzip engines
support
NX: Add P9 NX support for 842 compression engine
NX: Add P9 NX support for gzip compression engine
NX: Describe device-tree changes for P9 NX compression engines
doc/device-tree/nx.rst | 35 +++++++-
hw/Makefile.inc | 2 +-
hw/nx-842.c | 89 +++++++++++++++-----
hw/nx-compress.c | 211 ++++++++++++++++++++++++++++++++++++++++++++++++
hw/nx-gzip.c | 131 ++++++++++++++++++++++++++++++
hw/nx.c | 2 +-
include/nx.h | 98 +++++++++++++++++++++-
8 files changed, 540 insertions(+), 32 deletions(-)
create mode 100644 hw/nx-compress.c
create mode 100644 hw/nx-gzip.c
More information about the Skiboot
mailing list