Lines Matching full:ocs
3 * Intel Keem Bay OCS AES Crypto Driver.
26 #include "ocs-aes.h"
29 #define DRV_NAME "keembay-ocs-aes"
39 * struct ocs_aes_tctx - OCS AES Transform context
40 * @aes_dev: The OCS AES device.
43 * @cipher: OCS cipher to use (either AES or SM4).
60 * struct ocs_aes_rctx - OCS AES Request context.
69 * @src_dll: OCS DMA linked list for input data.
70 * @dst_dll: OCS DMA linked list for output data.
74 * @aad_src_dll: OCS DMA linked list for input AAD data.
75 * @aad_dst_dll: OCS DMA linked list for output AAD data.
130 /* Only a single OCS device available */ in kmb_ocs_aes_find_dev()
393 /* Clean up OCS DMA linked lists */ in kmb_ocs_sk_dma_cleanup()
494 * Use OCS AES bypass mode to copy src to dst via DMA. in kmb_ocs_sk_prepare_notinplace()
530 * OCS mode uses CBC-CS2, whereas other crypto API implementations use in kmb_ocs_sk_run()
699 /* Clean up OCS DMA linked lists */ in kmb_ocs_aead_dma_cleanup()
710 * src_dll OCS DMA list.
714 * - Initialize the following OCS DMA linked lists: rctx->src_dll,
771 * In CCM mode the OCS engine appends the tag to the ciphertext, in kmb_ocs_aead_dma_prepare()
877 /* Copy AAD from src sg to dst sg using OCS DMA. */ in kmb_ocs_aead_dma_prepare()
899 /* For CCM, we just call the OCS processing and we are done. */ in kmb_ocs_aead_run()
909 /* GCM case; invoke OCS processing. */ in kmb_ocs_aead_run()
1262 .base.base.cra_driver_name = "ecb-aes-keembay-ocs",
1284 .base.base.cra_driver_name = "cbc-aes-keembay-ocs",
1306 .base.base.cra_driver_name = "ctr-aes-keembay-ocs",
1329 .base.base.cra_driver_name = "cts-aes-keembay-ocs",
1353 .base.base.cra_driver_name = "ecb-sm4-keembay-ocs",
1374 .base.base.cra_driver_name = "cbc-sm4-keembay-ocs",
1395 .base.base.cra_driver_name = "ctr-sm4-keembay-ocs",
1417 .base.base.cra_driver_name = "cts-sm4-keembay-ocs",
1443 .cra_driver_name = "gcm-aes-keembay-ocs",
1466 .cra_driver_name = "ccm-aes-keembay-ocs",
1489 .cra_driver_name = "gcm-sm4-keembay-ocs",
1511 .cra_driver_name = "ccm-sm4-keembay-ocs",
1560 .compatible = "intel,keembay-ocs-aes",
1613 NULL, 0, "keembay-ocs-aes", aes_dev); in kmb_ocs_aes_probe()
1642 "Could not register OCS algorithms with Crypto API\n"); in kmb_ocs_aes_probe()
1658 /* The OCS driver is a platform device. */
1670 MODULE_DESCRIPTION("Intel Keem Bay Offload and Crypto Subsystem (OCS) AES/SM4 Driver");
1673 MODULE_ALIAS_CRYPTO("cbc-aes-keembay-ocs");
1674 MODULE_ALIAS_CRYPTO("ctr-aes-keembay-ocs");
1675 MODULE_ALIAS_CRYPTO("gcm-aes-keembay-ocs");
1676 MODULE_ALIAS_CRYPTO("ccm-aes-keembay-ocs");
1678 MODULE_ALIAS_CRYPTO("cbc-sm4-keembay-ocs");
1679 MODULE_ALIAS_CRYPTO("ctr-sm4-keembay-ocs");
1680 MODULE_ALIAS_CRYPTO("gcm-sm4-keembay-ocs");
1681 MODULE_ALIAS_CRYPTO("ccm-sm4-keembay-ocs");
1684 MODULE_ALIAS_CRYPTO("ecb-aes-keembay-ocs");
1685 MODULE_ALIAS_CRYPTO("ecb-sm4-keembay-ocs");
1689 MODULE_ALIAS_CRYPTO("cts-aes-keembay-ocs");
1690 MODULE_ALIAS_CRYPTO("cts-sm4-keembay-ocs");