mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
synced 2026-04-25 00:52:45 -04:00
drm/i915: Introduce proper dbuf state
Add a global state to track the dbuf slices. Gets rid of all the nasty coupling between state->modeset and dbuf recomputation. Also we can now totally nuke state->active_pipe_changes. dev_priv->wm.distrust_bios_wm still remains, but that too will get nuked soon. Cc: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20200225171125.28885-9-ville.syrjala@linux.intel.com Reviewed-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
This commit is contained in:
@@ -8,6 +8,8 @@
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
#include "display/intel_global_state.h"
|
||||
|
||||
#include "i915_reg.h"
|
||||
#include "display/intel_bw.h"
|
||||
|
||||
@@ -63,4 +65,24 @@ void intel_enable_ipc(struct drm_i915_private *dev_priv);
|
||||
|
||||
bool intel_set_memory_cxsr(struct drm_i915_private *dev_priv, bool enable);
|
||||
|
||||
struct intel_dbuf_state {
|
||||
struct intel_global_state base;
|
||||
|
||||
u8 enabled_slices;
|
||||
u8 active_pipes;
|
||||
};
|
||||
|
||||
int intel_dbuf_init(struct drm_i915_private *dev_priv);
|
||||
|
||||
struct intel_dbuf_state *
|
||||
intel_atomic_get_dbuf_state(struct intel_atomic_state *state);
|
||||
|
||||
#define to_intel_dbuf_state(x) container_of((x), struct intel_dbuf_state, base)
|
||||
#define intel_atomic_get_old_dbuf_state(state) \
|
||||
to_intel_dbuf_state(intel_atomic_get_old_global_obj_state(state, &to_i915(state->base.dev)->dbuf.obj))
|
||||
#define intel_atomic_get_new_dbuf_state(state) \
|
||||
to_intel_dbuf_state(intel_atomic_get_new_global_obj_state(state, &to_i915(state->base.dev)->dbuf.obj))
|
||||
|
||||
int intel_dbuf_init(struct drm_i915_private *dev_priv);
|
||||
|
||||
#endif /* __INTEL_PM_H__ */
|
||||
|
||||
Reference in New Issue
Block a user