@@ -641,8 +641,9 @@ static struct intel_crtc *single_enabled_crtc(struct drm_i915_private *dev_priv)
641641 return enabled ;
642642}
643643
644- static void pnv_update_wm (struct drm_i915_private * dev_priv )
644+ static void pnv_update_wm (struct intel_display * display )
645645{
646+ struct drm_i915_private * dev_priv = to_i915 (display -> drm );
646647 struct intel_crtc * crtc ;
647648 const struct cxsr_latency * latency ;
648649 u32 reg ;
@@ -2123,8 +2124,9 @@ static void vlv_optimize_watermarks(struct intel_atomic_state *state,
21232124 mutex_unlock (& dev_priv -> display .wm .wm_mutex );
21242125}
21252126
2126- static void i965_update_wm (struct drm_i915_private * dev_priv )
2127+ static void i965_update_wm (struct intel_display * display )
21272128{
2129+ struct drm_i915_private * dev_priv = to_i915 (display -> drm );
21282130 struct intel_crtc * crtc ;
21292131 int srwm = 1 ;
21302132 int cursor_sr = 16 ;
@@ -2216,8 +2218,9 @@ static struct intel_crtc *intel_crtc_for_plane(struct drm_i915_private *i915,
22162218 return NULL ;
22172219}
22182220
2219- static void i9xx_update_wm (struct drm_i915_private * dev_priv )
2221+ static void i9xx_update_wm (struct intel_display * display )
22202222{
2223+ struct drm_i915_private * dev_priv = to_i915 (display -> drm );
22212224 const struct intel_watermark_params * wm_info ;
22222225 u32 fwater_lo ;
22232226 u32 fwater_hi ;
@@ -2359,8 +2362,9 @@ static void i9xx_update_wm(struct drm_i915_private *dev_priv)
23592362 intel_set_memory_cxsr (dev_priv , true);
23602363}
23612364
2362- static void i845_update_wm (struct drm_i915_private * dev_priv )
2365+ static void i845_update_wm (struct intel_display * display )
23632366{
2367+ struct drm_i915_private * dev_priv = to_i915 (display -> drm );
23642368 struct intel_crtc * crtc ;
23652369 u32 fwater_lo ;
23662370 int planea_wm ;
@@ -2813,6 +2817,7 @@ static bool ilk_increase_wm_latency(struct drm_i915_private *dev_priv,
28132817
28142818static void snb_wm_latency_quirk (struct drm_i915_private * dev_priv )
28152819{
2820+ struct intel_display * display = & dev_priv -> display ;
28162821 bool changed ;
28172822
28182823 /*
@@ -2828,13 +2833,14 @@ static void snb_wm_latency_quirk(struct drm_i915_private *dev_priv)
28282833
28292834 drm_dbg_kms (& dev_priv -> drm ,
28302835 "WM latency values increased to avoid potential underruns\n" );
2831- intel_print_wm_latency (dev_priv , "Primary" , dev_priv -> display .wm .pri_latency );
2832- intel_print_wm_latency (dev_priv , "Sprite" , dev_priv -> display .wm .spr_latency );
2833- intel_print_wm_latency (dev_priv , "Cursor" , dev_priv -> display .wm .cur_latency );
2836+ intel_print_wm_latency (display , "Primary" , dev_priv -> display .wm .pri_latency );
2837+ intel_print_wm_latency (display , "Sprite" , dev_priv -> display .wm .spr_latency );
2838+ intel_print_wm_latency (display , "Cursor" , dev_priv -> display .wm .cur_latency );
28342839}
28352840
28362841static void snb_wm_lp3_irq_quirk (struct drm_i915_private * dev_priv )
28372842{
2843+ struct intel_display * display = & dev_priv -> display ;
28382844 /*
28392845 * On some SNB machines (Thinkpad X220 Tablet at least)
28402846 * LP3 usage can cause vblank interrupts to be lost.
@@ -2857,13 +2863,15 @@ static void snb_wm_lp3_irq_quirk(struct drm_i915_private *dev_priv)
28572863
28582864 drm_dbg_kms (& dev_priv -> drm ,
28592865 "LP3 watermarks disabled due to potential for lost interrupts\n" );
2860- intel_print_wm_latency (dev_priv , "Primary" , dev_priv -> display .wm .pri_latency );
2861- intel_print_wm_latency (dev_priv , "Sprite" , dev_priv -> display .wm .spr_latency );
2862- intel_print_wm_latency (dev_priv , "Cursor" , dev_priv -> display .wm .cur_latency );
2866+ intel_print_wm_latency (display , "Primary" , dev_priv -> display .wm .pri_latency );
2867+ intel_print_wm_latency (display , "Sprite" , dev_priv -> display .wm .spr_latency );
2868+ intel_print_wm_latency (display , "Cursor" , dev_priv -> display .wm .cur_latency );
28632869}
28642870
28652871static void ilk_setup_wm_latency (struct drm_i915_private * dev_priv )
28662872{
2873+ struct intel_display * display = & dev_priv -> display ;
2874+
28672875 if (IS_BROADWELL (dev_priv ) || IS_HASWELL (dev_priv ))
28682876 hsw_read_wm_latency (dev_priv , dev_priv -> display .wm .pri_latency );
28692877 else if (DISPLAY_VER (dev_priv ) >= 6 )
@@ -2879,9 +2887,9 @@ static void ilk_setup_wm_latency(struct drm_i915_private *dev_priv)
28792887 intel_fixup_spr_wm_latency (dev_priv , dev_priv -> display .wm .spr_latency );
28802888 intel_fixup_cur_wm_latency (dev_priv , dev_priv -> display .wm .cur_latency );
28812889
2882- intel_print_wm_latency (dev_priv , "Primary" , dev_priv -> display .wm .pri_latency );
2883- intel_print_wm_latency (dev_priv , "Sprite" , dev_priv -> display .wm .spr_latency );
2884- intel_print_wm_latency (dev_priv , "Cursor" , dev_priv -> display .wm .cur_latency );
2890+ intel_print_wm_latency (display , "Primary" , dev_priv -> display .wm .pri_latency );
2891+ intel_print_wm_latency (display , "Sprite" , dev_priv -> display .wm .spr_latency );
2892+ intel_print_wm_latency (display , "Cursor" , dev_priv -> display .wm .cur_latency );
28852893
28862894 if (DISPLAY_VER (dev_priv ) == 6 ) {
28872895 snb_wm_latency_quirk (dev_priv );
@@ -3759,8 +3767,9 @@ static void vlv_read_wm_values(struct drm_i915_private *dev_priv,
37593767#undef _FW_WM
37603768#undef _FW_WM_VLV
37613769
3762- static void g4x_wm_get_hw_state (struct drm_i915_private * dev_priv )
3770+ static void g4x_wm_get_hw_state (struct intel_display * display )
37633771{
3772+ struct drm_i915_private * dev_priv = to_i915 (display -> drm );
37643773 struct g4x_wm_values * wm = & dev_priv -> display .wm .g4x ;
37653774 struct intel_crtc * crtc ;
37663775
@@ -3852,9 +3861,9 @@ static void g4x_wm_get_hw_state(struct drm_i915_private *dev_priv)
38523861 str_yes_no (wm -> fbc_en ));
38533862}
38543863
3855- static void g4x_wm_sanitize (struct drm_i915_private * dev_priv )
3864+ static void g4x_wm_sanitize (struct intel_display * display )
38563865{
3857- struct intel_display * display = & dev_priv -> display ;
3866+ struct drm_i915_private * dev_priv = to_i915 ( display -> drm ) ;
38583867 struct intel_plane * plane ;
38593868 struct intel_crtc * crtc ;
38603869
@@ -3902,8 +3911,9 @@ static void g4x_wm_sanitize(struct drm_i915_private *dev_priv)
39023911 mutex_unlock (& dev_priv -> display .wm .wm_mutex );
39033912}
39043913
3905- static void vlv_wm_get_hw_state (struct drm_i915_private * dev_priv )
3914+ static void vlv_wm_get_hw_state (struct intel_display * display )
39063915{
3916+ struct drm_i915_private * dev_priv = to_i915 (display -> drm );
39073917 struct vlv_wm_values * wm = & dev_priv -> display .wm .vlv ;
39083918 struct intel_crtc * crtc ;
39093919 u32 val ;
@@ -4002,9 +4012,9 @@ static void vlv_wm_get_hw_state(struct drm_i915_private *dev_priv)
40024012 wm -> sr .plane , wm -> sr .cursor , wm -> level , wm -> cxsr );
40034013}
40044014
4005- static void vlv_wm_sanitize (struct drm_i915_private * dev_priv )
4015+ static void vlv_wm_sanitize (struct intel_display * display )
40064016{
4007- struct intel_display * display = & dev_priv -> display ;
4017+ struct drm_i915_private * dev_priv = to_i915 ( display -> drm ) ;
40084018 struct intel_plane * plane ;
40094019 struct intel_crtc * crtc ;
40104020
@@ -4065,8 +4075,9 @@ static void ilk_init_lp_watermarks(struct drm_i915_private *dev_priv)
40654075 */
40664076}
40674077
4068- static void ilk_wm_get_hw_state (struct drm_i915_private * dev_priv )
4078+ static void ilk_wm_get_hw_state (struct intel_display * display )
40694079{
4080+ struct drm_i915_private * dev_priv = to_i915 (display -> drm );
40704081 struct ilk_wm_values * hw = & dev_priv -> display .wm .hw ;
40714082 struct intel_crtc * crtc ;
40724083
0 commit comments