virgl: Use better reporting for mirror_clamp features

Fixes: 9efe50c83b
    virgl: report MIRROR_CLAMP features better

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27106>
(cherry picked from commit b9fea5ea6b5e5c79c916792cdb45a2a9ca0f522e)
This commit is contained in:
Gert Wollny 2024-01-17 10:04:47 +01:00 committed by Eric Engestrom
parent 570faac1c1
commit ea8681f985
3 changed files with 4 additions and 1 deletions

View file

@ -124,7 +124,7 @@
"description": "virgl: Use better reporting for mirror_clamp features",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "9efe50c83bfa3678fe7ad3cfcd94cf73d900be22",
"notes": null

View file

@ -97,6 +97,8 @@ virgl_get_param(struct pipe_screen *screen, enum pipe_cap param)
return vscreen->caps.caps.v2.capability_bits_v2 & VIRGL_CAP_V2_MIRROR_CLAMP_TO_EDGE;
FALLTHROUGH;
case PIPE_CAP_TEXTURE_MIRROR_CLAMP:
if (vscreen->caps.caps.v2.host_feature_check_version >= 22)
return vscreen->caps.caps.v2.capability_bits_v2 & VIRGL_CAP_V2_MIRROR_CLAMP;
return vscreen->caps.caps.v1.bset.mirror_clamp &&
!(vscreen->caps.caps.v2.capability_bits & VIRGL_CAP_HOST_IS_GLES);
case PIPE_CAP_TEXTURE_SWIZZLE:

View file

@ -586,6 +586,7 @@ enum virgl_formats {
#define VIRGL_CAP_V2_DRAW_PARAMETERS (1 << 14)
#define VIRGL_CAP_V2_GROUP_VOTE (1 << 15)
#define VIRGL_CAP_V2_MIRROR_CLAMP_TO_EDGE (1 << 16)
#define VIRGL_CAP_V2_MIRROR_CLAMP (1 << 17)
/* virgl bind flags - these are compatible with mesa 10.5 gallium.
* but are fixed, no other should be passed to virgl either.