intel-gfx.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH resend-for-CI 1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist
@ 2016-04-19 15:46 Tvrtko Ursulin
  2016-04-19 15:46 ` [PATCH resend-for-CI 2/3] drm/i915: Remove a couple pointless WARN_ONs Tvrtko Ursulin
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Tvrtko Ursulin @ 2016-04-19 15:46 UTC (permalink / raw)
  To: Intel-gfx; +Cc: Daniel Vetter

From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

Looks like DPF was not implemented for gen8+ but the IER and IMR
are still enabled on initialization.

Since there is no code to handle this interrupt, gate the irq
enablement behind HAS_L3_DPF in case the feature gets enabled
in the future.

Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/i915_irq.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 93da4feb3048..2f6fd33c07ba 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -3796,7 +3796,6 @@ static void gen8_gt_irq_postinstall(struct drm_i915_private *dev_priv)
 	uint32_t gt_interrupts[] = {
 		GT_RENDER_USER_INTERRUPT << GEN8_RCS_IRQ_SHIFT |
 			GT_CONTEXT_SWITCH_INTERRUPT << GEN8_RCS_IRQ_SHIFT |
-			GT_RENDER_L3_PARITY_ERROR_INTERRUPT |
 			GT_RENDER_USER_INTERRUPT << GEN8_BCS_IRQ_SHIFT |
 			GT_CONTEXT_SWITCH_INTERRUPT << GEN8_BCS_IRQ_SHIFT,
 		GT_RENDER_USER_INTERRUPT << GEN8_VCS1_IRQ_SHIFT |
@@ -3808,6 +3807,9 @@ static void gen8_gt_irq_postinstall(struct drm_i915_private *dev_priv)
 			GT_CONTEXT_SWITCH_INTERRUPT << GEN8_VECS_IRQ_SHIFT
 		};
 
+	if (HAS_L3_DPF(dev_priv))
+		gt_interrupts[0] |= GT_RENDER_L3_PARITY_ERROR_INTERRUPT;
+
 	dev_priv->pm_irq_mask = 0xffffffff;
 	GEN8_IRQ_INIT_NDX(GT, 0, ~gt_interrupts[0], gt_interrupts[0]);
 	GEN8_IRQ_INIT_NDX(GT, 1, ~gt_interrupts[1], gt_interrupts[1]);
-- 
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] 5+ messages in thread

* [PATCH resend-for-CI 2/3] drm/i915: Remove a couple pointless WARN_ONs
  2016-04-19 15:46 [PATCH resend-for-CI 1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist Tvrtko Ursulin
@ 2016-04-19 15:46 ` Tvrtko Ursulin
  2016-04-19 15:46 ` [PATCH resend-for-CI 3/3] drm/i915: Fixing eDP detection on certain platforms Tvrtko Ursulin
  2016-04-19 17:24 ` ✗ Fi.CI.BAT: failure for series starting with [resend-for-CI,1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist Patchwork
  2 siblings, 0 replies; 5+ messages in thread
From: Tvrtko Ursulin @ 2016-04-19 15:46 UTC (permalink / raw)
  To: Intel-gfx

From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

Just two WARN_ONs followed by pointer dereference I spotted by accident.

v2: Remove some more of the same.

Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
---
 drivers/gpu/drm/i915/i915_gem.c         | 10 ++--------
 drivers/gpu/drm/i915/intel_lrc.c        |  2 --
 drivers/gpu/drm/i915/intel_ringbuffer.c |  7 +------
 3 files changed, 3 insertions(+), 16 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 6ce2c31b9a81..a14a98341a4b 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -1444,18 +1444,13 @@ __i915_gem_request_retire__upto(struct drm_i915_gem_request *req)
 int
 i915_wait_request(struct drm_i915_gem_request *req)
 {
-	struct drm_device *dev;
-	struct drm_i915_private *dev_priv;
+	struct drm_i915_private *dev_priv = req->i915;
 	bool interruptible;
 	int ret;
 
-	BUG_ON(req == NULL);
-
-	dev = req->engine->dev;
-	dev_priv = dev->dev_private;
 	interruptible = dev_priv->mm.interruptible;
 
-	BUG_ON(!mutex_is_locked(&dev->struct_mutex));
+	BUG_ON(!mutex_is_locked(&dev_priv->dev->struct_mutex));
 
 	ret = __i915_wait_request(req, interruptible, NULL, NULL);
 	if (ret)
@@ -4355,7 +4350,6 @@ i915_gem_object_ggtt_unpin_view(struct drm_i915_gem_object *obj,
 {
 	struct i915_vma *vma = i915_gem_obj_to_ggtt_view(obj, view);
 
-	BUG_ON(!vma);
 	WARN_ON(vma->pin_count == 0);
 	WARN_ON(!i915_gem_obj_ggtt_bound_view(obj, view));
 
diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
index 1562a75ac9d1..6179b591ee84 100644
--- a/drivers/gpu/drm/i915/intel_lrc.c
+++ b/drivers/gpu/drm/i915/intel_lrc.c
@@ -892,8 +892,6 @@ int intel_logical_ring_begin(struct drm_i915_gem_request *req, int num_dwords)
 {
 	int ret;
 
-	WARN_ON(req == NULL);
-
 	ret = logical_ring_prepare(req, num_dwords * sizeof(uint32_t));
 	if (ret)
 		return ret;
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 0d24494904ef..fa2dd7a9632e 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -2489,14 +2489,9 @@ static int __intel_ring_prepare(struct intel_engine_cs *engine, int bytes)
 int intel_ring_begin(struct drm_i915_gem_request *req,
 		     int num_dwords)
 {
-	struct intel_engine_cs *engine;
-	struct drm_i915_private *dev_priv;
+	struct intel_engine_cs *engine = req->engine;
 	int ret;
 
-	WARN_ON(req == NULL);
-	engine = req->engine;
-	dev_priv = req->i915;
-
 	ret = __intel_ring_prepare(engine, num_dwords * sizeof(uint32_t));
 	if (ret)
 		return ret;
-- 
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] 5+ messages in thread

* [PATCH resend-for-CI 3/3] drm/i915: Fixing eDP detection on certain platforms
  2016-04-19 15:46 [PATCH resend-for-CI 1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist Tvrtko Ursulin
  2016-04-19 15:46 ` [PATCH resend-for-CI 2/3] drm/i915: Remove a couple pointless WARN_ONs Tvrtko Ursulin
@ 2016-04-19 15:46 ` Tvrtko Ursulin
  2016-04-19 17:24 ` ✗ Fi.CI.BAT: failure for series starting with [resend-for-CI,1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist Patchwork
  2 siblings, 0 replies; 5+ messages in thread
From: Tvrtko Ursulin @ 2016-04-19 15:46 UTC (permalink / raw)
  To: Intel-gfx; +Cc: Shubhangi Shrivastava

From: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com>

Since commit 30d9aa4265fe ("drm/i915: Read sink_count dpcd always"),
the status of a DP connector depends on its sink count value.
However, some eDP panels don't set that value appropriately,
causing them to be reported as disconnected.
Fix this by ignoring sink count for eDP.

v2: Rephrased commit message. (Ander)
    In case of eDP, returning status as connected if DPCD
    read succeeds to avoid any further operations.

Fixes: 30d9aa4265fe ("drm/i915: Read sink_count dpcd always")
Cc: Ander Conselvan De Oliveira <conselvan2@gmail.com>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Reported-by: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>
Signed-off-by: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com>
Tested-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
---
 drivers/gpu/drm/i915/intel_dp.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index c6af3d038039..73b4993bd06e 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -3776,7 +3776,7 @@ intel_dp_get_dpcd(struct intel_dp *intel_dp)
 	 * downstream port information. So, an early return here saves
 	 * time from performing other operations which are not required.
 	 */
-	if (!intel_dp->sink_count)
+	if (!is_edp(intel_dp) && !intel_dp->sink_count)
 		return false;
 
 	/* Check if the panel supports PSR */
@@ -4309,6 +4309,9 @@ intel_dp_detect_dpcd(struct intel_dp *intel_dp)
 	if (!intel_dp_get_dpcd(intel_dp))
 		return connector_status_disconnected;
 
+	if (is_edp(intel_dp))
+		return connector_status_connected;
+
 	/* if there's no downstream port, we're done */
 	if (!(dpcd[DP_DOWNSTREAMPORT_PRESENT] & DP_DWN_STRM_PORT_PRESENT))
 		return connector_status_connected;
-- 
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] 5+ messages in thread

* ✗ Fi.CI.BAT: failure for series starting with [resend-for-CI,1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist
  2016-04-19 15:46 [PATCH resend-for-CI 1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist Tvrtko Ursulin
  2016-04-19 15:46 ` [PATCH resend-for-CI 2/3] drm/i915: Remove a couple pointless WARN_ONs Tvrtko Ursulin
  2016-04-19 15:46 ` [PATCH resend-for-CI 3/3] drm/i915: Fixing eDP detection on certain platforms Tvrtko Ursulin
@ 2016-04-19 17:24 ` Patchwork
  2016-04-20  9:04   ` Tvrtko Ursulin
  2 siblings, 1 reply; 5+ messages in thread
From: Patchwork @ 2016-04-19 17:24 UTC (permalink / raw)
  To: Tvrtko Ursulin; +Cc: intel-gfx

== Series Details ==

Series: series starting with [resend-for-CI,1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist
URL   : https://patchwork.freedesktop.org/series/5944/
State : failure

== Summary ==

Series 5944v1 Series without cover letter
http://patchwork.freedesktop.org/api/1.0/series/5944/revisions/1/mbox/

Test kms_flip:
        Subgroup basic-flip-vs-wf_vblank:
                fail       -> PASS       (byt-nuc)
Test kms_force_connector_basic:
        Subgroup prune-stale-modes:
                skip       -> PASS       (ilk-hp8440p)

bdw-nuci7        total:192  pass:180  dwarn:0   dfail:0   fail:0   skip:12 
bdw-ultra        total:192  pass:169  dwarn:0   dfail:0   fail:0   skip:23 
bsw-nuc-2        total:191  pass:151  dwarn:0   dfail:0   fail:0   skip:40 
byt-nuc          total:191  pass:153  dwarn:0   dfail:0   fail:0   skip:38 
hsw-brixbox      total:192  pass:168  dwarn:0   dfail:0   fail:0   skip:24 
hsw-gt2          total:192  pass:173  dwarn:0   dfail:0   fail:0   skip:19 
ilk-hp8440p      total:192  pass:135  dwarn:0   dfail:0   fail:0   skip:57 
ivb-t430s        total:192  pass:164  dwarn:0   dfail:0   fail:0   skip:28 
skl-i7k-2        total:192  pass:167  dwarn:0   dfail:0   fail:0   skip:25 
skl-nuci5        total:192  pass:181  dwarn:0   dfail:0   fail:0   skip:11 
snb-x220t        total:192  pass:154  dwarn:0   dfail:0   fail:1   skip:37 
BOOT FAILED for snb-dellxps

Results at /archive/results/CI_IGT_test/Patchwork_1947/

30468e0d25064b544b8da9d14fd7727fdd650064 drm-intel-nightly: 2016y-04m-19d-16h-24m-23s UTC integration manifest
8f2ce93 drm/i915: Remove a couple pointless WARN_ONs
a5e26d7 drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist

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

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

* Re: ✗ Fi.CI.BAT: failure for series starting with [resend-for-CI,1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist
  2016-04-19 17:24 ` ✗ Fi.CI.BAT: failure for series starting with [resend-for-CI,1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist Patchwork
@ 2016-04-20  9:04   ` Tvrtko Ursulin
  0 siblings, 0 replies; 5+ messages in thread
From: Tvrtko Ursulin @ 2016-04-20  9:04 UTC (permalink / raw)
  To: intel-gfx


On 19/04/16 18:24, Patchwork wrote:
> == Series Details ==
>
> Series: series starting with [resend-for-CI,1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist
> URL   : https://patchwork.freedesktop.org/series/5944/
> State : failure
>
> == Summary ==
>
> Series 5944v1 Series without cover letter
> http://patchwork.freedesktop.org/api/1.0/series/5944/revisions/1/mbox/
>
> Test kms_flip:
>          Subgroup basic-flip-vs-wf_vblank:
>                  fail       -> PASS       (byt-nuc)
> Test kms_force_connector_basic:
>          Subgroup prune-stale-modes:
>                  skip       -> PASS       (ilk-hp8440p)
>
> bdw-nuci7        total:192  pass:180  dwarn:0   dfail:0   fail:0   skip:12
> bdw-ultra        total:192  pass:169  dwarn:0   dfail:0   fail:0   skip:23
> bsw-nuc-2        total:191  pass:151  dwarn:0   dfail:0   fail:0   skip:40
> byt-nuc          total:191  pass:153  dwarn:0   dfail:0   fail:0   skip:38
> hsw-brixbox      total:192  pass:168  dwarn:0   dfail:0   fail:0   skip:24
> hsw-gt2          total:192  pass:173  dwarn:0   dfail:0   fail:0   skip:19
> ilk-hp8440p      total:192  pass:135  dwarn:0   dfail:0   fail:0   skip:57
> ivb-t430s        total:192  pass:164  dwarn:0   dfail:0   fail:0   skip:28
> skl-i7k-2        total:192  pass:167  dwarn:0   dfail:0   fail:0   skip:25
> skl-nuci5        total:192  pass:181  dwarn:0   dfail:0   fail:0   skip:11
> snb-x220t        total:192  pass:154  dwarn:0   dfail:0   fail:1   skip:37
> BOOT FAILED for snb-dellxps
>
> Results at /archive/results/CI_IGT_test/Patchwork_1947/
>
> 30468e0d25064b544b8da9d14fd7727fdd650064 drm-intel-nightly: 2016y-04m-19d-16h-24m-23s UTC integration manifest
> 8f2ce93 drm/i915: Remove a couple pointless WARN_ONs
> a5e26d7 drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist

Merged, thanks for the review.

Regards,

Tvrtko

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

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

end of thread, other threads:[~2016-04-20  9:04 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-19 15:46 [PATCH resend-for-CI 1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist Tvrtko Ursulin
2016-04-19 15:46 ` [PATCH resend-for-CI 2/3] drm/i915: Remove a couple pointless WARN_ONs Tvrtko Ursulin
2016-04-19 15:46 ` [PATCH resend-for-CI 3/3] drm/i915: Fixing eDP detection on certain platforms Tvrtko Ursulin
2016-04-19 17:24 ` ✗ Fi.CI.BAT: failure for series starting with [resend-for-CI,1/3] drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist Patchwork
2016-04-20  9:04   ` Tvrtko Ursulin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).