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 <[email protected]> --- 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); +} + /* 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, -- 2.52.0
