Mesa (main): lima: handle fp16 vertex formats
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Thu Jul 15 01:19:51 UTC 2021
Module: Mesa
Branch: main
Commit: 4a3269dff65e198ac3d493b676800978ce0c01e5
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4a3269dff65e198ac3d493b676800978ce0c01e5
Author: Vasily Khoruzhick <anarsoul at gmail.com>
Date: Tue Jul 13 23:12:13 2021 -0700
lima: handle fp16 vertex formats
12128fb1351e marked fp16 vertex formats supported, but they aren't actually handled
by lima_pipe_format_to_attrib_type(). Fix it by handling it there.
FP16 seems to be the only missing index which is 0x3.
Fixes: 12128fb1351e ("lima: add natively supported vertex buffer formats")
Cc: 21.1 mesa-stable
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Signed-off-by: Vasily Khoruzhick <anarsoul at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11872>
---
src/gallium/drivers/lima/lima_draw.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/gallium/drivers/lima/lima_draw.c b/src/gallium/drivers/lima/lima_draw.c
index 4671683c1af..3d29fcc601b 100644
--- a/src/gallium/drivers/lima/lima_draw.c
+++ b/src/gallium/drivers/lima/lima_draw.c
@@ -195,6 +195,7 @@ enum lima_attrib_type {
LIMA_ATTRIB_FLOAT = 0x000,
LIMA_ATTRIB_I32 = 0x001,
LIMA_ATTRIB_U32 = 0x002,
+ LIMA_ATTRIB_FP16 = 0x003,
LIMA_ATTRIB_I16 = 0x004,
LIMA_ATTRIB_U16 = 0x005,
LIMA_ATTRIB_I8 = 0x006,
@@ -217,7 +218,10 @@ lima_pipe_format_to_attrib_type(enum pipe_format format)
switch (c->type) {
case UTIL_FORMAT_TYPE_FLOAT:
- return LIMA_ATTRIB_FLOAT;
+ if (c->size == 16)
+ return LIMA_ATTRIB_FP16;
+ else
+ return LIMA_ATTRIB_FLOAT;
case UTIL_FORMAT_TYPE_FIXED:
return LIMA_ATTRIB_FIXED;
case UTIL_FORMAT_TYPE_SIGNED:
More information about the mesa-commit
mailing list