132f9402dSAnusha Srivatsa /* SPDX-License-Identifier: MIT */ 232f9402dSAnusha Srivatsa /* 332f9402dSAnusha Srivatsa * Copyright © 2019 Intel Corporation 432f9402dSAnusha Srivatsa */ 532f9402dSAnusha Srivatsa 632f9402dSAnusha Srivatsa #ifndef __INTEL_DMC_H__ 732f9402dSAnusha Srivatsa #define __INTEL_DMC_H__ 832f9402dSAnusha Srivatsa 9*e81a3c12SJani Nikula #include <linux/types.h> 103ed131e5SAnusha Srivatsa 115efde05fSJani Nikula struct drm_i915_error_state_buf; 1232f9402dSAnusha Srivatsa struct drm_i915_private; 133af2ff08SImre Deak enum pipe; 143af2ff08SImre Deak 15ac7215c4SJani Nikula void intel_dmc_init(struct drm_i915_private *i915); 1632f9402dSAnusha Srivatsa void intel_dmc_load_program(struct drm_i915_private *i915); 17fa6a4cdeSImre Deak void intel_dmc_disable_program(struct drm_i915_private *i915); 183af2ff08SImre Deak void intel_dmc_enable_pipe(struct drm_i915_private *i915, enum pipe pipe); 193af2ff08SImre Deak void intel_dmc_disable_pipe(struct drm_i915_private *i915, enum pipe pipe); 20ac7215c4SJani Nikula void intel_dmc_fini(struct drm_i915_private *i915); 21ac7215c4SJani Nikula void intel_dmc_suspend(struct drm_i915_private *i915); 22ac7215c4SJani Nikula void intel_dmc_resume(struct drm_i915_private *i915); 2303256487SAnusha Srivatsa bool intel_dmc_has_payload(struct drm_i915_private *i915); 24f0147745SJani Nikula void intel_dmc_debugfs_register(struct drm_i915_private *i915); 255efde05fSJani Nikula void intel_dmc_print_error_state(struct drm_i915_error_state_buf *m, 265efde05fSJani Nikula struct drm_i915_private *i915); 2732f9402dSAnusha Srivatsa 28790daf74SJani Nikula void assert_dmc_loaded(struct drm_i915_private *i915); 29790daf74SJani Nikula 3032f9402dSAnusha Srivatsa #endif /* __INTEL_DMC_H__ */ 31