[igt-dev] [PATCH i-g-t v2 1/3] lib/surfacestate: Creating surfaceformat header
Katarzyna Dec
katarzyna.dec at intel.com
Fri May 25 07:22:11 UTC 2018
On Fri, May 25, 2018 at 09:15:32AM +0200, Lukasz Kalamarz wrote:
> In several header files surface formats definitions were
> duplicated. To decrease amount of duplicated code in igt
> new lib was created.
>
> v2: Drop GEN_ from registers definition
>
Much better! :) Thanks!
> Signed-off-by: Lukasz Kalamarz <lukasz.kalamarz at intel.com>
Reviewed-by: Katarzyna Dec <katarzyna.dec at intel.com>
> Cc: Radoslaw Szwichtenberg <radoslaw.szwichtenberg at intel.com>
> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio at intel.com>
> ---
> lib/Makefile.sources | 1 +
> lib/gen6_render.h | 1 +
> lib/gen7_media.h | 1 +
> lib/gen7_render.h | 1 +
> lib/gen8_media.h | 1 +
> lib/surfaceformat.h | 187 +++++++++++++++++++++++++++++++++++++++++++++++++++
> 6 files changed, 192 insertions(+)
> create mode 100644 lib/surfaceformat.h
>
> diff --git a/lib/Makefile.sources b/lib/Makefile.sources
> index fbd8844b..042c1d3b 100644
> --- a/lib/Makefile.sources
> +++ b/lib/Makefile.sources
> @@ -80,6 +80,7 @@ lib_source_list = \
> rendercopy_gen8.c \
> rendercopy_gen9.c \
> rendercopy.h \
> + surfaceformat.h \
> sw_sync.c \
> sw_sync.h \
> intel_reg_map.c \
> diff --git a/lib/gen6_render.h b/lib/gen6_render.h
> index 967e6c65..6aa20b62 100644
> --- a/lib/gen6_render.h
> +++ b/lib/gen6_render.h
> @@ -2,6 +2,7 @@
> #define GEN6_RENDER_H
>
> #include <stdint.h>
> +#include "surfaceformat.h"
>
> #define GEN6_3D(Pipeline,Opcode,Subopcode) ((3 << 29) | \
> ((Pipeline) << 27) | \
> diff --git a/lib/gen7_media.h b/lib/gen7_media.h
> index 91294d23..572be4f5 100644
> --- a/lib/gen7_media.h
> +++ b/lib/gen7_media.h
> @@ -2,6 +2,7 @@
> #define GEN7_MEDIA_H
>
> #include <stdint.h>
> +#include "surfaceformat.h"
>
> #define GEN7_SURFACEFORMAT_R32G32B32A32_FLOAT 0x000
> #define GEN7_SURFACEFORMAT_R32G32B32A32_SINT 0x001
> diff --git a/lib/gen7_render.h b/lib/gen7_render.h
> index 7a6dc055..fd8878dc 100644
> --- a/lib/gen7_render.h
> +++ b/lib/gen7_render.h
> @@ -2,6 +2,7 @@
> #define GEN7_RENDER_H
>
> #include <stdint.h>
> +#include "surfaceformat.h"
>
> #define INTEL_MASK(high, low) (((1 << ((high) - (low) + 1)) - 1) << (low))
>
> diff --git a/lib/gen8_media.h b/lib/gen8_media.h
> index 15cd7992..d4f29cdf 100644
> --- a/lib/gen8_media.h
> +++ b/lib/gen8_media.h
> @@ -2,6 +2,7 @@
> #define GEN8_MEDIA_H
>
> #include <stdint.h>
> +#include "surfaceformat.h"
>
> #define GEN8_SURFACEFORMAT_R32G32B32A32_FLOAT 0x000
> #define GEN8_SURFACEFORMAT_R32G32B32A32_SINT 0x001
> diff --git a/lib/surfaceformat.h b/lib/surfaceformat.h
> new file mode 100644
> index 00000000..5d7ed2ca
> --- /dev/null
> +++ b/lib/surfaceformat.h
> @@ -0,0 +1,187 @@
> +#ifndef SURFACEFORMAT_H
> +#define SURFACEFORMAT_H
> +
> +#include <stdint.h>
> +
> +#define SURFACEFORMAT_R32G32B32A32_FLOAT 0x000
> +#define SURFACEFORMAT_R32G32B32A32_SINT 0x001
> +#define SURFACEFORMAT_R32G32B32A32_UINT 0x002
> +#define SURFACEFORMAT_R32G32B32A32_UNORM 0x003
> +#define SURFACEFORMAT_R32G32B32A32_SNORM 0x004
> +#define SURFACEFORMAT_R64G64_FLOAT 0x005
> +#define SURFACEFORMAT_R32G32B32X32_FLOAT 0x006
> +#define SURFACEFORMAT_R32G32B32A32_SSCALED 0x007
> +#define SURFACEFORMAT_R32G32B32A32_USCALED 0x008
> +
> +
> +#define SURFACEFORMAT_R32G32B32_FLOAT 0x040
> +#define SURFACEFORMAT_R32G32B32_SINT 0x041
> +#define SURFACEFORMAT_R32G32B32_UINT 0x042
> +#define SURFACEFORMAT_R32G32B32_UNORM 0x043
> +#define SURFACEFORMAT_R32G32B32_SNORM 0x044
> +#define SURFACEFORMAT_R32G32B32_SSCALED 0x045
> +#define SURFACEFORMAT_R32G32B32_USCALED 0x046
> +
> +#define SURFACEFORMAT_R16G16B16A16_UNORM 0x080
> +#define SURFACEFORMAT_R16G16B16A16_SNORM 0x081
> +#define SURFACEFORMAT_R16G16B16A16_SINT 0x082
> +#define SURFACEFORMAT_R16G16B16A16_UINT 0x083
> +#define SURFACEFORMAT_R16G16B16A16_FLOAT 0x084
> +#define SURFACEFORMAT_R32G32_FLOAT 0x085
> +#define SURFACEFORMAT_R32G32_SINT 0x086
> +#define SURFACEFORMAT_R32G32_UINT 0x087
> +#define SURFACEFORMAT_R32_FLOAT_X8X24_TYPELESS 0x088
> +#define SURFACEFORMAT_X32_TYPELESS_G8X24_UINT 0x089
> +#define SURFACEFORMAT_L32A32_FLOAT 0x08A
> +#define SURFACEFORMAT_R32G32_UNORM 0x08B
> +#define SURFACEFORMAT_R32G32_SNORM 0x08C
> +#define SURFACEFORMAT_R64_FLOAT 0x08D
> +#define SURFACEFORMAT_R16G16B16X16_UNORM 0x08E
> +#define SURFACEFORMAT_R16G16B16X16_FLOAT 0x08F
> +
> +#define SURFACEFORMAT_A32X32_FLOAT 0x090
> +#define SURFACEFORMAT_L32X32_FLOAT 0x091
> +#define SURFACEFORMAT_I32X32_FLOAT 0x092
> +#define SURFACEFORMAT_R16G16B16A16_SSCALED 0x093
> +#define SURFACEFORMAT_R16G16B16A16_USCALED 0x094
> +#define SURFACEFORMAT_R32G32_SSCALED 0x095
> +#define SURFACEFORMAT_R32G32_USCALED 0x096
> +
> +#define SURFACEFORMAT_B8G8R8A8_UNORM 0x0C0
> +#define SURFACEFORMAT_B8G8R8A8_UNORM_SRGB 0x0C1
> +#define SURFACEFORMAT_R10G10B10A2_UNORM 0x0C2
> +#define SURFACEFORMAT_R10G10B10A2_UNORM_SRGB 0x0C3
> +#define SURFACEFORMAT_R10G10B10A2_UINT 0x0C4
> +#define SURFACEFORMAT_R10G10B10_SNORM_A2_UNORM 0x0C5
> +#define SURFACEFORMAT_R8G8B8A8_UNORM 0x0C7
> +#define SURFACEFORMAT_R8G8B8A8_UNORM_SRGB 0x0C8
> +#define SURFACEFORMAT_R8G8B8A8_SNORM 0x0C9
> +#define SURFACEFORMAT_R8G8B8A8_SINT 0x0CA
> +#define SURFACEFORMAT_R8G8B8A8_UINT 0x0CB
> +#define SURFACEFORMAT_R16G16_UNORM 0x0CC
> +#define SURFACEFORMAT_R16G16_SNORM 0x0CD
> +#define SURFACEFORMAT_R16G16_SINT 0x0CE
> +#define SURFACEFORMAT_R16G16_UINT 0x0CF
> +
> +#define SURFACEFORMAT_R16G16_FLOAT 0x0D0
> +#define SURFACEFORMAT_B10G10R10A2_UNORM 0x0D1
> +#define SURFACEFORMAT_B10G10R10A2_UNORM_SRGB 0x0D2
> +#define SURFACEFORMAT_R11G11B10_FLOAT 0x0D3
> +#define SURFACEFORMAT_R32_SINT 0x0D6
> +#define SURFACEFORMAT_R32_UINT 0x0D7
> +#define SURFACEFORMAT_R32_FLOAT 0x0D8
> +#define SURFACEFORMAT_R24_UNORM_X8_TYPELESS 0x0D9
> +#define SURFACEFORMAT_X24_TYPELESS_G8_UINT 0x0DA
> +#define SURFACEFORMAT_L16A16_UNORM 0x0DF
> +
> +#define SURFACEFORMAT_I24X8_UNORM 0x0E0
> +#define SURFACEFORMAT_L24X8_UNORM 0x0E1
> +#define SURFACEFORMAT_A24X8_UNORM 0x0E2
> +#define SURFACEFORMAT_I32_FLOAT 0x0E3
> +#define SURFACEFORMAT_L32_FLOAT 0x0E4
> +#define SURFACEFORMAT_A32_FLOAT 0x0E5
> +#define SURFACEFORMAT_B8G8R8X8_UNORM 0x0E9
> +#define SURFACEFORMAT_B8G8R8X8_UNORM_SRGB 0x0EA
> +#define SURFACEFORMAT_R8G8B8X8_UNORM 0x0EB
> +#define SURFACEFORMAT_R8G8B8X8_UNORM_SRGB 0x0EC
> +#define SURFACEFORMAT_R9G9B9E5_SHAREDEXP 0x0ED
> +#define SURFACEFORMAT_B10G10R10X2_UNORM 0x0EE
> +
> +#define SURFACEFORMAT_L16A16_FLOAT 0x0F0
> +#define SURFACEFORMAT_R32_UNORM 0x0F1
> +#define SURFACEFORMAT_R32_SNORM 0x0F2
> +#define SURFACEFORMAT_R10G10B10X2_USCALED 0x0F3
> +#define SURFACEFORMAT_R8G8B8A8_SSCALED 0x0F4
> +#define SURFACEFORMAT_R8G8B8A8_USCALED 0x0F5
> +#define SURFACEFORMAT_R16G16_SSCALED 0x0F6
> +#define SURFACEFORMAT_R16G16_USCALED 0x0F7
> +#define SURFACEFORMAT_R32_SSCALED 0x0F8
> +#define SURFACEFORMAT_R32_USCALED 0x0F9
> +
> +#define SURFACEFORMAT_B5G6R5_UNORM 0x100
> +#define SURFACEFORMAT_B5G6R5_UNORM_SRGB 0x101
> +#define SURFACEFORMAT_B5G5R5A1_UNORM 0x102
> +#define SURFACEFORMAT_B5G5R5A1_UNORM_SRGB 0x103
> +#define SURFACEFORMAT_B4G4R4A4_UNORM 0x104
> +#define SURFACEFORMAT_B4G4R4A4_UNORM_SRGB 0x105
> +#define SURFACEFORMAT_R8G8_UNORM 0x106
> +#define SURFACEFORMAT_R8G8_SNORM 0x107
> +#define SURFACEFORMAT_R8G8_SINT 0x108
> +#define SURFACEFORMAT_R8G8_UINT 0x109
> +#define SURFACEFORMAT_R16_FLOAT 0x10E
> +#define SURFACEFORMAT_R16_SINT 0x10C
> +#define SURFACEFORMAT_R16_SNORM 0x10B
> +#define SURFACEFORMAT_R16_UINT 0x10D
> +#define SURFACEFORMAT_R16_UNORM 0x10A
> +
> +#define SURFACEFORMAT_I16_UNORM 0x111
> +#define SURFACEFORMAT_L16_UNORM 0x112
> +#define SURFACEFORMAT_A16_UNORM 0x113
> +#define SURFACEFORMAT_L8A8_UNORM 0x114
> +#define SURFACEFORMAT_I16_FLOAT 0x115
> +#define SURFACEFORMAT_L16_FLOAT 0x116
> +#define SURFACEFORMAT_A16_FLOAT 0x117
> +#define SURFACEFORMAT_R5G5_SNORM_B6_UNORM 0x119
> +#define SURFACEFORMAT_B5G5R5X1_UNORM 0x11A
> +#define SURFACEFORMAT_B5G5R5X1_UNORM_SRGB 0x11B
> +#define SURFACEFORMAT_R8G8_SSCALED 0x11C
> +#define SURFACEFORMAT_R8G8_USCALED 0x11D
> +#define SURFACEFORMAT_R16_SSCALED 0x11E
> +#define SURFACEFORMAT_R16_USCALED 0x11F
> +
> +#define SURFACEFORMAT_R8_UNORM 0x140
> +#define SURFACEFORMAT_R8_SNORM 0x141
> +#define SURFACEFORMAT_R8_SINT 0x142
> +#define SURFACEFORMAT_R8_UINT 0x143
> +#define SURFACEFORMAT_A8_UNORM 0x144
> +#define SURFACEFORMAT_I8_UNORM 0x145
> +#define SURFACEFORMAT_L8_UNORM 0x146
> +#define SURFACEFORMAT_P4A4_UNORM 0x147
> +#define SURFACEFORMAT_A4P4_UNORM 0x148
> +#define SURFACEFORMAT_R8_SSCALED 0x149
> +#define SURFACEFORMAT_R8_USCALED 0x14A
> +
> +#define SURFACEFORMAT_R1_UINT 0x181
> +#define SURFACEFORMAT_YCRCB_NORMAL 0x182
> +#define SURFACEFORMAT_YCRCB_SWAPUVY 0x183
> +#define SURFACEFORMAT_BC1_UNORM 0x186
> +#define SURFACEFORMAT_BC2_UNORM 0x187
> +#define SURFACEFORMAT_BC3_UNORM 0x188
> +#define SURFACEFORMAT_BC4_UNORM 0x189
> +#define SURFACEFORMAT_BC5_UNORM 0x18A
> +#define SURFACEFORMAT_BC1_UNORM_SRGB 0x18B
> +#define SURFACEFORMAT_BC2_UNORM_SRGB 0x18C
> +#define SURFACEFORMAT_BC3_UNORM_SRGB 0x18D
> +#define SURFACEFORMAT_MONO8 0x18E
> +#define SURFACEFORMAT_YCRCB_SWAPUV 0x18F
> +
> +#define SURFACEFORMAT_YCRCB_SWAPY 0x190
> +#define SURFACEFORMAT_DXT1_RGB 0x191
> +#define SURFACEFORMAT_FXT1 0x192
> +#define SURFACEFORMAT_R8G8B8_UNORM 0x193
> +#define SURFACEFORMAT_R8G8B8_SNORM 0x194
> +#define SURFACEFORMAT_R8G8B8_SSCALED 0x195
> +#define SURFACEFORMAT_R8G8B8_USCALED 0x196
> +#define SURFACEFORMAT_R64G64B64A64_FLOAT 0x197
> +#define SURFACEFORMAT_R64G64B64_FLOAT 0x198
> +#define SURFACEFORMAT_BC4_SNORM 0x199
> +#define SURFACEFORMAT_BC5_SNORM 0x19A
> +#define SURFACEFORMAT_R16G16B16_UNORM 0x19C
> +#define SURFACEFORMAT_R16G16B16_SNORM 0x19D
> +#define SURFACEFORMAT_R16G16B16_SSCALED 0x19E
> +#define SURFACEFORMAT_R16G16B16_USCALED 0x19F
> +
> +#define SURFACERETURNFORMAT_FLOAT32 0
> +#define SURFACERETURNFORMAT_S1 1
> +
> +#define SURFACE_1D 0
> +#define SURFACE_2D 1
> +#define SURFACE_3D 2
> +#define SURFACE_CUBE 3
> +#define SURFACE_BUFFER 4
> +#define SURFACE_NULL 7
> +
> +#define SURFACE_MIPMAPLAYOUT_BELOW 0
> +#define SURFACE_MIPMAPLAYOUT_RIGHT 1
> +
> +#endif
> --
> 2.14.3
>
More information about the igt-dev
mailing list