drm/i915/uc: Don't use -EIO to report missing firmware
authorMichal Wajdeczko <michal.wajdeczko@intel.com>
Wed, 6 Dec 2017 13:53:14 +0000 (13:53 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Wed, 6 Dec 2017 14:41:52 +0000 (14:41 +0000)
-EIO has special meaning and is used when we want to allow
engine initialization to fail and mark GPU as wedged.

However here at this function we should return error code
that corresponds to upload status only, as any decision how
to handle missing firmware should be done higher level function
(silent fallback to non-GuC mode, fail into wedged mode, or
abort driver load with fatal error).

v2: commit message update (Michal)

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Sagar Arun Kamble <sagar.a.kamble@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/20171206135316.32556-5-michal.wajdeczko@intel.com
drivers/gpu/drm/i915/intel_uc_fw.c

index b376dd3..784eff9 100644 (file)
@@ -214,7 +214,7 @@ int intel_uc_fw_upload(struct intel_uc_fw *uc_fw,
                         intel_uc_fw_type_repr(uc_fw->type), uc_fw->path);
 
        if (uc_fw->fetch_status != INTEL_UC_FIRMWARE_SUCCESS)
-               return -EIO;
+               return -ENOEXEC;
 
        uc_fw->load_status = INTEL_UC_FIRMWARE_PENDING;
        DRM_DEBUG_DRIVER("%s fw load %s\n",