Improved AMD Color Management Being Worked On For The Steam Deck
Open-source Linux graphics driver engineer Melissa Wen with Igalia, Joshua Ashton with Valve, and Harry Wentland with AMD have been working on kernel mode-setting (KMS) color pipeline enhancements for SteamOS and in particular for enhancing the Steam Deck.
This weekend Melissa Wen posted a set of 40 "request for comments" patches that improve the AMD color management support for benefiting the Steam Deck. She summed up in the patch cover letter their focus and current work:
Among the color support being worked on are around plane degamma LUT and predefined transfer function, plane HDR multiplier, plane shaper LUT/transfer function, plane 3D LUT, and plane blend LUT/transfer function, just before blending. This work isn't entirely a surprise with for months now Valve also investing in improving Linux HDR support for gaming.
More details on this work-in-progress color management support for the Steam Deck while it will also benefit other newer AMD graphics hardware too can be found via Melissa's patch series.
This weekend Melissa Wen posted a set of 40 "request for comments" patches that improve the AMD color management support for benefiting the Steam Deck. She summed up in the patch cover letter their focus and current work:
"Joshua Ashton and I (with the great collaboration of Harry Wentland - thanks) have been working on KMS color pipeline enhancement for Steam Deck/SteamOS by exposing the large set of color caps available in AMD display HW.
This patchset results from this full-stack work, including pre-blending and post-blending new color properties. The first two patches fix quantization issues on shaper LUT programming. Just after, we have one patch that adds a config option to restrict AMD colo feature usage. The following 13 patches implement AMD driver-private color properties (pending detachment of property counter and plane color_mgmt_changed from DRM). Finally, the last 24 patches rework the AMD display manager and color management to support the properties exposed.
...
So far, we keep these properties' usage under an AMD display config option (STEAM_DECK). However, we are fine with having them fully available to other DCN HW generations. In the current proposal, we are already checking ASICs before exposing a color feature. We can work on 3D LUT resource acquisition details to fit them to DCN 3+ families that support them. Indeed, before moving to these config boundaries, we started working on an open solution for any AMD HW [7].
The userspace case here is Gamescope which is the compositor for SteamOS. It's already using all of this functionality (although with a VALVE1_ prefix instead of AMD) to implement its color management pipeline right now.
We are planning on shipping our color management support with gamut mapping, HDR, SDR on HDR, HDR on SDR, and much more in Steam OS 3.5."
Among the color support being worked on are around plane degamma LUT and predefined transfer function, plane HDR multiplier, plane shaper LUT/transfer function, plane 3D LUT, and plane blend LUT/transfer function, just before blending. This work isn't entirely a surprise with for months now Valve also investing in improving Linux HDR support for gaming.
More details on this work-in-progress color management support for the Steam Deck while it will also benefit other newer AMD graphics hardware too can be found via Melissa's patch series.
20 Comments