diff options
-rw-r--r-- | src/i965_render.c | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/src/i965_render.c b/src/i965_render.c index c38bbfc3..7355ed1d 100644 --- a/src/i965_render.c +++ b/src/i965_render.c @@ -108,13 +108,19 @@ static struct blendinfo i965_blend_op[] = { * 1.7.2 */ static struct formatinfo i965_tex_formats[] = { + {PICT_a8, BRW_SURFACEFORMAT_A8_UNORM}, {PICT_a8r8g8b8, BRW_SURFACEFORMAT_B8G8R8A8_UNORM}, {PICT_x8r8g8b8, BRW_SURFACEFORMAT_B8G8R8X8_UNORM}, {PICT_a8b8g8r8, BRW_SURFACEFORMAT_R8G8B8A8_UNORM}, {PICT_x8b8g8r8, BRW_SURFACEFORMAT_R8G8B8X8_UNORM}, + {PICT_r8g8b8, BRW_SURFACEFORMAT_R8G8B8_UNORM}, {PICT_r5g6b5, BRW_SURFACEFORMAT_B5G6R5_UNORM}, {PICT_a1r5g5b5, BRW_SURFACEFORMAT_B5G5R5A1_UNORM}, - {PICT_a8, BRW_SURFACEFORMAT_A8_UNORM}, + {PICT_a2r10g10b10, BRW_SURFACEFORMAT_B10G10R10A2_UNORM}, + {PICT_x2r10g10b10, BRW_SURFACEFORMAT_B10G10R10X2_UNORM}, + {PICT_a2b10g10r10, BRW_SURFACEFORMAT_R10G10B10A2_UNORM}, + {PICT_x2r10g10b10, BRW_SURFACEFORMAT_B10G10R10X2_UNORM}, + {PICT_a4r4g4b4, BRW_SURFACEFORMAT_B4G4R4A4_UNORM}, }; static void i965_get_blend_cntl(int op, PicturePtr mask, uint32_t dst_format, @@ -158,15 +164,21 @@ static Bool i965_get_dest_format(PicturePtr dest_picture, uint32_t * dst_format) case PICT_x8r8g8b8: *dst_format = BRW_SURFACEFORMAT_B8G8R8A8_UNORM; break; + case PICT_a8b8g8r8: + case PICT_x8b8g8r8: + *dst_format = BRW_SURFACEFORMAT_R8G8B8A8_UNORM; + break; + case PICT_a2r10g10b10: + case PICT_x2r10g10b10: + *dst_format = BRW_SURFACEFORMAT_B10G10R10A2_UNORM; + break; case PICT_r5g6b5: *dst_format = BRW_SURFACEFORMAT_B5G6R5_UNORM; break; + case PICT_x1r5g5b5: case PICT_a1r5g5b5: *dst_format = BRW_SURFACEFORMAT_B5G5R5A1_UNORM; break; - case PICT_x1r5g5b5: - *dst_format = BRW_SURFACEFORMAT_B5G5R5X1_UNORM; - break; case PICT_a8: *dst_format = BRW_SURFACEFORMAT_A8_UNORM; break; |