diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c index 1cbd99528329..c79f53292a6f 100644 --- a/drivers/gpu/drm/i915/i915_dma.c +++ b/drivers/gpu/drm/i915/i915_dma.c @@ -1020,7 +1020,12 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags) if (ret < 0) goto out_free_priv; + /* This must be called before any calls to HAS_PCH_* */ + intel_detect_pch(dev); + intel_pm_setup(dev); + intel_init_dpio(dev_priv); + intel_power_domains_init(dev_priv); intel_runtime_pm_get(dev_priv); @@ -1045,9 +1050,6 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags) if (ret < 0) goto put_bridge; - /* This must be called before any calls to HAS_PCH_* */ - intel_detect_pch(dev); - intel_uncore_init(dev); ret = i915_gem_gtt_init(dev); @@ -1124,16 +1126,12 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags) intel_device_info_runtime_init(dev); - intel_init_dpio(dev_priv); - if (INTEL_INFO(dev)->num_pipes) { ret = drm_vblank_init(dev, INTEL_INFO(dev)->num_pipes); if (ret) goto out_gem_unload; } - intel_power_domains_init(dev_priv); - ret = i915_load_modeset_init(dev); if (ret < 0) { DRM_ERROR("failed to init modeset\n");