]> www.infradead.org Git - users/dwmw2/linux.git/commit
drm: zynqmp_kms: Fix AUX bus not getting unregistered
authorSean Anderson <sean.anderson@linux.dev>
Fri, 3 May 2024 19:29:13 +0000 (15:29 -0400)
committerTomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Mon, 17 Jun 2024 07:38:17 +0000 (10:38 +0300)
commit0743dafefd3f2b92116213f2225ea355001b7948
tree838cd0897185570168a2e7c575acd70ae057a1e9
parentfea7fad8512f4fbe0e47d9bcc84034a4c1d2f223
drm: zynqmp_kms: Fix AUX bus not getting unregistered

drm_encoder_cleanup is responsible for calling drm_bridge_detach for
each bridge attached to the encoder. zynqmp_dp_bridge_detach is in turn
responsible for unregistering the AUX bus. However, we never ended up
calling drm_encoder_cleanup in the remove or error paths, so the AUX bus
would stick around after the rest of the driver had been removed.

I don't really understand why drm_mode_config_cleanup doesn't call
drm_encoder_cleanup for us. It will call destroy (which for
simple_encoder is drm_encoder_cleanup) on encoders in the mode_config's
encoder_list.

Should drm_encoder_cleanup get called before or after
drm_atomic_helper_shutdown?

Fixes: 2dfd045c8435 ("drm: xlnx: zynqmp_dpsub: Register AUX bus at bridge attach time")
Signed-off-by: Sean Anderson <sean.anderson@linux.dev>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240503192922.2172314-2-sean.anderson@linux.dev
drivers/gpu/drm/xlnx/zynqmp_kms.c