[Intel-gfx] [PATCH 1/1] drm/i915: Drop RPM reference when CSR fails to load for BXT

Sagar Arun Kamble sagar.a.kamble at intel.com
Tue Oct 13 09:49:45 PDT 2015


RPM reference taken before CSR load is not dropped if CSR fails to load.
As Display DC9 state that is entered on RPM suspend does not depend on CSR firmware,
RPM reference can be dropped for BXT.

Cc: Animesh Manna <animesh.manna at intel.com>
Cc: A.Sunil Kamath <sunil.kamath at intel.com>
Change-Id: Ib25d64239adb30188f2c2f1b5ddc6a50c1f0e280
Signed-off-by: Sagar Arun Kamble <sagar.a.kamble at intel.com>
---
 drivers/gpu/drm/i915/intel_csr.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_csr.c b/drivers/gpu/drm/i915/intel_csr.c
index 9e530a7..48c8ad8 100644
--- a/drivers/gpu/drm/i915/intel_csr.c
+++ b/drivers/gpu/drm/i915/intel_csr.c
@@ -406,8 +406,15 @@ static void finish_csr_load(const struct firmware *fw, void *context)
 out:
 	if (fw_loaded)
 		intel_runtime_pm_put(dev_priv);
-	else
+	else {
+		/*
+		* For BXT, on runtime suspend, display goes to DC9 which does not
+		* depend on CSR hence leave the RPM reference.
+		*/
+		if (IS_BROXTON(dev))
+			intel_runtime_pm_put(dev_priv);
 		intel_csr_load_status_set(dev_priv, FW_FAILED);
+	}
 
 	release_firmware(fw);
 }
-- 
1.9.1



More information about the Intel-gfx mailing list