mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
Merge pull request #10974 from haukepetersen/add_random_hwrngseed
sys/random: use periph/hwrng as seed if available
This commit is contained in:
commit
0e71c8a6a3
@ -661,6 +661,10 @@ ifneq (,$(filter random,$(USEMODULE)))
|
||||
USEMODULE += hashes
|
||||
endif
|
||||
|
||||
ifeq (,$(filter puf_sram,$(USEMODULE)))
|
||||
FEATURES_OPTIONAL += periph_hwrng
|
||||
endif
|
||||
|
||||
USEMODULE += luid
|
||||
endif
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
/**
|
||||
* Copyright (C) 2017 Kaspar Schleiser <kaspar@schleiser.de>
|
||||
* 2019 Freie Universität Berlin
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU Lesser
|
||||
* General Public License v2.1. See the file LICENSE in the top level
|
||||
@ -7,13 +8,14 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @ingroup sys_random
|
||||
* @ingroup sys_random
|
||||
* @{
|
||||
* @file
|
||||
*
|
||||
* @brief PRNG seeding
|
||||
* @brief PRNG seeding
|
||||
*
|
||||
* @author Kaspar Schleiser <kaspar@schleiser.de>
|
||||
* @author Kaspar Schleiser <kaspar@schleiser.de>
|
||||
* @author Hauke Petersen <hauke.petersen@fu-berlin.de>
|
||||
* @}
|
||||
*/
|
||||
|
||||
@ -21,11 +23,16 @@
|
||||
|
||||
#include "log.h"
|
||||
#include "luid.h"
|
||||
#include "periph/cpuid.h"
|
||||
#include "random.h"
|
||||
#ifdef MODULE_PUF_SRAM
|
||||
#include "puf_sram.h"
|
||||
#endif
|
||||
#ifdef MODULE_PERIPH_HWRNG
|
||||
#include "periph/hwrng.h"
|
||||
#endif
|
||||
#ifdef MODULE_PERIPH_CPUID
|
||||
#include "periph/cpuid.h"
|
||||
#endif
|
||||
|
||||
#define ENABLE_DEBUG (0)
|
||||
#include "debug.h"
|
||||
@ -39,6 +46,8 @@ void auto_init_random(void)
|
||||
LOG_WARNING("random: PUF SEED not fresh\n");
|
||||
}
|
||||
seed = puf_sram_seed;
|
||||
#elif defined (MODULE_PERIPH_HWRNG)
|
||||
hwrng_read(&seed, 4);
|
||||
#elif defined (MODULE_PERIPH_CPUID)
|
||||
luid_get(&seed, 4);
|
||||
#else
|
||||
|
Loading…
Reference in New Issue
Block a user