On Wed Jan 7, 2026 at 1:18 PM CET, Diederik de Haas wrote: > On Tue Nov 18, 2025 at 12:51 AM CET, Cristian Ciocaltea wrote: >> Some display controllers can be hardware-configured to present non-black >> colors for pixels which are not covered by any plane (or are exposed >> through transparent regions of higher planes). >> ... >> The subsequent patches add background color support to VKMS and the VOP2 >> display controller used in the RK3568, RK3576, and RK3588 Rockchip SoC >> families. > > Cristian provided a helper script which would show a test pattern and > then iterate through setting Red, Green, Blue background color and then > set it back to the original value. > > I first tested this on a Rock 5B (RK3588). > Without this patch set, the background color was Black with every > iteration. But with this patch set, I did see a Red, Green and Blue > background color, after which it was set back to Black. > > diederik@rock5b:~$ grep -E "^Changing prop|^Read BACKGROUND_COLOR" > bgcol-test-bash-user.log > Read BACKGROUND_COLOR prop (ARGB64): 0xffff000000000000 > Changing prop value to: 0xffff00000000ffff > Read BACKGROUND_COLOR prop (ARGB64): 0xffff00000000ffff > Changing prop value to 0xffffffff00000000 > Read BACKGROUND_COLOR prop (ARGB64): 0xffffffff00000000 > Changing prop value to 0xffff0000ffff0000 > Read BACKGROUND_COLOR prop (ARGB64): 0xffff0000ffff0000 > Changing prop value to 0xffff00000000ffff > Read BACKGROUND_COLOR prop (ARGB64): 0xffff00000000ffff > Changing prop value to: 0xffff000000000000 > Read BACKGROUND_COLOR prop (ARGB64): 0xffff000000000000 > > I then did the same test on a Quartz64-B (RK3566) and that too showed a > Red, Green and Blue background color and then was set back to Black. > > diederik@quartz64b:~$ grep -E "^Changing prop|^Read BACKGROUND_COLOR" > bgcol-test-bash-user-q64b.log > Read BACKGROUND_COLOR prop (ARGB64): 0xffff000000000000 > Changing prop value to: 0xffff00000000ffff > Read BACKGROUND_COLOR prop (ARGB64): 0xffff00000000ffff > Changing prop value to 0xffffffff00000000 > Read BACKGROUND_COLOR prop (ARGB64): 0xffffffff00000000 > Changing prop value to 0xffff0000ffff0000 > Read BACKGROUND_COLOR prop (ARGB64): 0xffff0000ffff0000 > Changing prop value to 0xffff00000000ffff > Read BACKGROUND_COLOR prop (ARGB64): 0xffff00000000ffff > Changing prop value to: 0xffff000000000000 > Read BACKGROUND_COLOR prop (ARGB64): 0xffff000000000000 > > So this patch set does what it is supposed to do, so feel free to add: > > Tested-by: Diederik de Haas <[email protected]>
I actually tested v4 of this series, so I'll copy-paste the above reply to the correct version this time. > > Cheers, > Diederik > >> Signed-off-by: Cristian Ciocaltea <[email protected]> >> --- >> Changes in v3: >> - Added new patches: >> * uapi: Provide DIV_ROUND_CLOSEST() >> * drm/vkms: Support setting custom background color >> - Improved DRM_ARGB64_{PREP|GET}*() helpers by using a conversion ratio >> for better color approximation when dealing with less than 16 bits of >> precision >> - Mentioned the IGT test in the cover letter while documenting the >> validation results; also dropped references to the now useless >> modetest wrapper script and its generated report >> - Rebased series onto latest drm-misc-next >> - Link to v2: >> https://lore.kernel.org/r/[email protected] >> >> Changes in v2: >> - Improved uAPI consistency and readability by introducing >> DRM_ARGB64_PREP*() and DRM_ARGB64_GET*() helper macros >> - Updated several code comment sections >> - Referenced the counterpart Weston support in the cover letter >> - Rebased series onto v6.18-rc1 >> - Link to v1: >> https://lore.kernel.org/r/[email protected] >> >> --- >> Cristian Ciocaltea (4): >> uapi: Provide DIV_ROUND_CLOSEST() >> drm: Add CRTC background color property >> drm/vkms: Support setting custom background color >> drm/rockchip: vop2: Support setting custom background color >> >> drivers/gpu/drm/drm_atomic_state_helper.c | 1 + >> drivers/gpu/drm/drm_atomic_uapi.c | 4 ++ >> drivers/gpu/drm/drm_blend.c | 39 ++++++++++++++-- >> drivers/gpu/drm/drm_mode_config.c | 6 +++ >> drivers/gpu/drm/rockchip/rockchip_drm_vop2.c | 13 +++++- >> drivers/gpu/drm/rockchip/rockchip_drm_vop2.h | 4 ++ >> drivers/gpu/drm/vkms/vkms_composer.c | 10 ++++- >> drivers/gpu/drm/vkms/vkms_crtc.c | 3 ++ >> include/drm/drm_blend.h | 4 +- >> include/drm/drm_crtc.h | 12 +++++ >> include/drm/drm_mode_config.h | 5 +++ >> include/linux/math.h | 18 +------- >> include/uapi/drm/drm_mode.h | 67 >> ++++++++++++++++++++++++++++ >> include/uapi/linux/const.h | 17 +++++++ >> 14 files changed, 178 insertions(+), 25 deletions(-) >> --- >> base-commit: 92c49b3f4df8f9acfa95551ef38fc00c675319fd >> change-id: 20250829-rk3588-bgcolor-c1a7b9a507bc > > _______________________________________________ > Linux-rockchip mailing list > [email protected] > http://lists.infradead.org/mailman/listinfo/linux-rockchip
