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

// SPDX-License-Identifier: GPL-2.0
/*
 * sun8i-ce-hash.c - hardware cryptographic offloader for
 * Allwinner H3/A64/H5/H2+/H6/R40 SoC
 *
 * Copyright (C) 2015-2020 Corentin Labbe <[email protected]>
 *
 * This file add support for MD5 and SHA1/SHA224/SHA256/SHA384/SHA512.
 *
 * You could find the datasheet in Documentation/arch/arm/sunxi.rst
 */

#include <crypto/internal/hash.h>
#include <crypto/md5.h>
#include <crypto/sha1.h>
#include <crypto/sha2.h>
#include <linux/bottom_half.h>
#include <linux/dma-mapping.h>
#include <linux/kernel.h>
#include <linux/pm_runtime.h>
#include <linux/scatterlist.h>
#include <linux/slab.h>
#include <linux/string.h>
#include "sun8i-ce.h"

int sun8i_ce_hash_init_tfm(struct crypto_ahash *tfm)
{}

void sun8i_ce_hash_exit_tfm(struct crypto_ahash *tfm)
{}

int sun8i_ce_hash_init(struct ahash_request *areq)
{}

int sun8i_ce_hash_export(struct ahash_request *areq, void *out)
{}

int sun8i_ce_hash_import(struct ahash_request *areq, const void *in)
{}

int sun8i_ce_hash_final(struct ahash_request *areq)
{}

int sun8i_ce_hash_update(struct ahash_request *areq)
{}

int sun8i_ce_hash_finup(struct ahash_request *areq)
{}

static int sun8i_ce_hash_digest_fb(struct ahash_request *areq)
{}

static bool sun8i_ce_hash_need_fallback(struct ahash_request *areq)
{}

int sun8i_ce_hash_digest(struct ahash_request *areq)
{}

static u64 hash_pad(__le32 *buf, unsigned int bufsize, u64 padi, u64 byte_count, bool le, int bs)
{}

int sun8i_ce_hash_run(struct crypto_engine *engine, void *breq)
{}