backends/drm: always do color management
This ensures we always do linear blending, so that the appearance of translucent surfaces is the same between when color management features are actually used and when they're not used.
In terms of colors of opaque surfaces, nothing changes with this commit. The pipeline is sRGB in, sRGB out; the actual display capabilities are ignored unless the relevant options are set.
Draft because I want to do some benchmarks before we make a decision on this. The downsides of this MR are
- slightly reduced performance when direct scanout isn't used
- slightly increased power usage when direct scanout isn't used
- slightly increase VRAM usage
For at least the first two there's some small improvements that could still be done, by changing the RGBA16 texture to a swapchain and doing proper damage tracking on it.
Edited by Xaver Hugl