6789b2dc45
Most of the work done aes_padlock can be done in aes_set_key. This means that we only have to do it once when the key changes rather than every time we perform an encryption or decryption. This patch also sets cra_alignmask to let the upper layer ensure that the buffers fed to us are aligned correctly. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
36 lines
782 B
C
36 lines
782 B
C
/*
|
|
* Driver for VIA PadLock
|
|
*
|
|
* Copyright (c) 2004 Michal Ludvig <michal@logix.cz>
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
* under the terms of the GNU General Public License as published by the Free
|
|
* Software Foundation; either version 2 of the License, or (at your option)
|
|
* any later version.
|
|
*
|
|
*/
|
|
|
|
#ifndef _CRYPTO_PADLOCK_H
|
|
#define _CRYPTO_PADLOCK_H
|
|
|
|
#define PADLOCK_ALIGNMENT 16
|
|
|
|
/* Control word. */
|
|
struct cword {
|
|
int __attribute__ ((__packed__))
|
|
rounds:4,
|
|
algo:3,
|
|
keygen:1,
|
|
interm:1,
|
|
encdec:1,
|
|
ksize:2;
|
|
} __attribute__ ((__aligned__(PADLOCK_ALIGNMENT)));
|
|
|
|
#define PFX "padlock: "
|
|
|
|
#ifdef CONFIG_CRYPTO_DEV_PADLOCK_AES
|
|
int padlock_init_aes(void);
|
|
void padlock_fini_aes(void);
|
|
#endif
|
|
|
|
#endif /* _CRYPTO_PADLOCK_H */
|