Without breaking existing usage, slightly update HuC status codes
to provide more info to the clients:
 1 if HuC firmware is loaded and verified,
 0 if HuC firmware is not enabled,
 -ENOPKG if HuC firmware is not loaded,
 -ENODEV if HuC is not present on this platform.

Signed-off-by: Michal Wajdeczko <michal.wajdec...@intel.com>
Cc: Chris Wilson <ch...@chris-wilson.co.uk>
Cc: Tony Ye <tony...@intel.com>
---
 drivers/gpu/drm/i915/intel_huc.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_huc.c b/drivers/gpu/drm/i915/intel_huc.c
index aac17916e130..98deb4ee60a7 100644
--- a/drivers/gpu/drm/i915/intel_huc.c
+++ b/drivers/gpu/drm/i915/intel_huc.c
@@ -150,9 +150,11 @@ int intel_huc_auth(struct intel_huc *huc)
  * intel_huc_check_status() - check HuC status
  * @huc: intel_huc structure
  *
- * Returns: 1 if HuC firmware is loaded and verified,
- * 0 if HuC firmware is not loaded and -ENODEV if HuC
- * is not present on this platform.
+ * Return:
+ * * 1 if HuC firmware is loaded and verified,
+ * * 0 if HuC firmware is not enabled,
+ * * -ENOPKG if HuC firmware is not loaded,
+ * * -ENODEV if HuC is not present on this platform.
  */
 int intel_huc_check_status(struct intel_huc *huc)
 {
@@ -161,5 +163,8 @@ int intel_huc_check_status(struct intel_huc *huc)
        if (!HAS_HUC(i915))
                return -ENODEV;
 
-       return huc->verified;
+       if (!USES_HUC(i915))
+               return 0;
+
+       return huc->verified ? 1 : -ENOPKG;
 }
-- 
2.19.2

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to