cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

intel_migrate.h (1812B)


      1/* SPDX-License-Identifier: MIT */
      2/*
      3 * Copyright © 2020 Intel Corporation
      4 */
      5
      6#ifndef __INTEL_MIGRATE__
      7#define __INTEL_MIGRATE__
      8
      9#include <linux/types.h>
     10
     11#include "intel_migrate_types.h"
     12
     13struct dma_fence;
     14struct i915_deps;
     15struct i915_request;
     16struct i915_gem_ww_ctx;
     17struct intel_gt;
     18struct scatterlist;
     19enum i915_cache_level;
     20
     21int intel_migrate_init(struct intel_migrate *m, struct intel_gt *gt);
     22
     23struct intel_context *intel_migrate_create_context(struct intel_migrate *m);
     24
     25int intel_migrate_copy(struct intel_migrate *m,
     26		       struct i915_gem_ww_ctx *ww,
     27		       const struct i915_deps *deps,
     28		       struct scatterlist *src,
     29		       enum i915_cache_level src_cache_level,
     30		       bool src_is_lmem,
     31		       struct scatterlist *dst,
     32		       enum i915_cache_level dst_cache_level,
     33		       bool dst_is_lmem,
     34		       struct i915_request **out);
     35
     36int intel_context_migrate_copy(struct intel_context *ce,
     37			       const struct i915_deps *deps,
     38			       struct scatterlist *src,
     39			       enum i915_cache_level src_cache_level,
     40			       bool src_is_lmem,
     41			       struct scatterlist *dst,
     42			       enum i915_cache_level dst_cache_level,
     43			       bool dst_is_lmem,
     44			       struct i915_request **out);
     45
     46int
     47intel_migrate_clear(struct intel_migrate *m,
     48		    struct i915_gem_ww_ctx *ww,
     49		    const struct i915_deps *deps,
     50		    struct scatterlist *sg,
     51		    enum i915_cache_level cache_level,
     52		    bool is_lmem,
     53		    u32 value,
     54		    struct i915_request **out);
     55int
     56intel_context_migrate_clear(struct intel_context *ce,
     57			    const struct i915_deps *deps,
     58			    struct scatterlist *sg,
     59			    enum i915_cache_level cache_level,
     60			    bool is_lmem,
     61			    u32 value,
     62			    struct i915_request **out);
     63
     64void intel_migrate_fini(struct intel_migrate *m);
     65
     66#endif /* __INTEL_MIGRATE__ */