[Skiboot] [PATCH V3 0/5] Enable NX 842 and gzip compression engines on Power9

Haren Myneni haren at linux.vnet.ibm.com
Sat Apr 1 18:14:44 AEDT 2017


[PATCH V3 0/5] Enable NX 842 and gzip compression engines on Power9

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.

Changelog:
v3:
 - Set all 1's (0xfff) for RxFIFO lpid as suggested by
   Benjamin Herrenschmidt
v2:
 - Defined the proper value for RX_FIFO_MAX_CRB_SIZE
 - Addressed other review comments from Sukadev Bhattiprolu

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 |   34 +++++++-
 hw/Makefile.inc        |    2 +-
 hw/nx-842.c            |   90 ++++++++++++++-----
 hw/nx-compress.c       |  223 ++++++++++++++++++++++++++++++++++++++++++++++++
 hw/nx-gzip.c           |  127 +++++++++++++++++++++++++++
 hw/nx.c                |    2 +-
 include/nx.h           |  121 +++++++++++++++++++++++++-
 7 files changed, 564 insertions(+), 35 deletions(-)
 create mode 100644 hw/nx-compress.c
 create mode 100644 hw/nx-gzip.c





More information about the Skiboot mailing list