Re: [Intel-gfx] [PATCH] drm/i915/huc: Simplify intel_huc_init_hw()

2017-04-03 Thread Srivatsa, Anusha
I like the changes, definitely simplifies things.

>-Original Message-
>From: Wajdeczko, Michal
>Sent: Friday, March 31, 2017 4:57 AM
>To: intel-gfx@lists.freedesktop.org
>Cc: Wajdeczko, Michal ; Srivatsa, Anusha
>; Hiler, Arkadiusz ;
>Ursulin, Tvrtko 
>Subject: [PATCH] drm/i915/huc: Simplify intel_huc_init_hw()
>
>On last guc/huc cleanup series we've simplified guc init hw function but missed
>the one for the huc. While here, change its signature as we don't care about 
>huc
>loading status.
>
>Signed-off-by: Michal Wajdeczko 
>Cc: Anusha Srivatsa 
>Cc: Arkadiusz Hiler 
>Cc: Tvrtko Ursulin 

Reviewed-by: Anusha Srivatsa 

> drivers/gpu/drm/i915/intel_huc.c | 48 +++-
> drivers/gpu/drm/i915/intel_uc.h  |  2 +-
> 2 files changed, 9 insertions(+), 41 deletions(-)
>
>diff --git a/drivers/gpu/drm/i915/intel_huc.c 
>b/drivers/gpu/drm/i915/intel_huc.c
>index 9ee8196..385cacb 100644
>--- a/drivers/gpu/drm/i915/intel_huc.c
>+++ b/drivers/gpu/drm/i915/intel_huc.c
>@@ -186,68 +186,36 @@ void intel_huc_select_fw(struct intel_huc *huc)
>  * earlier call to intel_huc_init(), so here we need only check that
>  * is succeeded, and then transfer the image to the h/w.
>  *
>- * Return:non-zero code on error
>  */
>-int intel_huc_init_hw(struct intel_huc *huc)
>+void intel_huc_init_hw(struct intel_huc *huc)
> {
>   struct drm_i915_private *dev_priv = huc_to_i915(huc);
>   int err;
>
>-  if (huc->fw.fetch_status == INTEL_UC_FIRMWARE_NONE)
>-  return 0;
>-
>   DRM_DEBUG_DRIVER("%s fw status: fetch %s, load %s\n",
>   huc->fw.path,
>   intel_uc_fw_status_repr(huc->fw.fetch_status),
>   intel_uc_fw_status_repr(huc->fw.load_status));
>
>-  if (huc->fw.fetch_status == INTEL_UC_FIRMWARE_SUCCESS &&
>-  huc->fw.load_status == INTEL_UC_FIRMWARE_FAIL)
>-  return -ENOEXEC;
>+  if (huc->fw.fetch_status != INTEL_UC_FIRMWARE_SUCCESS)
>+  return;
>
>   huc->fw.load_status = INTEL_UC_FIRMWARE_PENDING;
>
>-  switch (huc->fw.fetch_status) {
>-  case INTEL_UC_FIRMWARE_FAIL:
>-  /* something went wrong :( */
>-  err = -EIO;
>-  goto fail;
>-
>-  case INTEL_UC_FIRMWARE_NONE:
>-  case INTEL_UC_FIRMWARE_PENDING:
>-  default:
>-  /* "can't happen" */
>-  WARN_ONCE(1, "HuC fw %s invalid fetch_status %s [%d]\n",
>-  huc->fw.path,
>-  intel_uc_fw_status_repr(huc->fw.fetch_status),
>-  huc->fw.fetch_status);
>-  err = -ENXIO;
>-  goto fail;
>-
>-  case INTEL_UC_FIRMWARE_SUCCESS:
>-  break;
>-  }
>-
>   err = huc_ucode_xfer(dev_priv);
>-  if (err)
>-  goto fail;
>
>-  huc->fw.load_status = INTEL_UC_FIRMWARE_SUCCESS;
>+  huc->fw.load_status = err ?
>+  INTEL_UC_FIRMWARE_FAIL : INTEL_UC_FIRMWARE_SUCCESS;
>
>   DRM_DEBUG_DRIVER("%s fw status: fetch %s, load %s\n",
>   huc->fw.path,
>   intel_uc_fw_status_repr(huc->fw.fetch_status),
>   intel_uc_fw_status_repr(huc->fw.load_status));
>
>-  return 0;
>-
>-fail:
>-  if (huc->fw.load_status == INTEL_UC_FIRMWARE_PENDING)
>-  huc->fw.load_status = INTEL_UC_FIRMWARE_FAIL;
>-
>-  DRM_ERROR("Failed to complete HuC uCode load with ret %d\n", err);
>+  if (huc->fw.load_status != INTEL_UC_FIRMWARE_SUCCESS)
>+  DRM_ERROR("Failed to complete HuC uCode load with ret
>%d\n", err);
>
>-  return err;
>+  return;
> }
>
> /**
>diff --git a/drivers/gpu/drm/i915/intel_uc.h b/drivers/gpu/drm/i915/intel_uc.h
>index 4b7f73a..2f0229d 100644
>--- a/drivers/gpu/drm/i915/intel_uc.h
>+++ b/drivers/gpu/drm/i915/intel_uc.h
>@@ -266,7 +266,7 @@ static inline u32 guc_ggtt_offset(struct i915_vma *vma)
>
> /* intel_huc.c */
> void intel_huc_select_fw(struct intel_huc *huc); -int intel_huc_init_hw(struct
>intel_huc *huc);
>+void intel_huc_init_hw(struct intel_huc *huc);
> void intel_guc_auth_huc(struct drm_i915_private *dev_priv);
>
> #endif
>--
>2.7.4

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


[Intel-gfx] [PATCH] drm/i915/huc: Simplify intel_huc_init_hw()

2017-03-31 Thread Michal Wajdeczko
On last guc/huc cleanup series we've simplified guc init hw
function but missed the one for the huc. While here, change
its signature as we don't care about huc loading status.

Signed-off-by: Michal Wajdeczko 
Cc: Anusha Srivatsa 
Cc: Arkadiusz Hiler 
Cc: Tvrtko Ursulin 
---
 drivers/gpu/drm/i915/intel_huc.c | 48 +++-
 drivers/gpu/drm/i915/intel_uc.h  |  2 +-
 2 files changed, 9 insertions(+), 41 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_huc.c b/drivers/gpu/drm/i915/intel_huc.c
index 9ee8196..385cacb 100644
--- a/drivers/gpu/drm/i915/intel_huc.c
+++ b/drivers/gpu/drm/i915/intel_huc.c
@@ -186,68 +186,36 @@ void intel_huc_select_fw(struct intel_huc *huc)
  * earlier call to intel_huc_init(), so here we need only check that
  * is succeeded, and then transfer the image to the h/w.
  *
- * Return: non-zero code on error
  */
-int intel_huc_init_hw(struct intel_huc *huc)
+void intel_huc_init_hw(struct intel_huc *huc)
 {
struct drm_i915_private *dev_priv = huc_to_i915(huc);
int err;
 
-   if (huc->fw.fetch_status == INTEL_UC_FIRMWARE_NONE)
-   return 0;
-
DRM_DEBUG_DRIVER("%s fw status: fetch %s, load %s\n",
huc->fw.path,
intel_uc_fw_status_repr(huc->fw.fetch_status),
intel_uc_fw_status_repr(huc->fw.load_status));
 
-   if (huc->fw.fetch_status == INTEL_UC_FIRMWARE_SUCCESS &&
-   huc->fw.load_status == INTEL_UC_FIRMWARE_FAIL)
-   return -ENOEXEC;
+   if (huc->fw.fetch_status != INTEL_UC_FIRMWARE_SUCCESS)
+   return;
 
huc->fw.load_status = INTEL_UC_FIRMWARE_PENDING;
 
-   switch (huc->fw.fetch_status) {
-   case INTEL_UC_FIRMWARE_FAIL:
-   /* something went wrong :( */
-   err = -EIO;
-   goto fail;
-
-   case INTEL_UC_FIRMWARE_NONE:
-   case INTEL_UC_FIRMWARE_PENDING:
-   default:
-   /* "can't happen" */
-   WARN_ONCE(1, "HuC fw %s invalid fetch_status %s [%d]\n",
-   huc->fw.path,
-   intel_uc_fw_status_repr(huc->fw.fetch_status),
-   huc->fw.fetch_status);
-   err = -ENXIO;
-   goto fail;
-
-   case INTEL_UC_FIRMWARE_SUCCESS:
-   break;
-   }
-
err = huc_ucode_xfer(dev_priv);
-   if (err)
-   goto fail;
 
-   huc->fw.load_status = INTEL_UC_FIRMWARE_SUCCESS;
+   huc->fw.load_status = err ?
+   INTEL_UC_FIRMWARE_FAIL : INTEL_UC_FIRMWARE_SUCCESS;
 
DRM_DEBUG_DRIVER("%s fw status: fetch %s, load %s\n",
huc->fw.path,
intel_uc_fw_status_repr(huc->fw.fetch_status),
intel_uc_fw_status_repr(huc->fw.load_status));
 
-   return 0;
-
-fail:
-   if (huc->fw.load_status == INTEL_UC_FIRMWARE_PENDING)
-   huc->fw.load_status = INTEL_UC_FIRMWARE_FAIL;
-
-   DRM_ERROR("Failed to complete HuC uCode load with ret %d\n", err);
+   if (huc->fw.load_status != INTEL_UC_FIRMWARE_SUCCESS)
+   DRM_ERROR("Failed to complete HuC uCode load with ret %d\n", 
err);
 
-   return err;
+   return;
 }
 
 /**
diff --git a/drivers/gpu/drm/i915/intel_uc.h b/drivers/gpu/drm/i915/intel_uc.h
index 4b7f73a..2f0229d 100644
--- a/drivers/gpu/drm/i915/intel_uc.h
+++ b/drivers/gpu/drm/i915/intel_uc.h
@@ -266,7 +266,7 @@ static inline u32 guc_ggtt_offset(struct i915_vma *vma)
 
 /* intel_huc.c */
 void intel_huc_select_fw(struct intel_huc *huc);
-int intel_huc_init_hw(struct intel_huc *huc);
+void intel_huc_init_hw(struct intel_huc *huc);
 void intel_guc_auth_huc(struct drm_i915_private *dev_priv);
 
 #endif
-- 
2.7.4

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