]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit
crypto/nx: Add P9 NX support for 842 compression engine
authorHaren Myneni <haren@linux.vnet.ibm.com>
Thu, 28 Sep 2017 10:58:00 +0000 (07:58 -0300)
committerSeth Forshee <seth.forshee@canonical.com>
Thu, 28 Sep 2017 19:40:20 +0000 (15:40 -0400)
commit9421ed2a5328f75f790f6c4d38b4580d7ea480ad
treef7fa6a792b4ea190fc76967adfe886d03d9293fb
parente34b4aed5bd859858c98e602aa349d32c6f12183
crypto/nx: Add P9 NX support for 842 compression engine

BugLink: http://bugs.launchpad.net/bugs/1718292
This patch adds P9 NX support for 842 compression engine. Virtual
Accelerator Switchboard (VAS) is used to access 842 engine on P9.

For each NX engine per chip, setup receive window using
vas_rx_win_open() which configures RxFIFo with FIFO address, lpid,
pid and tid values. This unique (lpid, pid, tid) combination will
be used to identify the target engine.

For crypto open request, open send window on the NX engine for
the corresponding chip / cpu where the open request is executed.
This send window will be closed upon crypto close request.

NX provides high and normal priority FIFOs. For compression /
decompression requests, we use only hight priority FIFOs in kernel.

Each NX request will be communicated to VAS using copy/paste
instructions with vas_copy_crb() / vas_paste_crb() functions.

Signed-off-by: Haren Myneni <haren@us.ibm.com>
Reviewed-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
(cherry picked from commit b0d6c9bab5e41d07f2bece1ef8c81cd2175b5f88)
Signed-off-by: Gustavo Walbon <gwalbon@linux.vnet.ibm.com>
Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
drivers/crypto/nx/Kconfig
drivers/crypto/nx/nx-842-powernv.c