diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_pm.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_pm.c | 110 |
1 files changed, 55 insertions, 55 deletions
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c index 814b0dfaf640..0560b7c90244 100644 --- a/drivers/gpu/drm/i915/intel_pm.c +++ b/drivers/gpu/drm/i915/intel_pm.c | |||
@@ -57,7 +57,7 @@ | |||
57 | 57 | ||
58 | static void gen9_init_clock_gating(struct drm_device *dev) | 58 | static void gen9_init_clock_gating(struct drm_device *dev) |
59 | { | 59 | { |
60 | struct drm_i915_private *dev_priv = dev->dev_private; | 60 | struct drm_i915_private *dev_priv = to_i915(dev); |
61 | 61 | ||
62 | /* See Bspec note for PSR2_CTL bit 31, Wa#828:skl,bxt,kbl */ | 62 | /* See Bspec note for PSR2_CTL bit 31, Wa#828:skl,bxt,kbl */ |
63 | I915_WRITE(CHICKEN_PAR1_1, | 63 | I915_WRITE(CHICKEN_PAR1_1, |
@@ -83,7 +83,7 @@ static void gen9_init_clock_gating(struct drm_device *dev) | |||
83 | 83 | ||
84 | static void bxt_init_clock_gating(struct drm_device *dev) | 84 | static void bxt_init_clock_gating(struct drm_device *dev) |
85 | { | 85 | { |
86 | struct drm_i915_private *dev_priv = dev->dev_private; | 86 | struct drm_i915_private *dev_priv = to_i915(dev); |
87 | 87 | ||
88 | gen9_init_clock_gating(dev); | 88 | gen9_init_clock_gating(dev); |
89 | 89 | ||
@@ -109,7 +109,7 @@ static void bxt_init_clock_gating(struct drm_device *dev) | |||
109 | 109 | ||
110 | static void i915_pineview_get_mem_freq(struct drm_device *dev) | 110 | static void i915_pineview_get_mem_freq(struct drm_device *dev) |
111 | { | 111 | { |
112 | struct drm_i915_private *dev_priv = dev->dev_private; | 112 | struct drm_i915_private *dev_priv = to_i915(dev); |
113 | u32 tmp; | 113 | u32 tmp; |
114 | 114 | ||
115 | tmp = I915_READ(CLKCFG); | 115 | tmp = I915_READ(CLKCFG); |
@@ -148,7 +148,7 @@ static void i915_pineview_get_mem_freq(struct drm_device *dev) | |||
148 | 148 | ||
149 | static void i915_ironlake_get_mem_freq(struct drm_device *dev) | 149 | static void i915_ironlake_get_mem_freq(struct drm_device *dev) |
150 | { | 150 | { |
151 | struct drm_i915_private *dev_priv = dev->dev_private; | 151 | struct drm_i915_private *dev_priv = to_i915(dev); |
152 | u16 ddrpll, csipll; | 152 | u16 ddrpll, csipll; |
153 | 153 | ||
154 | ddrpll = I915_READ16(DDRMPLL1); | 154 | ddrpll = I915_READ16(DDRMPLL1); |
@@ -375,7 +375,7 @@ static const int pessimal_latency_ns = 5000; | |||
375 | static int vlv_get_fifo_size(struct drm_device *dev, | 375 | static int vlv_get_fifo_size(struct drm_device *dev, |
376 | enum pipe pipe, int plane) | 376 | enum pipe pipe, int plane) |
377 | { | 377 | { |
378 | struct drm_i915_private *dev_priv = dev->dev_private; | 378 | struct drm_i915_private *dev_priv = to_i915(dev); |
379 | int sprite0_start, sprite1_start, size; | 379 | int sprite0_start, sprite1_start, size; |
380 | 380 | ||
381 | switch (pipe) { | 381 | switch (pipe) { |
@@ -426,7 +426,7 @@ static int vlv_get_fifo_size(struct drm_device *dev, | |||
426 | 426 | ||
427 | static int i9xx_get_fifo_size(struct drm_device *dev, int plane) | 427 | static int i9xx_get_fifo_size(struct drm_device *dev, int plane) |
428 | { | 428 | { |
429 | struct drm_i915_private *dev_priv = dev->dev_private; | 429 | struct drm_i915_private *dev_priv = to_i915(dev); |
430 | uint32_t dsparb = I915_READ(DSPARB); | 430 | uint32_t dsparb = I915_READ(DSPARB); |
431 | int size; | 431 | int size; |
432 | 432 | ||
@@ -442,7 +442,7 @@ static int i9xx_get_fifo_size(struct drm_device *dev, int plane) | |||
442 | 442 | ||
443 | static int i830_get_fifo_size(struct drm_device *dev, int plane) | 443 | static int i830_get_fifo_size(struct drm_device *dev, int plane) |
444 | { | 444 | { |
445 | struct drm_i915_private *dev_priv = dev->dev_private; | 445 | struct drm_i915_private *dev_priv = to_i915(dev); |
446 | uint32_t dsparb = I915_READ(DSPARB); | 446 | uint32_t dsparb = I915_READ(DSPARB); |
447 | int size; | 447 | int size; |
448 | 448 | ||
@@ -459,7 +459,7 @@ static int i830_get_fifo_size(struct drm_device *dev, int plane) | |||
459 | 459 | ||
460 | static int i845_get_fifo_size(struct drm_device *dev, int plane) | 460 | static int i845_get_fifo_size(struct drm_device *dev, int plane) |
461 | { | 461 | { |
462 | struct drm_i915_private *dev_priv = dev->dev_private; | 462 | struct drm_i915_private *dev_priv = to_i915(dev); |
463 | uint32_t dsparb = I915_READ(DSPARB); | 463 | uint32_t dsparb = I915_READ(DSPARB); |
464 | int size; | 464 | int size; |
465 | 465 | ||
@@ -637,7 +637,7 @@ static struct drm_crtc *single_enabled_crtc(struct drm_device *dev) | |||
637 | static void pineview_update_wm(struct drm_crtc *unused_crtc) | 637 | static void pineview_update_wm(struct drm_crtc *unused_crtc) |
638 | { | 638 | { |
639 | struct drm_device *dev = unused_crtc->dev; | 639 | struct drm_device *dev = unused_crtc->dev; |
640 | struct drm_i915_private *dev_priv = dev->dev_private; | 640 | struct drm_i915_private *dev_priv = to_i915(dev); |
641 | struct drm_crtc *crtc; | 641 | struct drm_crtc *crtc; |
642 | const struct cxsr_latency *latency; | 642 | const struct cxsr_latency *latency; |
643 | u32 reg; | 643 | u32 reg; |
@@ -934,7 +934,7 @@ static unsigned int vlv_wm_method2(unsigned int pixel_rate, | |||
934 | 934 | ||
935 | static void vlv_setup_wm_latency(struct drm_device *dev) | 935 | static void vlv_setup_wm_latency(struct drm_device *dev) |
936 | { | 936 | { |
937 | struct drm_i915_private *dev_priv = dev->dev_private; | 937 | struct drm_i915_private *dev_priv = to_i915(dev); |
938 | 938 | ||
939 | /* all latencies in usec */ | 939 | /* all latencies in usec */ |
940 | dev_priv->wm.pri_latency[VLV_WM_LEVEL_PM2] = 3; | 940 | dev_priv->wm.pri_latency[VLV_WM_LEVEL_PM2] = 3; |
@@ -1325,7 +1325,7 @@ static void vlv_merge_wm(struct drm_device *dev, | |||
1325 | static void vlv_update_wm(struct drm_crtc *crtc) | 1325 | static void vlv_update_wm(struct drm_crtc *crtc) |
1326 | { | 1326 | { |
1327 | struct drm_device *dev = crtc->dev; | 1327 | struct drm_device *dev = crtc->dev; |
1328 | struct drm_i915_private *dev_priv = dev->dev_private; | 1328 | struct drm_i915_private *dev_priv = to_i915(dev); |
1329 | struct intel_crtc *intel_crtc = to_intel_crtc(crtc); | 1329 | struct intel_crtc *intel_crtc = to_intel_crtc(crtc); |
1330 | enum pipe pipe = intel_crtc->pipe; | 1330 | enum pipe pipe = intel_crtc->pipe; |
1331 | struct vlv_wm_values wm = {}; | 1331 | struct vlv_wm_values wm = {}; |
@@ -1381,7 +1381,7 @@ static void g4x_update_wm(struct drm_crtc *crtc) | |||
1381 | { | 1381 | { |
1382 | struct drm_device *dev = crtc->dev; | 1382 | struct drm_device *dev = crtc->dev; |
1383 | static const int sr_latency_ns = 12000; | 1383 | static const int sr_latency_ns = 12000; |
1384 | struct drm_i915_private *dev_priv = dev->dev_private; | 1384 | struct drm_i915_private *dev_priv = to_i915(dev); |
1385 | int planea_wm, planeb_wm, cursora_wm, cursorb_wm; | 1385 | int planea_wm, planeb_wm, cursora_wm, cursorb_wm; |
1386 | int plane_sr, cursor_sr; | 1386 | int plane_sr, cursor_sr; |
1387 | unsigned int enabled = 0; | 1387 | unsigned int enabled = 0; |
@@ -1438,7 +1438,7 @@ static void g4x_update_wm(struct drm_crtc *crtc) | |||
1438 | static void i965_update_wm(struct drm_crtc *unused_crtc) | 1438 | static void i965_update_wm(struct drm_crtc *unused_crtc) |
1439 | { | 1439 | { |
1440 | struct drm_device *dev = unused_crtc->dev; | 1440 | struct drm_device *dev = unused_crtc->dev; |
1441 | struct drm_i915_private *dev_priv = dev->dev_private; | 1441 | struct drm_i915_private *dev_priv = to_i915(dev); |
1442 | struct drm_crtc *crtc; | 1442 | struct drm_crtc *crtc; |
1443 | int srwm = 1; | 1443 | int srwm = 1; |
1444 | int cursor_sr = 16; | 1444 | int cursor_sr = 16; |
@@ -1512,7 +1512,7 @@ static void i965_update_wm(struct drm_crtc *unused_crtc) | |||
1512 | static void i9xx_update_wm(struct drm_crtc *unused_crtc) | 1512 | static void i9xx_update_wm(struct drm_crtc *unused_crtc) |
1513 | { | 1513 | { |
1514 | struct drm_device *dev = unused_crtc->dev; | 1514 | struct drm_device *dev = unused_crtc->dev; |
1515 | struct drm_i915_private *dev_priv = dev->dev_private; | 1515 | struct drm_i915_private *dev_priv = to_i915(dev); |
1516 | const struct intel_watermark_params *wm_info; | 1516 | const struct intel_watermark_params *wm_info; |
1517 | uint32_t fwater_lo; | 1517 | uint32_t fwater_lo; |
1518 | uint32_t fwater_hi; | 1518 | uint32_t fwater_hi; |
@@ -1642,7 +1642,7 @@ static void i9xx_update_wm(struct drm_crtc *unused_crtc) | |||
1642 | static void i845_update_wm(struct drm_crtc *unused_crtc) | 1642 | static void i845_update_wm(struct drm_crtc *unused_crtc) |
1643 | { | 1643 | { |
1644 | struct drm_device *dev = unused_crtc->dev; | 1644 | struct drm_device *dev = unused_crtc->dev; |
1645 | struct drm_i915_private *dev_priv = dev->dev_private; | 1645 | struct drm_i915_private *dev_priv = to_i915(dev); |
1646 | struct drm_crtc *crtc; | 1646 | struct drm_crtc *crtc; |
1647 | const struct drm_display_mode *adjusted_mode; | 1647 | const struct drm_display_mode *adjusted_mode; |
1648 | uint32_t fwater_lo; | 1648 | uint32_t fwater_lo; |
@@ -2070,7 +2070,7 @@ hsw_compute_linetime_wm(const struct intel_crtc_state *cstate) | |||
2070 | 2070 | ||
2071 | static void intel_read_wm_latency(struct drm_device *dev, uint16_t wm[8]) | 2071 | static void intel_read_wm_latency(struct drm_device *dev, uint16_t wm[8]) |
2072 | { | 2072 | { |
2073 | struct drm_i915_private *dev_priv = dev->dev_private; | 2073 | struct drm_i915_private *dev_priv = to_i915(dev); |
2074 | 2074 | ||
2075 | if (IS_GEN9(dev)) { | 2075 | if (IS_GEN9(dev)) { |
2076 | uint32_t val; | 2076 | uint32_t val; |
@@ -2250,7 +2250,7 @@ static bool ilk_increase_wm_latency(struct drm_i915_private *dev_priv, | |||
2250 | 2250 | ||
2251 | static void snb_wm_latency_quirk(struct drm_device *dev) | 2251 | static void snb_wm_latency_quirk(struct drm_device *dev) |
2252 | { | 2252 | { |
2253 | struct drm_i915_private *dev_priv = dev->dev_private; | 2253 | struct drm_i915_private *dev_priv = to_i915(dev); |
2254 | bool changed; | 2254 | bool changed; |
2255 | 2255 | ||
2256 | /* | 2256 | /* |
@@ -2272,7 +2272,7 @@ static void snb_wm_latency_quirk(struct drm_device *dev) | |||
2272 | 2272 | ||
2273 | static void ilk_setup_wm_latency(struct drm_device *dev) | 2273 | static void ilk_setup_wm_latency(struct drm_device *dev) |
2274 | { | 2274 | { |
2275 | struct drm_i915_private *dev_priv = dev->dev_private; | 2275 | struct drm_i915_private *dev_priv = to_i915(dev); |
2276 | 2276 | ||
2277 | intel_read_wm_latency(dev, dev_priv->wm.pri_latency); | 2277 | intel_read_wm_latency(dev, dev_priv->wm.pri_latency); |
2278 | 2278 | ||
@@ -2294,7 +2294,7 @@ static void ilk_setup_wm_latency(struct drm_device *dev) | |||
2294 | 2294 | ||
2295 | static void skl_setup_wm_latency(struct drm_device *dev) | 2295 | static void skl_setup_wm_latency(struct drm_device *dev) |
2296 | { | 2296 | { |
2297 | struct drm_i915_private *dev_priv = dev->dev_private; | 2297 | struct drm_i915_private *dev_priv = to_i915(dev); |
2298 | 2298 | ||
2299 | intel_read_wm_latency(dev, dev_priv->wm.skl_latency); | 2299 | intel_read_wm_latency(dev, dev_priv->wm.skl_latency); |
2300 | intel_print_wm_latency(dev, "Gen9 Plane", dev_priv->wm.skl_latency); | 2300 | intel_print_wm_latency(dev, "Gen9 Plane", dev_priv->wm.skl_latency); |
@@ -2330,7 +2330,7 @@ static int ilk_compute_pipe_wm(struct intel_crtc_state *cstate) | |||
2330 | struct intel_crtc *intel_crtc = to_intel_crtc(cstate->base.crtc); | 2330 | struct intel_crtc *intel_crtc = to_intel_crtc(cstate->base.crtc); |
2331 | struct intel_pipe_wm *pipe_wm; | 2331 | struct intel_pipe_wm *pipe_wm; |
2332 | struct drm_device *dev = state->dev; | 2332 | struct drm_device *dev = state->dev; |
2333 | const struct drm_i915_private *dev_priv = dev->dev_private; | 2333 | const struct drm_i915_private *dev_priv = to_i915(dev); |
2334 | struct intel_plane *intel_plane; | 2334 | struct intel_plane *intel_plane; |
2335 | struct intel_plane_state *pristate = NULL; | 2335 | struct intel_plane_state *pristate = NULL; |
2336 | struct intel_plane_state *sprstate = NULL; | 2336 | struct intel_plane_state *sprstate = NULL; |
@@ -2505,7 +2505,7 @@ static void ilk_wm_merge(struct drm_device *dev, | |||
2505 | const struct ilk_wm_maximums *max, | 2505 | const struct ilk_wm_maximums *max, |
2506 | struct intel_pipe_wm *merged) | 2506 | struct intel_pipe_wm *merged) |
2507 | { | 2507 | { |
2508 | struct drm_i915_private *dev_priv = dev->dev_private; | 2508 | struct drm_i915_private *dev_priv = to_i915(dev); |
2509 | int level, max_level = ilk_wm_max_level(dev); | 2509 | int level, max_level = ilk_wm_max_level(dev); |
2510 | int last_enabled_level = max_level; | 2510 | int last_enabled_level = max_level; |
2511 | 2511 | ||
@@ -2565,7 +2565,7 @@ static int ilk_wm_lp_to_level(int wm_lp, const struct intel_pipe_wm *pipe_wm) | |||
2565 | /* The value we need to program into the WM_LPx latency field */ | 2565 | /* The value we need to program into the WM_LPx latency field */ |
2566 | static unsigned int ilk_wm_lp_latency(struct drm_device *dev, int level) | 2566 | static unsigned int ilk_wm_lp_latency(struct drm_device *dev, int level) |
2567 | { | 2567 | { |
2568 | struct drm_i915_private *dev_priv = dev->dev_private; | 2568 | struct drm_i915_private *dev_priv = to_i915(dev); |
2569 | 2569 | ||
2570 | if (IS_HASWELL(dev) || IS_BROADWELL(dev)) | 2570 | if (IS_HASWELL(dev) || IS_BROADWELL(dev)) |
2571 | return 2 * level; | 2571 | return 2 * level; |
@@ -2840,7 +2840,7 @@ static void ilk_write_wm_values(struct drm_i915_private *dev_priv, | |||
2840 | 2840 | ||
2841 | bool ilk_disable_lp_wm(struct drm_device *dev) | 2841 | bool ilk_disable_lp_wm(struct drm_device *dev) |
2842 | { | 2842 | { |
2843 | struct drm_i915_private *dev_priv = dev->dev_private; | 2843 | struct drm_i915_private *dev_priv = to_i915(dev); |
2844 | 2844 | ||
2845 | return _ilk_disable_lp_wm(dev_priv, WM_DIRTY_LP_ALL); | 2845 | return _ilk_disable_lp_wm(dev_priv, WM_DIRTY_LP_ALL); |
2846 | } | 2846 | } |
@@ -3595,7 +3595,7 @@ static int skl_build_pipe_wm(struct intel_crtc_state *cstate, | |||
3595 | struct skl_pipe_wm *pipe_wm) | 3595 | struct skl_pipe_wm *pipe_wm) |
3596 | { | 3596 | { |
3597 | struct drm_device *dev = cstate->base.crtc->dev; | 3597 | struct drm_device *dev = cstate->base.crtc->dev; |
3598 | const struct drm_i915_private *dev_priv = dev->dev_private; | 3598 | const struct drm_i915_private *dev_priv = to_i915(dev); |
3599 | int level, max_level = ilk_wm_max_level(dev); | 3599 | int level, max_level = ilk_wm_max_level(dev); |
3600 | int ret; | 3600 | int ret; |
3601 | 3601 | ||
@@ -4015,7 +4015,7 @@ static void skl_update_wm(struct drm_crtc *crtc) | |||
4015 | { | 4015 | { |
4016 | struct intel_crtc *intel_crtc = to_intel_crtc(crtc); | 4016 | struct intel_crtc *intel_crtc = to_intel_crtc(crtc); |
4017 | struct drm_device *dev = crtc->dev; | 4017 | struct drm_device *dev = crtc->dev; |
4018 | struct drm_i915_private *dev_priv = dev->dev_private; | 4018 | struct drm_i915_private *dev_priv = to_i915(dev); |
4019 | struct skl_wm_values *results = &dev_priv->wm.skl_results; | 4019 | struct skl_wm_values *results = &dev_priv->wm.skl_results; |
4020 | struct intel_crtc_state *cstate = to_intel_crtc_state(crtc->state); | 4020 | struct intel_crtc_state *cstate = to_intel_crtc_state(crtc->state); |
4021 | struct skl_pipe_wm *pipe_wm = &cstate->wm.skl.optimal; | 4021 | struct skl_pipe_wm *pipe_wm = &cstate->wm.skl.optimal; |
@@ -4158,7 +4158,7 @@ static void skl_pipe_wm_active_state(uint32_t val, | |||
4158 | static void skl_pipe_wm_get_hw_state(struct drm_crtc *crtc) | 4158 | static void skl_pipe_wm_get_hw_state(struct drm_crtc *crtc) |
4159 | { | 4159 | { |
4160 | struct drm_device *dev = crtc->dev; | 4160 | struct drm_device *dev = crtc->dev; |
4161 | struct drm_i915_private *dev_priv = dev->dev_private; | 4161 | struct drm_i915_private *dev_priv = to_i915(dev); |
4162 | struct skl_wm_values *hw = &dev_priv->wm.skl_hw; | 4162 | struct skl_wm_values *hw = &dev_priv->wm.skl_hw; |
4163 | struct intel_crtc *intel_crtc = to_intel_crtc(crtc); | 4163 | struct intel_crtc *intel_crtc = to_intel_crtc(crtc); |
4164 | struct intel_crtc_state *cstate = to_intel_crtc_state(crtc->state); | 4164 | struct intel_crtc_state *cstate = to_intel_crtc_state(crtc->state); |
@@ -4212,7 +4212,7 @@ static void skl_pipe_wm_get_hw_state(struct drm_crtc *crtc) | |||
4212 | 4212 | ||
4213 | void skl_wm_get_hw_state(struct drm_device *dev) | 4213 | void skl_wm_get_hw_state(struct drm_device *dev) |
4214 | { | 4214 | { |
4215 | struct drm_i915_private *dev_priv = dev->dev_private; | 4215 | struct drm_i915_private *dev_priv = to_i915(dev); |
4216 | struct skl_ddb_allocation *ddb = &dev_priv->wm.skl_hw.ddb; | 4216 | struct skl_ddb_allocation *ddb = &dev_priv->wm.skl_hw.ddb; |
4217 | struct drm_crtc *crtc; | 4217 | struct drm_crtc *crtc; |
4218 | 4218 | ||
@@ -4232,7 +4232,7 @@ void skl_wm_get_hw_state(struct drm_device *dev) | |||
4232 | static void ilk_pipe_wm_get_hw_state(struct drm_crtc *crtc) | 4232 | static void ilk_pipe_wm_get_hw_state(struct drm_crtc *crtc) |
4233 | { | 4233 | { |
4234 | struct drm_device *dev = crtc->dev; | 4234 | struct drm_device *dev = crtc->dev; |
4235 | struct drm_i915_private *dev_priv = dev->dev_private; | 4235 | struct drm_i915_private *dev_priv = to_i915(dev); |
4236 | struct ilk_wm_values *hw = &dev_priv->wm.hw; | 4236 | struct ilk_wm_values *hw = &dev_priv->wm.hw; |
4237 | struct intel_crtc *intel_crtc = to_intel_crtc(crtc); | 4237 | struct intel_crtc *intel_crtc = to_intel_crtc(crtc); |
4238 | struct intel_crtc_state *cstate = to_intel_crtc_state(crtc->state); | 4238 | struct intel_crtc_state *cstate = to_intel_crtc_state(crtc->state); |
@@ -4436,7 +4436,7 @@ void vlv_wm_get_hw_state(struct drm_device *dev) | |||
4436 | 4436 | ||
4437 | void ilk_wm_get_hw_state(struct drm_device *dev) | 4437 | void ilk_wm_get_hw_state(struct drm_device *dev) |
4438 | { | 4438 | { |
4439 | struct drm_i915_private *dev_priv = dev->dev_private; | 4439 | struct drm_i915_private *dev_priv = to_i915(dev); |
4440 | struct ilk_wm_values *hw = &dev_priv->wm.hw; | 4440 | struct ilk_wm_values *hw = &dev_priv->wm.hw; |
4441 | struct drm_crtc *crtc; | 4441 | struct drm_crtc *crtc; |
4442 | 4442 | ||
@@ -4498,7 +4498,7 @@ void ilk_wm_get_hw_state(struct drm_device *dev) | |||
4498 | */ | 4498 | */ |
4499 | void intel_update_watermarks(struct drm_crtc *crtc) | 4499 | void intel_update_watermarks(struct drm_crtc *crtc) |
4500 | { | 4500 | { |
4501 | struct drm_i915_private *dev_priv = crtc->dev->dev_private; | 4501 | struct drm_i915_private *dev_priv = to_i915(crtc->dev); |
4502 | 4502 | ||
4503 | if (dev_priv->display.update_wm) | 4503 | if (dev_priv->display.update_wm) |
4504 | dev_priv->display.update_wm(crtc); | 4504 | dev_priv->display.update_wm(crtc); |
@@ -6713,7 +6713,7 @@ void intel_reset_gt_powersave(struct drm_i915_private *dev_priv) | |||
6713 | 6713 | ||
6714 | static void ibx_init_clock_gating(struct drm_device *dev) | 6714 | static void ibx_init_clock_gating(struct drm_device *dev) |
6715 | { | 6715 | { |
6716 | struct drm_i915_private *dev_priv = dev->dev_private; | 6716 | struct drm_i915_private *dev_priv = to_i915(dev); |
6717 | 6717 | ||
6718 | /* | 6718 | /* |
6719 | * On Ibex Peak and Cougar Point, we need to disable clock | 6719 | * On Ibex Peak and Cougar Point, we need to disable clock |
@@ -6725,7 +6725,7 @@ static void ibx_init_clock_gating(struct drm_device *dev) | |||
6725 | 6725 | ||
6726 | static void g4x_disable_trickle_feed(struct drm_device *dev) | 6726 | static void g4x_disable_trickle_feed(struct drm_device *dev) |
6727 | { | 6727 | { |
6728 | struct drm_i915_private *dev_priv = dev->dev_private; | 6728 | struct drm_i915_private *dev_priv = to_i915(dev); |
6729 | enum pipe pipe; | 6729 | enum pipe pipe; |
6730 | 6730 | ||
6731 | for_each_pipe(dev_priv, pipe) { | 6731 | for_each_pipe(dev_priv, pipe) { |
@@ -6740,7 +6740,7 @@ static void g4x_disable_trickle_feed(struct drm_device *dev) | |||
6740 | 6740 | ||
6741 | static void ilk_init_lp_watermarks(struct drm_device *dev) | 6741 | static void ilk_init_lp_watermarks(struct drm_device *dev) |
6742 | { | 6742 | { |
6743 | struct drm_i915_private *dev_priv = dev->dev_private; | 6743 | struct drm_i915_private *dev_priv = to_i915(dev); |
6744 | 6744 | ||
6745 | I915_WRITE(WM3_LP_ILK, I915_READ(WM3_LP_ILK) & ~WM1_LP_SR_EN); | 6745 | I915_WRITE(WM3_LP_ILK, I915_READ(WM3_LP_ILK) & ~WM1_LP_SR_EN); |
6746 | I915_WRITE(WM2_LP_ILK, I915_READ(WM2_LP_ILK) & ~WM1_LP_SR_EN); | 6746 | I915_WRITE(WM2_LP_ILK, I915_READ(WM2_LP_ILK) & ~WM1_LP_SR_EN); |
@@ -6754,7 +6754,7 @@ static void ilk_init_lp_watermarks(struct drm_device *dev) | |||
6754 | 6754 | ||
6755 | static void ironlake_init_clock_gating(struct drm_device *dev) | 6755 | static void ironlake_init_clock_gating(struct drm_device *dev) |
6756 | { | 6756 | { |
6757 | struct drm_i915_private *dev_priv = dev->dev_private; | 6757 | struct drm_i915_private *dev_priv = to_i915(dev); |
6758 | uint32_t dspclk_gate = ILK_VRHUNIT_CLOCK_GATE_DISABLE; | 6758 | uint32_t dspclk_gate = ILK_VRHUNIT_CLOCK_GATE_DISABLE; |
6759 | 6759 | ||
6760 | /* | 6760 | /* |
@@ -6828,7 +6828,7 @@ static void ironlake_init_clock_gating(struct drm_device *dev) | |||
6828 | 6828 | ||
6829 | static void cpt_init_clock_gating(struct drm_device *dev) | 6829 | static void cpt_init_clock_gating(struct drm_device *dev) |
6830 | { | 6830 | { |
6831 | struct drm_i915_private *dev_priv = dev->dev_private; | 6831 | struct drm_i915_private *dev_priv = to_i915(dev); |
6832 | int pipe; | 6832 | int pipe; |
6833 | uint32_t val; | 6833 | uint32_t val; |
6834 | 6834 | ||
@@ -6865,7 +6865,7 @@ static void cpt_init_clock_gating(struct drm_device *dev) | |||
6865 | 6865 | ||
6866 | static void gen6_check_mch_setup(struct drm_device *dev) | 6866 | static void gen6_check_mch_setup(struct drm_device *dev) |
6867 | { | 6867 | { |
6868 | struct drm_i915_private *dev_priv = dev->dev_private; | 6868 | struct drm_i915_private *dev_priv = to_i915(dev); |
6869 | uint32_t tmp; | 6869 | uint32_t tmp; |
6870 | 6870 | ||
6871 | tmp = I915_READ(MCH_SSKPD); | 6871 | tmp = I915_READ(MCH_SSKPD); |
@@ -6876,7 +6876,7 @@ static void gen6_check_mch_setup(struct drm_device *dev) | |||
6876 | 6876 | ||
6877 | static void gen6_init_clock_gating(struct drm_device *dev) | 6877 | static void gen6_init_clock_gating(struct drm_device *dev) |
6878 | { | 6878 | { |
6879 | struct drm_i915_private *dev_priv = dev->dev_private; | 6879 | struct drm_i915_private *dev_priv = to_i915(dev); |
6880 | uint32_t dspclk_gate = ILK_VRHUNIT_CLOCK_GATE_DISABLE; | 6880 | uint32_t dspclk_gate = ILK_VRHUNIT_CLOCK_GATE_DISABLE; |
6881 | 6881 | ||
6882 | I915_WRITE(ILK_DSPCLK_GATE_D, dspclk_gate); | 6882 | I915_WRITE(ILK_DSPCLK_GATE_D, dspclk_gate); |
@@ -6991,7 +6991,7 @@ static void gen7_setup_fixed_func_scheduler(struct drm_i915_private *dev_priv) | |||
6991 | 6991 | ||
6992 | static void lpt_init_clock_gating(struct drm_device *dev) | 6992 | static void lpt_init_clock_gating(struct drm_device *dev) |
6993 | { | 6993 | { |
6994 | struct drm_i915_private *dev_priv = dev->dev_private; | 6994 | struct drm_i915_private *dev_priv = to_i915(dev); |
6995 | 6995 | ||
6996 | /* | 6996 | /* |
6997 | * TODO: this bit should only be enabled when really needed, then | 6997 | * TODO: this bit should only be enabled when really needed, then |
@@ -7010,7 +7010,7 @@ static void lpt_init_clock_gating(struct drm_device *dev) | |||
7010 | 7010 | ||
7011 | static void lpt_suspend_hw(struct drm_device *dev) | 7011 | static void lpt_suspend_hw(struct drm_device *dev) |
7012 | { | 7012 | { |
7013 | struct drm_i915_private *dev_priv = dev->dev_private; | 7013 | struct drm_i915_private *dev_priv = to_i915(dev); |
7014 | 7014 | ||
7015 | if (HAS_PCH_LPT_LP(dev)) { | 7015 | if (HAS_PCH_LPT_LP(dev)) { |
7016 | uint32_t val = I915_READ(SOUTH_DSPCLK_GATE_D); | 7016 | uint32_t val = I915_READ(SOUTH_DSPCLK_GATE_D); |
@@ -7045,7 +7045,7 @@ static void gen8_set_l3sqc_credits(struct drm_i915_private *dev_priv, | |||
7045 | 7045 | ||
7046 | static void kabylake_init_clock_gating(struct drm_device *dev) | 7046 | static void kabylake_init_clock_gating(struct drm_device *dev) |
7047 | { | 7047 | { |
7048 | struct drm_i915_private *dev_priv = dev->dev_private; | 7048 | struct drm_i915_private *dev_priv = to_i915(dev); |
7049 | 7049 | ||
7050 | gen9_init_clock_gating(dev); | 7050 | gen9_init_clock_gating(dev); |
7051 | 7051 | ||
@@ -7066,7 +7066,7 @@ static void kabylake_init_clock_gating(struct drm_device *dev) | |||
7066 | 7066 | ||
7067 | static void skylake_init_clock_gating(struct drm_device *dev) | 7067 | static void skylake_init_clock_gating(struct drm_device *dev) |
7068 | { | 7068 | { |
7069 | struct drm_i915_private *dev_priv = dev->dev_private; | 7069 | struct drm_i915_private *dev_priv = to_i915(dev); |
7070 | 7070 | ||
7071 | gen9_init_clock_gating(dev); | 7071 | gen9_init_clock_gating(dev); |
7072 | 7072 | ||
@@ -7081,7 +7081,7 @@ static void skylake_init_clock_gating(struct drm_device *dev) | |||
7081 | 7081 | ||
7082 | static void broadwell_init_clock_gating(struct drm_device *dev) | 7082 | static void broadwell_init_clock_gating(struct drm_device *dev) |
7083 | { | 7083 | { |
7084 | struct drm_i915_private *dev_priv = dev->dev_private; | 7084 | struct drm_i915_private *dev_priv = to_i915(dev); |
7085 | enum pipe pipe; | 7085 | enum pipe pipe; |
7086 | 7086 | ||
7087 | ilk_init_lp_watermarks(dev); | 7087 | ilk_init_lp_watermarks(dev); |
@@ -7132,7 +7132,7 @@ static void broadwell_init_clock_gating(struct drm_device *dev) | |||
7132 | 7132 | ||
7133 | static void haswell_init_clock_gating(struct drm_device *dev) | 7133 | static void haswell_init_clock_gating(struct drm_device *dev) |
7134 | { | 7134 | { |
7135 | struct drm_i915_private *dev_priv = dev->dev_private; | 7135 | struct drm_i915_private *dev_priv = to_i915(dev); |
7136 | 7136 | ||
7137 | ilk_init_lp_watermarks(dev); | 7137 | ilk_init_lp_watermarks(dev); |
7138 | 7138 | ||
@@ -7188,7 +7188,7 @@ static void haswell_init_clock_gating(struct drm_device *dev) | |||
7188 | 7188 | ||
7189 | static void ivybridge_init_clock_gating(struct drm_device *dev) | 7189 | static void ivybridge_init_clock_gating(struct drm_device *dev) |
7190 | { | 7190 | { |
7191 | struct drm_i915_private *dev_priv = dev->dev_private; | 7191 | struct drm_i915_private *dev_priv = to_i915(dev); |
7192 | uint32_t snpcr; | 7192 | uint32_t snpcr; |
7193 | 7193 | ||
7194 | ilk_init_lp_watermarks(dev); | 7194 | ilk_init_lp_watermarks(dev); |
@@ -7286,7 +7286,7 @@ static void ivybridge_init_clock_gating(struct drm_device *dev) | |||
7286 | 7286 | ||
7287 | static void valleyview_init_clock_gating(struct drm_device *dev) | 7287 | static void valleyview_init_clock_gating(struct drm_device *dev) |
7288 | { | 7288 | { |
7289 | struct drm_i915_private *dev_priv = dev->dev_private; | 7289 | struct drm_i915_private *dev_priv = to_i915(dev); |
7290 | 7290 | ||
7291 | /* WaDisableEarlyCull:vlv */ | 7291 | /* WaDisableEarlyCull:vlv */ |
7292 | I915_WRITE(_3D_CHICKEN3, | 7292 | I915_WRITE(_3D_CHICKEN3, |
@@ -7368,7 +7368,7 @@ static void valleyview_init_clock_gating(struct drm_device *dev) | |||
7368 | 7368 | ||
7369 | static void cherryview_init_clock_gating(struct drm_device *dev) | 7369 | static void cherryview_init_clock_gating(struct drm_device *dev) |
7370 | { | 7370 | { |
7371 | struct drm_i915_private *dev_priv = dev->dev_private; | 7371 | struct drm_i915_private *dev_priv = to_i915(dev); |
7372 | 7372 | ||
7373 | /* WaVSRefCountFullforceMissDisable:chv */ | 7373 | /* WaVSRefCountFullforceMissDisable:chv */ |
7374 | /* WaDSRefCountFullforceMissDisable:chv */ | 7374 | /* WaDSRefCountFullforceMissDisable:chv */ |
@@ -7404,7 +7404,7 @@ static void cherryview_init_clock_gating(struct drm_device *dev) | |||
7404 | 7404 | ||
7405 | static void g4x_init_clock_gating(struct drm_device *dev) | 7405 | static void g4x_init_clock_gating(struct drm_device *dev) |
7406 | { | 7406 | { |
7407 | struct drm_i915_private *dev_priv = dev->dev_private; | 7407 | struct drm_i915_private *dev_priv = to_i915(dev); |
7408 | uint32_t dspclk_gate; | 7408 | uint32_t dspclk_gate; |
7409 | 7409 | ||
7410 | I915_WRITE(RENCLK_GATE_D1, 0); | 7410 | I915_WRITE(RENCLK_GATE_D1, 0); |
@@ -7431,7 +7431,7 @@ static void g4x_init_clock_gating(struct drm_device *dev) | |||
7431 | 7431 | ||
7432 | static void crestline_init_clock_gating(struct drm_device *dev) | 7432 | static void crestline_init_clock_gating(struct drm_device *dev) |
7433 | { | 7433 | { |
7434 | struct drm_i915_private *dev_priv = dev->dev_private; | 7434 | struct drm_i915_private *dev_priv = to_i915(dev); |
7435 | 7435 | ||
7436 | I915_WRITE(RENCLK_GATE_D1, I965_RCC_CLOCK_GATE_DISABLE); | 7436 | I915_WRITE(RENCLK_GATE_D1, I965_RCC_CLOCK_GATE_DISABLE); |
7437 | I915_WRITE(RENCLK_GATE_D2, 0); | 7437 | I915_WRITE(RENCLK_GATE_D2, 0); |
@@ -7447,7 +7447,7 @@ static void crestline_init_clock_gating(struct drm_device *dev) | |||
7447 | 7447 | ||
7448 | static void broadwater_init_clock_gating(struct drm_device *dev) | 7448 | static void broadwater_init_clock_gating(struct drm_device *dev) |
7449 | { | 7449 | { |
7450 | struct drm_i915_private *dev_priv = dev->dev_private; | 7450 | struct drm_i915_private *dev_priv = to_i915(dev); |
7451 | 7451 | ||
7452 | I915_WRITE(RENCLK_GATE_D1, I965_RCZ_CLOCK_GATE_DISABLE | | 7452 | I915_WRITE(RENCLK_GATE_D1, I965_RCZ_CLOCK_GATE_DISABLE | |
7453 | I965_RCC_CLOCK_GATE_DISABLE | | 7453 | I965_RCC_CLOCK_GATE_DISABLE | |
@@ -7464,7 +7464,7 @@ static void broadwater_init_clock_gating(struct drm_device *dev) | |||
7464 | 7464 | ||
7465 | static void gen3_init_clock_gating(struct drm_device *dev) | 7465 | static void gen3_init_clock_gating(struct drm_device *dev) |
7466 | { | 7466 | { |
7467 | struct drm_i915_private *dev_priv = dev->dev_private; | 7467 | struct drm_i915_private *dev_priv = to_i915(dev); |
7468 | u32 dstate = I915_READ(D_STATE); | 7468 | u32 dstate = I915_READ(D_STATE); |
7469 | 7469 | ||
7470 | dstate |= DSTATE_PLL_D3_OFF | DSTATE_GFX_CLOCK_GATING | | 7470 | dstate |= DSTATE_PLL_D3_OFF | DSTATE_GFX_CLOCK_GATING | |
@@ -7489,7 +7489,7 @@ static void gen3_init_clock_gating(struct drm_device *dev) | |||
7489 | 7489 | ||
7490 | static void i85x_init_clock_gating(struct drm_device *dev) | 7490 | static void i85x_init_clock_gating(struct drm_device *dev) |
7491 | { | 7491 | { |
7492 | struct drm_i915_private *dev_priv = dev->dev_private; | 7492 | struct drm_i915_private *dev_priv = to_i915(dev); |
7493 | 7493 | ||
7494 | I915_WRITE(RENCLK_GATE_D1, SV_CLOCK_GATE_DISABLE); | 7494 | I915_WRITE(RENCLK_GATE_D1, SV_CLOCK_GATE_DISABLE); |
7495 | 7495 | ||
@@ -7503,7 +7503,7 @@ static void i85x_init_clock_gating(struct drm_device *dev) | |||
7503 | 7503 | ||
7504 | static void i830_init_clock_gating(struct drm_device *dev) | 7504 | static void i830_init_clock_gating(struct drm_device *dev) |
7505 | { | 7505 | { |
7506 | struct drm_i915_private *dev_priv = dev->dev_private; | 7506 | struct drm_i915_private *dev_priv = to_i915(dev); |
7507 | 7507 | ||
7508 | I915_WRITE(DSPCLK_GATE_D, OVRUNIT_CLOCK_GATE_DISABLE); | 7508 | I915_WRITE(DSPCLK_GATE_D, OVRUNIT_CLOCK_GATE_DISABLE); |
7509 | 7509 | ||
@@ -7514,7 +7514,7 @@ static void i830_init_clock_gating(struct drm_device *dev) | |||
7514 | 7514 | ||
7515 | void intel_init_clock_gating(struct drm_device *dev) | 7515 | void intel_init_clock_gating(struct drm_device *dev) |
7516 | { | 7516 | { |
7517 | struct drm_i915_private *dev_priv = dev->dev_private; | 7517 | struct drm_i915_private *dev_priv = to_i915(dev); |
7518 | 7518 | ||
7519 | dev_priv->display.init_clock_gating(dev); | 7519 | dev_priv->display.init_clock_gating(dev); |
7520 | } | 7520 | } |
@@ -7582,7 +7582,7 @@ void intel_init_clock_gating_hooks(struct drm_i915_private *dev_priv) | |||
7582 | /* Set up chip specific power management-related functions */ | 7582 | /* Set up chip specific power management-related functions */ |
7583 | void intel_init_pm(struct drm_device *dev) | 7583 | void intel_init_pm(struct drm_device *dev) |
7584 | { | 7584 | { |
7585 | struct drm_i915_private *dev_priv = dev->dev_private; | 7585 | struct drm_i915_private *dev_priv = to_i915(dev); |
7586 | 7586 | ||
7587 | intel_fbc_init(dev_priv); | 7587 | intel_fbc_init(dev_priv); |
7588 | 7588 | ||
@@ -7812,7 +7812,7 @@ void intel_queue_rps_boost_for_request(struct drm_i915_gem_request *req) | |||
7812 | 7812 | ||
7813 | void intel_pm_setup(struct drm_device *dev) | 7813 | void intel_pm_setup(struct drm_device *dev) |
7814 | { | 7814 | { |
7815 | struct drm_i915_private *dev_priv = dev->dev_private; | 7815 | struct drm_i915_private *dev_priv = to_i915(dev); |
7816 | 7816 | ||
7817 | mutex_init(&dev_priv->rps.hw_lock); | 7817 | mutex_init(&dev_priv->rps.hw_lock); |
7818 | spin_lock_init(&dev_priv->rps.client_lock); | 7818 | spin_lock_init(&dev_priv->rps.client_lock); |