1 /* SPDX-License-Identifier: MIT */ 2 /* 3 * Copyright © 2019 Intel Corporation 4 */ 5 6 #ifndef __INTEL_DMC_H__ 7 #define __INTEL_DMC_H__ 8 9 #include <linux/types.h> 10 11 enum pipe; 12 struct drm_i915_private; 13 struct drm_printer; 14 15 void intel_dmc_init(struct drm_i915_private *i915); 16 void intel_dmc_load_program(struct drm_i915_private *i915); 17 void intel_dmc_disable_program(struct drm_i915_private *i915); 18 void intel_dmc_enable_pipe(struct drm_i915_private *i915, enum pipe pipe); 19 void intel_dmc_disable_pipe(struct drm_i915_private *i915, enum pipe pipe); 20 void intel_dmc_fini(struct drm_i915_private *i915); 21 void intel_dmc_suspend(struct drm_i915_private *i915); 22 void intel_dmc_resume(struct drm_i915_private *i915); 23 bool intel_dmc_has_payload(struct drm_i915_private *i915); 24 void intel_dmc_debugfs_register(struct drm_i915_private *i915); 25 void intel_dmc_print_error_state(struct drm_printer *p, 26 struct drm_i915_private *i915); 27 28 void assert_dmc_loaded(struct drm_i915_private *i915); 29 30 #endif /* __INTEL_DMC_H__ */ 31