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

Message ID 1452706695-13518-1-git-send-email-chris@chris-wilson.co.uk
State New
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

Patch
diff mbox

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);