Hi and happy post-christmas! I wrote a patch 1/1 that now checks plane scaling factors against the pixel-format specific limits in the asic specific dc_plane_cap structures during atomic check and other appropriate places. This should prevent things like asking for scaling on fp16 framebuffers if the hw can't do that. Hopefully this will now allow to safely enable fp16 scanout also on older asic's like DCE-11.0, DCE-10 and DCE-8. Patch 2/2 enables those DCE's now for fp16. I used some quickly hacked up of IGT test kms_plane_scaling, manually hacking the src fb size to make sure the patch correctly accepts or rejects atomic commits based on allowable scaling factors for rgbx/a 8 bit, 10, and fp16. This fp16 support has been successfully tested with a Sea Islands / DCE-8 laptop. I also confirmed that at least basic HDR signalling over HDMI works for that DCE-8 machine with a HDR monitor. For this i used the amdvlk driver which exposes fp16 since a while on supported hw. There are other bugs in DC wrt. DCE-8 though, which didn't prevent my testing, but may be worth looking into. My DCE-8 machine scrambles the video output picture somewhat under Vulkan (radv and admvlk) if the output signal precision isn't 8 bpc, ie. on 6 bpc (eDP laptop panel) and 10 bpc, 12 bpc (HDMI deep color on external HDR monitor). Another fun thing is getting a black screen if DC is enabled on at least Linux 5.10+ (but not if i use the classic kms code in amdgpu-kms). If i recompile the driver with a Ubuntu kconfig for Linux 5.9, the 5.10 kernel works, and the only obvious DC related difference is that DC's new SI / DCE-6 asic support is disabled at compile time. Thanks, -mario _______________________________________________ amd-gfx mailing list amd-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/amd-gfx