aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/crypto/zinc/chacha20/chacha20-mips-glue.h
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2018-09-20 16:31:01 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2018-09-21 16:05:22 +0200
commit09247c03ab40754365a506a150531f4582826077 (patch)
tree44d6a1d4d9a5b94e7efcf4f5987e8b11a3b97d1d /src/crypto/zinc/chacha20/chacha20-mips-glue.h
parentchacha20-mips32r2: remove reorder directives (diff)
downloadwireguard-monolithic-historical-09247c03ab40754365a506a150531f4582826077.tar.xz
wireguard-monolithic-historical-09247c03ab40754365a506a150531f4582826077.zip
chacha20-arm: go with Ard's version to optimize for Cortex-A7
Diffstat (limited to 'src/crypto/zinc/chacha20/chacha20-mips-glue.h')
-rw-r--r--src/crypto/zinc/chacha20/chacha20-mips-glue.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/crypto/zinc/chacha20/chacha20-mips-glue.h b/src/crypto/zinc/chacha20/chacha20-mips-glue.h
index 2458e41..e38098e 100644
--- a/src/crypto/zinc/chacha20/chacha20-mips-glue.h
+++ b/src/crypto/zinc/chacha20/chacha20-mips-glue.h
@@ -9,11 +9,12 @@ static void __init chacha20_fpu_init(void)
{
}
-static inline bool chacha20_arch(u8 *dst, const u8 *src, const size_t len,
- const u32 key[8], const u32 counter[4],
+static inline bool chacha20_arch(struct chacha20_ctx *state, u8 *dst,
+ const u8 *src, const size_t len,
simd_context_t *simd_context)
{
- chacha20_mips(dst, src, len, key, counter);
+ chacha20_mips(dst, src, len, state->key, state->counter);
+ state->counter[0] += (len + 63) / 64;
return true;
}