[Mesa-dev] [PATCH 2/7] r600g: add support for IA44 and AI44 textures.

Christian König deathsimple at vodafone.de
Thu Sep 1 06:50:01 PDT 2011


Sampling worked out of the box, but this make them work as surface as well.

Signed-off-by: Christian König <deathsimple at vodafone.de>
---
 src/gallium/drivers/r600/evergreen_state.c |    4 ++++
 src/gallium/drivers/r600/r600_state.c      |    4 ++++
 2 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c
index 174446e..be0f563 100644
--- a/src/gallium/drivers/r600/evergreen_state.c
+++ b/src/gallium/drivers/r600/evergreen_state.c
@@ -277,9 +277,11 @@ static uint32_t r600_translate_colorswap(enum pipe_format format)
 	switch (format) {
 	/* 8-bit buffers. */
 	case PIPE_FORMAT_L4A4_UNORM:
+	case PIPE_FORMAT_AI44:
 		return V_028C70_SWAP_ALT;
 
 	case PIPE_FORMAT_A8_UNORM:
+	case PIPE_FORMAT_IA44:
 		return V_028C70_SWAP_ALT_REV;
 	case PIPE_FORMAT_I8_UNORM:
 	case PIPE_FORMAT_L8_UNORM:
@@ -383,6 +385,8 @@ static uint32_t r600_translate_colorformat(enum pipe_format format)
 	switch (format) {
 	/* 8-bit buffers. */
 	case PIPE_FORMAT_L4A4_UNORM:
+	case PIPE_FORMAT_IA44:
+	case PIPE_FORMAT_AI44:
 		return V_028C70_COLOR_4_4;
 
 	case PIPE_FORMAT_A8_UNORM:
diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c
index 326bbff..62887a2 100644
--- a/src/gallium/drivers/r600/r600_state.c
+++ b/src/gallium/drivers/r600/r600_state.c
@@ -277,6 +277,7 @@ static uint32_t r600_translate_colorswap(enum pipe_format format)
 	switch (format) {
 	/* 8-bit buffers. */
 	case PIPE_FORMAT_A8_UNORM:
+	case PIPE_FORMAT_IA44:
 		return V_0280A0_SWAP_ALT_REV;
 	case PIPE_FORMAT_I8_UNORM:
 	case PIPE_FORMAT_L8_UNORM:
@@ -286,6 +287,7 @@ static uint32_t r600_translate_colorswap(enum pipe_format format)
 		return V_0280A0_SWAP_STD;
 
 	case PIPE_FORMAT_L4A4_UNORM:
+	case PIPE_FORMAT_AI44:
 		return V_0280A0_SWAP_ALT;
 
 	/* 16-bit buffers. */
@@ -383,6 +385,8 @@ static uint32_t r600_translate_colorformat(enum pipe_format format)
 {
 	switch (format) {
 	case PIPE_FORMAT_L4A4_UNORM:
+	case PIPE_FORMAT_IA44:
+	case PIPE_FORMAT_AI44:
 		return V_0280A0_COLOR_4_4;
 
 	/* 8-bit buffers. */
-- 
1.7.4.1



More information about the mesa-dev mailing list