#include <linux/prime_numbers.h>
#include "gt/intel_engine_pm.h"
#include "gt/intel_gpu_commands.h"
#include "gt/intel_gt.h"
#include "gt/intel_gt_pm.h"
#include "gt/intel_ring.h"
#include "i915_selftest.h"
#include "selftests/i915_random.h"
struct context { … };
static int cpu_set(struct context *ctx, unsigned long offset, u32 v)
{ … }
static int cpu_get(struct context *ctx, unsigned long offset, u32 *v)
{ … }
static int gtt_set(struct context *ctx, unsigned long offset, u32 v)
{ … }
static int gtt_get(struct context *ctx, unsigned long offset, u32 *v)
{ … }
static int wc_set(struct context *ctx, unsigned long offset, u32 v)
{ … }
static int wc_get(struct context *ctx, unsigned long offset, u32 *v)
{ … }
static int gpu_set(struct context *ctx, unsigned long offset, u32 v)
{ … }
static bool always_valid(struct context *ctx)
{ … }
static bool needs_fence_registers(struct context *ctx)
{ … }
static bool needs_mi_store_dword(struct context *ctx)
{ … }
static const struct igt_coherency_mode { … } igt_coherency_mode[] = …;
static struct intel_engine_cs *
random_engine(struct drm_i915_private *i915, struct rnd_state *prng)
{ … }
static int igt_gem_coherency(void *arg)
{ … }
int i915_gem_coherency_live_selftests(struct drm_i915_private *i915)
{ … }