[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <8c5ed6e7-e2e3-4aba-9b3c-bc1609765d14@amd.com>
Date: Mon, 9 Feb 2026 10:36:23 +0100
From: Christian König <christian.koenig@....com>
To: Hamza Mahfooz <someguy@...ective-light.com>,
dri-devel@...ts.freedesktop.org
Cc: Timur Kristóf <timur.kristof@...il.com>,
Michel Dänzer <michel.daenzer@...lbox.org>,
Xaver Hugl <xaver.hugl@....org>, Harry Wentland <harry.wentland@....com>,
Leo Li <sunpeng.li@....com>, Rodrigo Siqueira <siqueira@...lia.com>,
Alex Deucher <alexander.deucher@....com>, David Airlie <airlied@...il.com>,
Simona Vetter <simona@...ll.ch>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Maxime Ripard <mripard@...nel.org>, Thomas Zimmermann <tzimmermann@...e.de>,
Kenneth Feng <kenneth.feng@....com>, Ivan Lipski <ivan.lipski@....com>,
Alex Hung <alex.hung@....com>, Tom Chung <chiahsuan.chung@....com>,
Melissa Wen <mwen@...lia.com>, Michel Dänzer
<mdaenzer@...hat.com>, Fangzhi Zuo <Jerry.Zuo@....com>,
amd-gfx@...ts.freedesktop.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 2/2] drm/amdgpu: implement page_flip_timeout() support
On 2/7/26 00:58, Hamza Mahfooz wrote:
> We now have a means to respond to page flip timeouts. So, hook up
> support for the new page_flip_timeout() callback.
>
> Signed-off-by: Hamza Mahfooz <someguy@...ective-light.com>
> ---
> v2: send a wedged event instead of attempting a GPU reset.
> ---
> drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c
> index 697e232acebf..1faf39b7a1b4 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c
> @@ -23,6 +23,7 @@
> * Authors: AMD
> *
> */
> +#include <drm/drm_drv.h>
> #include <drm/drm_vblank.h>
> #include <drm/drm_atomic_helper.h>
>
> @@ -578,12 +579,19 @@ amdgpu_dm_atomic_crtc_get_property(struct drm_crtc *crtc,
> }
> #endif
>
> +static void amdgpu_dm_crtc_handle_timeout(struct drm_crtc *crtc)
> +{
> + drm_dev_wedged_event(crtc->dev, DRM_WEDGE_RECOVERY_REBIND |
> + DRM_WEDGE_RECOVERY_BUS_RESET, NULL);
Well that might work but is even worse than a GPU reset.
Have you tried to just signal the page flip as done?
Regards,
Christian.
> +}
> +
> /* Implemented only the options currently available for the driver */
> static const struct drm_crtc_funcs amdgpu_dm_crtc_funcs = {
> .reset = amdgpu_dm_crtc_reset_state,
> .destroy = amdgpu_dm_crtc_destroy,
> .set_config = drm_atomic_helper_set_config,
> .page_flip = drm_atomic_helper_page_flip,
> + .page_flip_timeout = amdgpu_dm_crtc_handle_timeout,
> .atomic_duplicate_state = amdgpu_dm_crtc_duplicate_state,
> .atomic_destroy_state = amdgpu_dm_crtc_destroy_state,
> .set_crc_source = amdgpu_dm_crtc_set_crc_source,
Powered by blists - more mailing lists