From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> I pretty much just wanted to store struct intel_crtc * instead of struct drm_crtc * in pipe_to_crtc_mapping[] & co. but to achieve it cleanly I ended up chasing quite few different things that were accepting the wrong kind of type. And once I had sorted out those mappign arrays, I had ended up in the old watermark code which kept me busy for another good while. Eventually I was able to claw my way back to sanity and I decided to stop. I'm going to blame Daniel for getting me on this track by suggesting that I should pass dev_priv to the plane constructos. That was enough of a trigger to get me started. Entire series available here: git://github.com/vsyrjala/linux.git dev_priv_intel_crtc_cleanup Ville Syrjälä (26): drm/i915: Pass dev_priv to plane constructors drm/i915: Pass dev_priv to skl_init_scalers() drm/i915: Pass intel_crtc to intel_crtc_active() drm/i915: Pass intel_crtc to update_wm functions drm/i915: Use struct intel_crtc in legacy platform wm code drm/i915: Store struct intel_crtc * in {pipe,plane}_to_crtc_mapping[] drm/i915: Pass dev_priv to intel_wait_for_vblank() drm/i915: Pass dev_priv to vlv force pll functions drm/i915: Pass dev_priv to g4x wm functions drm/i915: Pass dev_priv to intel_get_crtc_for_pipe() drm/i915: Always use intel_get_crtc_for_pipe() drm/i915: Pass dev_priv to intel_crtc_init() drm/i915: Pass dev_priv to cdclk update funcs drm/i915: Pass dev_priv to .get_display_clock_speed() drm/i915: Pass dev_priv to IS_MOBILE() drm/i915: Pass dev_priv to IS_PINEVIEW() drm/i915: Pass dev_priv to i915_pineview_get_mem_freq() and i915_ironlake_get_mem_freq() drm/i915: Pass dev_priv to .get_fifo_size() drm/i915: Pass dev_priv to HAS_FW_BLC drm/i915: Pass dev_priv to IS_BROADWATER/IS_CRESTLINE drm/i915: Pass dev_priv to rest of IS_FOO() macros for the old platforms drm/i915: Pass dev_priv to single_enabled_crtc() drm/i915: Pass dev_priv to init_clock_gating drm/i915: Pass dev_priv to intel_suspend_hw() drm/i915: Pass dev_priv to ilk_setup_wm_latency() & co. drm/i915: Pass dev_priv to intel_init_pm() drivers/gpu/drm/i915/i915_debugfs.c | 13 +- drivers/gpu/drm/i915/i915_drv.c | 8 +- drivers/gpu/drm/i915/i915_drv.h | 32 +-- drivers/gpu/drm/i915/i915_gem.c | 3 +- drivers/gpu/drm/i915/i915_gem_stolen.c | 4 +- drivers/gpu/drm/i915/i915_irq.c | 19 +- drivers/gpu/drm/i915/intel_crt.c | 2 +- drivers/gpu/drm/i915/intel_display.c | 356 ++++++++++++------------- drivers/gpu/drm/i915/intel_dp.c | 25 +- drivers/gpu/drm/i915/intel_drv.h | 37 ++- drivers/gpu/drm/i915/intel_dvo.c | 6 +- drivers/gpu/drm/i915/intel_fbc.c | 2 +- drivers/gpu/drm/i915/intel_fifo_underrun.c | 23 +- drivers/gpu/drm/i915/intel_hdmi.c | 2 +- drivers/gpu/drm/i915/intel_lvds.c | 6 +- drivers/gpu/drm/i915/intel_pm.c | 408 +++++++++++++---------------- drivers/gpu/drm/i915/intel_runtime_pm.c | 2 +- drivers/gpu/drm/i915/intel_sdvo.c | 8 +- drivers/gpu/drm/i915/intel_sprite.c | 12 +- drivers/gpu/drm/i915/intel_tv.c | 6 +- 20 files changed, 455 insertions(+), 519 deletions(-) -- 2.7.4 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx