From 95fdecb7b4898082b29f5e0f390b4dc794e5cbb6 Mon Sep 17 00:00:00 2001 From: Vadim Bendebury Date: Fri, 16 Oct 2015 14:32:33 -0700 Subject: [PATCH] common: expose true random number generator API When supported, the true random number generator provide to API calls, to initialize it and to retrieve a random number. BRANCH=none BUG=chrome-os-partner:43025 TEST=with other patches in place TPM2 gets proper random numbers stream. Change-Id: I11effdf6f81ca76581a354218203620708195b2b Signed-off-by: Vadim Bendebury Reviewed-on: https://chromium-review.googlesource.com/306688 Reviewed-by: Bill Richardson --- include/trng.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 include/trng.h diff --git a/include/trng.h b/include/trng.h new file mode 100644 index 0000000000..fe1c96825e --- /dev/null +++ b/include/trng.h @@ -0,0 +1,22 @@ +/* Copyright 2015 The Chromium OS Authors. All rights reserved. + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ +#ifndef __EC_INCLUDE_TRNG_H +#define __EC_INCLUDE_TRNG_H + +/** + * Initialize the true random number generator. + * + * Not supported by all platforms. + **/ +void init_trng(void); + +/** + * Retrieve a 32 bit random value. + * + * Not supported on all platforms. + **/ +uint32_t rand(void); + +#endif /* __EC_INCLUDE_TRNG_H */