[Intel-gfx] [PATCH] drm/i915: Enable hotplug polling after registering the outputs

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Tue Nov 28 10:33:18 UTC 2017


Op 27-11-17 om 11:34 schreef Chris Wilson:
> Quoting Maarten Lankhorst (2017-11-27 10:18:46)
>> Op 27-11-17 om 10:45 schreef Chris Wilson:
>>> Previously we would enable hotplug polling on the outputs immediately
>>> upon construction. This would allow a very early hotplug event to
>>> trigger before we had finishing setting up the driver to handle it.
>>> Instead, move the output polling to the last step of registration, after
>>> we have set up all handlers, including the fbdev configuration.
>>>
>>> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
>>> Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
>>> Cc: Ville Syrjala <ville.syrjala at linux.intel.com>
>>> Cc: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
>>> ---
>>>  drivers/gpu/drm/i915/i915_drv.c | 5 +++--
>>>  1 file changed, 3 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
>>> index 0793a27e2b95..c178cbfdb4c2 100644
>>> --- a/drivers/gpu/drm/i915/i915_drv.c
>>> +++ b/drivers/gpu/drm/i915/i915_drv.c
>>> @@ -693,8 +693,6 @@ static int i915_load_modeset_init(struct drm_device *dev)
>>>       /* Only enable hotplug handling once the fbdev is fully set up. */
>>>       intel_hpd_init(dev_priv);
>>>  
>>> -     drm_kms_helper_poll_init(dev);
>>> -
>>>       return 0;
>>>  
>>>  cleanup_gem:
>>> @@ -1255,6 +1253,9 @@ static void i915_driver_register(struct drm_i915_private *dev_priv)
>>>        * cannot run before the connectors are registered.
>>>        */
>>>       intel_fbdev_initial_config_async(dev);
>>> +
>>> +     if (INTEL_INFO(dev_priv)->num_pipes)
>>> +             drm_kms_helper_poll_init(dev);
>>>  }
>>>  
>>>  /**
>> This commit would look better with relevent kernel output pasted in. :)
>>
>> Could this be done before fbdev initial config? Since it's run async, this makes it more clear it is run first.
> No. Because the kms_helper depends upon the async cookie to serialise
> its hotplug event with the async fbdev config. It is an unholy mess,
> with shutdown just as uncoordinated.
> -Chris

Well that explains the placement, if you can mention the cookie in the commit.

Reviewed-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>



More information about the Intel-gfx mailing list