Many DRM drivers implement an encoder with an empty implementation. This patchset adds drm_simple_encoder_init() and drm_simple_encoder_create(), which can be used by drivers instead. Except for the destroy callback, the simple encoder's implementation is empty. The patchset also converts 4 encoder instances to use the simple-encoder helpers. But there are at least 11 other drivers which can use the helper and I think I did not examine all drivers yet. The patchset was smoke-tested on mgag200 by running the fbdev console and Gnome on X11. Thomas Zimmermann (6): drm: Move initialization of encoder into an internal function drm: Add drm_simple_encoder_{init,create}() drm/ast: Use simple encoder drm/mgag200: Use simple encoder drm/qxl: Use simple encoder drm/simple-pipe: Use simple encoder drivers/gpu/drm/ast/ast_drv.h | 6 +- drivers/gpu/drm/ast/ast_mode.c | 25 +--- drivers/gpu/drm/drm_encoder.c | 190 +++++++++++++++++++++--- drivers/gpu/drm/drm_simple_kms_helper.c | 8 +- drivers/gpu/drm/mgag200/mgag200_drv.h | 7 - drivers/gpu/drm/mgag200/mgag200_mode.c | 60 +------- drivers/gpu/drm/qxl/qxl_display.c | 17 +-- include/drm/drm_encoder.h | 10 ++ 8 files changed, 191 insertions(+), 132 deletions(-) -- 2.25.0 _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization