/* * OMAP Crypto driver common support routines. * * Copyright (c) 2017 Texas Instruments Incorporated * Tero Kristo <t-kristo@ti.com> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as published * by the Free Software Foundation. */ #ifndef __CRYPTO_OMAP_CRYPTO_H #define __CRYPTO_OMAP_CRYPTO_H enum { OMAP_CRYPTO_NOT_ALIGNED = 1, OMAP_CRYPTO_BAD_DATA_LENGTH, }; #define OMAP_CRYPTO_DATA_COPIED BIT(0) #define OMAP_CRYPTO_SG_COPIED BIT(1) #define OMAP_CRYPTO_COPY_MASK 0x3 #define OMAP_CRYPTO_COPY_DATA BIT(0) #define OMAP_CRYPTO_FORCE_COPY BIT(1) #define OMAP_CRYPTO_ZERO_BUF BIT(2) #define OMAP_CRYPTO_FORCE_SINGLE_ENTRY BIT(3) int omap_crypto_align_sg(struct scatterlist **sg, int total, int bs, struct scatterlist *new_sg, u16 flags, u8 flags_shift, unsigned long *dd_flags); void omap_crypto_cleanup(struct scatterlist *sg, struct scatterlist *orig, int offset, int len, u8 flags_shift, unsigned long flags); #endif