this only adds the PIPE_FORMAT members, not any direct handling for them Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>tags/19.2-branchpoint
@@ -157,6 +157,10 @@ PIPE_FORMAT_Z24_UNORM_S8_UINT_AS_R8G8B8A8 , plain, 1, 1, un8 , un8 , un8 , un8 , | |||
PIPE_FORMAT_UYVY , subsampled, 2, 1, x32 , , , , xyz1, yuv | |||
# http://www.fourcc.org/yuv.php#YUYV (a.k.a http://www.fourcc.org/yuv.php#YUY2) | |||
PIPE_FORMAT_YUYV , subsampled, 2, 1, x32 , , , , xyz1, yuv | |||
PIPE_FORMAT_AYUV , other, 4, 4, un8 , , , , xyzw, yuv | |||
PIPE_FORMAT_XYUV , other, 4, 4, un8 , , , , xyz1, yuv | |||
# same subsampling but with rgb channels | |||
PIPE_FORMAT_R8G8_B8G8_UNORM , subsampled, 2, 1, x32 , , , , xyz1, rgb | |||
PIPE_FORMAT_G8R8_G8B8_UNORM , subsampled, 2, 1, x32 , , , , xyz1, rgb |
@@ -1036,6 +1036,52 @@ util_format_p016_fetch_rgba_float(UNUSED float *dst, UNUSED const uint8_t *src, | |||
UNUSED unsigned i, UNUSED unsigned j) {} | |||
void | |||
util_format_xyuv_unpack_rgba_float(UNUSED float *dst_row, UNUSED unsigned dst_stride, | |||
UNUSED const uint8_t *src_row, UNUSED unsigned src_stride, | |||
UNUSED unsigned width, UNUSED unsigned height) {} | |||
void | |||
util_format_xyuv_unpack_rgba_8unorm(UNUSED uint8_t *dst_row, UNUSED unsigned dst_stride, | |||
UNUSED const uint8_t *src_row, UNUSED unsigned src_stride, | |||
UNUSED unsigned width, UNUSED unsigned height) {} | |||
void | |||
util_format_xyuv_pack_rgba_float(UNUSED uint8_t *dst_row, UNUSED unsigned dst_stride, | |||
UNUSED const float *src_row, UNUSED unsigned src_stride, | |||
UNUSED unsigned width, UNUSED unsigned height) {} | |||
void | |||
util_format_xyuv_pack_rgba_8unorm(UNUSED uint8_t *dst_row, UNUSED unsigned dst_stride, | |||
UNUSED const uint8_t *src_row, UNUSED unsigned src_stride, | |||
UNUSED unsigned width, UNUSED unsigned height) {} | |||
void | |||
util_format_xyuv_fetch_rgba_float(UNUSED float *dst, UNUSED const uint8_t *src, | |||
UNUSED unsigned i, UNUSED unsigned j) {} | |||
void | |||
util_format_ayuv_unpack_rgba_float(UNUSED float *dst_row, UNUSED unsigned dst_stride, | |||
UNUSED const uint8_t *src_row, UNUSED unsigned src_stride, | |||
UNUSED unsigned width, UNUSED unsigned height) {} | |||
void | |||
util_format_ayuv_unpack_rgba_8unorm(UNUSED uint8_t *dst_row, UNUSED unsigned dst_stride, | |||
UNUSED const uint8_t *src_row, UNUSED unsigned src_stride, | |||
UNUSED unsigned width, UNUSED unsigned height) {} | |||
void | |||
util_format_ayuv_pack_rgba_float(UNUSED uint8_t *dst_row, UNUSED unsigned dst_stride, | |||
UNUSED const float *src_row, UNUSED unsigned src_stride, | |||
UNUSED unsigned width, UNUSED unsigned height) {} | |||
void | |||
util_format_ayuv_pack_rgba_8unorm(UNUSED uint8_t *dst_row, UNUSED unsigned dst_stride, | |||
UNUSED const uint8_t *src_row, UNUSED unsigned src_stride, | |||
UNUSED unsigned width, UNUSED unsigned height) {} | |||
void | |||
util_format_ayuv_fetch_rgba_float(UNUSED float *dst, UNUSED const uint8_t *src, | |||
UNUSED unsigned i, UNUSED unsigned j) {} | |||
void | |||
util_format_r8g8_r8b8_unorm_unpack_rgba_float(UNUSED float *dst_row, UNUSED unsigned dst_stride, | |||
UNUSED const uint8_t *src_row, UNUSED unsigned src_stride, | |||
UNUSED unsigned width, UNUSED unsigned height) {} |
@@ -284,6 +284,53 @@ util_format_p016_pack_rgba_float(uint8_t *dst_row, unsigned dst_stride, | |||
void | |||
util_format_p016_fetch_rgba_float(float *dst, const uint8_t *src, | |||
unsigned i, unsigned j); | |||
void | |||
util_format_xyuv_unpack_rgba_float(float *dst_row, unsigned dst_stride, | |||
const uint8_t *src_row, unsigned src_stride, | |||
unsigned width, unsigned height); | |||
void | |||
util_format_xyuv_unpack_rgba_8unorm(uint8_t *dst_row, unsigned dst_stride, | |||
const uint8_t *src_row, unsigned src_stride, | |||
unsigned width, unsigned height); | |||
void | |||
util_format_xyuv_pack_rgba_float(uint8_t *dst_row, unsigned dst_stride, | |||
const float *src_row, unsigned src_stride, | |||
unsigned width, unsigned height); | |||
void | |||
util_format_xyuv_pack_rgba_8unorm(uint8_t *dst_row, unsigned dst_stride, | |||
const uint8_t *src_row, unsigned src_stride, | |||
unsigned width, unsigned height); | |||
void | |||
util_format_xyuv_fetch_rgba_float(float *dst, const uint8_t *src, | |||
unsigned i, unsigned j); | |||
void | |||
util_format_ayuv_unpack_rgba_float(float *dst_row, unsigned dst_stride, | |||
const uint8_t *src_row, unsigned src_stride, | |||
unsigned width, unsigned height); | |||
void | |||
util_format_ayuv_unpack_rgba_8unorm(uint8_t *dst_row, unsigned dst_stride, | |||
const uint8_t *src_row, unsigned src_stride, | |||
unsigned width, unsigned height); | |||
void | |||
util_format_ayuv_pack_rgba_float(uint8_t *dst_row, unsigned dst_stride, | |||
const float *src_row, unsigned src_stride, | |||
unsigned width, unsigned height); | |||
void | |||
util_format_ayuv_pack_rgba_8unorm(uint8_t *dst_row, unsigned dst_stride, | |||
const uint8_t *src_row, unsigned src_stride, | |||
unsigned width, unsigned height); | |||
void | |||
util_format_ayuv_fetch_rgba_float(float *dst, const uint8_t *src, | |||
unsigned i, unsigned j); | |||
void | |||
util_format_r8g8_b8g8_unorm_unpack_rgba_float(float *dst_row, unsigned dst_stride, | |||
const uint8_t *src_row, unsigned src_stride, |
@@ -379,6 +379,8 @@ static const struct vgpu10_format_entry format_conversion_table[] = | |||
{ PIPE_FORMAT_ATC_RGBA_EXPLICIT, SVGA3D_FORMAT_INVALID, SVGA3D_FORMAT_INVALID, SVGA3D_FORMAT_INVALID, 0 }, | |||
{ PIPE_FORMAT_ATC_RGBA_INTERPOLATED, SVGA3D_FORMAT_INVALID, SVGA3D_FORMAT_INVALID, SVGA3D_FORMAT_INVALID, 0 }, | |||
{ PIPE_FORMAT_Z24_UNORM_S8_UINT_AS_R8G8B8A8, SVGA3D_FORMAT_INVALID, SVGA3D_FORMAT_INVALID, SVGA3D_FORMAT_INVALID, 0 }, | |||
{ PIPE_FORMAT_AYUV, SVGA3D_FORMAT_INVALID, SVGA3D_FORMAT_INVALID, SVGA3D_FORMAT_INVALID, 0 }, | |||
{ PIPE_FORMAT_XYUV, SVGA3D_FORMAT_INVALID, SVGA3D_FORMAT_INVALID, SVGA3D_FORMAT_INVALID, 0 }, | |||
}; | |||
@@ -409,6 +409,9 @@ enum pipe_format { | |||
PIPE_FORMAT_Z24_UNORM_S8_UINT_AS_R8G8B8A8 = 320, | |||
PIPE_FORMAT_AYUV = 321, | |||
PIPE_FORMAT_XYUV = 322, | |||
PIPE_FORMAT_COUNT | |||
}; | |||