diff mbox series

[1/2] drm/i915/ddi: Add more sanity check to the encoder HW readout

Message ID 20181107200836.10191-1-imre.deak@intel.com (mailing list archive)
State New, archived
Headers show
Series [1/2] drm/i915/ddi: Add more sanity check to the encoder HW readout | expand

Commit Message

Imre Deak Nov. 7, 2018, 8:08 p.m. UTC
Check for reserved register field values and conflicting
transcoder->port mappings (both MST and non-MST mappings or multiple SST
mappings).

This is also needed for the next patch to determine if a port is in MST
mode during sanitization after HW readout.

Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: José Roberto de Souza <jose.souza@intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Antonio Argenziano <antonio.argenziano@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
---
 drivers/gpu/drm/i915/intel_ddi.c | 76 +++++++++++++++++++++++++++-------------
 1 file changed, 52 insertions(+), 24 deletions(-)

Comments

Imre Deak Nov. 7, 2018, 9:23 p.m. UTC | #1
On Wed, Nov 07, 2018 at 08:39:24PM +0000, Patchwork wrote:
> == Series Details ==
> 
> Series: series starting with [1/2] drm/i915/ddi: Add more sanity check to the encoder HW readout
> URL   : https://patchwork.freedesktop.org/series/52187/
> State : failure
> 
> == Summary ==
> 
> = CI Bug Log - changes from CI_DRM_5100 -> Patchwork_10758 =
> 
> == Summary - FAILURE ==
> 
>   Serious unknown changes coming with Patchwork_10758 absolutely need to be
>   verified manually.
>   
>   If you think the reported changes have nothing to do with the changes
>   introduced in Patchwork_10758, please notify your bug team to allow them
>   to document this new failure mode, which will reduce false positives in CI.
> 
>   External URL: https://patchwork.freedesktop.org/api/1.0/series/52187/revisions/1/mbox/
> 
> == Possible new issues ==
> 
>   Here are the unknown changes that may have been introduced in Patchwork_10758:
> 
>   === IGT changes ===
> 
>     ==== Possible regressions ====
> 
>     igt@gem_exec_nop@basic-parallel:
>       fi-icl-u:           PASS -> INCOMPLETE

Can't see how this can be related, the encoders are ok during HW
readout, so the new PLL sanitize function won't do anything on them. I
found earlier instances of this issue (at least the same machine/test/error message):

https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10556/fi-icl-u/igt@gem_exec_nop@basic-series.html
https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4696/fi-icl-u/igt@drv_selftest@live_requests.html
https://intel-gfx-ci.01.org/tree/drm-tip/Trybot_3187/fi-icl-u/igt@gem_exec_nop@basic-parallel.html
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10569/fi-icl-u/igt@gem_exec_nop@basic-series.html
https://intel-gfx-ci.01.org/tree/drm-tip/Trybot_3185/fi-icl-u/igt@drv_selftest@live_requests.html
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_5089/fi-icl-u/dmesg0.log
https://intel-gfx-ci.01.org/tree/drm-tip/Trybot_3148/fi-icl-u/igt@drv_selftest@live_requests.html
https://intel-gfx-ci.01.org/tree/drm-tip/IGT_4701/fi-icl-u/igt@drv_selftest@live_requests.html

> 
>     
> == Known issues ==
> 
>   Here are the changes found in Patchwork_10758 that come from known issues:
> 
>   === IGT changes ===
> 
>     ==== Issues hit ====
> 
>     igt@gem_ctx_create@basic-files:
>       fi-bsw-kefka:       PASS -> FAIL (fdo#108656)
> 
>     igt@gem_mmap_gtt@basic-small-bo-tiledx:
>       fi-glk-dsi:         PASS -> INCOMPLETE (fdo#103359, k.org#198133)
> 
>     igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
>       fi-byt-clapper:     PASS -> FAIL (fdo#103191, fdo#107362)
> 
>     
>     ==== Possible fixes ====
> 
>     igt@drv_getparams_basic@basic-subslice-total:
>       fi-cfl-8109u:       DMESG-WARN (fdo#106107) -> PASS
> 
>     igt@drv_selftest@live_coherency:
>       fi-gdg-551:         DMESG-FAIL (fdo#107164) -> PASS
> 
>     igt@gem_exec_suspend@basic-s3:
>       fi-cfl-8109u:       INCOMPLETE (fdo#108126, fdo#107187) -> PASS
> 
>     igt@kms_chamelium@common-hpd-after-suspend:
>       fi-skl-6700k2:      WARN (fdo#108680) -> PASS
> 
>     igt@kms_frontbuffer_tracking@basic:
>       fi-hsw-peppy:       DMESG-WARN (fdo#102614) -> PASS
>       fi-byt-clapper:     FAIL (fdo#103167) -> PASS
> 
>     
>     ==== Warnings ====
> 
>     igt@drv_selftest@live_contexts:
>       fi-icl-u2:          DMESG-FAIL (fdo#108569) -> INCOMPLETE (fdo#108315)
> 
>     
>   fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
>   fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
>   fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
>   fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
>   fdo#106107 https://bugs.freedesktop.org/show_bug.cgi?id=106107
>   fdo#107164 https://bugs.freedesktop.org/show_bug.cgi?id=107164
>   fdo#107187 https://bugs.freedesktop.org/show_bug.cgi?id=107187
>   fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
>   fdo#108126 https://bugs.freedesktop.org/show_bug.cgi?id=108126
>   fdo#108315 https://bugs.freedesktop.org/show_bug.cgi?id=108315
>   fdo#108569 https://bugs.freedesktop.org/show_bug.cgi?id=108569
>   fdo#108656 https://bugs.freedesktop.org/show_bug.cgi?id=108656
>   fdo#108680 https://bugs.freedesktop.org/show_bug.cgi?id=108680
>   k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
> 
> 
> == Participating hosts (54 -> 46) ==
> 
>   Missing    (8): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-snb-2520m fi-ctg-p8600 fi-pnv-d510 
> 
> 
> == Build changes ==
> 
>     * Linux: CI_DRM_5100 -> Patchwork_10758
> 
>   CI_DRM_5100: c5f9a3064d90c86dab99d5aef011b87f6f8921dc @ git://anongit.freedesktop.org/gfx-ci/linux
>   IGT_4712: a3ede1b535ac8137f6949c468edd7054453d5dae @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
>   Patchwork_10758: 60ace73cb0f8e814e6a6e34d6c9775d5fcf077a8 @ git://anongit.freedesktop.org/gfx-ci/linux
> 
> 
> == Linux commits ==
> 
> 60ace73cb0f8 drm/i915/icl: Fix PLL mapping sanitization for DP ports
> ee7b2ea5708d drm/i915/ddi: Add more sanity check to the encoder HW readout
> 
> == Logs ==
> 
> For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10758/issues.html
Imre Deak Nov. 9, 2018, 12:40 p.m. UTC | #2
On Wed, Nov 07, 2018 at 08:39:24PM +0000, Patchwork wrote:
> == Series Details ==
> 
> Series: series starting with [1/2] drm/i915/ddi: Add more sanity check to the encoder HW readout
> URL   : https://patchwork.freedesktop.org/series/52187/
> State : failure
> 
> == Summary ==
> 
> = CI Bug Log - changes from CI_DRM_5100 -> Patchwork_10758 =
> 
> == Summary - FAILURE ==
> 
>   Serious unknown changes coming with Patchwork_10758 absolutely need to be
>   verified manually.
>   
>   If you think the reported changes have nothing to do with the changes
>   introduced in Patchwork_10758, please notify your bug team to allow them
>   to document this new failure mode, which will reduce false positives in CI.
> 
>   External URL: https://patchwork.freedesktop.org/api/1.0/series/52187/revisions/1/mbox/
> 
> == Possible new issues ==
> 
>   Here are the unknown changes that may have been introduced in Patchwork_10758:
> 
>   === IGT changes ===
> 
>     ==== Possible regressions ====
> 
>     igt@gem_exec_nop@basic-parallel:
>       fi-icl-u:           PASS -> INCOMPLETE

https://bugs.freedesktop.org/show_bug.cgi?id=108564

> 
>     
> == Known issues ==
> 
>   Here are the changes found in Patchwork_10758 that come from known issues:
> 
>   === IGT changes ===
> 
>     ==== Issues hit ====
> 
>     igt@gem_ctx_create@basic-files:
>       fi-bsw-kefka:       PASS -> FAIL (fdo#108656)
> 
>     igt@gem_mmap_gtt@basic-small-bo-tiledx:
>       fi-glk-dsi:         PASS -> INCOMPLETE (fdo#103359, k.org#198133)
> 
>     igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
>       fi-byt-clapper:     PASS -> FAIL (fdo#103191, fdo#107362)
> 
>     
>     ==== Possible fixes ====
> 
>     igt@drv_getparams_basic@basic-subslice-total:
>       fi-cfl-8109u:       DMESG-WARN (fdo#106107) -> PASS
> 
>     igt@drv_selftest@live_coherency:
>       fi-gdg-551:         DMESG-FAIL (fdo#107164) -> PASS
> 
>     igt@gem_exec_suspend@basic-s3:
>       fi-cfl-8109u:       INCOMPLETE (fdo#108126, fdo#107187) -> PASS
> 
>     igt@kms_chamelium@common-hpd-after-suspend:
>       fi-skl-6700k2:      WARN (fdo#108680) -> PASS
> 
>     igt@kms_frontbuffer_tracking@basic:
>       fi-hsw-peppy:       DMESG-WARN (fdo#102614) -> PASS
>       fi-byt-clapper:     FAIL (fdo#103167) -> PASS
> 
>     
>     ==== Warnings ====
> 
>     igt@drv_selftest@live_contexts:
>       fi-icl-u2:          DMESG-FAIL (fdo#108569) -> INCOMPLETE (fdo#108315)
> 
>     
>   fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
>   fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
>   fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
>   fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
>   fdo#106107 https://bugs.freedesktop.org/show_bug.cgi?id=106107
>   fdo#107164 https://bugs.freedesktop.org/show_bug.cgi?id=107164
>   fdo#107187 https://bugs.freedesktop.org/show_bug.cgi?id=107187
>   fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
>   fdo#108126 https://bugs.freedesktop.org/show_bug.cgi?id=108126
>   fdo#108315 https://bugs.freedesktop.org/show_bug.cgi?id=108315
>   fdo#108569 https://bugs.freedesktop.org/show_bug.cgi?id=108569
>   fdo#108656 https://bugs.freedesktop.org/show_bug.cgi?id=108656
>   fdo#108680 https://bugs.freedesktop.org/show_bug.cgi?id=108680
>   k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
> 
> 
> == Participating hosts (54 -> 46) ==
> 
>   Missing    (8): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-snb-2520m fi-ctg-p8600 fi-pnv-d510 
> 
> 
> == Build changes ==
> 
>     * Linux: CI_DRM_5100 -> Patchwork_10758
> 
>   CI_DRM_5100: c5f9a3064d90c86dab99d5aef011b87f6f8921dc @ git://anongit.freedesktop.org/gfx-ci/linux
>   IGT_4712: a3ede1b535ac8137f6949c468edd7054453d5dae @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
>   Patchwork_10758: 60ace73cb0f8e814e6a6e34d6c9775d5fcf077a8 @ git://anongit.freedesktop.org/gfx-ci/linux
> 
> 
> == Linux commits ==
> 
> 60ace73cb0f8 drm/i915/icl: Fix PLL mapping sanitization for DP ports
> ee7b2ea5708d drm/i915/ddi: Add more sanity check to the encoder HW readout
> 
> == Logs ==
> 
> For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10758/issues.html
Peres, Martin Nov. 9, 2018, 1:20 p.m. UTC | #3
On 09/11/2018 14:40, Deak, Imre wrote:
> On Wed, Nov 07, 2018 at 08:39:24PM +0000, Patchwork wrote:
>> == Series Details ==
>>
>> Series: series starting with [1/2] drm/i915/ddi: Add more sanity check to the encoder HW readout
>> URL   : https://patchwork.freedesktop.org/series/52187/
>> State : failure
>>
>> == Summary ==
>>
>> = CI Bug Log - changes from CI_DRM_5100 -> Patchwork_10758 =
>>
>> == Summary - FAILURE ==
>>
>>   Serious unknown changes coming with Patchwork_10758 absolutely need to be
>>   verified manually.
>>   
>>   If you think the reported changes have nothing to do with the changes
>>   introduced in Patchwork_10758, please notify your bug team to allow them
>>   to document this new failure mode, which will reduce false positives in CI.
>>
>>   External URL: https://patchwork.freedesktop.org/api/1.0/series/52187/revisions/1/mbox/
>>
>> == Possible new issues ==
>>
>>   Here are the unknown changes that may have been introduced in Patchwork_10758:
>>
>>   === IGT changes ===
>>
>>     ==== Possible regressions ====
>>
>>     igt@gem_exec_nop@basic-parallel:
>>       fi-icl-u:           PASS -> INCOMPLETE
> 
> https://bugs.freedesktop.org/show_bug.cgi?id=108564
> 

Filed and re-reporting queued. Thanks!

>>
>>     
>> == Known issues ==
>>
>>   Here are the changes found in Patchwork_10758 that come from known issues:
>>
>>   === IGT changes ===
>>
>>     ==== Issues hit ====
>>
>>     igt@gem_ctx_create@basic-files:
>>       fi-bsw-kefka:       PASS -> FAIL (fdo#108656)
>>
>>     igt@gem_mmap_gtt@basic-small-bo-tiledx:
>>       fi-glk-dsi:         PASS -> INCOMPLETE (fdo#103359, k.org#198133)
>>
>>     igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
>>       fi-byt-clapper:     PASS -> FAIL (fdo#103191, fdo#107362)
>>
>>     
>>     ==== Possible fixes ====
>>
>>     igt@drv_getparams_basic@basic-subslice-total:
>>       fi-cfl-8109u:       DMESG-WARN (fdo#106107) -> PASS
>>
>>     igt@drv_selftest@live_coherency:
>>       fi-gdg-551:         DMESG-FAIL (fdo#107164) -> PASS
>>
>>     igt@gem_exec_suspend@basic-s3:
>>       fi-cfl-8109u:       INCOMPLETE (fdo#108126, fdo#107187) -> PASS
>>
>>     igt@kms_chamelium@common-hpd-after-suspend:
>>       fi-skl-6700k2:      WARN (fdo#108680) -> PASS
>>
>>     igt@kms_frontbuffer_tracking@basic:
>>       fi-hsw-peppy:       DMESG-WARN (fdo#102614) -> PASS
>>       fi-byt-clapper:     FAIL (fdo#103167) -> PASS
>>
>>     
>>     ==== Warnings ====
>>
>>     igt@drv_selftest@live_contexts:
>>       fi-icl-u2:          DMESG-FAIL (fdo#108569) -> INCOMPLETE (fdo#108315)
>>
>>     
>>   fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
>>   fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
>>   fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
>>   fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
>>   fdo#106107 https://bugs.freedesktop.org/show_bug.cgi?id=106107
>>   fdo#107164 https://bugs.freedesktop.org/show_bug.cgi?id=107164
>>   fdo#107187 https://bugs.freedesktop.org/show_bug.cgi?id=107187
>>   fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
>>   fdo#108126 https://bugs.freedesktop.org/show_bug.cgi?id=108126
>>   fdo#108315 https://bugs.freedesktop.org/show_bug.cgi?id=108315
>>   fdo#108569 https://bugs.freedesktop.org/show_bug.cgi?id=108569
>>   fdo#108656 https://bugs.freedesktop.org/show_bug.cgi?id=108656
>>   fdo#108680 https://bugs.freedesktop.org/show_bug.cgi?id=108680
>>   k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
>>
>>
>> == Participating hosts (54 -> 46) ==
>>
>>   Missing    (8): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-snb-2520m fi-ctg-p8600 fi-pnv-d510 
>>
>>
>> == Build changes ==
>>
>>     * Linux: CI_DRM_5100 -> Patchwork_10758
>>
>>   CI_DRM_5100: c5f9a3064d90c86dab99d5aef011b87f6f8921dc @ git://anongit.freedesktop.org/gfx-ci/linux
>>   IGT_4712: a3ede1b535ac8137f6949c468edd7054453d5dae @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
>>   Patchwork_10758: 60ace73cb0f8e814e6a6e34d6c9775d5fcf077a8 @ git://anongit.freedesktop.org/gfx-ci/linux
>>
>>
>> == Linux commits ==
>>
>> 60ace73cb0f8 drm/i915/icl: Fix PLL mapping sanitization for DP ports
>> ee7b2ea5708d drm/i915/ddi: Add more sanity check to the encoder HW readout
>>
>> == Logs ==
>>
>> For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10758/issues.html
> 

---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
Imre Deak Nov. 9, 2018, 1:44 p.m. UTC | #4
On Fri, Nov 09, 2018 at 12:09:40AM +0000, Patchwork wrote:
> == Series Details ==
> 
> Series: series starting with [1/2] drm/i915/ddi: Add more sanity check to the encoder HW readout
> URL   : https://patchwork.freedesktop.org/series/52187/
> State : success
> 
> == Summary ==
> 
> = CI Bug Log - changes from CI_DRM_5100_full -> Patchwork_10758_full =
> 
> == Summary - WARNING ==
> 
>   Minor unknown changes coming with Patchwork_10758_full need to be verified
>   manually.
>   
>   If you think the reported changes have nothing to do with the changes
>   introduced in Patchwork_10758_full, please notify your bug team to allow them
>   to document this new failure mode, which will reduce false positives in CI.
> 
>   
> 
> == Possible new issues ==
> 
>   Here are the unknown changes that may have been introduced in Patchwork_10758_full:
> 
>   === IGT changes ===
> 
>     ==== Warnings ====
> 
>     igt@pm_rc6_residency@rc6-accuracy:
>       shard-snb:          PASS -> SKIP

Independent platform, looks like 
https://bugs.freedesktop.org/show_bug.cgi?id=108664

will add there a note about this skip.


> 
>     igt@tools_test@tools_test:
>       shard-kbl:          SKIP -> PASS
> 
>     
> == Known issues ==
> 
>   Here are the changes found in Patchwork_10758_full that come from known issues:
> 
>   === IGT changes ===
> 
>     ==== Issues hit ====
> 
>     igt@gem_exec_suspend@basic-s3:
>       shard-kbl:          PASS -> FAIL (fdo#103375)
> 
>     igt@kms_color@pipe-b-legacy-gamma:
>       shard-apl:          PASS -> FAIL (fdo#104782)
> 
>     igt@kms_cursor_crc@cursor-128x128-random:
>       shard-glk:          PASS -> FAIL (fdo#103232)
> 
>     igt@kms_cursor_crc@cursor-128x128-suspend:
>       shard-apl:          PASS -> FAIL (fdo#103232, fdo#103191) +1
> 
>     igt@kms_cursor_crc@cursor-256x256-suspend:
>       shard-skl:          PASS -> INCOMPLETE (fdo#104108)
> 
>     igt@kms_cursor_legacy@cursora-vs-flipa-toggle:
>       shard-glk:          PASS -> DMESG-WARN (fdo#105763, fdo#106538)
> 
>     igt@kms_draw_crc@draw-method-rgb565-mmap-wc-untiled:
>       shard-skl:          PASS -> FAIL (fdo#103184)
> 
>     igt@kms_flip@flip-vs-expired-vblank:
>       shard-glk:          PASS -> FAIL (fdo#105363, fdo#102887)
> 
>     igt@kms_flip@flip-vs-expired-vblank-interruptible:
>       shard-glk:          PASS -> FAIL (fdo#105363)
> 
>     igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-wc:
>       shard-apl:          PASS -> FAIL (fdo#103167)
> 
>     igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-plflip-blt:
>       shard-glk:          PASS -> FAIL (fdo#103167) +4
> 
>     igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-pgflip-blt:
>       shard-apl:          SKIP -> INCOMPLETE (fdo#103927)
> 
>     igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
>       shard-skl:          PASS -> INCOMPLETE (fdo#104108, fdo#107773)
> 
>     igt@pm_rpm@legacy-planes-dpms:
>       shard-skl:          PASS -> INCOMPLETE (fdo#107807, fdo#105959)
> 
>     igt@pm_rpm@modeset-lpsp:
>       shard-skl:          PASS -> INCOMPLETE (fdo#107807) +1
> 
>     
>     ==== Possible fixes ====
> 
>     igt@kms_busy@extended-modeset-hang-newfb-render-b:
>       shard-kbl:          DMESG-WARN (fdo#107956) -> PASS +1
> 
>     igt@kms_cursor_crc@cursor-128x128-random:
>       shard-apl:          FAIL (fdo#103232) -> PASS +2
> 
>     igt@kms_cursor_crc@cursor-64x64-random:
>       shard-glk:          FAIL (fdo#103232) -> PASS +1
> 
>     igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size:
>       shard-glk:          DMESG-WARN (fdo#105763, fdo#106538) -> PASS
> 
>     igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-onoff:
>       shard-glk:          FAIL (fdo#103167) -> PASS
> 
>     igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
>       shard-glk:          INCOMPLETE (k.org#198133, fdo#103359) -> PASS
> 
>     igt@kms_plane_multiple@atomic-pipe-a-tiling-x:
>       shard-glk:          FAIL (fdo#103166) -> PASS
> 
>     igt@kms_setmode@basic:
>       shard-kbl:          FAIL (fdo#99912) -> PASS
> 
>     igt@kms_universal_plane@universal-plane-pipe-b-functional:
>       shard-apl:          FAIL (fdo#103166) -> PASS +2
> 
>     igt@perf@polling:
>       shard-hsw:          FAIL (fdo#102252) -> PASS
> 
>     
>     ==== Warnings ====
> 
>     igt@kms_frontbuffer_tracking@fbc-rgb101010-draw-mmap-cpu:
>       shard-snb:          DMESG-WARN (fdo#107469) -> INCOMPLETE (fdo#105411)
> 
>     
>   fdo#102252 https://bugs.freedesktop.org/show_bug.cgi?id=102252
>   fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
>   fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
>   fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
>   fdo#103184 https://bugs.freedesktop.org/show_bug.cgi?id=103184
>   fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
>   fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
>   fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
>   fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
>   fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
>   fdo#104108 https://bugs.freedesktop.org/show_bug.cgi?id=104108
>   fdo#104782 https://bugs.freedesktop.org/show_bug.cgi?id=104782
>   fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
>   fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
>   fdo#105763 https://bugs.freedesktop.org/show_bug.cgi?id=105763
>   fdo#105959 https://bugs.freedesktop.org/show_bug.cgi?id=105959
>   fdo#106538 https://bugs.freedesktop.org/show_bug.cgi?id=106538
>   fdo#107469 https://bugs.freedesktop.org/show_bug.cgi?id=107469
>   fdo#107773 https://bugs.freedesktop.org/show_bug.cgi?id=107773
>   fdo#107807 https://bugs.freedesktop.org/show_bug.cgi?id=107807
>   fdo#107956 https://bugs.freedesktop.org/show_bug.cgi?id=107956
>   fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
>   k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
> 
> 
> == Participating hosts (6 -> 6) ==
> 
>   No changes in participating hosts
> 
> 
> == Build changes ==
> 
>     * Linux: CI_DRM_5100 -> Patchwork_10758
> 
>   CI_DRM_5100: c5f9a3064d90c86dab99d5aef011b87f6f8921dc @ git://anongit.freedesktop.org/gfx-ci/linux
>   IGT_4712: a3ede1b535ac8137f6949c468edd7054453d5dae @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
>   Patchwork_10758: 60ace73cb0f8e814e6a6e34d6c9775d5fcf077a8 @ git://anongit.freedesktop.org/gfx-ci/linux
>   piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
> 
> == Logs ==
> 
> For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10758/shards.html
Imre Deak Nov. 9, 2018, 2 p.m. UTC | #5
On Fri, Nov 09, 2018 at 03:44:47PM +0200, Imre Deak wrote:
> On Fri, Nov 09, 2018 at 12:09:40AM +0000, Patchwork wrote:
> > == Series Details ==
> > 
> > Series: series starting with [1/2] drm/i915/ddi: Add more sanity check to the encoder HW readout
> > URL   : https://patchwork.freedesktop.org/series/52187/
> > State : success

Pushed to -dinq, thanks for the report, review and testing.

> > 
> > == Summary ==
> > 
> > = CI Bug Log - changes from CI_DRM_5100_full -> Patchwork_10758_full =
> > 
> > == Summary - WARNING ==
> > 
> >   Minor unknown changes coming with Patchwork_10758_full need to be verified
> >   manually.
> >   
> >   If you think the reported changes have nothing to do with the changes
> >   introduced in Patchwork_10758_full, please notify your bug team to allow them
> >   to document this new failure mode, which will reduce false positives in CI.
> > 
> >   
> > 
> > == Possible new issues ==
> > 
> >   Here are the unknown changes that may have been introduced in Patchwork_10758_full:
> > 
> >   === IGT changes ===
> > 
> >     ==== Warnings ====
> > 
> >     igt@pm_rc6_residency@rc6-accuracy:
> >       shard-snb:          PASS -> SKIP
> 
> Independent platform, looks like 
> https://bugs.freedesktop.org/show_bug.cgi?id=108664
> 
> will add there a note about this skip.
> 
> 
> > 
> >     igt@tools_test@tools_test:
> >       shard-kbl:          SKIP -> PASS
> > 
> >     
> > == Known issues ==
> > 
> >   Here are the changes found in Patchwork_10758_full that come from known issues:
> > 
> >   === IGT changes ===
> > 
> >     ==== Issues hit ====
> > 
> >     igt@gem_exec_suspend@basic-s3:
> >       shard-kbl:          PASS -> FAIL (fdo#103375)
> > 
> >     igt@kms_color@pipe-b-legacy-gamma:
> >       shard-apl:          PASS -> FAIL (fdo#104782)
> > 
> >     igt@kms_cursor_crc@cursor-128x128-random:
> >       shard-glk:          PASS -> FAIL (fdo#103232)
> > 
> >     igt@kms_cursor_crc@cursor-128x128-suspend:
> >       shard-apl:          PASS -> FAIL (fdo#103232, fdo#103191) +1
> > 
> >     igt@kms_cursor_crc@cursor-256x256-suspend:
> >       shard-skl:          PASS -> INCOMPLETE (fdo#104108)
> > 
> >     igt@kms_cursor_legacy@cursora-vs-flipa-toggle:
> >       shard-glk:          PASS -> DMESG-WARN (fdo#105763, fdo#106538)
> > 
> >     igt@kms_draw_crc@draw-method-rgb565-mmap-wc-untiled:
> >       shard-skl:          PASS -> FAIL (fdo#103184)
> > 
> >     igt@kms_flip@flip-vs-expired-vblank:
> >       shard-glk:          PASS -> FAIL (fdo#105363, fdo#102887)
> > 
> >     igt@kms_flip@flip-vs-expired-vblank-interruptible:
> >       shard-glk:          PASS -> FAIL (fdo#105363)
> > 
> >     igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-wc:
> >       shard-apl:          PASS -> FAIL (fdo#103167)
> > 
> >     igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-plflip-blt:
> >       shard-glk:          PASS -> FAIL (fdo#103167) +4
> > 
> >     igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-pgflip-blt:
> >       shard-apl:          SKIP -> INCOMPLETE (fdo#103927)
> > 
> >     igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
> >       shard-skl:          PASS -> INCOMPLETE (fdo#104108, fdo#107773)
> > 
> >     igt@pm_rpm@legacy-planes-dpms:
> >       shard-skl:          PASS -> INCOMPLETE (fdo#107807, fdo#105959)
> > 
> >     igt@pm_rpm@modeset-lpsp:
> >       shard-skl:          PASS -> INCOMPLETE (fdo#107807) +1
> > 
> >     
> >     ==== Possible fixes ====
> > 
> >     igt@kms_busy@extended-modeset-hang-newfb-render-b:
> >       shard-kbl:          DMESG-WARN (fdo#107956) -> PASS +1
> > 
> >     igt@kms_cursor_crc@cursor-128x128-random:
> >       shard-apl:          FAIL (fdo#103232) -> PASS +2
> > 
> >     igt@kms_cursor_crc@cursor-64x64-random:
> >       shard-glk:          FAIL (fdo#103232) -> PASS +1
> > 
> >     igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size:
> >       shard-glk:          DMESG-WARN (fdo#105763, fdo#106538) -> PASS
> > 
> >     igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-onoff:
> >       shard-glk:          FAIL (fdo#103167) -> PASS
> > 
> >     igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
> >       shard-glk:          INCOMPLETE (k.org#198133, fdo#103359) -> PASS
> > 
> >     igt@kms_plane_multiple@atomic-pipe-a-tiling-x:
> >       shard-glk:          FAIL (fdo#103166) -> PASS
> > 
> >     igt@kms_setmode@basic:
> >       shard-kbl:          FAIL (fdo#99912) -> PASS
> > 
> >     igt@kms_universal_plane@universal-plane-pipe-b-functional:
> >       shard-apl:          FAIL (fdo#103166) -> PASS +2
> > 
> >     igt@perf@polling:
> >       shard-hsw:          FAIL (fdo#102252) -> PASS
> > 
> >     
> >     ==== Warnings ====
> > 
> >     igt@kms_frontbuffer_tracking@fbc-rgb101010-draw-mmap-cpu:
> >       shard-snb:          DMESG-WARN (fdo#107469) -> INCOMPLETE (fdo#105411)
> > 
> >     
> >   fdo#102252 https://bugs.freedesktop.org/show_bug.cgi?id=102252
> >   fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
> >   fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
> >   fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
> >   fdo#103184 https://bugs.freedesktop.org/show_bug.cgi?id=103184
> >   fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
> >   fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
> >   fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
> >   fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
> >   fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
> >   fdo#104108 https://bugs.freedesktop.org/show_bug.cgi?id=104108
> >   fdo#104782 https://bugs.freedesktop.org/show_bug.cgi?id=104782
> >   fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
> >   fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
> >   fdo#105763 https://bugs.freedesktop.org/show_bug.cgi?id=105763
> >   fdo#105959 https://bugs.freedesktop.org/show_bug.cgi?id=105959
> >   fdo#106538 https://bugs.freedesktop.org/show_bug.cgi?id=106538
> >   fdo#107469 https://bugs.freedesktop.org/show_bug.cgi?id=107469
> >   fdo#107773 https://bugs.freedesktop.org/show_bug.cgi?id=107773
> >   fdo#107807 https://bugs.freedesktop.org/show_bug.cgi?id=107807
> >   fdo#107956 https://bugs.freedesktop.org/show_bug.cgi?id=107956
> >   fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
> >   k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
> > 
> > 
> > == Participating hosts (6 -> 6) ==
> > 
> >   No changes in participating hosts
> > 
> > 
> > == Build changes ==
> > 
> >     * Linux: CI_DRM_5100 -> Patchwork_10758
> > 
> >   CI_DRM_5100: c5f9a3064d90c86dab99d5aef011b87f6f8921dc @ git://anongit.freedesktop.org/gfx-ci/linux
> >   IGT_4712: a3ede1b535ac8137f6949c468edd7054453d5dae @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
> >   Patchwork_10758: 60ace73cb0f8e814e6a6e34d6c9775d5fcf077a8 @ git://anongit.freedesktop.org/gfx-ci/linux
> >   piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
> > 
> > == Logs ==
> > 
> > For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10758/shards.html
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
index ab9a36c4ba3b..abc51693eec9 100644
--- a/drivers/gpu/drm/i915/intel_ddi.c
+++ b/drivers/gpu/drm/i915/intel_ddi.c
@@ -2005,24 +2005,24 @@  bool intel_ddi_connector_get_hw_state(struct intel_connector *intel_connector)
 	return ret;
 }
 
-bool intel_ddi_get_hw_state(struct intel_encoder *encoder,
-			    enum pipe *pipe)
+static void intel_ddi_get_encoder_pipes(struct intel_encoder *encoder,
+					u8 *pipe_mask, bool *is_dp_mst)
 {
 	struct drm_device *dev = encoder->base.dev;
 	struct drm_i915_private *dev_priv = to_i915(dev);
 	enum port port = encoder->port;
 	enum pipe p;
 	u32 tmp;
-	bool ret;
+	u8 mst_pipe_mask;
+
+	*pipe_mask = 0;
+	*is_dp_mst = false;
 
 	if (!intel_display_power_get_if_enabled(dev_priv,
 						encoder->power_domain))
-		return false;
-
-	ret = false;
+		return;
 
 	tmp = I915_READ(DDI_BUF_CTL(port));
-
 	if (!(tmp & DDI_BUF_CTL_ENABLE))
 		goto out;
 
@@ -2030,44 +2030,58 @@  bool intel_ddi_get_hw_state(struct intel_encoder *encoder,
 		tmp = I915_READ(TRANS_DDI_FUNC_CTL(TRANSCODER_EDP));
 
 		switch (tmp & TRANS_DDI_EDP_INPUT_MASK) {
+		default:
+			MISSING_CASE(tmp & TRANS_DDI_EDP_INPUT_MASK);
+			/* fallthrough */
 		case TRANS_DDI_EDP_INPUT_A_ON:
 		case TRANS_DDI_EDP_INPUT_A_ONOFF:
-			*pipe = PIPE_A;
+			*pipe_mask = BIT(PIPE_A);
 			break;
 		case TRANS_DDI_EDP_INPUT_B_ONOFF:
-			*pipe = PIPE_B;
+			*pipe_mask = BIT(PIPE_B);
 			break;
 		case TRANS_DDI_EDP_INPUT_C_ONOFF:
-			*pipe = PIPE_C;
+			*pipe_mask = BIT(PIPE_C);
 			break;
 		}
 
-		ret = true;
-
 		goto out;
 	}
 
+	mst_pipe_mask = 0;
 	for_each_pipe(dev_priv, p) {
-		enum transcoder cpu_transcoder = (enum transcoder) p;
+		enum transcoder cpu_transcoder = (enum transcoder)p;
 
 		tmp = I915_READ(TRANS_DDI_FUNC_CTL(cpu_transcoder));
 
-		if ((tmp & TRANS_DDI_PORT_MASK) == TRANS_DDI_SELECT_PORT(port)) {
-			if ((tmp & TRANS_DDI_MODE_SELECT_MASK) ==
-			    TRANS_DDI_MODE_SELECT_DP_MST)
-				goto out;
+		if ((tmp & TRANS_DDI_PORT_MASK) != TRANS_DDI_SELECT_PORT(port))
+			continue;
 
-			*pipe = p;
-			ret = true;
+		if ((tmp & TRANS_DDI_MODE_SELECT_MASK) ==
+		    TRANS_DDI_MODE_SELECT_DP_MST)
+			mst_pipe_mask |= BIT(p);
 
-			goto out;
-		}
+		*pipe_mask |= BIT(p);
 	}
 
-	DRM_DEBUG_KMS("No pipe for ddi port %c found\n", port_name(port));
+	if (!*pipe_mask)
+		DRM_DEBUG_KMS("No pipe for ddi port %c found\n",
+			      port_name(port));
+
+	if (!mst_pipe_mask && hweight8(*pipe_mask) > 1) {
+		DRM_DEBUG_KMS("Multiple pipes for non DP-MST port %c (pipe_mask %02x)\n",
+			      port_name(port), *pipe_mask);
+		*pipe_mask = BIT(ffs(*pipe_mask) - 1);
+	}
+
+	if (mst_pipe_mask && mst_pipe_mask != *pipe_mask)
+		DRM_DEBUG_KMS("Conflicting MST and non-MST encoders for port %c (pipe_mask %02x mst_pipe_mask %02x)\n",
+			      port_name(port), *pipe_mask, mst_pipe_mask);
+	else
+		*is_dp_mst = mst_pipe_mask;
 
 out:
-	if (ret && IS_GEN9_LP(dev_priv)) {
+	if (*pipe_mask && IS_GEN9_LP(dev_priv)) {
 		tmp = I915_READ(BXT_PHY_CTL(port));
 		if ((tmp & (BXT_PHY_CMNLANE_POWERDOWN_ACK |
 			    BXT_PHY_LANE_POWERDOWN_ACK |
@@ -2077,8 +2091,22 @@  bool intel_ddi_get_hw_state(struct intel_encoder *encoder,
 	}
 
 	intel_display_power_put(dev_priv, encoder->power_domain);
+}
 
-	return ret;
+bool intel_ddi_get_hw_state(struct intel_encoder *encoder,
+			    enum pipe *pipe)
+{
+	u8 pipe_mask;
+	bool is_mst;
+
+	intel_ddi_get_encoder_pipes(encoder, &pipe_mask, &is_mst);
+
+	if (is_mst || !pipe_mask)
+		return false;
+
+	*pipe = ffs(pipe_mask) - 1;
+
+	return true;
 }
 
 static inline enum intel_display_power_domain