Mesa (master): swr: [rasterizer core] add support for "RAW" surface format
Tim Rowley
torowley at kemper.freedesktop.org
Tue Oct 11 16:58:30 UTC 2016
Module: Mesa
Branch: master
Commit: b3bd8bb611bb465d2e5efddd109cf633bf3cc9b9
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b3bd8bb611bb465d2e5efddd109cf633bf3cc9b9
Author: Tim Rowley <timothy.o.rowley at intel.com>
Date: Tue Oct 4 13:14:32 2016 -0500
swr: [rasterizer core] add support for "RAW" surface format
Signed-off-by: Tim Rowley <timothy.o.rowley at intel.com>
---
.../drivers/swr/rasterizer/common/formats.cpp | 23 ++++++++++++++++++++++
.../drivers/swr/rasterizer/common/formats.h | 6 ++++++
2 files changed, 29 insertions(+)
diff --git a/src/gallium/drivers/swr/rasterizer/common/formats.cpp b/src/gallium/drivers/swr/rasterizer/common/formats.cpp
index 8a65886..2d2bf21 100644
--- a/src/gallium/drivers/swr/rasterizer/common/formats.cpp
+++ b/src/gallium/drivers/swr/rasterizer/common/formats.cpp
@@ -6082,4 +6082,27 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
1, // bcWidth
1, // bcHeight
},
+ // <---- Add new "supported" formats here!
+
+
+ // ... skip a long range ...
+ // RAW (0x1ff)
+ {
+ "RAW",
+ { SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, },
+ { 0, 0, 0, 0 }, // Defaults for missing components
+ { 0, 1, 2, 3 }, // Swizzle
+ { 32, 0, 0, 0 }, // Bits per component
+ 32, // Bits per element
+ 4, // Bytes per element
+ 1, // Num components
+ false, // isSRGB
+ false, // isBC
+ false, // isSubsampled
+ false, // isLuminance
+ { false, false, false, false }, // Is normalized?
+ { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
+ 1, // bcWidth
+ 1, // bcHeight
+ }
};
diff --git a/src/gallium/drivers/swr/rasterizer/common/formats.h b/src/gallium/drivers/swr/rasterizer/common/formats.h
index 117cf3e..1f5fe19 100644
--- a/src/gallium/drivers/swr/rasterizer/common/formats.h
+++ b/src/gallium/drivers/swr/rasterizer/common/formats.h
@@ -216,6 +216,7 @@ enum SWR_FORMAT
R8G8B8_UINT = 0x1C8,
R8G8B8_SINT = 0x1C9,
NUM_SWR_FORMATS = 0x1CA,
+ RAW = 0x1FF,
};
//////////////////////////////////////////////////////////////////////////
@@ -248,6 +249,11 @@ extern const SWR_FORMAT_INFO gFormatInfo[];
/// @param format - SWR format
INLINE const SWR_FORMAT_INFO& GetFormatInfo(SWR_FORMAT format)
{
+ if (format == RAW)
+ {
+ format = NUM_SWR_FORMATS;
+ }
+ SWR_ASSERT(format <= NUM_SWR_FORMATS, "Invalid Surface Format: %d", format);
return gFormatInfo[format];
}
More information about the mesa-commit
mailing list