drm/i915/uc: Fetch uC firmware in init_early
We were fetching uC firmwares in separate uc_init_fw step, while there is no reason why we can't fetch them during init_early. This will also simplify upcoming patches, as size of the firmware may be used for register initialization. Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com> Cc: Michal Winiarski <michal.winiarski@intel.com> Cc: Sagar Arun Kamble <sagar.a.kamble@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Link: https://patchwork.freedesktop.org/patch/msgid/20180323123451.59244-2-michal.wajdeczko@intel.com
This commit is contained in:

committed by
Chris Wilson

parent
a0de908d44
commit
8c650aefb8
@@ -692,11 +692,9 @@ static int i915_load_modeset_init(struct drm_device *dev)
|
||||
if (ret)
|
||||
goto cleanup_irq;
|
||||
|
||||
intel_uc_init_fw(dev_priv);
|
||||
|
||||
ret = i915_gem_init(dev_priv);
|
||||
if (ret)
|
||||
goto cleanup_uc;
|
||||
goto cleanup_irq;
|
||||
|
||||
intel_setup_overlay(dev_priv);
|
||||
|
||||
@@ -716,8 +714,6 @@ cleanup_gem:
|
||||
if (i915_gem_suspend(dev_priv))
|
||||
DRM_ERROR("failed to idle hardware; continuing to unload!\n");
|
||||
i915_gem_fini(dev_priv);
|
||||
cleanup_uc:
|
||||
intel_uc_fini_fw(dev_priv);
|
||||
cleanup_irq:
|
||||
drm_irq_uninstall(dev);
|
||||
intel_teardown_gmbus(dev_priv);
|
||||
@@ -962,6 +958,7 @@ err_engines:
|
||||
static void i915_driver_cleanup_early(struct drm_i915_private *dev_priv)
|
||||
{
|
||||
intel_irq_fini(dev_priv);
|
||||
intel_uc_cleanup_early(dev_priv);
|
||||
i915_gem_cleanup_early(dev_priv);
|
||||
i915_workqueues_cleanup(dev_priv);
|
||||
i915_engines_cleanup(dev_priv);
|
||||
@@ -1457,7 +1454,6 @@ void i915_driver_unload(struct drm_device *dev)
|
||||
i915_reset_error_state(dev_priv);
|
||||
|
||||
i915_gem_fini(dev_priv);
|
||||
intel_uc_fini_fw(dev_priv);
|
||||
intel_fbc_cleanup_cfb(dev_priv);
|
||||
|
||||
intel_power_domains_fini(dev_priv);
|
||||
|
Reference in New Issue
Block a user