Re: [Intel-gfx] [PATCH v2] drm/i915: Avoid HPD poll detect triggering a new detect cycle
On Mon, 28 Oct 2019 at 14:16, Imre Deak wrote: > > For the HPD interrupt functionality the HW depends on power wells in the > display core domain to be on. Accordingly when enabling these power > wells the HPD polling logic will force an HPD detection cycle to account > for hotplug events that may have happened when such a power well was > off. > > Thus a detect cycle started by polling could start a new detect cycle if > a power well in the display core domain gets enabled during detect and > stays enabled after detect completes. That in turn can lead to a > detection cycle runaway. > > To prevent re-triggering a poll-detect cycle make sure we drop all power > references we acquired during detect synchronously by the end of detect. > This will let the poll-detect logic continue with polling (matching the > off state of the corresponding power wells) instead of scheduling a new > detection cycle. > > Fixes: 6cfe7ec02e85 ("drm/i915: Remove the unneeded AUX power ref from > intel_dp_detect()") > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=112125 > Reported-and-tested-by: Val Kulkov > Reported-and-tested-by: wangqr > Cc: Val Kulkov > Cc: wangqr > Cc: Ville Syrjälä > Signed-off-by: Imre Deak Confirming that this latest revision of the patch fixes the issue. Tested on linux-drm-tip-git 5.4.865162.dd5bccfa3b5d-1 on Eglobal NUC Fanless Mini PC Intel N3150. ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH] drm/i915: Avoid HPD poll detect triggering a new detect cycle
On Mon, 28 Oct 2019 at 07:02, Imre Deak wrote: > > For the HPD interrupt functionality the HW depends on power wells in the > display core domain to be on. Accordingly when enabling these power > wells the HPD polling logic will force an HPD detection cycle to account > for hotplug events that may have happened when such a power well was > off. > > Thus a detect cycle started by polling could start a new detect cycle if > a power well in the display core domain gets enabled during detect and > stays enabled after detect completes. That in turn can lead to a > detection cycle runaway. > > To prevent re-triggering a poll-detect cycle make sure we drop all power > references we acquired during detect synchronously by the end of detect. > This will let the poll-detect logic continue with polling (matching the > off state of the corresponding power wells) instead of scheduling a new > detection cycle. > > Fixes: 6cfe7ec02e85 ("drm/i915: Remove the unneeded AUX power ref from > intel_dp_detect()") > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=112125 > Reported-by: Val Kulkov > Reported-and-tested-by: wangqr < wqr@gmail.com> > Cc: Val Kulkov > Cc: wangqr < wqr@gmail.com> > Cc: Ville Syrjälä > Signed-off-by: Imre Deak The patch has been tested with linux-drm-tip-git 5.4.865162.dd5bccfa3b5d-1 on Eglobal NUC Fanless Mini PC Intel N3150 and Intel NUC D34010WYK. In both cases, the reported problem was no longer observed. Tested-by: Val Kulkov ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx