#ifndef TEXDESC_3D_XML
#define TEXDESC_3D_XML

/* Autogenerated file, DO NOT EDIT manually!

This file was generated by the rules-ng-ng headergen tool in this git repository:
http://0x04.net/cgit/index.cgi/rules-ng-ng
git clone git://0x04.net/rules-ng-ng

The rules-ng-ng source files this header was generated from are:
- texdesc_3d.xml (   3183 bytes, from 2019-01-07 09:52:31)
- copyright.xml  (   1597 bytes, from 2019-01-07 09:52:31)
- common.xml     (  35468 bytes, from 2019-01-07 09:52:31)
- common_3d.xml  (  14322 bytes, from 2019-08-19 14:35:07)

Copyright (C) 2012-2019 by the following authors:
- Wladimir J. van der Laan <laanwj@gmail.com>
- Christian Gmeiner <christian.gmeiner@gmail.com>
- Lucas Stach <l.stach@pengutronix.de>
- Russell King <rmk@arm.linux.org.uk>

Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sub license,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice (including the
next paragraph) shall be included in all copies or substantial portions
of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
*/


#define TEXDESC_LOD_ADDR(i0)				       (0x00000000 + 0x4*(i0))
#define TEXDESC_LOD_ADDR__ESIZE					0x00000004
#define TEXDESC_LOD_ADDR__LEN					0x00000010

#define TEXDESC_CONFIG0						0x00000040
#define TEXDESC_CONFIG0_TYPE__MASK				0x00000007
#define TEXDESC_CONFIG0_TYPE__SHIFT				0
#define TEXDESC_CONFIG0_TYPE(x)					(((x) << TEXDESC_CONFIG0_TYPE__SHIFT) & TEXDESC_CONFIG0_TYPE__MASK)
#define TEXDESC_CONFIG0_UWRAP__MASK				0x00000018
#define TEXDESC_CONFIG0_UWRAP__SHIFT				3
#define TEXDESC_CONFIG0_UWRAP(x)				(((x) << TEXDESC_CONFIG0_UWRAP__SHIFT) & TEXDESC_CONFIG0_UWRAP__MASK)
#define TEXDESC_CONFIG0_VWRAP__MASK				0x00000060
#define TEXDESC_CONFIG0_VWRAP__SHIFT				5
#define TEXDESC_CONFIG0_VWRAP(x)				(((x) << TEXDESC_CONFIG0_VWRAP__SHIFT) & TEXDESC_CONFIG0_VWRAP__MASK)
#define TEXDESC_CONFIG0_MIN__MASK				0x00000180
#define TEXDESC_CONFIG0_MIN__SHIFT				7
#define TEXDESC_CONFIG0_MIN(x)					(((x) << TEXDESC_CONFIG0_MIN__SHIFT) & TEXDESC_CONFIG0_MIN__MASK)
#define TEXDESC_CONFIG0_MIP__MASK				0x00000600
#define TEXDESC_CONFIG0_MIP__SHIFT				9
#define TEXDESC_CONFIG0_MIP(x)					(((x) << TEXDESC_CONFIG0_MIP__SHIFT) & TEXDESC_CONFIG0_MIP__MASK)
#define TEXDESC_CONFIG0_MAG__MASK				0x00001800
#define TEXDESC_CONFIG0_MAG__SHIFT				11
#define TEXDESC_CONFIG0_MAG(x)					(((x) << TEXDESC_CONFIG0_MAG__SHIFT) & TEXDESC_CONFIG0_MAG__MASK)
#define TEXDESC_CONFIG0_FORMAT__MASK				0x0003e000
#define TEXDESC_CONFIG0_FORMAT__SHIFT				13
#define TEXDESC_CONFIG0_FORMAT(x)				(((x) << TEXDESC_CONFIG0_FORMAT__SHIFT) & TEXDESC_CONFIG0_FORMAT__MASK)
#define TEXDESC_CONFIG0_ROUND_UV				0x00080000
#define TEXDESC_CONFIG0_ADDRESSING_MODE__MASK			0x00300000
#define TEXDESC_CONFIG0_ADDRESSING_MODE__SHIFT			20
#define TEXDESC_CONFIG0_ADDRESSING_MODE(x)			(((x) << TEXDESC_CONFIG0_ADDRESSING_MODE__SHIFT) & TEXDESC_CONFIG0_ADDRESSING_MODE__MASK)
#define TEXDESC_CONFIG0_ENDIAN__MASK				0x00c00000
#define TEXDESC_CONFIG0_ENDIAN__SHIFT				22
#define TEXDESC_CONFIG0_ENDIAN(x)				(((x) << TEXDESC_CONFIG0_ENDIAN__SHIFT) & TEXDESC_CONFIG0_ENDIAN__MASK)
#define TEXDESC_CONFIG0_ANISOTROPY__MASK			0xff000000
#define TEXDESC_CONFIG0_ANISOTROPY__SHIFT			24
#define TEXDESC_CONFIG0_ANISOTROPY(x)				(((x) << TEXDESC_CONFIG0_ANISOTROPY__SHIFT) & TEXDESC_CONFIG0_ANISOTROPY__MASK)

#define TEXDESC_SIZE						0x00000044
#define TEXDESC_SIZE_WIDTH__MASK				0x0000ffff
#define TEXDESC_SIZE_WIDTH__SHIFT				0
#define TEXDESC_SIZE_WIDTH(x)					(((x) << TEXDESC_SIZE_WIDTH__SHIFT) & TEXDESC_SIZE_WIDTH__MASK)
#define TEXDESC_SIZE_HEIGHT__MASK				0xffff0000
#define TEXDESC_SIZE_HEIGHT__SHIFT				16
#define TEXDESC_SIZE_HEIGHT(x)					(((x) << TEXDESC_SIZE_HEIGHT__SHIFT) & TEXDESC_SIZE_HEIGHT__MASK)

#define TEXDESC_LINEAR_STRIDE					0x00000048

#define TEXDESC_CONFIG1						0x0000004c
#define TEXDESC_CONFIG1_FORMAT_EXT__MASK			0x0000003f
#define TEXDESC_CONFIG1_FORMAT_EXT__SHIFT			0
#define TEXDESC_CONFIG1_FORMAT_EXT(x)				(((x) << TEXDESC_CONFIG1_FORMAT_EXT__SHIFT) & TEXDESC_CONFIG1_FORMAT_EXT__MASK)
#define TEXDESC_CONFIG1_SWIZZLE_R__MASK				0x00000700
#define TEXDESC_CONFIG1_SWIZZLE_R__SHIFT			8
#define TEXDESC_CONFIG1_SWIZZLE_R(x)				(((x) << TEXDESC_CONFIG1_SWIZZLE_R__SHIFT) & TEXDESC_CONFIG1_SWIZZLE_R__MASK)
#define TEXDESC_CONFIG1_SWIZZLE_G__MASK				0x00007000
#define TEXDESC_CONFIG1_SWIZZLE_G__SHIFT			12
#define TEXDESC_CONFIG1_SWIZZLE_G(x)				(((x) << TEXDESC_CONFIG1_SWIZZLE_G__SHIFT) & TEXDESC_CONFIG1_SWIZZLE_G__MASK)
#define TEXDESC_CONFIG1_SWIZZLE_B__MASK				0x00070000
#define TEXDESC_CONFIG1_SWIZZLE_B__SHIFT			16
#define TEXDESC_CONFIG1_SWIZZLE_B(x)				(((x) << TEXDESC_CONFIG1_SWIZZLE_B__SHIFT) & TEXDESC_CONFIG1_SWIZZLE_B__MASK)
#define TEXDESC_CONFIG1_SWIZZLE_A__MASK				0x00700000
#define TEXDESC_CONFIG1_SWIZZLE_A__SHIFT			20
#define TEXDESC_CONFIG1_SWIZZLE_A(x)				(((x) << TEXDESC_CONFIG1_SWIZZLE_A__SHIFT) & TEXDESC_CONFIG1_SWIZZLE_A__MASK)
#define TEXDESC_CONFIG1_TS_MODE__MASK				0x00800000
#define TEXDESC_CONFIG1_TS_MODE__SHIFT				23
#define TEXDESC_CONFIG1_TS_MODE(x)				(((x) << TEXDESC_CONFIG1_TS_MODE__SHIFT) & TEXDESC_CONFIG1_TS_MODE__MASK)
#define TEXDESC_CONFIG1_TEXTURE_ARRAY				0x01000000
#define TEXDESC_CONFIG1_SEAMLESS_CUBE_MAP			0x02000000
#define TEXDESC_CONFIG1_HALIGN__MASK				0x1c000000
#define TEXDESC_CONFIG1_HALIGN__SHIFT				26
#define TEXDESC_CONFIG1_HALIGN(x)				(((x) << TEXDESC_CONFIG1_HALIGN__SHIFT) & TEXDESC_CONFIG1_HALIGN__MASK)
#define TEXDESC_CONFIG1_USE_TS					0x40000000

#define TEXDESC_CONTROL_YUV					0x00000050

#define TEXDESC_STRIDE_YUV					0x00000054

#define TEXDESC_ASTC0						0x00000058
#define TEXDESC_ASTC0_ASTC_FORMAT__MASK				0x0000000f
#define TEXDESC_ASTC0_ASTC_FORMAT__SHIFT			0
#define TEXDESC_ASTC0_ASTC_FORMAT(x)				(((x) << TEXDESC_ASTC0_ASTC_FORMAT__SHIFT) & TEXDESC_ASTC0_ASTC_FORMAT__MASK)
#define TEXDESC_ASTC0_ASTC_SRGB					0x00000010
#define TEXDESC_ASTC0_UNK8__MASK				0x0000ff00
#define TEXDESC_ASTC0_UNK8__SHIFT				8
#define TEXDESC_ASTC0_UNK8(x)					(((x) << TEXDESC_ASTC0_UNK8__SHIFT) & TEXDESC_ASTC0_UNK8__MASK)
#define TEXDESC_ASTC0_UNK16__MASK				0x00ff0000
#define TEXDESC_ASTC0_UNK16__SHIFT				16
#define TEXDESC_ASTC0_UNK16(x)					(((x) << TEXDESC_ASTC0_UNK16__SHIFT) & TEXDESC_ASTC0_UNK16__MASK)
#define TEXDESC_ASTC0_UNK24__MASK				0xff000000
#define TEXDESC_ASTC0_UNK24__SHIFT				24
#define TEXDESC_ASTC0_UNK24(x)					(((x) << TEXDESC_ASTC0_UNK24__SHIFT) & TEXDESC_ASTC0_UNK24__MASK)

#define TEXDESC_ASTC1						0x0000005c

#define TEXDESC_ASTC2						0x00000060

#define TEXDESC_ASTC3						0x00000064

#define TEXDESC_BASELOD						0x00000068
#define TEXDESC_BASELOD_UNK23					0x00800000
#define TEXDESC_BASELOD_BASELOD__MASK				0x0000000f
#define TEXDESC_BASELOD_BASELOD__SHIFT				0
#define TEXDESC_BASELOD_BASELOD(x)				(((x) << TEXDESC_BASELOD_BASELOD__SHIFT) & TEXDESC_BASELOD_BASELOD__MASK)
#define TEXDESC_BASELOD_MAXLOD__MASK				0x00000f00
#define TEXDESC_BASELOD_MAXLOD__SHIFT				8
#define TEXDESC_BASELOD_MAXLOD(x)				(((x) << TEXDESC_BASELOD_MAXLOD__SHIFT) & TEXDESC_BASELOD_MAXLOD__MASK)

#define TEXDESC_CONFIG2						0x0000006c

#define TEXDESC_CONFIG3						0x00000070

#define TEXDESC_LOG_SIZE_EXT					0x00000074
#define TEXDESC_LOG_SIZE_EXT_WIDTH__MASK			0x0000ffff
#define TEXDESC_LOG_SIZE_EXT_WIDTH__SHIFT			0
#define TEXDESC_LOG_SIZE_EXT_WIDTH(x)				(((x) << TEXDESC_LOG_SIZE_EXT_WIDTH__SHIFT) & TEXDESC_LOG_SIZE_EXT_WIDTH__MASK)
#define TEXDESC_LOG_SIZE_EXT_HEIGHT__MASK			0xffff0000
#define TEXDESC_LOG_SIZE_EXT_HEIGHT__SHIFT			16
#define TEXDESC_LOG_SIZE_EXT_HEIGHT(x)				(((x) << TEXDESC_LOG_SIZE_EXT_HEIGHT__SHIFT) & TEXDESC_LOG_SIZE_EXT_HEIGHT__MASK)

#define TEXDESC_VOLUME						0x00000078

#define TEXDESC_SLICE						0x0000007c

#define TEXDESC_BORDER_COLOR					0x00000080

#define TEXDESC_3D_CONFIG					0x00000084
#define TEXDESC_3D_CONFIG_DEPTH__MASK				0x00003fff
#define TEXDESC_3D_CONFIG_DEPTH__SHIFT				0
#define TEXDESC_3D_CONFIG_DEPTH(x)				(((x) << TEXDESC_3D_CONFIG_DEPTH__SHIFT) & TEXDESC_3D_CONFIG_DEPTH__MASK)
#define TEXDESC_3D_CONFIG_LOG_DEPTH__MASK			0x03ff0000
#define TEXDESC_3D_CONFIG_LOG_DEPTH__SHIFT			16
#define TEXDESC_3D_CONFIG_LOG_DEPTH(x)				(((x) << TEXDESC_3D_CONFIG_LOG_DEPTH__SHIFT) & TEXDESC_3D_CONFIG_LOG_DEPTH__MASK)
#define TEXDESC_3D_CONFIG_WRAP__MASK				0x30000000
#define TEXDESC_3D_CONFIG_WRAP__SHIFT				28
#define TEXDESC_3D_CONFIG_WRAP(x)				(((x) << TEXDESC_3D_CONFIG_WRAP__SHIFT) & TEXDESC_3D_CONFIG_WRAP__MASK)

#define TEXDESC_LOG_SIZE					0x00000088
#define TEXDESC_LOG_SIZE_WIDTH__MASK				0x000003ff
#define TEXDESC_LOG_SIZE_WIDTH__SHIFT				0
#define TEXDESC_LOG_SIZE_WIDTH(x)				(((x) << TEXDESC_LOG_SIZE_WIDTH__SHIFT) & TEXDESC_LOG_SIZE_WIDTH__MASK)
#define TEXDESC_LOG_SIZE_HEIGHT__MASK				0x000ffc00
#define TEXDESC_LOG_SIZE_HEIGHT__SHIFT				10
#define TEXDESC_LOG_SIZE_HEIGHT(x)				(((x) << TEXDESC_LOG_SIZE_HEIGHT__SHIFT) & TEXDESC_LOG_SIZE_HEIGHT__MASK)
#define TEXDESC_LOG_SIZE_ASTC					0x10000000
#define TEXDESC_LOG_SIZE_RGB					0x20000000
#define TEXDESC_LOG_SIZE_SRGB					0x80000000

#define TEXDESC_BORDER_COLOR_R					0x0000008c

#define TEXDESC_BORDER_COLOR_G					0x00000090

#define TEXDESC_BORDER_COLOR_B					0x00000094

#define TEXDESC_BORDER_COLOR_A					0x00000098


#endif /* TEXDESC_3D_XML */
