* [PATCH] drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C
@ 2016-04-15 12:47 Jani Nikula
2016-04-15 12:54 ` Ville Syrjälä
2016-04-15 16:25 ` ✗ Fi.CI.BAT: failure for " Patchwork
0 siblings, 2 replies; 4+ messages in thread
From: Jani Nikula @ 2016-04-15 12:47 UTC (permalink / raw)
To: intel-gfx; +Cc: jani.nikula, stable
Due to "some hardware limitation" the DPI enable bit in port C control
register does not get set on VLV. As a workaround we check the status in
pipe B conf register instead. The workaround was added in
commit c0beefd29fcb1ca998f0f9ba41be8539f8eeba9b
Author: Gaurav K Singh <gaurav.k.singh@intel.com>
Date: Tue Dec 9 10:59:20 2014 +0530
drm/i915: Software workaround for getting the HW status of DSI Port C on BYT
Empirical evidence (on Surface 3 with DSI on port C per VBT) shows that
this is the case also on CHV, so extend the workaround to CHV. We still
have the device ready register check in place, so this should not get
confused with e.g. HDMI on pipe B.
This fixes a number of state checker warnings on CHV DSI port C.
Cc: stable@vger.kernel.org
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/intel_dsi.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_dsi.c b/drivers/gpu/drm/i915/intel_dsi.c
index 9ff6435e7d38..f57adb0f0ee4 100644
--- a/drivers/gpu/drm/i915/intel_dsi.c
+++ b/drivers/gpu/drm/i915/intel_dsi.c
@@ -722,11 +722,12 @@ static bool intel_dsi_get_hw_state(struct intel_encoder *encoder,
BXT_MIPI_PORT_CTRL(port) : MIPI_PORT_CTRL(port);
bool enabled = I915_READ(ctrl_reg) & DPI_ENABLE;
- /* Due to some hardware limitations on BYT, MIPI Port C DPI
- * Enable bit does not get set. To check whether DSI Port C
- * was enabled in BIOS, check the Pipe B enable bit
+ /*
+ * Due to some hardware limitations on VLV/CHV, the DPI enable
+ * bit in port C control register does not get set. As a
+ * workaround, check pipe B conf instead.
*/
- if (IS_VALLEYVIEW(dev) && port == PORT_C)
+ if ((IS_VALLEYVIEW(dev) || IS_CHERRYVIEW(dev)) && port == PORT_C)
enabled = I915_READ(PIPECONF(PIPE_B)) & PIPECONF_ENABLE;
/* Try command mode if video mode not enabled */
--
2.1.4
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C
2016-04-15 12:47 [PATCH] drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C Jani Nikula
@ 2016-04-15 12:54 ` Ville Syrjälä
2016-04-15 16:25 ` ✗ Fi.CI.BAT: failure for " Patchwork
1 sibling, 0 replies; 4+ messages in thread
From: Ville Syrjälä @ 2016-04-15 12:54 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-gfx, stable
On Fri, Apr 15, 2016 at 03:47:31PM +0300, Jani Nikula wrote:
> Due to "some hardware limitation" the DPI enable bit in port C control
> register does not get set on VLV. As a workaround we check the status in
> pipe B conf register instead. The workaround was added in
>
> commit c0beefd29fcb1ca998f0f9ba41be8539f8eeba9b
> Author: Gaurav K Singh <gaurav.k.singh@intel.com>
> Date: Tue Dec 9 10:59:20 2014 +0530
>
> drm/i915: Software workaround for getting the HW status of DSI Port C on BYT
>
> Empirical evidence (on Surface 3 with DSI on port C per VBT) shows that
> this is the case also on CHV, so extend the workaround to CHV. We still
> have the device ready register check in place, so this should not get
> confused with e.g. HDMI on pipe B.
>
> This fixes a number of state checker warnings on CHV DSI port C.
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
> drivers/gpu/drm/i915/intel_dsi.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_dsi.c b/drivers/gpu/drm/i915/intel_dsi.c
> index 9ff6435e7d38..f57adb0f0ee4 100644
> --- a/drivers/gpu/drm/i915/intel_dsi.c
> +++ b/drivers/gpu/drm/i915/intel_dsi.c
> @@ -722,11 +722,12 @@ static bool intel_dsi_get_hw_state(struct intel_encoder *encoder,
> BXT_MIPI_PORT_CTRL(port) : MIPI_PORT_CTRL(port);
> bool enabled = I915_READ(ctrl_reg) & DPI_ENABLE;
>
> - /* Due to some hardware limitations on BYT, MIPI Port C DPI
> - * Enable bit does not get set. To check whether DSI Port C
> - * was enabled in BIOS, check the Pipe B enable bit
> + /*
> + * Due to some hardware limitations on VLV/CHV, the DPI enable
> + * bit in port C control register does not get set. As a
> + * workaround, check pipe B conf instead.
> */
> - if (IS_VALLEYVIEW(dev) && port == PORT_C)
> + if ((IS_VALLEYVIEW(dev) || IS_CHERRYVIEW(dev)) && port == PORT_C)
> enabled = I915_READ(PIPECONF(PIPE_B)) & PIPECONF_ENABLE;
I saw your register dumps, so I believe it.
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> /* Try command mode if video mode not enabled */
> --
> 2.1.4
--
Ville Syrjälä
Intel OTC
^ permalink raw reply [flat|nested] 4+ messages in thread
* ✗ Fi.CI.BAT: failure for drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C
2016-04-15 12:47 [PATCH] drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C Jani Nikula
2016-04-15 12:54 ` Ville Syrjälä
@ 2016-04-15 16:25 ` Patchwork
2016-04-18 9:30 ` Jani Nikula
1 sibling, 1 reply; 4+ messages in thread
From: Patchwork @ 2016-04-15 16:25 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C
URL : https://patchwork.freedesktop.org/series/5781/
State : failure
== Summary ==
Series 5781v1 drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C
http://patchwork.freedesktop.org/api/1.0/series/5781/revisions/1/mbox/
Test kms_flip:
Subgroup basic-flip-vs-wf_vblank:
pass -> FAIL (byt-nuc)
Test kms_force_connector_basic:
Subgroup force-load-detect:
skip -> PASS (ivb-t430s)
bdw-ultra total:203 pass:180 dwarn:0 dfail:0 fail:0 skip:23
bsw-nuc-2 total:202 pass:162 dwarn:0 dfail:0 fail:0 skip:40
byt-nuc total:202 pass:163 dwarn:0 dfail:0 fail:1 skip:38
hsw-brixbox total:203 pass:179 dwarn:0 dfail:0 fail:0 skip:24
hsw-gt2 total:203 pass:184 dwarn:0 dfail:0 fail:0 skip:19
ilk-hp8440p total:203 pass:135 dwarn:0 dfail:0 fail:0 skip:68
ivb-t430s total:203 pass:175 dwarn:0 dfail:0 fail:0 skip:28
skl-i7k-2 total:203 pass:178 dwarn:0 dfail:0 fail:0 skip:25
skl-nuci5 total:203 pass:192 dwarn:0 dfail:0 fail:0 skip:11
snb-dellxps total:203 pass:165 dwarn:0 dfail:0 fail:0 skip:38
snb-x220t total:203 pass:165 dwarn:0 dfail:0 fail:1 skip:37
BOOT FAILED for bdw-nuci7
Results at /archive/results/CI_IGT_test/Patchwork_1918/
d9131d62d18ba94fb3ca019f1156c22b5f4ce23c drm-intel-nightly: 2016y-04m-15d-13h-53m-44s UTC integration manifest
2d758c5 drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: ✗ Fi.CI.BAT: failure for drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C
2016-04-15 16:25 ` ✗ Fi.CI.BAT: failure for " Patchwork
@ 2016-04-18 9:30 ` Jani Nikula
0 siblings, 0 replies; 4+ messages in thread
From: Jani Nikula @ 2016-04-18 9:30 UTC (permalink / raw)
To: Patchwork; +Cc: intel-gfx
On Fri, 15 Apr 2016, Patchwork <patchwork@emeril.freedesktop.org> wrote:
> == Series Details ==
>
> Series: drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C
> URL : https://patchwork.freedesktop.org/series/5781/
> State : failure
>
> == Summary ==
>
> Series 5781v1 drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C
> http://patchwork.freedesktop.org/api/1.0/series/5781/revisions/1/mbox/
>
> Test kms_flip:
> Subgroup basic-flip-vs-wf_vblank:
> pass -> FAIL (byt-nuc)
> Test kms_force_connector_basic:
> Subgroup force-load-detect:
> skip -> PASS (ivb-t430s)
The patch doesn't affect either platform or test in any way.
Pushed to drm-intel-next-queued, thanks for the review.
BR,
Jani.
>
> bdw-ultra total:203 pass:180 dwarn:0 dfail:0 fail:0 skip:23
> bsw-nuc-2 total:202 pass:162 dwarn:0 dfail:0 fail:0 skip:40
> byt-nuc total:202 pass:163 dwarn:0 dfail:0 fail:1 skip:38
> hsw-brixbox total:203 pass:179 dwarn:0 dfail:0 fail:0 skip:24
> hsw-gt2 total:203 pass:184 dwarn:0 dfail:0 fail:0 skip:19
> ilk-hp8440p total:203 pass:135 dwarn:0 dfail:0 fail:0 skip:68
> ivb-t430s total:203 pass:175 dwarn:0 dfail:0 fail:0 skip:28
> skl-i7k-2 total:203 pass:178 dwarn:0 dfail:0 fail:0 skip:25
> skl-nuci5 total:203 pass:192 dwarn:0 dfail:0 fail:0 skip:11
> snb-dellxps total:203 pass:165 dwarn:0 dfail:0 fail:0 skip:38
> snb-x220t total:203 pass:165 dwarn:0 dfail:0 fail:1 skip:37
> BOOT FAILED for bdw-nuci7
>
> Results at /archive/results/CI_IGT_test/Patchwork_1918/
>
> d9131d62d18ba94fb3ca019f1156c22b5f4ce23c drm-intel-nightly: 2016y-04m-15d-13h-53m-44s UTC integration manifest
> 2d758c5 drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C
>
--
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2016-04-18 9:30 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-15 12:47 [PATCH] drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C Jani Nikula
2016-04-15 12:54 ` Ville Syrjälä
2016-04-15 16:25 ` ✗ Fi.CI.BAT: failure for " Patchwork
2016-04-18 9:30 ` Jani Nikula
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox