Message ID | 20200330152244.11316-1-imre.deak@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/i915/icl+: Don't enable DDI IO power on a TypeC port in TBT mode | expand |
On Mon, 2020-03-30 at 18:22 +0300, Imre Deak wrote: > The DDI IO power well must not be enabled for a TypeC port in TBT > mode, > ensure this during driver loading/system resume. > > This gets rid of error messages like > [drm] *ERROR* power well DDI E TC2 IO state mismatch (refcount > 1/enabled 0) > > and avoids leaking the power ref when disabling the output. Matches intel_ddi_post_disable_dp and tgl_ddi_pre_enable_dp/hsw_ddi_pre_enable_dp. Reviewed-by: José Roberto de Souza <jose.souza@intel.com> > > Cc: <stable@vger.kernel.org> # v5.4+ > Signed-off-by: Imre Deak <imre.deak@intel.com> > --- > drivers/gpu/drm/i915/display/intel_ddi.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c > b/drivers/gpu/drm/i915/display/intel_ddi.c > index 916a802af788..654151d9a6db 100644 > --- a/drivers/gpu/drm/i915/display/intel_ddi.c > +++ b/drivers/gpu/drm/i915/display/intel_ddi.c > @@ -1899,7 +1899,11 @@ static void intel_ddi_get_power_domains(struct > intel_encoder *encoder, > return; > > dig_port = enc_to_dig_port(encoder); > - intel_display_power_get(dev_priv, dig_port- > >ddi_io_power_domain); > + > + if (!intel_phy_is_tc(dev_priv, phy) || > + dig_port->tc_mode != TC_PORT_TBT_ALT) > + intel_display_power_get(dev_priv, > + dig_port->ddi_io_power_domain); > > /* > * AUX power is only needed for (e)DP mode, and for HDMI mode > on TC
Hi [This is an automated email] This commit has been processed because it contains a -stable tag. The stable tag indicates that it's relevant for the following trees: 5.4+ The bot has tested the following trees: v5.5.13, v5.4.28. v5.5.13: Failed to apply! Possible dependencies: 1326a92c3466 ("drm/i915: Perform automated conversions for crtc uapi/hw split, base -> hw.") 2225f3c6f1d7 ("drm/i915: Perform automated conversions for crtc uapi/hw split, base -> uapi.") 2b808b3a27d1 ("drm/i915: Add aliases for uapi and hw to crtc_state") 54ed6902cabc ("drm/i915/dsi: abstract afe_clk calculation") b7d02c3a124d ("drm/i915: Pass intel_encoder to enc_to_*()") v5.4.28: Failed to apply! Possible dependencies: 0456417ef680 ("drm: Add for_each_oldnew_intel_crtc_in_state_reverse()") 131d3b1af105 ("drm/i915: Stop using drm_atomic_helper_check_planes()") 2225f3c6f1d7 ("drm/i915: Perform automated conversions for crtc uapi/hw split, base -> uapi.") 2b808b3a27d1 ("drm/i915: Add aliases for uapi and hw to crtc_state") 2e7f76c1e4b6 ("drm/i915: s/pipe_config/crtc_state/ in intel_crtc_atomic_check()") 3e30d70805d5 ("drm/i915: Make .modeset_calc_cdclk() mandatory") 54ed6902cabc ("drm/i915/dsi: abstract afe_clk calculation") af9fbfa657c8 ("drm/i915: Introduce and use intel_atomic_crtc_state_for_each_plane_state.") b7d02c3a124d ("drm/i915: Pass intel_encoder to enc_to_*()") bb6ae9e653dc ("drm/i915: Allow planes to declare their minimum acceptable cdclk") d06a79d33e0f ("drm/i915: Use enum pipe instead of crtc index to track active pipes") fe4709a8d033 ("drm/i915: Extract intel_modeset_calc_cdclk()") NOTE: The patch will not be queued to stable trees until it is upstream. How should we proceed with this patch?
On Tue, Mar 31, 2020 at 09:47:39AM +0000, Patchwork wrote: > == Series Details == > > Series: drm/i915/icl+: Don't enable DDI IO power on a TypeC port in TBT mode > URL : https://patchwork.freedesktop.org/series/75253/ > State : success Thanks for the review, pushed to -dinq. > > == Summary == > > CI Bug Log - changes from CI_DRM_8219_full -> Patchwork_17137_full > ==================================================== > > Summary > ------- > > **SUCCESS** > > No regressions found. > > > > Known issues > ------------ > > Here are the changes found in Patchwork_17137_full that come from known issues: > > ### IGT changes ### > > #### Issues hit #### > > * igt@gem_busy@busy-vcs1: > - shard-iclb: [PASS][1] -> [SKIP][2] ([fdo#112080]) +7 similar issues > [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-iclb4/igt@gem_busy@busy-vcs1.html > [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-iclb5/igt@gem_busy@busy-vcs1.html > > * igt@gem_exec_schedule@implicit-both-bsd: > - shard-iclb: [PASS][3] -> [SKIP][4] ([i915#677]) > [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-iclb5/igt@gem_exec_schedule@implicit-both-bsd.html > [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-iclb4/igt@gem_exec_schedule@implicit-both-bsd.html > > * igt@gem_exec_schedule@implicit-both-bsd1: > - shard-iclb: [PASS][5] -> [SKIP][6] ([fdo#109276] / [i915#677]) +3 similar issues > [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-iclb1/igt@gem_exec_schedule@implicit-both-bsd1.html > [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-iclb6/igt@gem_exec_schedule@implicit-both-bsd1.html > > * igt@gem_exec_schedule@preempt-queue-bsd1: > - shard-iclb: [PASS][7] -> [SKIP][8] ([fdo#109276]) +13 similar issues > [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-iclb1/igt@gem_exec_schedule@preempt-queue-bsd1.html > [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-iclb7/igt@gem_exec_schedule@preempt-queue-bsd1.html > > * igt@gem_exec_schedule@reorder-wide-bsd: > - shard-iclb: [PASS][9] -> [SKIP][10] ([fdo#112146]) +2 similar issues > [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-iclb5/igt@gem_exec_schedule@reorder-wide-bsd.html > [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-iclb4/igt@gem_exec_schedule@reorder-wide-bsd.html > > * igt@gem_workarounds@suspend-resume-context: > - shard-apl: [PASS][11] -> [DMESG-WARN][12] ([i915#180]) +1 similar issue > [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-apl2/igt@gem_workarounds@suspend-resume-context.html > [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-apl1/igt@gem_workarounds@suspend-resume-context.html > > * igt@kms_flip@flip-vs-expired-vblank-interruptible: > - shard-skl: [PASS][13] -> [FAIL][14] ([i915#46]) > [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-skl2/igt@kms_flip@flip-vs-expired-vblank-interruptible.html > [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-skl10/igt@kms_flip@flip-vs-expired-vblank-interruptible.html > - shard-glk: [PASS][15] -> [FAIL][16] ([i915#46]) > [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-glk3/igt@kms_flip@flip-vs-expired-vblank-interruptible.html > [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-glk9/igt@kms_flip@flip-vs-expired-vblank-interruptible.html > > * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes: > - shard-skl: [PASS][17] -> [INCOMPLETE][18] ([i915#648] / [i915#69]) > [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-skl2/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html > [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-skl8/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html > > * igt@kms_plane_alpha_blend@pipe-a-coverage-7efc: > - shard-skl: [PASS][19] -> [FAIL][20] ([fdo#108145]) > [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-skl9/igt@kms_plane_alpha_blend@pipe-a-coverage-7efc.html > [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-skl2/igt@kms_plane_alpha_blend@pipe-a-coverage-7efc.html > > * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc: > - shard-skl: [PASS][21] -> [FAIL][22] ([fdo#108145] / [i915#265]) > [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-skl7/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html > [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-skl9/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html > > * igt@kms_psr@psr2_sprite_render: > - shard-iclb: [PASS][23] -> [SKIP][24] ([fdo#109441]) +1 similar issue > [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-iclb2/igt@kms_psr@psr2_sprite_render.html > [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-iclb6/igt@kms_psr@psr2_sprite_render.html > > * igt@kms_setmode@basic: > - shard-apl: [PASS][25] -> [FAIL][26] ([i915#31]) > [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-apl4/igt@kms_setmode@basic.html > [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-apl6/igt@kms_setmode@basic.html > > * igt@kms_vblank@pipe-a-ts-continuation-suspend: > - shard-kbl: [PASS][27] -> [DMESG-WARN][28] ([i915#180]) +3 similar issues > [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-kbl7/igt@kms_vblank@pipe-a-ts-continuation-suspend.html > [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-kbl7/igt@kms_vblank@pipe-a-ts-continuation-suspend.html > > > #### Possible fixes #### > > * igt@gem_ctx_persistence@processes: > - shard-kbl: [FAIL][29] ([i915#1528]) -> [PASS][30] > [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-kbl1/igt@gem_ctx_persistence@processes.html > [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-kbl7/igt@gem_ctx_persistence@processes.html > > * igt@gem_exec_schedule@implicit-both-bsd2: > - shard-iclb: [SKIP][31] ([fdo#109276] / [i915#677]) -> [PASS][32] > [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-iclb3/igt@gem_exec_schedule@implicit-both-bsd2.html > [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-iclb4/igt@gem_exec_schedule@implicit-both-bsd2.html > > * igt@gem_exec_schedule@pi-common-bsd: > - shard-iclb: [SKIP][33] ([i915#677]) -> [PASS][34] > [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-iclb4/igt@gem_exec_schedule@pi-common-bsd.html > [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-iclb5/igt@gem_exec_schedule@pi-common-bsd.html > > * igt@gem_exec_schedule@preempt-queue-bsd: > - shard-iclb: [SKIP][35] ([fdo#112146]) -> [PASS][36] +3 similar issues > [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-iclb2/igt@gem_exec_schedule@preempt-queue-bsd.html > [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-iclb5/igt@gem_exec_schedule@preempt-queue-bsd.html > > * igt@gem_exec_schedule@preempt-queue-bsd2: > - shard-iclb: [SKIP][37] ([fdo#109276]) -> [PASS][38] +16 similar issues > [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-iclb5/igt@gem_exec_schedule@preempt-queue-bsd2.html > [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-iclb4/igt@gem_exec_schedule@preempt-queue-bsd2.html > > * igt@gem_workarounds@suspend-resume-fd: > - shard-kbl: [DMESG-WARN][39] ([i915#180]) -> [PASS][40] +2 similar issues > [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-kbl3/igt@gem_workarounds@suspend-resume-fd.html > [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-kbl4/igt@gem_workarounds@suspend-resume-fd.html > > * igt@kms_fbcon_fbt@fbc-suspend: > - shard-kbl: [DMESG-WARN][41] ([i915#180] / [i915#93] / [i915#95]) -> [PASS][42] > [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-kbl1/igt@kms_fbcon_fbt@fbc-suspend.html > [42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-kbl6/igt@kms_fbcon_fbt@fbc-suspend.html > > * igt@kms_flip@flip-vs-suspend-interruptible: > - shard-apl: [DMESG-WARN][43] ([i915#180]) -> [PASS][44] +1 similar issue > [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-apl4/igt@kms_flip@flip-vs-suspend-interruptible.html > [44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-apl6/igt@kms_flip@flip-vs-suspend-interruptible.html > > * igt@kms_hdr@bpc-switch-suspend: > - shard-skl: [FAIL][45] ([i915#1188]) -> [PASS][46] > [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-skl5/igt@kms_hdr@bpc-switch-suspend.html > [46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-skl9/igt@kms_hdr@bpc-switch-suspend.html > > * igt@kms_plane_alpha_blend@pipe-b-coverage-7efc: > - shard-skl: [FAIL][47] ([fdo#108145] / [i915#265]) -> [PASS][48] > [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-skl2/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html > [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-skl10/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html > > * igt@kms_psr@psr2_suspend: > - shard-iclb: [SKIP][49] ([fdo#109441]) -> [PASS][50] +1 similar issue > [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-iclb1/igt@kms_psr@psr2_suspend.html > [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-iclb2/igt@kms_psr@psr2_suspend.html > > * igt@kms_vblank@pipe-b-query-forked-busy-hang: > - shard-tglb: [INCOMPLETE][51] ([i915#1373]) -> [PASS][52] > [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-tglb6/igt@kms_vblank@pipe-b-query-forked-busy-hang.html > [52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-tglb7/igt@kms_vblank@pipe-b-query-forked-busy-hang.html > > * igt@perf_pmu@busy-no-semaphores-vcs1: > - shard-iclb: [SKIP][53] ([fdo#112080]) -> [PASS][54] +10 similar issues > [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-iclb7/igt@perf_pmu@busy-no-semaphores-vcs1.html > [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-iclb1/igt@perf_pmu@busy-no-semaphores-vcs1.html > > * {igt@sysfs_heartbeat_interval@mixed@vecs0}: > - shard-skl: [FAIL][55] ([i915#1459]) -> [PASS][56] > [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-skl2/igt@sysfs_heartbeat_interval@mixed@vecs0.html > [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-skl10/igt@sysfs_heartbeat_interval@mixed@vecs0.html > > > #### Warnings #### > > * igt@i915_pm_dc@dc6-dpms: > - shard-tglb: [SKIP][57] ([i915#468]) -> [FAIL][58] ([i915#454]) > [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-tglb2/igt@i915_pm_dc@dc6-dpms.html > [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-tglb6/igt@i915_pm_dc@dc6-dpms.html > > * igt@i915_pm_rpm@gem-execbuf-stress-pc8: > - shard-snb: [SKIP][59] ([fdo#109271]) -> [INCOMPLETE][60] ([i915#82]) > [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8219/shard-snb5/igt@i915_pm_rpm@gem-execbuf-stress-pc8.html > [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17137/shard-snb5/igt@i915_pm_rpm@gem-execbuf-stress-pc8.html > > > {name}: This element is suppressed. This means it is ignored when computing > the status of the difference (SUCCESS, WARNING, or FAILURE). > > [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145 > [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 > [fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276 > [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 > [fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080 > [fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146 > [i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188 > [i915#1373]: https://gitlab.freedesktop.org/drm/intel/issues/1373 > [i915#1459]: https://gitlab.freedesktop.org/drm/intel/issues/1459 > [i915#1528]: https://gitlab.freedesktop.org/drm/intel/issues/1528 > [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 > [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265 > [i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31 > [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454 > [i915#46]: https://gitlab.freedesktop.org/drm/intel/issues/46 > [i915#468]: https://gitlab.freedesktop.org/drm/intel/issues/468 > [i915#648]: https://gitlab.freedesktop.org/drm/intel/issues/648 > [i915#677]: https://gitlab.freedesktop.org/drm/intel/issues/677 > [i915#69]: https://gitlab.freedesktop.org/drm/intel/issues/69 > [i915#82]: https://gitlab.freedesktop.org/drm/intel/issues/82 > [i915#93]: https://gitlab.freedesktop.org/drm/intel/issues/93 > [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 > > > Participating hosts (10 -> 10) > ------------------------------ > > No changes in participating hosts > > > Build changes > ------------- > > * CI: CI-20190529 -> None > * Linux: CI_DRM_8219 -> Patchwork_17137 > > CI-20190529: 20190529 > CI_DRM_8219: 42de3b3c94078845ceed586199c039622561b522 @ git://anongit.freedesktop.org/gfx-ci/linux > IGT_5545: 9e5bfd10d56f81b98e0229c6bb14670221fd0b54 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools > Patchwork_17137: acd2a5c369724ba657f993e073c5bd424fa7b991 @ 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_17137/index.html
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c index 916a802af788..654151d9a6db 100644 --- a/drivers/gpu/drm/i915/display/intel_ddi.c +++ b/drivers/gpu/drm/i915/display/intel_ddi.c @@ -1899,7 +1899,11 @@ static void intel_ddi_get_power_domains(struct intel_encoder *encoder, return; dig_port = enc_to_dig_port(encoder); - intel_display_power_get(dev_priv, dig_port->ddi_io_power_domain); + + if (!intel_phy_is_tc(dev_priv, phy) || + dig_port->tc_mode != TC_PORT_TBT_ALT) + intel_display_power_get(dev_priv, + dig_port->ddi_io_power_domain); /* * AUX power is only needed for (e)DP mode, and for HDMI mode on TC
The DDI IO power well must not be enabled for a TypeC port in TBT mode, ensure this during driver loading/system resume. This gets rid of error messages like [drm] *ERROR* power well DDI E TC2 IO state mismatch (refcount 1/enabled 0) and avoids leaking the power ref when disabling the output. Cc: <stable@vger.kernel.org> # v5.4+ Signed-off-by: Imre Deak <imre.deak@intel.com> --- drivers/gpu/drm/i915/display/intel_ddi.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)