at_least
union acpi_object in_params[at_least 4],
void aes_encrypt(aes_encrypt_arg key, u8 out[at_least AES_BLOCK_SIZE],
const u8 in[at_least AES_BLOCK_SIZE]);
void aes_decrypt(const struct aes_key *key, u8 out[at_least AES_BLOCK_SIZE],
const u8 in[at_least AES_BLOCK_SIZE]);
u8 out[at_least CHACHA_BLOCK_SIZE], int nrounds);
u8 out[at_least CHACHA_BLOCK_SIZE])
u32 out[at_least HCHACHA_OUT_WORDS], int nrounds);
u32 out[at_least HCHACHA_OUT_WORDS], int nrounds);
const u32 key[at_least CHACHA_KEY_WORDS],
const u8 iv[at_least CHACHA_IV_SIZE])
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE]);
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE]);
const u8 nonce[at_least XCHACHA20POLY1305_NONCE_SIZE],
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE]);
const u8 nonce[at_least XCHACHA20POLY1305_NONCE_SIZE],
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE]);
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE]);
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE]);
void curve25519_generic(u8 out[at_least CURVE25519_KEY_SIZE],
const u8 scalar[at_least CURVE25519_KEY_SIZE],
const u8 point[at_least CURVE25519_KEY_SIZE]);
curve25519(u8 mypublic[at_least CURVE25519_KEY_SIZE],
const u8 secret[at_least CURVE25519_KEY_SIZE],
const u8 basepoint[at_least CURVE25519_KEY_SIZE]);
curve25519_generate_public(u8 pub[at_least CURVE25519_KEY_SIZE],
const u8 secret[at_least CURVE25519_KEY_SIZE]);
curve25519_clamp_secret(u8 secret[at_least CURVE25519_KEY_SIZE])
curve25519_generate_secret(u8 secret[at_least CURVE25519_KEY_SIZE])
void hmac_md5_final(struct hmac_md5_ctx *ctx, u8 out[at_least MD5_DIGEST_SIZE]);
u8 out[at_least MD5_DIGEST_SIZE]);
u8 out[at_least MD5_DIGEST_SIZE]);
void md5_final(struct md5_ctx *ctx, u8 out[at_least MD5_DIGEST_SIZE]);
void md5(const u8 *data, size_t len, u8 out[at_least MD5_DIGEST_SIZE]);
const u8 key[at_least POLY1305_KEY_SIZE]);
u8 out[at_least SHA1_DIGEST_SIZE]);
u8 out[at_least SHA1_DIGEST_SIZE]);
u8 out[at_least SHA1_DIGEST_SIZE]);
void sha1_final(struct sha1_ctx *ctx, u8 out[at_least SHA1_DIGEST_SIZE]);
void sha1(const u8 *data, size_t len, u8 out[at_least SHA1_DIGEST_SIZE]);
void sha224_final(struct sha224_ctx *ctx, u8 out[at_least SHA224_DIGEST_SIZE]);
void sha224(const u8 *data, size_t len, u8 out[at_least SHA224_DIGEST_SIZE]);
u8 out[at_least SHA224_DIGEST_SIZE]);
u8 out[at_least SHA224_DIGEST_SIZE]);
u8 out[at_least SHA224_DIGEST_SIZE]);
void sha256_final(struct sha256_ctx *ctx, u8 out[at_least SHA256_DIGEST_SIZE]);
void sha256(const u8 *data, size_t len, u8 out[at_least SHA256_DIGEST_SIZE]);
u8 out1[at_least SHA256_DIGEST_SIZE],
u8 out2[at_least SHA256_DIGEST_SIZE]);
u8 out[at_least SHA256_DIGEST_SIZE]);
u8 out[at_least SHA256_DIGEST_SIZE]);
u8 out[at_least SHA256_DIGEST_SIZE]);
void sha384_final(struct sha384_ctx *ctx, u8 out[at_least SHA384_DIGEST_SIZE]);
void sha384(const u8 *data, size_t len, u8 out[at_least SHA384_DIGEST_SIZE]);
u8 out[at_least SHA384_DIGEST_SIZE]);
u8 out[at_least SHA384_DIGEST_SIZE]);
u8 out[at_least SHA384_DIGEST_SIZE]);
void sha512_final(struct sha512_ctx *ctx, u8 out[at_least SHA512_DIGEST_SIZE]);
void sha512(const u8 *data, size_t len, u8 out[at_least SHA512_DIGEST_SIZE]);
u8 out[at_least SHA512_DIGEST_SIZE]);
u8 out[at_least SHA512_DIGEST_SIZE]);
u8 out[at_least SHA512_DIGEST_SIZE]);
const u8 nonce[at_least XCHACHA20POLY1305_NONCE_SIZE],
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE])
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE])
const u8 nonce[at_least XCHACHA20POLY1305_NONCE_SIZE],
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE])
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE],
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE])
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE])
const u8 key[at_least CHACHA20POLY1305_KEY_SIZE])