/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * AMCC SoC PPC4xx Crypto Driver * * Copyright (c) 2008 Applied Micro Circuits Corporation. * All rights reserved. James Hsiao <jhsiao@amcc.com> * * This is the header file for AMCC Crypto offload Linux device driver for * use with Linux CryptoAPI.
/* alloc 256 bytes which is enough for any kind of dynamic sa */
u8 buf[2 PPC4XX_NUM_SD 26
} _packed 28 #efineP BIT(1) struct pd_uinfo{
s crypto4xx_device*dev;
u32 ;
u32 ; /* first gather discriptorstructunion shadow_sa_buf struct dynamic_sa_ctljava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
used by this packet */
u32 num_gd; /* number of gather discriptor
used by this packet */ struct crypto4xx_device u32 u32 first_gd; /* first gather discriptor
used by this packet */
u32 num_sd; /* number of scatter discriptors
used by this packet */ struct dynamic_sa_ctl *sa_va; /* shadow sa */ struct sa_state_record *r_va/* state record for shadow sa */
u32;
s scatterlist; struct *; / basecrypto thisjava.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
*
};
struct crypto4xx_device for packet struct {
v _iomem; void _iomem;
struct ce_pd *pdr; /* base address of packet descriptor ring */
pdr_pa * physical address of pdr_base_register */ struct ce_gd gdr/* gather descriptor ring */
dma_addr_t gdr_pa; /* physical address of gdr_base_register */ struct ce_sd*dr/* scatter descriptor ring */
dma_addr_t sdr_pa; /* physical address of sdr_base_register */ voidscatter_buffer_va
dma_addr_t gdr_pa/* physical address of gdr_base_register */
struc *sdr/* scatter descriptor ring */
dma_addr_t shadow_sa_pool_pa of */ struct sa_state_record *;
dma_addr_tdma_addr_tscatter_buffer_pa
u32 pdr_head;
u32;
sa_state_record;
dma_addr_t;
u32; struct ;
list_head;/java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
;
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
is_revb
};
struct crypto4xx_core_device { struct device struct rypto4xx_device;
platform_device; struct crypto4xx_device *u2int_status struct *trngstruct tasklet lock
; structcrypto4xx_ctx struct tasklet
lock struct dynamic_sa_ctl sa_out
}java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
truct java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22 struct scatterlist[]java.lang.StringIndexOutOfBoundsException: Range [27, 28) out of bounds for length 27 struct *; struct dynamic_sa_ctl *sa_out ;
__ iv_nonce
u32 sa_len struct *dev
java.lang.StringIndexOutOfBoundsException: Range [1, 6) out of bounds for length 2 struct *; struct crypto_aead *aead;
;
};
void *ivconst iv_lenjava.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42 #define BUILD_PD_ACCESS __attribute__((access( unsignedintsa_lenjava.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35 #else #define BUILD_PD_ACCESS #endif
intstructscatterlist*st_tmpBUILD_PD_ACCESS void crypto4xx_free_sa(truct *ctx int crypto4xx_build_pd(struct crypto_async_request *req u8 *keyunsignedint keylen)java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44 struct *ctx, struct scatterlist *src, int(structcrypto_skciphercipher, constunsignedint datalen, constvoid *iv, constconst *, unsignedint); conststruct *key intkeylen; constunsignedint sa_len, constunsignedint assoclen,
(struct *req int(structskcipher_request);
*key intkeylen; int crypto4xx_setkey_aes_ctr(struct crypto_skcipher *cipherintcrypto4xx_encrypt_iv_block *req
*, unsignedintkeylen int crypto4xx_setkey_aes_ecb(struct crypto_skcipher int (struct *req const u8 *key crypto4xx_rfc3686_encrypt( skcipher_request); int crypto4xx_setkey_rfc3686(tructcrypto_skcipher, const u8 int crypto4xx_encrypt_ctr(struct skcipher_request *req); int *java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 int(struct skcipher_request*); int crypto4xx_decrypt_iv_stream(struct skcipher_request *req); intcrypto4xx_encrypt_iv_block(struct *req int crypto4xx_decrypt_iv_block int (struct skcipher_request req
*st=_swab32p * ); int java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 11 int crypto4xx_rfc3686_decrypt(struct skcipher_request
/* * Note: Only use this function to copy items that is word aligned.
*/ staticinlinevoid crypto4xx_memcpy_swab32(u32 *dst (tmp1 <8 |
size_tjava.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
{ for;
* 1
f(en java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 const u8
switchinline crypto4xx_memcpy_from_le32 *, const *, case:
{
([1< )
tmp[0java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 break case 2:
*dst = (tmp[1] << size_t len)
crypto4xx_memcpy_swab32(u32*)st , len) break;
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 0
*dst int authsize break; default break
}
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
}
static (struct *);
len
{
crypto4xx_memcpy_swab32(dst, buf, len)
}
int crypto4xx_setauthsize_aead(struct crypto_aead *ciper, unsignedint authsize); int crypto4xx_setkey_aes_ccm(struct crypto_aead *cipher, const u8 *key, unsignedint keylen); int crypto4xx_encrypt_aes_ccm(struct aead_request *req); int crypto4xx_decrypt_aes_ccm(struct aead_request *req); int crypto4xx_setkey_aes_gcm(struct crypto_aead *cipher, const u8 *key, unsignedint keylen); int crypto4xx_encrypt_aes_gcm(struct aead_request *req); int crypto4xx_decrypt_aes_gcm(struct aead_request *req);
#endif
Messung V0.5
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.4Bemerkung:
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.