summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python
diff options
context:
space:
mode:
authorThomas Zimmermann <tzimmermann@suse.de>2025-09-18 17:39:50 +0200
committerThomas Zimmermann <tzimmermann@suse.de>2025-09-23 15:06:06 +0200
commitcb71de092553b8bde210da686909a8ea0eab0d11 (patch)
treebbeaf870e4e8d05088468f6623bccee53947e83e /tools/perf/scripts/python
parente45f72b6782f88ed50932033ad206df5dd3d7103 (diff)
drm/sysfb: Lookup blit function during atomic check
Some configurations of sysfb outputs require format conversion from framebuffer to scanout buffer. It is a driver bug if the conversion helper is missing, yet it might happen on odd scanout formats. The old code, based on drm_fb_blit(), only detects this situation during the commit's hardware update, which is too late to abort the update. Lookup the correct blit helper as part of the check phase. Then store it in the sysfb plane state. Allows for detection of a missing helper before the commit has started. Also avoids drm_fb_blit()'s large switch statement on each updated scanline. Only a single lookup has to be done. The lookup is in drm_sysfb_get_blit_func(), which only tracks formats supported by sysfb drivers. The lookup happens in sysfb's begin_fb_access helper instead of its atomic_check helper. This allows vesadrm, and possibly other drivers, to implement their own atomic_check without interfering with blit lookups. Vesadrm implements XRGB8888 on top of R8 formats with the help of the atomic_check. Doing the blit lookup in begin_fb_access then always uses the correct CRTC format on all drivers. v2: - vesadrm: use drm_sysfb_plane_helper_begin_fb_access() - fix type in commit description (Javier) Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Link: https://lore.kernel.org/r/20250918154207.84714-3-tzimmermann@suse.de
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions