asahi: Make clear the non-sRGBness of EOT images

For sRGB render targets, we encode sRGB when writing pixels into the tilebuffer
(in the fragment shader), not when writing out the image. When we actually write
out the tilebuffer to the image, we don't use the PBE's sRGB conversion, we just
bind it as a UNORM 8 image and blit the pre-transformed pixels.

We're about to add real sRGB support for the PBE, so make this linearization
explicit.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24258>
This commit is contained in:
Alyssa Rosenzweig
2023-06-28 15:41:28 -04:00
committed by Marge Bot
parent 8db9eeaeec
commit 6788194c39
+3
View File
@@ -2178,6 +2178,9 @@ agx_build_meta(struct agx_batch *batch, bool store, bool partial_render)
struct agx_ptr pbe =
agx_pool_alloc_aligned(&batch->pool, AGX_PBE_LENGTH, 256);
/* The tilebuffer is already in sRGB space if needed. Do not convert */
view.format = util_format_linear(view.format);
agx_batch_upload_pbe(pbe.cpu, &view);
agx_usc_pack(&b, TEXTURE, cfg) {