Add support for scaling on writeback. To do this add writeback_dest_x,y,w,h writeback connector properties to specify the desired output dimensions. Then implement downscaling on writeback for Malidp-550 and Malidp-650 (upscaling on writeback is not supported on these devices). v2: Use 0 as default for writeback_w,h and so update range to use 1 as minimum. v3: Rename properties to specify they are destination width/height. Make sure the values from the properties are passed to enable_memwrite rather than the framebuffer dimensions. v4: Add writeback_dest_x,y properties as well for consistency with plane properties. Writing to arbitrary x,y on writeback is not supported on the hardware so we simulate this in the driver. Clear the properties on duplicate state for robustness. Use 0 as minimum for all added properties. Also actually make sure the values from the properties are passed to enable_memwrite as intended in v3 and some other clean up. Ben Davis (2): drm: Add writeback_dest_x,y,w,h properties drm/malidp: Enable writeback scaling drivers/gpu/drm/arm/malidp_crtc.c | 47 ++++++------ drivers/gpu/drm/arm/malidp_drv.c | 10 ++- drivers/gpu/drm/arm/malidp_drv.h | 2 + drivers/gpu/drm/arm/malidp_hw.c | 45 ++++++++---- drivers/gpu/drm/arm/malidp_hw.h | 19 ++++- drivers/gpu/drm/arm/malidp_mw.c | 117 ++++++++++++++++++++++++------ drivers/gpu/drm/arm/malidp_regs.h | 1 + drivers/gpu/drm/drm_atomic_state_helper.c | 6 ++ drivers/gpu/drm/drm_atomic_uapi.c | 17 +++++ drivers/gpu/drm/drm_writeback.c | 66 +++++++++++++++++ include/drm/drm_connector.h | 23 ++++++ include/drm/drm_mode_config.h | 20 +++++ 12 files changed, 308 insertions(+), 65 deletions(-) -- 2.7.4 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel