linux/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-cipher.c

// SPDX-License-Identifier: GPL-2.0
/*
 * sun8i-ce-cipher.c - hardware cryptographic offloader for
 * Allwinner H3/A64/H5/H2+/H6/R40 SoC
 *
 * Copyright (C) 2016-2019 Corentin LABBE <[email protected]>
 *
 * This file add support for AES cipher with 128,192,256 bits keysize in
 * CBC and ECB mode.
 *
 * You could find a link for the datasheet in Documentation/arch/arm/sunxi.rst
 */

#include <linux/bottom_half.h>
#include <linux/crypto.h>
#include <linux/dma-mapping.h>
#include <linux/io.h>
#include <linux/pm_runtime.h>
#include <crypto/scatterwalk.h>
#include <crypto/internal/des.h>
#include <crypto/internal/skcipher.h>
#include "sun8i-ce.h"

static int sun8i_ce_cipher_need_fallback(struct skcipher_request *areq)
{}

static int sun8i_ce_cipher_fallback(struct skcipher_request *areq)
{}

static int sun8i_ce_cipher_prepare(struct crypto_engine *engine, void *async_req)
{}

static void sun8i_ce_cipher_unprepare(struct crypto_engine *engine,
				      void *async_req)
{}

static void sun8i_ce_cipher_run(struct crypto_engine *engine, void *areq)
{}

int sun8i_ce_cipher_do_one(struct crypto_engine *engine, void *areq)
{}

int sun8i_ce_skdecrypt(struct skcipher_request *areq)
{}

int sun8i_ce_skencrypt(struct skcipher_request *areq)
{}

int sun8i_ce_cipher_init(struct crypto_tfm *tfm)
{}

void sun8i_ce_cipher_exit(struct crypto_tfm *tfm)
{}

int sun8i_ce_aes_setkey(struct crypto_skcipher *tfm, const u8 *key,
			unsigned int keylen)
{}

int sun8i_ce_des3_setkey(struct crypto_skcipher *tfm, const u8 *key,
			 unsigned int keylen)
{}