]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
drm/xe/uc: Fix and start using xe_uc_fw_sanitize()
authorMichal Wajdeczko <michal.wajdeczko@intel.com>
Thu, 13 Jun 2024 15:34:24 +0000 (17:34 +0200)
committerMichal Wajdeczko <michal.wajdeczko@intel.com>
Fri, 14 Jun 2024 21:33:22 +0000 (23:33 +0200)
Helper xe_uc_fw_sanitize() was defined but never used. First fix
it by properly exiting also from the LOAD_FAIL state, then use it
in GuC and HuC sanitize code.

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240613153424.2120-1-michal.wajdeczko@intel.com
drivers/gpu/drm/xe/xe_guc.c
drivers/gpu/drm/xe/xe_huc.c
drivers/gpu/drm/xe/xe_uc_fw.h

index 0bf6e01b891001ecad148e7491e4c0ba1ef033d3..0e1a5674ef1309cdd71480f93712bf23c66f130e 100644 (file)
@@ -1094,7 +1094,7 @@ void xe_guc_irq_handler(struct xe_guc *guc, const u16 iir)
 
 void xe_guc_sanitize(struct xe_guc *guc)
 {
-       xe_uc_fw_change_status(&guc->fw, XE_UC_FIRMWARE_LOADABLE);
+       xe_uc_fw_sanitize(&guc->fw);
        xe_guc_ct_disable(&guc->ct);
        guc->submission_state.enabled = false;
 }
index b039ff49341be8a4b5a073b05fb406243117be93..6238fb35491476526d981e9602ba926d773a3c6e 100644 (file)
@@ -295,9 +295,7 @@ fail:
 
 void xe_huc_sanitize(struct xe_huc *huc)
 {
-       if (!xe_uc_fw_is_loadable(&huc->fw))
-               return;
-       xe_uc_fw_change_status(&huc->fw, XE_UC_FIRMWARE_LOADABLE);
+       xe_uc_fw_sanitize(&huc->fw);
 }
 
 void xe_huc_print_info(struct xe_huc *huc, struct drm_printer *p)
index 35078038797e7ef3e51d77d403cb519cf3f75ccd..c108e9d08e7085b29cf5db069b1c0f337de00fa0 100644 (file)
@@ -158,7 +158,7 @@ static inline bool xe_uc_fw_is_overridden(const struct xe_uc_fw *uc_fw)
 
 static inline void xe_uc_fw_sanitize(struct xe_uc_fw *uc_fw)
 {
-       if (xe_uc_fw_is_loaded(uc_fw))
+       if (xe_uc_fw_is_loadable(uc_fw))
                xe_uc_fw_change_status(uc_fw, XE_UC_FIRMWARE_LOADABLE);
 }