xref: /openbmc/linux/drivers/gpu/drm/i915/display/skl_scaler.h (revision 9f771739a04919226081a107167596de75108fbb)
1714b1cdbSDave Airlie /* SPDX-License-Identifier: MIT */
2714b1cdbSDave Airlie /*
3714b1cdbSDave Airlie  * Copyright © 2020 Intel Corporation
4714b1cdbSDave Airlie  */
5714b1cdbSDave Airlie #ifndef INTEL_SCALER_H
6714b1cdbSDave Airlie #define INTEL_SCALER_H
7714b1cdbSDave Airlie 
8714b1cdbSDave Airlie #include <linux/types.h>
9714b1cdbSDave Airlie 
10714b1cdbSDave Airlie enum drm_scaling_filter;
11714b1cdbSDave Airlie enum pipe;
128976b182SVille Syrjälä struct drm_i915_private;
138976b182SVille Syrjälä struct intel_crtc;
148976b182SVille Syrjälä struct intel_crtc_state;
158976b182SVille Syrjälä struct intel_plane;
168976b182SVille Syrjälä struct intel_plane_state;
17714b1cdbSDave Airlie 
18714b1cdbSDave Airlie int skl_update_scaler_crtc(struct intel_crtc_state *crtc_state);
19714b1cdbSDave Airlie 
20714b1cdbSDave Airlie int skl_update_scaler_plane(struct intel_crtc_state *crtc_state,
21714b1cdbSDave Airlie 			    struct intel_plane_state *plane_state);
22714b1cdbSDave Airlie 
238976b182SVille Syrjälä int intel_atomic_setup_scalers(struct drm_i915_private *dev_priv,
248976b182SVille Syrjälä 			       struct intel_crtc *intel_crtc,
258976b182SVille Syrjälä 			       struct intel_crtc_state *crtc_state);
268976b182SVille Syrjälä 
27714b1cdbSDave Airlie void skl_pfit_enable(const struct intel_crtc_state *crtc_state);
28714b1cdbSDave Airlie 
29714b1cdbSDave Airlie void skl_program_plane_scaler(struct intel_plane *plane,
30714b1cdbSDave Airlie 			      const struct intel_crtc_state *crtc_state,
31714b1cdbSDave Airlie 			      const struct intel_plane_state *plane_state);
32714b1cdbSDave Airlie void skl_detach_scalers(const struct intel_crtc_state *crtc_state);
33714b1cdbSDave Airlie void skl_scaler_disable(const struct intel_crtc_state *old_crtc_state);
348976b182SVille Syrjälä 
35*597421a8SVille Syrjälä void skl_scaler_get_config(struct intel_crtc_state *crtc_state);
36*597421a8SVille Syrjälä 
37714b1cdbSDave Airlie #endif
38