[PATCH] drm/radeon: reintroduce radeon_dp_work_func content
Lyude Paul
lyude at redhat.com
Thu May 18 20:31:16 UTC 2023
Whoops, sorry about that!
Reviewed-by: Lyude Paul <lyude at redhat.com>
On Thu, 2023-05-18 at 12:48 -0400, Alex Deucher wrote:
> Put back the radeon_dp_work_func logic. It seems that
> handling DP RX interrupts is necessary to make some
> panels work. This was removed with the MST support,
> but it regresses some systems so add it back. While
> we are here, add the proper mutex locking.
>
> Link: https://gitlab.freedesktop.org/drm/amd/-/issues/2567
> Fixes: 01ad1d9c2888 ("drm/radeon: Drop legacy MST support")
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
> Cc: Lyude Paul <lyude at redhat.com>
> ---
> drivers/gpu/drm/radeon/radeon_irq_kms.c | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/drivers/gpu/drm/radeon/radeon_irq_kms.c b/drivers/gpu/drm/radeon/radeon_irq_kms.c
> index 3377fbc71f65..c4dda908666c 100644
> --- a/drivers/gpu/drm/radeon/radeon_irq_kms.c
> +++ b/drivers/gpu/drm/radeon/radeon_irq_kms.c
> @@ -99,6 +99,16 @@ static void radeon_hotplug_work_func(struct work_struct *work)
>
> static void radeon_dp_work_func(struct work_struct *work)
> {
> + struct radeon_device *rdev = container_of(work, struct radeon_device,
> + dp_work);
> + struct drm_device *dev = rdev->ddev;
> + struct drm_mode_config *mode_config = &dev->mode_config;
> + struct drm_connector *connector;
> +
> + mutex_lock(&mode_config->mutex);
> + list_for_each_entry(connector, &mode_config->connector_list, head)
> + radeon_connector_hotplug(connector);
> + mutex_unlock(&mode_config->mutex);
> }
>
> /**
--
Cheers,
Lyude Paul (she/her)
Software Engineer at Red Hat
More information about the amd-gfx
mailing list