xref: /dpdk/drivers/net/bnxt/tf_core/rand.h (revision e6e8f03e5459f25153f1e4cd3e9ac30d3e473a61)
180815f84SMichael Wildt /* SPDX-License-Identifier: BSD-3-Clause
2*e6e8f03eSRandy Schacher  * Copyright(c) 2019-2023 Broadcom
380815f84SMichael Wildt  * All rights reserved.
480815f84SMichael Wildt  */
580815f84SMichael Wildt 
680815f84SMichael Wildt /* Random Number Functions */
780815f84SMichael Wildt #ifndef __RAND_H__
880815f84SMichael Wildt #define __RAND_H__
980815f84SMichael Wildt 
1080815f84SMichael Wildt /**
1180815f84SMichael Wildt  * Generates a 16 bit pseudo random number
1280815f84SMichael Wildt  *
1380815f84SMichael Wildt  * Returns:
1480815f84SMichael Wildt  * uint16_t number
1580815f84SMichael Wildt  *
1680815f84SMichael Wildt  */
1780815f84SMichael Wildt uint16_t rand16(void);
1880815f84SMichael Wildt 
1980815f84SMichael Wildt /**
2080815f84SMichael Wildt  * Generates a 32 bit pseudo random number
2180815f84SMichael Wildt  *
2280815f84SMichael Wildt  * Returns:
2380815f84SMichael Wildt  * uint32_t number
2480815f84SMichael Wildt  *
2580815f84SMichael Wildt  */
2680815f84SMichael Wildt uint32_t rand32(void);
2780815f84SMichael Wildt 
2880815f84SMichael Wildt /**
2980815f84SMichael Wildt  * Resets the seed used by the pseudo random number generator
3080815f84SMichael Wildt  *
3180815f84SMichael Wildt  * Returns:
3280815f84SMichael Wildt  *
3380815f84SMichael Wildt  */
3480815f84SMichael Wildt void rand_init(void);
3580815f84SMichael Wildt #endif /* __RAND_H__ */
36