| /* |
| * Copyright (c) 2013-2014 Wind River Systems, Inc. |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| /** |
| * @file |
| * @brief Non-random number generator based on x86 CPU timestamp |
| * |
| * This module provides a non-random implementation of sys_rand32_get(), which |
| * is not meant to be used in a final product as a truly random number |
| * generator. It was provided to allow testing on a platform that does not (yet) |
| * provide a random number generator. |
| */ |
| |
| #include <kernel.h> |
| #include <arch/cpu.h> |
| #include <drivers/rand32.h> |
| |
| /** |
| * |
| * @brief Get a 32 bit random number |
| * |
| * The non-random number generator returns values that are based off the |
| * CPU's timestamp counter, which means that successive calls will normally |
| * display ever-increasing values. |
| * |
| * @return a 32-bit number |
| */ |
| |
| u32_t sys_rand32_get(void) |
| { |
| return _do_read_cpu_timestamp32(); |
| } |