linux/drivers/gpu/drm/i915/display/intel_cdclk.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: MIT */
   2/*
   3 * Copyright © 2019 Intel Corporation
   4 */
   5
   6#ifndef __INTEL_CDCLK_H__
   7#define __INTEL_CDCLK_H__
   8
   9#include <linux/types.h>
  10
  11#include "intel_display.h"
  12
  13struct drm_i915_private;
  14struct intel_atomic_state;
  15struct intel_cdclk_state;
  16struct intel_crtc_state;
  17
  18struct intel_cdclk_vals {
  19        u16 refclk;
  20        u32 cdclk;
  21        u8 divider;     /* CD2X divider * 2 */
  22        u8 ratio;
  23};
  24
  25int intel_crtc_compute_min_cdclk(const struct intel_crtc_state *crtc_state);
  26void intel_cdclk_init(struct drm_i915_private *i915);
  27void intel_cdclk_uninit(struct drm_i915_private *i915);
  28void intel_init_cdclk_hooks(struct drm_i915_private *dev_priv);
  29void intel_update_max_cdclk(struct drm_i915_private *dev_priv);
  30void intel_update_cdclk(struct drm_i915_private *dev_priv);
  31void intel_update_rawclk(struct drm_i915_private *dev_priv);
  32bool intel_cdclk_needs_modeset(const struct intel_cdclk_state *a,
  33                               const struct intel_cdclk_state *b);
  34void intel_cdclk_swap_state(struct intel_atomic_state *state);
  35void
  36intel_set_cdclk_pre_plane_update(struct drm_i915_private *dev_priv,
  37                                 const struct intel_cdclk_state *old_state,
  38                                 const struct intel_cdclk_state *new_state,
  39                                 enum pipe pipe);
  40void
  41intel_set_cdclk_post_plane_update(struct drm_i915_private *dev_priv,
  42                                  const struct intel_cdclk_state *old_state,
  43                                  const struct intel_cdclk_state *new_state,
  44                                  enum pipe pipe);
  45void intel_dump_cdclk_state(const struct intel_cdclk_state *cdclk_state,
  46                            const char *context);
  47int intel_modeset_calc_cdclk(struct intel_atomic_state *state);
  48
  49#endif /* __INTEL_CDCLK_H__ */
  50