1
linux/drivers/gpu/drm/lib/drm_random.h
Arunpravin 92937f170d drm/selftests: add drm buddy alloc range testcase
- add a test to check the range allocation
- export get_buddy() function in drm_buddy.c
- export drm_prandom_u32_max_state() in lib/drm_random.c
- include helper functions
- include prime number header file

v2:
  - add drm_get_buddy() function description (Matthew Auld)
  - removed unnecessary test succeeded print

Signed-off-by: Arunpravin <Arunpravin.PaneerSelvam@amd.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Acked-by: Christian König <christian.koenig@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220222174845.2175-3-Arunpravin.PaneerSelvam@amd.com
Signed-off-by: Christian König <christian.koenig@amd.com>
2022-02-23 10:44:43 +01:00

29 lines
795 B
C

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef __DRM_RANDOM_H__
#define __DRM_RANDOM_H__
/* This is a temporary home for a couple of utility functions that should
* be transposed to lib/ at the earliest convenience.
*/
#include <linux/random.h>
#define DRM_RND_STATE_INITIALIZER(seed__) ({ \
struct rnd_state state__; \
prandom_seed_state(&state__, (seed__)); \
state__; \
})
#define DRM_RND_STATE(name__, seed__) \
struct rnd_state name__ = DRM_RND_STATE_INITIALIZER(seed__)
unsigned int *drm_random_order(unsigned int count,
struct rnd_state *state);
void drm_random_reorder(unsigned int *order,
unsigned int count,
struct rnd_state *state);
u32 drm_prandom_u32_max_state(u32 ep_ro,
struct rnd_state *state);
#endif /* !__DRM_RANDOM_H__ */