crypto/nx: Register and unregister VAS interface on PowerVM
authorHaren Myneni <haren@linux.ibm.com>
Thu, 17 Jun 2021 20:39:41 +0000 (13:39 -0700)
committerMichael Ellerman <mpe@ellerman.id.au>
Sun, 20 Jun 2021 11:58:58 +0000 (21:58 +1000)
The user space uses /dev/crypto/nx-gzip interface to setup VAS
windows, create paste mapping and close windows. This patch adds
changes to create/remove this interface with VAS register/unregister
functions on PowerVM platform.

Signed-off-by: Haren Myneni <haren@linux.ibm.com>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Acked-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/121ea1f4eb3004f3b8f4fe8abefaecc88b292efd.camel@linux.ibm.com
drivers/crypto/nx/Kconfig
drivers/crypto/nx/nx-common-pseries.c

index 23e3d0160e67b2606813225a6e758e8a504d8cd4..2a35e0e785bd4df65d6dcdcad9ab4acb2fe9e306 100644 (file)
@@ -29,6 +29,7 @@ if CRYPTO_DEV_NX_COMPRESS
 config CRYPTO_DEV_NX_COMPRESS_PSERIES
        tristate "Compression acceleration support on pSeries platform"
        depends on PPC_PSERIES && IBMVIO
+       depends on PPC_VAS
        default y
        help
          Support for PowerPC Nest (NX) compression acceleration. This
index f51a50d40504386a4e5648f721af143171dab9ab..6671f6634ddac9709f877221be8ed1e3ede79d10 100644 (file)
@@ -1231,6 +1231,12 @@ static int __init nx842_pseries_init(void)
                return ret;
        }
 
+       ret = vas_register_api_pseries(THIS_MODULE, VAS_COP_TYPE_GZIP,
+                                      "nx-gzip");
+
+       if (ret)
+               pr_err("NX-GZIP is not supported. Returned=%d\n", ret);
+
        return 0;
 }
 
@@ -1241,6 +1247,8 @@ static void __exit nx842_pseries_exit(void)
        struct nx842_devdata *old_devdata;
        unsigned long flags;
 
+       vas_unregister_api_pseries();
+
        crypto_unregister_alg(&nx842_pseries_alg);
 
        spin_lock_irqsave(&devdata_mutex, flags);