All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/2] HuC/GuC status to Get Params.
@ 2016-08-17 12:06 Peter Antoine
  2016-08-17 12:06 ` [PATCH v2 1/2] drm/i915/get_params: Add GuC status to getparams Peter Antoine
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Peter Antoine @ 2016-08-17 12:06 UTC (permalink / raw)
  To: intel-gfx

As it states on the tin. Add the HuC/GuC patches to the Get params so
that they can be accessed from userspace. This is a requirement for the
opensourcing of media codecs that require the HuC/GuC.

These patches require the HuC enabling patches. patchset: HuC Loading Patches.

v2: removed extra forcewakes that were not required. (T.Ursulin)

Peter Antoine (2):
  drm/i915/get_params: Add GuC status to getparams
  drm/i915/get_params: Add HuC status to getparams

 drivers/gpu/drm/i915/i915_drv.c         |  8 ++++++++
 drivers/gpu/drm/i915/intel_guc.h        |  2 +-
 drivers/gpu/drm/i915/intel_guc_loader.c | 19 +++++++++++++++++++
 drivers/gpu/drm/i915/intel_huc.h        |  2 +-
 drivers/gpu/drm/i915/intel_huc_loader.c | 19 +++++++++++++++++++
 include/uapi/drm/i915_drm.h             |  2 ++
 6 files changed, 50 insertions(+), 2 deletions(-)

-- 
1.9.1

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v2 1/2] drm/i915/get_params: Add GuC status to getparams
  2016-08-17 12:06 [PATCH v2 0/2] HuC/GuC status to Get Params Peter Antoine
@ 2016-08-17 12:06 ` Peter Antoine
  2016-08-17 12:11   ` Chris Wilson
  2016-08-17 12:06 ` [PATCH v2 2/2] drm/i915/get_params: Add HuC " Peter Antoine
  2016-08-17 12:50 ` ✗ Ro.CI.BAT: failure for HuC/GuC status to Get Params. (rev2) Patchwork
  2 siblings, 1 reply; 7+ messages in thread
From: Peter Antoine @ 2016-08-17 12:06 UTC (permalink / raw)
  To: intel-gfx

This patch returns the GuC status to the caller. It is used so
that the userspace knows if the GuC has been loaded.

Signed-off-by: Peter Antoine <peter.antoine@intel.com>
---
 drivers/gpu/drm/i915/i915_drv.c         |  4 ++++
 drivers/gpu/drm/i915/intel_guc.h        |  2 +-
 drivers/gpu/drm/i915/intel_guc_loader.c | 19 +++++++++++++++++++
 include/uapi/drm/i915_drm.h             |  1 +
 4 files changed, 25 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 499a6ff..c8fc3d0 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -49,6 +49,7 @@
 #include "i915_trace.h"
 #include "i915_vgpu.h"
 #include "intel_drv.h"
+#include "intel_guc.h"
 
 static struct drm_driver driver;
 
@@ -354,6 +355,9 @@ static int i915_getparam(struct drm_device *dev, void *data,
 	case I915_PARAM_MIN_EU_IN_POOL:
 		value = INTEL_INFO(dev)->min_eu_in_pool;
 		break;
+	case I915_PARAM_HAS_GUC:
+		value = intel_is_guc_valid(dev);
+		break;
 	default:
 		DRM_DEBUG("Unknown parameter %d\n", param->param);
 		return -EINVAL;
diff --git a/drivers/gpu/drm/i915/intel_guc.h b/drivers/gpu/drm/i915/intel_guc.h
index efddaed..5e8bb1e 100644
--- a/drivers/gpu/drm/i915/intel_guc.h
+++ b/drivers/gpu/drm/i915/intel_guc.h
@@ -166,5 +166,5 @@ int i915_guc_submission_enable(struct drm_i915_private *dev_priv);
 int i915_guc_wq_check_space(struct drm_i915_gem_request *rq);
 void i915_guc_submission_disable(struct drm_i915_private *dev_priv);
 void i915_guc_submission_fini(struct drm_i915_private *dev_priv);
-
+int intel_is_guc_valid(struct drm_device *dev);
 #endif
diff --git a/drivers/gpu/drm/i915/intel_guc_loader.c b/drivers/gpu/drm/i915/intel_guc_loader.c
index e24847f..e99278f 100644
--- a/drivers/gpu/drm/i915/intel_guc_loader.c
+++ b/drivers/gpu/drm/i915/intel_guc_loader.c
@@ -782,3 +782,22 @@ void intel_guc_fini(struct drm_device *dev)
 
 	guc_fw->fetch_status = UC_FIRMWARE_NONE;
 }
+
+/**
+ * intel_is_guc_valid() - Check to see if the GuC is fully loaded.
+ * @dev:	drm dedvice to check.
+ *
+ * This function will return true if the guc has been loaded and
+ * has valid firmware.
+ */
+int intel_is_guc_valid(struct drm_device *dev)
+{
+	struct drm_i915_private *dev_priv = to_i915(dev);
+	struct intel_uc_fw *guc_fw = &dev_priv->guc.guc_fw;
+
+	if (guc_fw->load_status == UC_FIRMWARE_SUCCESS)
+		return 1;
+	else
+		return 0;
+}
+
diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h
index 452629d..ff8ce86 100644
--- a/include/uapi/drm/i915_drm.h
+++ b/include/uapi/drm/i915_drm.h
@@ -387,6 +387,7 @@ typedef struct drm_i915_irq_wait {
 #define I915_PARAM_HAS_EXEC_SOFTPIN	 37
 #define I915_PARAM_HAS_POOLED_EU	 38
 #define I915_PARAM_MIN_EU_IN_POOL	 39
+#define I915_PARAM_HAS_GUC			41
 
 typedef struct drm_i915_getparam {
 	__s32 param;
-- 
1.9.1

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

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v2 2/2] drm/i915/get_params: Add HuC status to getparams
  2016-08-17 12:06 [PATCH v2 0/2] HuC/GuC status to Get Params Peter Antoine
  2016-08-17 12:06 ` [PATCH v2 1/2] drm/i915/get_params: Add GuC status to getparams Peter Antoine
@ 2016-08-17 12:06 ` Peter Antoine
  2016-08-17 12:11   ` Chris Wilson
  2016-08-17 12:50 ` ✗ Ro.CI.BAT: failure for HuC/GuC status to Get Params. (rev2) Patchwork
  2 siblings, 1 reply; 7+ messages in thread
From: Peter Antoine @ 2016-08-17 12:06 UTC (permalink / raw)
  To: intel-gfx

This patch will allow for getparams to return the status of the HuC.
As the HuC has to be validated by the GuC this patch uses the validated
status to show when the HuC is loaded and ready for use. You cannot use
the loaded status as with the GuC as the HuC is verified after it is
loaded and is not usable until it is verified.

v2: removed the forewakes as the registers are already force-woken.
     (T.Ursulin)

Signed-off-by: Peter Antoine <peter.antoine@intel.com>
---
 drivers/gpu/drm/i915/i915_drv.c         |  4 ++++
 drivers/gpu/drm/i915/intel_huc.h        |  2 +-
 drivers/gpu/drm/i915/intel_huc_loader.c | 19 +++++++++++++++++++
 include/uapi/drm/i915_drm.h             |  1 +
 4 files changed, 25 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index c8fc3d0..909297e 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -49,6 +49,7 @@
 #include "i915_trace.h"
 #include "i915_vgpu.h"
 #include "intel_drv.h"
+#include "intel_huc.h"
 #include "intel_guc.h"
 
 static struct drm_driver driver;
@@ -355,6 +356,9 @@ static int i915_getparam(struct drm_device *dev, void *data,
 	case I915_PARAM_MIN_EU_IN_POOL:
 		value = INTEL_INFO(dev)->min_eu_in_pool;
 		break;
+	case I915_PARAM_HAS_HUC:
+		value = intel_is_huc_valid(dev);
+		break;
 	case I915_PARAM_HAS_GUC:
 		value = intel_is_guc_valid(dev);
 		break;
diff --git a/drivers/gpu/drm/i915/intel_huc.h b/drivers/gpu/drm/i915/intel_huc.h
index 946caa7..8c1847a 100644
--- a/drivers/gpu/drm/i915/intel_huc.h
+++ b/drivers/gpu/drm/i915/intel_huc.h
@@ -40,5 +40,5 @@ extern void intel_huc_init(struct drm_device *dev);
 extern int intel_huc_load(struct drm_device *dev);
 extern void intel_huc_auth(struct drm_device *dev);
 extern void intel_huc_fini(struct drm_device *dev);
-
+extern int intel_is_huc_valid(struct drm_device *dev);
 #endif
diff --git a/drivers/gpu/drm/i915/intel_huc_loader.c b/drivers/gpu/drm/i915/intel_huc_loader.c
index 87a6948..555768d 100644
--- a/drivers/gpu/drm/i915/intel_huc_loader.c
+++ b/drivers/gpu/drm/i915/intel_huc_loader.c
@@ -273,3 +273,22 @@ void intel_huc_fini(struct drm_device *dev)
 
 	huc_fw->fetch_status = UC_FIRMWARE_NONE;
 }
+
+/**
+ * intel_is_huc_valid() - Check to see if the HuC is fully loaded.
+ * @dev:	drm dedvice to check.
+ *
+ * This function will return true if the guc has been loaded and
+ * has valid firmware. The simplest way of doing this is to check
+ * if the HuC has been validated, if so it must have been loaded.
+ */
+int intel_is_huc_valid(struct drm_device *dev)
+{
+	int result;
+	struct drm_i915_private *dev_priv = to_i915(dev);
+
+	result = ((I915_READ(HUC_STATUS2) & HUC_FW_VERIFIED) != 0);
+
+	return result;
+}
+
diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h
index ff8ce86..525d040 100644
--- a/include/uapi/drm/i915_drm.h
+++ b/include/uapi/drm/i915_drm.h
@@ -387,6 +387,7 @@ typedef struct drm_i915_irq_wait {
 #define I915_PARAM_HAS_EXEC_SOFTPIN	 37
 #define I915_PARAM_HAS_POOLED_EU	 38
 #define I915_PARAM_MIN_EU_IN_POOL	 39
+#define I915_PARAM_HAS_HUC			40
 #define I915_PARAM_HAS_GUC			41
 
 typedef struct drm_i915_getparam {
-- 
1.9.1

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

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 2/2] drm/i915/get_params: Add HuC status to getparams
  2016-08-17 12:06 ` [PATCH v2 2/2] drm/i915/get_params: Add HuC " Peter Antoine
@ 2016-08-17 12:11   ` Chris Wilson
  2016-08-17 12:22     ` Antoine, Peter
  0 siblings, 1 reply; 7+ messages in thread
From: Chris Wilson @ 2016-08-17 12:11 UTC (permalink / raw)
  To: Peter Antoine; +Cc: intel-gfx

On Wed, Aug 17, 2016 at 01:06:05PM +0100, Peter Antoine wrote:
> This patch will allow for getparams to return the status of the HuC.
> As the HuC has to be validated by the GuC this patch uses the validated
> status to show when the HuC is loaded and ready for use. You cannot use
> the loaded status as with the GuC as the HuC is verified after it is
> loaded and is not usable until it is verified.
> 
> v2: removed the forewakes as the registers are already force-woken.
>      (T.Ursulin)
> 
> Signed-off-by: Peter Antoine <peter.antoine@intel.com>
> ---
>  drivers/gpu/drm/i915/i915_drv.c         |  4 ++++
>  drivers/gpu/drm/i915/intel_huc.h        |  2 +-
>  drivers/gpu/drm/i915/intel_huc_loader.c | 19 +++++++++++++++++++
>  include/uapi/drm/i915_drm.h             |  1 +
>  4 files changed, 25 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> index c8fc3d0..909297e 100644
> --- a/drivers/gpu/drm/i915/i915_drv.c
> +++ b/drivers/gpu/drm/i915/i915_drv.c
> @@ -49,6 +49,7 @@
>  #include "i915_trace.h"
>  #include "i915_vgpu.h"
>  #include "intel_drv.h"
> +#include "intel_huc.h"
>  #include "intel_guc.h"
>  
>  static struct drm_driver driver;
> @@ -355,6 +356,9 @@ static int i915_getparam(struct drm_device *dev, void *data,
>  	case I915_PARAM_MIN_EU_IN_POOL:
>  		value = INTEL_INFO(dev)->min_eu_in_pool;
>  		break;
> +	case I915_PARAM_HAS_HUC:
> +		value = intel_is_huc_valid(dev);
> +		break;
>  	case I915_PARAM_HAS_GUC:
>  		value = intel_is_guc_valid(dev);
>  		break;
> diff --git a/drivers/gpu/drm/i915/intel_huc.h b/drivers/gpu/drm/i915/intel_huc.h
> index 946caa7..8c1847a 100644
> --- a/drivers/gpu/drm/i915/intel_huc.h
> +++ b/drivers/gpu/drm/i915/intel_huc.h
> @@ -40,5 +40,5 @@ extern void intel_huc_init(struct drm_device *dev);
>  extern int intel_huc_load(struct drm_device *dev);
>  extern void intel_huc_auth(struct drm_device *dev);
>  extern void intel_huc_fini(struct drm_device *dev);
> -
> +extern int intel_is_huc_valid(struct drm_device *dev);
>  #endif
> diff --git a/drivers/gpu/drm/i915/intel_huc_loader.c b/drivers/gpu/drm/i915/intel_huc_loader.c
> index 87a6948..555768d 100644
> --- a/drivers/gpu/drm/i915/intel_huc_loader.c
> +++ b/drivers/gpu/drm/i915/intel_huc_loader.c
> @@ -273,3 +273,22 @@ void intel_huc_fini(struct drm_device *dev)
>  
>  	huc_fw->fetch_status = UC_FIRMWARE_NONE;
>  }
> +
> +/**
> + * intel_is_huc_valid() - Check to see if the HuC is fully loaded.
> + * @dev:	drm dedvice to check.
> + *
> + * This function will return true if the guc has been loaded and
> + * has valid firmware. The simplest way of doing this is to check
> + * if the HuC has been validated, if so it must have been loaded.
> + */
> +int intel_is_huc_valid(struct drm_device *dev)
bool

pass in drm_i915_private

> +{
> +	int result;
> +	struct drm_i915_private *dev_priv = to_i915(dev);
> +
> +	result = ((I915_READ(HUC_STATUS2) & HUC_FW_VERIFIED) != 0);
> +
> +	return result;

then just return I915_READ(HUC_STATUS2) & HUC_FW_VERIFIED;
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 1/2] drm/i915/get_params: Add GuC status to getparams
  2016-08-17 12:06 ` [PATCH v2 1/2] drm/i915/get_params: Add GuC status to getparams Peter Antoine
@ 2016-08-17 12:11   ` Chris Wilson
  0 siblings, 0 replies; 7+ messages in thread
From: Chris Wilson @ 2016-08-17 12:11 UTC (permalink / raw)
  To: Peter Antoine; +Cc: intel-gfx

On Wed, Aug 17, 2016 at 01:06:04PM +0100, Peter Antoine wrote:
> This patch returns the GuC status to the caller. It is used so
> that the userspace knows if the GuC has been loaded.
> 
> Signed-off-by: Peter Antoine <peter.antoine@intel.com>
> ---
>  drivers/gpu/drm/i915/i915_drv.c         |  4 ++++
>  drivers/gpu/drm/i915/intel_guc.h        |  2 +-
>  drivers/gpu/drm/i915/intel_guc_loader.c | 19 +++++++++++++++++++
>  include/uapi/drm/i915_drm.h             |  1 +
>  4 files changed, 25 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> index 499a6ff..c8fc3d0 100644
> --- a/drivers/gpu/drm/i915/i915_drv.c
> +++ b/drivers/gpu/drm/i915/i915_drv.c
> @@ -49,6 +49,7 @@
>  #include "i915_trace.h"
>  #include "i915_vgpu.h"
>  #include "intel_drv.h"
> +#include "intel_guc.h"
>  
>  static struct drm_driver driver;
>  
> @@ -354,6 +355,9 @@ static int i915_getparam(struct drm_device *dev, void *data,
>  	case I915_PARAM_MIN_EU_IN_POOL:
>  		value = INTEL_INFO(dev)->min_eu_in_pool;
>  		break;
> +	case I915_PARAM_HAS_GUC:
> +		value = intel_is_guc_valid(dev);
> +		break;
>  	default:
>  		DRM_DEBUG("Unknown parameter %d\n", param->param);
>  		return -EINVAL;
> diff --git a/drivers/gpu/drm/i915/intel_guc.h b/drivers/gpu/drm/i915/intel_guc.h
> index efddaed..5e8bb1e 100644
> --- a/drivers/gpu/drm/i915/intel_guc.h
> +++ b/drivers/gpu/drm/i915/intel_guc.h
> @@ -166,5 +166,5 @@ int i915_guc_submission_enable(struct drm_i915_private *dev_priv);
>  int i915_guc_wq_check_space(struct drm_i915_gem_request *rq);
>  void i915_guc_submission_disable(struct drm_i915_private *dev_priv);
>  void i915_guc_submission_fini(struct drm_i915_private *dev_priv);
> -
> +int intel_is_guc_valid(struct drm_device *dev);
>  #endif
> diff --git a/drivers/gpu/drm/i915/intel_guc_loader.c b/drivers/gpu/drm/i915/intel_guc_loader.c
> index e24847f..e99278f 100644
> --- a/drivers/gpu/drm/i915/intel_guc_loader.c
> +++ b/drivers/gpu/drm/i915/intel_guc_loader.c
> @@ -782,3 +782,22 @@ void intel_guc_fini(struct drm_device *dev)
>  
>  	guc_fw->fetch_status = UC_FIRMWARE_NONE;
>  }
> +
> +/**
> + * intel_is_guc_valid() - Check to see if the GuC is fully loaded.
> + * @dev:	drm dedvice to check.
> + *
> + * This function will return true if the guc has been loaded and
> + * has valid firmware.
> + */
> +int intel_is_guc_valid(struct drm_device *dev)
> +{
> +	struct drm_i915_private *dev_priv = to_i915(dev);
> +	struct intel_uc_fw *guc_fw = &dev_priv->guc.guc_fw;
> +
> +	if (guc_fw->load_status == UC_FIRMWARE_SUCCESS)
> +		return 1;
> +	else
> +		return 0;

Same suggestions as for intel_is_huc_valid.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 2/2] drm/i915/get_params: Add HuC status to getparams
  2016-08-17 12:11   ` Chris Wilson
@ 2016-08-17 12:22     ` Antoine, Peter
  0 siblings, 0 replies; 7+ messages in thread
From: Antoine, Peter @ 2016-08-17 12:22 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx@lists.freedesktop.org

Will do for both patches.
Peter.

-----Original Message-----
From: Chris Wilson [mailto:chris@chris-wilson.co.uk] 
Sent: Wednesday, August 17, 2016 1:11 PM
To: Antoine, Peter <peter.antoine@intel.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [Intel-gfx] [PATCH v2 2/2] drm/i915/get_params: Add HuC status to getparams

On Wed, Aug 17, 2016 at 01:06:05PM +0100, Peter Antoine wrote:
> This patch will allow for getparams to return the status of the HuC.
> As the HuC has to be validated by the GuC this patch uses the 
> validated status to show when the HuC is loaded and ready for use. You 
> cannot use the loaded status as with the GuC as the HuC is verified 
> after it is loaded and is not usable until it is verified.
> 
> v2: removed the forewakes as the registers are already force-woken.
>      (T.Ursulin)
> 
> Signed-off-by: Peter Antoine <peter.antoine@intel.com>
> ---
>  drivers/gpu/drm/i915/i915_drv.c         |  4 ++++
>  drivers/gpu/drm/i915/intel_huc.h        |  2 +-
>  drivers/gpu/drm/i915/intel_huc_loader.c | 19 +++++++++++++++++++
>  include/uapi/drm/i915_drm.h             |  1 +
>  4 files changed, 25 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_drv.c 
> b/drivers/gpu/drm/i915/i915_drv.c index c8fc3d0..909297e 100644
> --- a/drivers/gpu/drm/i915/i915_drv.c
> +++ b/drivers/gpu/drm/i915/i915_drv.c
> @@ -49,6 +49,7 @@
>  #include "i915_trace.h"
>  #include "i915_vgpu.h"
>  #include "intel_drv.h"
> +#include "intel_huc.h"
>  #include "intel_guc.h"
>  
>  static struct drm_driver driver;
> @@ -355,6 +356,9 @@ static int i915_getparam(struct drm_device *dev, void *data,
>  	case I915_PARAM_MIN_EU_IN_POOL:
>  		value = INTEL_INFO(dev)->min_eu_in_pool;
>  		break;
> +	case I915_PARAM_HAS_HUC:
> +		value = intel_is_huc_valid(dev);
> +		break;
>  	case I915_PARAM_HAS_GUC:
>  		value = intel_is_guc_valid(dev);
>  		break;
> diff --git a/drivers/gpu/drm/i915/intel_huc.h 
> b/drivers/gpu/drm/i915/intel_huc.h
> index 946caa7..8c1847a 100644
> --- a/drivers/gpu/drm/i915/intel_huc.h
> +++ b/drivers/gpu/drm/i915/intel_huc.h
> @@ -40,5 +40,5 @@ extern void intel_huc_init(struct drm_device *dev);  
> extern int intel_huc_load(struct drm_device *dev);  extern void 
> intel_huc_auth(struct drm_device *dev);  extern void 
> intel_huc_fini(struct drm_device *dev);
> -
> +extern int intel_is_huc_valid(struct drm_device *dev);
>  #endif
> diff --git a/drivers/gpu/drm/i915/intel_huc_loader.c 
> b/drivers/gpu/drm/i915/intel_huc_loader.c
> index 87a6948..555768d 100644
> --- a/drivers/gpu/drm/i915/intel_huc_loader.c
> +++ b/drivers/gpu/drm/i915/intel_huc_loader.c
> @@ -273,3 +273,22 @@ void intel_huc_fini(struct drm_device *dev)
>  
>  	huc_fw->fetch_status = UC_FIRMWARE_NONE;  }
> +
> +/**
> + * intel_is_huc_valid() - Check to see if the HuC is fully loaded.
> + * @dev:	drm dedvice to check.
> + *
> + * This function will return true if the guc has been loaded and
> + * has valid firmware. The simplest way of doing this is to check
> + * if the HuC has been validated, if so it must have been loaded.
> + */
> +int intel_is_huc_valid(struct drm_device *dev)
bool

pass in drm_i915_private

> +{
> +	int result;
> +	struct drm_i915_private *dev_priv = to_i915(dev);
> +
> +	result = ((I915_READ(HUC_STATUS2) & HUC_FW_VERIFIED) != 0);
> +
> +	return result;

then just return I915_READ(HUC_STATUS2) & HUC_FW_VERIFIED; -Chris

--
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 7+ messages in thread

* ✗ Ro.CI.BAT: failure for HuC/GuC status to Get Params. (rev2)
  2016-08-17 12:06 [PATCH v2 0/2] HuC/GuC status to Get Params Peter Antoine
  2016-08-17 12:06 ` [PATCH v2 1/2] drm/i915/get_params: Add GuC status to getparams Peter Antoine
  2016-08-17 12:06 ` [PATCH v2 2/2] drm/i915/get_params: Add HuC " Peter Antoine
@ 2016-08-17 12:50 ` Patchwork
  2 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2016-08-17 12:50 UTC (permalink / raw)
  To: Peter Antoine; +Cc: intel-gfx

== Series Details ==

Series: HuC/GuC status to Get Params. (rev2)
URL   : https://patchwork.freedesktop.org/series/11158/
State : failure

== Summary ==

Applying: drm/i915/get_params: Add GuC status to getparams
Using index info to reconstruct a base tree...
M	drivers/gpu/drm/i915/i915_drv.c
M	drivers/gpu/drm/i915/intel_guc.h
M	drivers/gpu/drm/i915/intel_guc_loader.c
M	include/uapi/drm/i915_drm.h
.git/rebase-apply/patch:67: new blank line at EOF.
+
warning: 1 line adds whitespace errors.
Falling back to patching base and 3-way merge...
Auto-merging include/uapi/drm/i915_drm.h
Auto-merging drivers/gpu/drm/i915/intel_guc_loader.c
Auto-merging drivers/gpu/drm/i915/intel_guc.h
Auto-merging drivers/gpu/drm/i915/i915_drv.c
Applying: drm/i915/get_params: Add HuC status to getparams
Using index info to reconstruct a base tree...
M	drivers/gpu/drm/i915/i915_drv.c
A	drivers/gpu/drm/i915/intel_huc.h
A	drivers/gpu/drm/i915/intel_huc_loader.c
M	include/uapi/drm/i915_drm.h
.git/rebase-apply/patch:67: new blank line at EOF.
+
warning: 1 line adds whitespace errors.
Falling back to patching base and 3-way merge...
Auto-merging include/uapi/drm/i915_drm.h
CONFLICT (modify/delete): drivers/gpu/drm/i915/intel_huc_loader.c deleted in 8fdda9ee12a65129403945bc0578330c33760571 and modified in drm/i915/get_params: Add HuC status to getparams. Version drm/i915/get_params: Add HuC status to getparams of drivers/gpu/drm/i915/intel_huc_loader.c left in tree.
Auto-merging drivers/gpu/drm/i915/i915_gem.h
CONFLICT (content): Merge conflict in drivers/gpu/drm/i915/i915_gem.h
Auto-merging drivers/gpu/drm/i915/i915_drv.c
error: Failed to merge in the changes.
Patch failed at 0002 drm/i915/get_params: Add HuC status to getparams
The copy of the patch that failed is found in: .git/rebase-apply/patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-08-17 12:50 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-17 12:06 [PATCH v2 0/2] HuC/GuC status to Get Params Peter Antoine
2016-08-17 12:06 ` [PATCH v2 1/2] drm/i915/get_params: Add GuC status to getparams Peter Antoine
2016-08-17 12:11   ` Chris Wilson
2016-08-17 12:06 ` [PATCH v2 2/2] drm/i915/get_params: Add HuC " Peter Antoine
2016-08-17 12:11   ` Chris Wilson
2016-08-17 12:22     ` Antoine, Peter
2016-08-17 12:50 ` ✗ Ro.CI.BAT: failure for HuC/GuC status to Get Params. (rev2) Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.