On Fri, 20 Apr 2018, Paul Menzel <pmenzel+intel-gfx@xxxxxxxxxxxxx> wrote: > Dear Jose, > > > On 04/19/18 01:41, Souza, Jose wrote: >> If the initial fbdev configuration(intel_fbdev_initial_config()) runs and > > Nit: Space before (. > >> there still no sink connected it will cause >> drm_fb_helper_initial_config() to return 0 as no error happened(but >> internally the return is -EAGAIN). > > Nit: Space before (. > >> Because no framebuffer was allocated, when a sink is connected >> intel_fbdev_output_poll_changed() will not execute >> drm_fb_helper_hotplug_event() that would trigger another try to do the >> initial fbdev configuration. >> >> So here allowing drm_fb_helper_hotplug_event() to be executed when there >> is not frambebuffer allocated and fbdev was not setup yet. > > s/not/no/ > s/setup/set up/ > >> This issue also happens when a MST DP sink is connected since boot, as >> the MST topology is discovered in parallel if intel_fbdev_initial_config() >> is executed before the first sink MST is discovered it will cause this >> same issue. >> >> This is a follow up patch of > > follow-up > >> https://patchwork.freedesktop.org/patch/196089/ >> >> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104158 >> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104425 >> Cc: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> >> Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> >> Signed-off-by: José Roberto de Souza <jose.souza@xxxxxxxxx> >> --- >> >> Changes from v1: >> - not creating a dump framebuffer anymore, instead just allowing >> drm_fb_helper_hotplug_event() to execute when fbdev is not setup yet. > > s/setup/set up/ > >> drivers/gpu/drm/i915/intel_fbdev.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/gpu/drm/i915/intel_fbdev.c b/drivers/gpu/drm/i915/intel_fbdev.c >> index 7d41d139341b..e9e02b58b7be 100644 >> --- a/drivers/gpu/drm/i915/intel_fbdev.c >> +++ b/drivers/gpu/drm/i915/intel_fbdev.c >> @@ -807,7 +807,7 @@ void intel_fbdev_output_poll_changed(struct drm_device *dev) >> return; >> >> intel_fbdev_sync(ifbdev); >> - if (ifbdev->vma) >> + if (ifbdev->vma || ifbdev->helper.deferred_setup) >> drm_fb_helper_hotplug_event(&ifbdev->helper); >> } >> > > Tested-by: Paul Menzel <pmenzel@xxxxxxxxxxxxx> Also from the bug, Tested-by: frederik <frederik.schwan@xxxxxxxxx> # 4.15.17 Tested-by: Ian Pilcher <arequipeno@xxxxxxxxx> > > > Kind regards, > > Paul > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Jani Nikula, Intel Open Source Technology Center _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx