drm/i915: extract i915_gem_shrinker.h from i915_drv.h
It used to be handy that we only had a couple of headers, but over time i915_drv.h has become unwieldy. Extract declarations to a separate header file corresponding to the implementation module, clarifying the modularity of the driver. Ensure the new header is self-contained, and do so with minimal further includes, using forward declarations as needed. Include the new header from i915_drv.h to avoid sprinkling includes all over the place; this can be changed as a follow-up if necessary. No functional changes. Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/b8406f72ce5bfb8863a54003b756ebae8b17c9cb.1565271681.git.jani.nikula@intel.com
This commit is contained in:
parent
6401fafbec
commit
be80bc3658
31
drivers/gpu/drm/i915/gem/i915_gem_shrinker.h
Normal file
31
drivers/gpu/drm/i915/gem/i915_gem_shrinker.h
Normal file
@ -0,0 +1,31 @@
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
/*
|
||||
* Copyright © 2019 Intel Corporation
|
||||
*/
|
||||
|
||||
#ifndef __I915_GEM_SHRINKER_H__
|
||||
#define __I915_GEM_SHRINKER_H__
|
||||
|
||||
#include <linux/bits.h>
|
||||
|
||||
struct drm_i915_private;
|
||||
struct mutex;
|
||||
|
||||
/* i915_gem_shrinker.c */
|
||||
unsigned long i915_gem_shrink(struct drm_i915_private *i915,
|
||||
unsigned long target,
|
||||
unsigned long *nr_scanned,
|
||||
unsigned flags);
|
||||
#define I915_SHRINK_UNBOUND BIT(0)
|
||||
#define I915_SHRINK_BOUND BIT(1)
|
||||
#define I915_SHRINK_ACTIVE BIT(2)
|
||||
#define I915_SHRINK_VMAPS BIT(3)
|
||||
#define I915_SHRINK_WRITEBACK BIT(4)
|
||||
|
||||
unsigned long i915_gem_shrink_all(struct drm_i915_private *i915);
|
||||
void i915_gem_driver_register__shrinker(struct drm_i915_private *i915);
|
||||
void i915_gem_driver_unregister__shrinker(struct drm_i915_private *i915);
|
||||
void i915_gem_shrinker_taints_mutex(struct drm_i915_private *i915,
|
||||
struct mutex *mutex);
|
||||
|
||||
#endif /* __I915_GEM_SHRINKER_H__ */
|
@ -71,6 +71,7 @@
|
||||
#include "display/intel_opregion.h"
|
||||
|
||||
#include "gem/i915_gem_context_types.h"
|
||||
#include "gem/i915_gem_shrinker.h"
|
||||
#include "gem/i915_gem_stolen.h"
|
||||
|
||||
#include "gt/intel_lrc.h"
|
||||
@ -2436,23 +2437,6 @@ struct drm_i915_gem_object *
|
||||
i915_gem_object_create_internal(struct drm_i915_private *dev_priv,
|
||||
phys_addr_t size);
|
||||
|
||||
/* i915_gem_shrinker.c */
|
||||
unsigned long i915_gem_shrink(struct drm_i915_private *i915,
|
||||
unsigned long target,
|
||||
unsigned long *nr_scanned,
|
||||
unsigned flags);
|
||||
#define I915_SHRINK_UNBOUND BIT(0)
|
||||
#define I915_SHRINK_BOUND BIT(1)
|
||||
#define I915_SHRINK_ACTIVE BIT(2)
|
||||
#define I915_SHRINK_VMAPS BIT(3)
|
||||
#define I915_SHRINK_WRITEBACK BIT(4)
|
||||
|
||||
unsigned long i915_gem_shrink_all(struct drm_i915_private *i915);
|
||||
void i915_gem_driver_register__shrinker(struct drm_i915_private *i915);
|
||||
void i915_gem_driver_unregister__shrinker(struct drm_i915_private *i915);
|
||||
void i915_gem_shrinker_taints_mutex(struct drm_i915_private *i915,
|
||||
struct mutex *mutex);
|
||||
|
||||
/* i915_gem_tiling.c */
|
||||
static inline bool i915_gem_object_needs_bit17_swizzle(struct drm_i915_gem_object *obj)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user