diff mbox

drm/i915: Demote user facing DMC firmware load failure message

Message ID 1452706695-13518-1-git-send-email-chris@chris-wilson.co.uk (mailing list archive)
State New, archived
Headers show

Commit Message

Chris Wilson Jan. 13, 2016, 5:38 p.m. UTC
This is an expected error given the lack of the firmware so emit it at
KERN_NOTICE and not KERN_ERROR. Also include the firmware URL in the
user facing message so that the user can investigate and fix the issue
on their own, and also explain the consequence in plain language.

The complete failure message, including the first line from the firmware
loader, becomes

i915 0000:00:02.0: Direct firmware load for i915/skl_dmc_ver1.bin failed with error -2
i915 0000:00:02.0: Failed to load DMC firmware [https://01.org/linuxgraphics/intel-linux-graphics-firmwares], disabling runtime power management.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Damien Lespiau <damien.lespiau@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Cc: Sunil Kamath <sunil.kamath@intel.com>
Cc: Daniel Vetter <daniel.vetter@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
---
 drivers/gpu/drm/i915/intel_csr.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

Comments

Lespiau, Damien Jan. 13, 2016, 5:41 p.m. UTC | #1
On Wed, Jan 13, 2016 at 05:38:15PM +0000, Chris Wilson wrote:
> This is an expected error given the lack of the firmware so emit it at
> KERN_NOTICE and not KERN_ERROR. Also include the firmware URL in the
> user facing message so that the user can investigate and fix the issue
> on their own, and also explain the consequence in plain language.
> 
> The complete failure message, including the first line from the firmware
> loader, becomes
> 
> i915 0000:00:02.0: Direct firmware load for i915/skl_dmc_ver1.bin failed with error -2
> i915 0000:00:02.0: Failed to load DMC firmware [https://01.org/linuxgraphics/intel-linux-graphics-firmwares], disabling runtime power management.
> 
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Damien Lespiau <damien.lespiau@intel.com>
> Cc: Imre Deak <imre.deak@intel.com>
> Cc: Sunil Kamath <sunil.kamath@intel.com>
> Cc: Daniel Vetter <daniel.vetter@intel.com>
> Cc: Animesh Manna <animesh.manna@intel.com>
> Cc: Jani Nikula <jani.nikula@intel.com>

Reviewed-by: Damien Lespiau <damien.lespiau@intel.com>
Daniel Vetter Jan. 19, 2016, 10:12 a.m. UTC | #2
On Wed, Jan 13, 2016 at 05:41:44PM +0000, Damien Lespiau wrote:
> On Wed, Jan 13, 2016 at 05:38:15PM +0000, Chris Wilson wrote:
> > This is an expected error given the lack of the firmware so emit it at
> > KERN_NOTICE and not KERN_ERROR. Also include the firmware URL in the
> > user facing message so that the user can investigate and fix the issue
> > on their own, and also explain the consequence in plain language.
> > 
> > The complete failure message, including the first line from the firmware
> > loader, becomes
> > 
> > i915 0000:00:02.0: Direct firmware load for i915/skl_dmc_ver1.bin failed with error -2
> > i915 0000:00:02.0: Failed to load DMC firmware [https://01.org/linuxgraphics/intel-linux-graphics-firmwares], disabling runtime power management.
> > 
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Damien Lespiau <damien.lespiau@intel.com>
> > Cc: Imre Deak <imre.deak@intel.com>
> > Cc: Sunil Kamath <sunil.kamath@intel.com>
> > Cc: Daniel Vetter <daniel.vetter@intel.com>
> > Cc: Animesh Manna <animesh.manna@intel.com>
> > Cc: Jani Nikula <jani.nikula@intel.com>
> 
> Reviewed-by: Damien Lespiau <damien.lespiau@intel.com>

Queued for -next, thanks for the patch.
-Daniel

> 
> -- 
> Damien
> 
> > ---
> >  drivers/gpu/drm/i915/intel_csr.c | 9 +++++++--
> >  1 file changed, 7 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_csr.c b/drivers/gpu/drm/i915/intel_csr.c
> > index 3f2850029c17..5c2f9a40c81b 100644
> > --- a/drivers/gpu/drm/i915/intel_csr.c
> > +++ b/drivers/gpu/drm/i915/intel_csr.c
> > @@ -44,6 +44,8 @@
> >  #define I915_CSR_SKL "i915/skl_dmc_ver1.bin"
> >  #define I915_CSR_BXT "i915/bxt_dmc_ver1.bin"
> >  
> > +#define FIRMWARE_URL  "https://01.org/linuxgraphics/intel-linux-graphics-firmwares"
> > +
> >  MODULE_FIRMWARE(I915_CSR_SKL);
> >  MODULE_FIRMWARE(I915_CSR_BXT);
> >  
> > @@ -282,7 +284,7 @@ static uint32_t *parse_csr_fw(struct drm_i915_private *dev_priv,
> >  	    csr->version < SKL_CSR_VERSION_REQUIRED) {
> >  		DRM_INFO("Refusing to load old Skylake DMC firmware v%u.%u,"
> >  			 " please upgrade to v%u.%u or later"
> > -			 " [https://01.org/linuxgraphics/intel-linux-graphics-firmwares].\n",
> > +			   " [" FIRMWARE_URL "].\n",
> >  			 CSR_VERSION_MAJOR(csr->version),
> >  			 CSR_VERSION_MINOR(csr->version),
> >  			 CSR_VERSION_MAJOR(SKL_CSR_VERSION_REQUIRED),
> > @@ -400,7 +402,10 @@ out:
> >  			 CSR_VERSION_MAJOR(csr->version),
> >  			 CSR_VERSION_MINOR(csr->version));
> >  	} else {
> > -		DRM_ERROR("Failed to load DMC firmware, disabling rpm\n");
> > +		dev_notice(dev_priv->dev->dev,
> > +			   "Failed to load DMC firmware"
> > +			   " [" FIRMWARE_URL "],"
> > +			   " disabling runtime power management.\n");
> >  	}
> >  
> >  	release_firmware(fw);
> > -- 
> > 2.7.0.rc3
> > 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff mbox

Patch

diff --git a/drivers/gpu/drm/i915/intel_csr.c b/drivers/gpu/drm/i915/intel_csr.c
index 3f2850029c17..5c2f9a40c81b 100644
--- a/drivers/gpu/drm/i915/intel_csr.c
+++ b/drivers/gpu/drm/i915/intel_csr.c
@@ -44,6 +44,8 @@ 
 #define I915_CSR_SKL "i915/skl_dmc_ver1.bin"
 #define I915_CSR_BXT "i915/bxt_dmc_ver1.bin"
 
+#define FIRMWARE_URL  "https://01.org/linuxgraphics/intel-linux-graphics-firmwares"
+
 MODULE_FIRMWARE(I915_CSR_SKL);
 MODULE_FIRMWARE(I915_CSR_BXT);
 
@@ -282,7 +284,7 @@  static uint32_t *parse_csr_fw(struct drm_i915_private *dev_priv,
 	    csr->version < SKL_CSR_VERSION_REQUIRED) {
 		DRM_INFO("Refusing to load old Skylake DMC firmware v%u.%u,"
 			 " please upgrade to v%u.%u or later"
-			 " [https://01.org/linuxgraphics/intel-linux-graphics-firmwares].\n",
+			   " [" FIRMWARE_URL "].\n",
 			 CSR_VERSION_MAJOR(csr->version),
 			 CSR_VERSION_MINOR(csr->version),
 			 CSR_VERSION_MAJOR(SKL_CSR_VERSION_REQUIRED),
@@ -400,7 +402,10 @@  out:
 			 CSR_VERSION_MAJOR(csr->version),
 			 CSR_VERSION_MINOR(csr->version));
 	} else {
-		DRM_ERROR("Failed to load DMC firmware, disabling rpm\n");
+		dev_notice(dev_priv->dev->dev,
+			   "Failed to load DMC firmware"
+			   " [" FIRMWARE_URL "],"
+			   " disabling runtime power management.\n");
 	}
 
 	release_firmware(fw);