/* SPDX-License-Identifier: GPL-2.0 */ #ifndef __GPU_RANDOM_H__ #define __GPU_RANDOM_H__ /* This is a temporary home for a couple of utility functions that should * be transposed to lib/ at the earliest convenience. */ #include #define GPU_RND_STATE_INITIALIZER(seed__) ({ \ struct rnd_state state__; \ prandom_seed_state(&state__, (seed__)); \ state__; \ }) #define GPU_RND_STATE(name__, seed__) \ struct rnd_state name__ = GPU_RND_STATE_INITIALIZER(seed__) unsigned int *gpu_random_order(unsigned int count, struct rnd_state *state); void gpu_random_reorder(unsigned int *order, unsigned int count, struct rnd_state *state); u32 gpu_prandom_u32_max_state(u32 ep_ro, struct rnd_state *state); #endif /* !__GPU_RANDOM_H__ */