#ifndef STATE_2D_XML
#define STATE_2D_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:
- state.xml     (  18940 bytes, from 2016-09-06 14:14:12)
- common.xml    (  20583 bytes, from 2016-09-06 14:14:12)
- state_hi.xml  (  25653 bytes, from 2016-09-06 14:45:17)
- copyright.xml (   1597 bytes, from 2016-09-06 14:44:16)
- state_2d.xml  (  51552 bytes, from 2016-09-06 14:44:16)
- state_3d.xml  (  54603 bytes, from 2016-09-06 14:44:16)
- state_vg.xml  (   5975 bytes, from 2016-09-06 14:44:16)

Copyright (C) 2012-2016 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 DE_FORMAT_X4R4G4B4					0x00000000
#define DE_FORMAT_A4R4G4B4					0x00000001
#define DE_FORMAT_X1R5G5B5					0x00000002
#define DE_FORMAT_A1R5G5B5					0x00000003
#define DE_FORMAT_R5G6B5					0x00000004
#define DE_FORMAT_X8R8G8B8					0x00000005
#define DE_FORMAT_A8R8G8B8					0x00000006
#define DE_FORMAT_YUY2						0x00000007
#define DE_FORMAT_UYVY						0x00000008
#define DE_FORMAT_INDEX8					0x00000009
#define DE_FORMAT_MONOCHROME					0x0000000a
#define DE_FORMAT_YV12						0x0000000f
#define DE_FORMAT_A8						0x00000010
#define DE_FORMAT_NV12						0x00000011
#define DE_FORMAT_NV16						0x00000012
#define DE_FORMAT_RG16						0x00000013
#define DE_SWIZZLE_ARGB						0x00000000
#define DE_SWIZZLE_RGBA						0x00000001
#define DE_SWIZZLE_ABGR						0x00000002
#define DE_SWIZZLE_BGRA						0x00000003
#define DE_BLENDMODE_ZERO					0x00000000
#define DE_BLENDMODE_ONE					0x00000001
#define DE_BLENDMODE_NORMAL					0x00000002
#define DE_BLENDMODE_INVERSED					0x00000003
#define DE_BLENDMODE_COLOR					0x00000004
#define DE_BLENDMODE_COLOR_INVERSED				0x00000005
#define DE_BLENDMODE_SATURATED_ALPHA				0x00000006
#define DE_BLENDMODE_SATURATED_DEST_ALPHA			0x00000007
#define DE_COMPONENT_BLUE					0x00000000
#define DE_COMPONENT_GREEN					0x00000001
#define DE_COMPONENT_RED					0x00000002
#define DE_COMPONENT_ALPHA					0x00000003
#define DE_ROT_MODE_ROT0					0x00000000
#define DE_ROT_MODE_FLIP_X					0x00000001
#define DE_ROT_MODE_FLIP_Y					0x00000002
#define DE_ROT_MODE_ROT90					0x00000004
#define DE_ROT_MODE_ROT180					0x00000005
#define DE_ROT_MODE_ROT270					0x00000006
#define DE_MIRROR_MODE_NONE					0x00000000
#define DE_MIRROR_MODE_MIRROR_X					0x00000001
#define DE_MIRROR_MODE_MIRROR_Y					0x00000002
#define DE_MIRROR_MODE_MIRROR_XY				0x00000003
#define DE_COLOR_BLUE__MASK					0x000000ff
#define DE_COLOR_BLUE__SHIFT					0
#define DE_COLOR_BLUE(x)					(((x) << DE_COLOR_BLUE__SHIFT) & DE_COLOR_BLUE__MASK)
#define DE_COLOR_GREEN__MASK					0x0000ff00
#define DE_COLOR_GREEN__SHIFT					8
#define DE_COLOR_GREEN(x)					(((x) << DE_COLOR_GREEN__SHIFT) & DE_COLOR_GREEN__MASK)
#define DE_COLOR_RED__MASK					0x00ff0000
#define DE_COLOR_RED__SHIFT					16
#define DE_COLOR_RED(x)						(((x) << DE_COLOR_RED__SHIFT) & DE_COLOR_RED__MASK)
#define DE_COLOR_ALPHA__MASK					0xff000000
#define DE_COLOR_ALPHA__SHIFT					24
#define DE_COLOR_ALPHA(x)					(((x) << DE_COLOR_ALPHA__SHIFT) & DE_COLOR_ALPHA__MASK)
#define VIVS_DE							0x00000000

#define VIVS_DE_SRC_ADDRESS					0x00001200

#define VIVS_DE_SRC_STRIDE					0x00001204
#define VIVS_DE_SRC_STRIDE_STRIDE__MASK				0x0003ffff
#define VIVS_DE_SRC_STRIDE_STRIDE__SHIFT			0
#define VIVS_DE_SRC_STRIDE_STRIDE(x)				(((x) << VIVS_DE_SRC_STRIDE_STRIDE__SHIFT) & VIVS_DE_SRC_STRIDE_STRIDE__MASK)

#define VIVS_DE_SRC_ROTATION_CONFIG				0x00001208
#define VIVS_DE_SRC_ROTATION_CONFIG_WIDTH__MASK			0x0000ffff
#define VIVS_DE_SRC_ROTATION_CONFIG_WIDTH__SHIFT		0
#define VIVS_DE_SRC_ROTATION_CONFIG_WIDTH(x)			(((x) << VIVS_DE_SRC_ROTATION_CONFIG_WIDTH__SHIFT) & VIVS_DE_SRC_ROTATION_CONFIG_WIDTH__MASK)
#define VIVS_DE_SRC_ROTATION_CONFIG_ROTATION__MASK		0x00010000
#define VIVS_DE_SRC_ROTATION_CONFIG_ROTATION__SHIFT		16
#define VIVS_DE_SRC_ROTATION_CONFIG_ROTATION_DISABLE		0x00000000
#define VIVS_DE_SRC_ROTATION_CONFIG_ROTATION_ENABLE		0x00010000

#define VIVS_DE_SRC_CONFIG					0x0000120c
#define VIVS_DE_SRC_CONFIG_PE10_SOURCE_FORMAT__MASK		0x0000000f
#define VIVS_DE_SRC_CONFIG_PE10_SOURCE_FORMAT__SHIFT		0
#define VIVS_DE_SRC_CONFIG_PE10_SOURCE_FORMAT(x)		(((x) << VIVS_DE_SRC_CONFIG_PE10_SOURCE_FORMAT__SHIFT) & VIVS_DE_SRC_CONFIG_PE10_SOURCE_FORMAT__MASK)
#define VIVS_DE_SRC_CONFIG_TRANSPARENCY__MASK			0x00000030
#define VIVS_DE_SRC_CONFIG_TRANSPARENCY__SHIFT			4
#define VIVS_DE_SRC_CONFIG_TRANSPARENCY(x)			(((x) << VIVS_DE_SRC_CONFIG_TRANSPARENCY__SHIFT) & VIVS_DE_SRC_CONFIG_TRANSPARENCY__MASK)
#define VIVS_DE_SRC_CONFIG_SRC_RELATIVE__MASK			0x00000040
#define VIVS_DE_SRC_CONFIG_SRC_RELATIVE__SHIFT			6
#define VIVS_DE_SRC_CONFIG_SRC_RELATIVE_ABSOLUTE		0x00000000
#define VIVS_DE_SRC_CONFIG_SRC_RELATIVE_RELATIVE		0x00000040
#define VIVS_DE_SRC_CONFIG_TILED__MASK				0x00000080
#define VIVS_DE_SRC_CONFIG_TILED__SHIFT				7
#define VIVS_DE_SRC_CONFIG_TILED_DISABLE			0x00000000
#define VIVS_DE_SRC_CONFIG_TILED_ENABLE				0x00000080
#define VIVS_DE_SRC_CONFIG_LOCATION__MASK			0x00000100
#define VIVS_DE_SRC_CONFIG_LOCATION__SHIFT			8
#define VIVS_DE_SRC_CONFIG_LOCATION_MEMORY			0x00000000
#define VIVS_DE_SRC_CONFIG_LOCATION_STREAM			0x00000100
#define VIVS_DE_SRC_CONFIG_PACK__MASK				0x00003000
#define VIVS_DE_SRC_CONFIG_PACK__SHIFT				12
#define VIVS_DE_SRC_CONFIG_PACK_PACKED8				0x00000000
#define VIVS_DE_SRC_CONFIG_PACK_PACKED16			0x00001000
#define VIVS_DE_SRC_CONFIG_PACK_PACKED32			0x00002000
#define VIVS_DE_SRC_CONFIG_PACK_UNPACKED			0x00003000
#define VIVS_DE_SRC_CONFIG_MONO_TRANSPARENCY__MASK		0x00008000
#define VIVS_DE_SRC_CONFIG_MONO_TRANSPARENCY__SHIFT		15
#define VIVS_DE_SRC_CONFIG_MONO_TRANSPARENCY_BACKGROUND		0x00000000
#define VIVS_DE_SRC_CONFIG_MONO_TRANSPARENCY_FOREGROUND		0x00008000
#define VIVS_DE_SRC_CONFIG_UNK16				0x00010000
#define VIVS_DE_SRC_CONFIG_SWIZZLE__MASK			0x00300000
#define VIVS_DE_SRC_CONFIG_SWIZZLE__SHIFT			20
#define VIVS_DE_SRC_CONFIG_SWIZZLE(x)				(((x) << VIVS_DE_SRC_CONFIG_SWIZZLE__SHIFT) & VIVS_DE_SRC_CONFIG_SWIZZLE__MASK)
#define VIVS_DE_SRC_CONFIG_SOURCE_FORMAT__MASK			0x1f000000
#define VIVS_DE_SRC_CONFIG_SOURCE_FORMAT__SHIFT			24
#define VIVS_DE_SRC_CONFIG_SOURCE_FORMAT(x)			(((x) << VIVS_DE_SRC_CONFIG_SOURCE_FORMAT__SHIFT) & VIVS_DE_SRC_CONFIG_SOURCE_FORMAT__MASK)
#define VIVS_DE_SRC_CONFIG_DISABLE420_L2_CACHE			0x20000000
#define VIVS_DE_SRC_CONFIG_ENDIAN_CONTROL__MASK			0xc0000000
#define VIVS_DE_SRC_CONFIG_ENDIAN_CONTROL__SHIFT		30
#define VIVS_DE_SRC_CONFIG_ENDIAN_CONTROL(x)			(((x) << VIVS_DE_SRC_CONFIG_ENDIAN_CONTROL__SHIFT) & VIVS_DE_SRC_CONFIG_ENDIAN_CONTROL__MASK)

#define VIVS_DE_SRC_ORIGIN					0x00001210
#define VIVS_DE_SRC_ORIGIN_X__MASK				0x0000ffff
#define VIVS_DE_SRC_ORIGIN_X__SHIFT				0
#define VIVS_DE_SRC_ORIGIN_X(x)					(((x) << VIVS_DE_SRC_ORIGIN_X__SHIFT) & VIVS_DE_SRC_ORIGIN_X__MASK)
#define VIVS_DE_SRC_ORIGIN_Y__MASK				0xffff0000
#define VIVS_DE_SRC_ORIGIN_Y__SHIFT				16
#define VIVS_DE_SRC_ORIGIN_Y(x)					(((x) << VIVS_DE_SRC_ORIGIN_Y__SHIFT) & VIVS_DE_SRC_ORIGIN_Y__MASK)

#define VIVS_DE_SRC_SIZE					0x00001214
#define VIVS_DE_SRC_SIZE_X__MASK				0x0000ffff
#define VIVS_DE_SRC_SIZE_X__SHIFT				0
#define VIVS_DE_SRC_SIZE_X(x)					(((x) << VIVS_DE_SRC_SIZE_X__SHIFT) & VIVS_DE_SRC_SIZE_X__MASK)
#define VIVS_DE_SRC_SIZE_Y__MASK				0xffff0000
#define VIVS_DE_SRC_SIZE_Y__SHIFT				16
#define VIVS_DE_SRC_SIZE_Y(x)					(((x) << VIVS_DE_SRC_SIZE_Y__SHIFT) & VIVS_DE_SRC_SIZE_Y__MASK)

#define VIVS_DE_SRC_COLOR_BG					0x00001218

#define VIVS_DE_SRC_COLOR_FG					0x0000121c

#define VIVS_DE_STRETCH_FACTOR_LOW				0x00001220
#define VIVS_DE_STRETCH_FACTOR_LOW_X__MASK			0x7fffffff
#define VIVS_DE_STRETCH_FACTOR_LOW_X__SHIFT			0
#define VIVS_DE_STRETCH_FACTOR_LOW_X(x)				(((x) << VIVS_DE_STRETCH_FACTOR_LOW_X__SHIFT) & VIVS_DE_STRETCH_FACTOR_LOW_X__MASK)

#define VIVS_DE_STRETCH_FACTOR_HIGH				0x00001224
#define VIVS_DE_STRETCH_FACTOR_HIGH_Y__MASK			0x7fffffff
#define VIVS_DE_STRETCH_FACTOR_HIGH_Y__SHIFT			0
#define VIVS_DE_STRETCH_FACTOR_HIGH_Y(x)			(((x) << VIVS_DE_STRETCH_FACTOR_HIGH_Y__SHIFT) & VIVS_DE_STRETCH_FACTOR_HIGH_Y__MASK)

#define VIVS_DE_DEST_ADDRESS					0x00001228

#define VIVS_DE_DEST_STRIDE					0x0000122c
#define VIVS_DE_DEST_STRIDE_STRIDE__MASK			0x0003ffff
#define VIVS_DE_DEST_STRIDE_STRIDE__SHIFT			0
#define VIVS_DE_DEST_STRIDE_STRIDE(x)				(((x) << VIVS_DE_DEST_STRIDE_STRIDE__SHIFT) & VIVS_DE_DEST_STRIDE_STRIDE__MASK)

#define VIVS_DE_DEST_ROTATION_CONFIG				0x00001230
#define VIVS_DE_DEST_ROTATION_CONFIG_WIDTH__MASK		0x0000ffff
#define VIVS_DE_DEST_ROTATION_CONFIG_WIDTH__SHIFT		0
#define VIVS_DE_DEST_ROTATION_CONFIG_WIDTH(x)			(((x) << VIVS_DE_DEST_ROTATION_CONFIG_WIDTH__SHIFT) & VIVS_DE_DEST_ROTATION_CONFIG_WIDTH__MASK)
#define VIVS_DE_DEST_ROTATION_CONFIG_ROTATION__MASK		0x00010000
#define VIVS_DE_DEST_ROTATION_CONFIG_ROTATION__SHIFT		16
#define VIVS_DE_DEST_ROTATION_CONFIG_ROTATION_DISABLE		0x00000000
#define VIVS_DE_DEST_ROTATION_CONFIG_ROTATION_ENABLE		0x00010000

#define VIVS_DE_DEST_CONFIG					0x00001234
#define VIVS_DE_DEST_CONFIG_FORMAT__MASK			0x0000001f
#define VIVS_DE_DEST_CONFIG_FORMAT__SHIFT			0
#define VIVS_DE_DEST_CONFIG_FORMAT(x)				(((x) << VIVS_DE_DEST_CONFIG_FORMAT__SHIFT) & VIVS_DE_DEST_CONFIG_FORMAT__MASK)
#define VIVS_DE_DEST_CONFIG_TILED__MASK				0x00000100
#define VIVS_DE_DEST_CONFIG_TILED__SHIFT			8
#define VIVS_DE_DEST_CONFIG_TILED_DISABLE			0x00000000
#define VIVS_DE_DEST_CONFIG_TILED_ENABLE			0x00000100
#define VIVS_DE_DEST_CONFIG_COMMAND__MASK			0x0000f000
#define VIVS_DE_DEST_CONFIG_COMMAND__SHIFT			12
#define VIVS_DE_DEST_CONFIG_COMMAND_CLEAR			0x00000000
#define VIVS_DE_DEST_CONFIG_COMMAND_LINE			0x00001000
#define VIVS_DE_DEST_CONFIG_COMMAND_BIT_BLT			0x00002000
#define VIVS_DE_DEST_CONFIG_COMMAND_BIT_BLT_REVERSED		0x00003000
#define VIVS_DE_DEST_CONFIG_COMMAND_STRETCH_BLT			0x00004000
#define VIVS_DE_DEST_CONFIG_COMMAND_HOR_FILTER_BLT		0x00005000
#define VIVS_DE_DEST_CONFIG_COMMAND_VER_FILTER_BLT		0x00006000
#define VIVS_DE_DEST_CONFIG_COMMAND_ONE_PASS_FILTER_BLT		0x00007000
#define VIVS_DE_DEST_CONFIG_COMMAND_MULTI_SOURCE_BLT		0x00008000
#define VIVS_DE_DEST_CONFIG_SWIZZLE__MASK			0x00030000
#define VIVS_DE_DEST_CONFIG_SWIZZLE__SHIFT			16
#define VIVS_DE_DEST_CONFIG_SWIZZLE(x)				(((x) << VIVS_DE_DEST_CONFIG_SWIZZLE__SHIFT) & VIVS_DE_DEST_CONFIG_SWIZZLE__MASK)
#define VIVS_DE_DEST_CONFIG_ENDIAN_CONTROL__MASK		0x00300000
#define VIVS_DE_DEST_CONFIG_ENDIAN_CONTROL__SHIFT		20
#define VIVS_DE_DEST_CONFIG_ENDIAN_CONTROL(x)			(((x) << VIVS_DE_DEST_CONFIG_ENDIAN_CONTROL__SHIFT) & VIVS_DE_DEST_CONFIG_ENDIAN_CONTROL__MASK)
#define VIVS_DE_DEST_CONFIG_GDI_STRE__MASK			0x01000000
#define VIVS_DE_DEST_CONFIG_GDI_STRE__SHIFT			24
#define VIVS_DE_DEST_CONFIG_GDI_STRE_DISABLE			0x00000000
#define VIVS_DE_DEST_CONFIG_GDI_STRE_ENABLE			0x01000000
#define VIVS_DE_DEST_CONFIG_INTER_TILE_PER_FIX__MASK		0x02000000
#define VIVS_DE_DEST_CONFIG_INTER_TILE_PER_FIX__SHIFT		25
#define VIVS_DE_DEST_CONFIG_INTER_TILE_PER_FIX_DISABLED		0x02000000
#define VIVS_DE_DEST_CONFIG_INTER_TILE_PER_FIX_ENABLED		0x00000000
#define VIVS_DE_DEST_CONFIG_MINOR_TILED__MASK			0x04000000
#define VIVS_DE_DEST_CONFIG_MINOR_TILED__SHIFT			26
#define VIVS_DE_DEST_CONFIG_MINOR_TILED_DISABLE			0x00000000
#define VIVS_DE_DEST_CONFIG_MINOR_TILED_ENABLE			0x04000000

#define VIVS_DE_PATTERN_ADDRESS					0x00001238

#define VIVS_DE_PATTERN_CONFIG					0x0000123c
#define VIVS_DE_PATTERN_CONFIG_FORMAT__MASK			0x0000000f
#define VIVS_DE_PATTERN_CONFIG_FORMAT__SHIFT			0
#define VIVS_DE_PATTERN_CONFIG_FORMAT(x)			(((x) << VIVS_DE_PATTERN_CONFIG_FORMAT__SHIFT) & VIVS_DE_PATTERN_CONFIG_FORMAT__MASK)
#define VIVS_DE_PATTERN_CONFIG_TYPE__MASK			0x00000010
#define VIVS_DE_PATTERN_CONFIG_TYPE__SHIFT			4
#define VIVS_DE_PATTERN_CONFIG_TYPE_SOLID_COLOR			0x00000000
#define VIVS_DE_PATTERN_CONFIG_TYPE_PATTERN			0x00000010
#define VIVS_DE_PATTERN_CONFIG_COLOR_CONVERT__MASK		0x00000020
#define VIVS_DE_PATTERN_CONFIG_COLOR_CONVERT__SHIFT		5
#define VIVS_DE_PATTERN_CONFIG_COLOR_CONVERT_DISABLE		0x00000000
#define VIVS_DE_PATTERN_CONFIG_COLOR_CONVERT_ENABLE		0x00000020
#define VIVS_DE_PATTERN_CONFIG_INIT_TRIGGER__MASK		0x000000c0
#define VIVS_DE_PATTERN_CONFIG_INIT_TRIGGER__SHIFT		6
#define VIVS_DE_PATTERN_CONFIG_INIT_TRIGGER(x)			(((x) << VIVS_DE_PATTERN_CONFIG_INIT_TRIGGER__SHIFT) & VIVS_DE_PATTERN_CONFIG_INIT_TRIGGER__MASK)
#define VIVS_DE_PATTERN_CONFIG_ORIGIN_X__MASK			0x00070000
#define VIVS_DE_PATTERN_CONFIG_ORIGIN_X__SHIFT			16
#define VIVS_DE_PATTERN_CONFIG_ORIGIN_X(x)			(((x) << VIVS_DE_PATTERN_CONFIG_ORIGIN_X__SHIFT) & VIVS_DE_PATTERN_CONFIG_ORIGIN_X__MASK)
#define VIVS_DE_PATTERN_CONFIG_ORIGIN_Y__MASK			0x00700000
#define VIVS_DE_PATTERN_CONFIG_ORIGIN_Y__SHIFT			20
#define VIVS_DE_PATTERN_CONFIG_ORIGIN_Y(x)			(((x) << VIVS_DE_PATTERN_CONFIG_ORIGIN_Y__SHIFT) & VIVS_DE_PATTERN_CONFIG_ORIGIN_Y__MASK)

#define VIVS_DE_PATTERN_LOW					0x00001240

#define VIVS_DE_PATTERN_HIGH					0x00001244

#define VIVS_DE_PATTERN_MASK_LOW				0x00001248

#define VIVS_DE_PATTERN_MASK_HIGH				0x0000124c

#define VIVS_DE_PATTERN_BG_COLOR				0x00001250

#define VIVS_DE_PATTERN_FG_COLOR				0x00001254

#define VIVS_DE_ROP						0x0000125c
#define VIVS_DE_ROP_ROP_FG__MASK				0x000000ff
#define VIVS_DE_ROP_ROP_FG__SHIFT				0
#define VIVS_DE_ROP_ROP_FG(x)					(((x) << VIVS_DE_ROP_ROP_FG__SHIFT) & VIVS_DE_ROP_ROP_FG__MASK)
#define VIVS_DE_ROP_ROP_BG__MASK				0x0000ff00
#define VIVS_DE_ROP_ROP_BG__SHIFT				8
#define VIVS_DE_ROP_ROP_BG(x)					(((x) << VIVS_DE_ROP_ROP_BG__SHIFT) & VIVS_DE_ROP_ROP_BG__MASK)
#define VIVS_DE_ROP_TYPE__MASK					0x00300000
#define VIVS_DE_ROP_TYPE__SHIFT					20
#define VIVS_DE_ROP_TYPE_ROP2_PATTERN				0x00000000
#define VIVS_DE_ROP_TYPE_ROP2_SOURCE				0x00100000
#define VIVS_DE_ROP_TYPE_ROP3					0x00200000
#define VIVS_DE_ROP_TYPE_ROP4					0x00300000

#define VIVS_DE_CLIP_TOP_LEFT					0x00001260
#define VIVS_DE_CLIP_TOP_LEFT_X__MASK				0x00007fff
#define VIVS_DE_CLIP_TOP_LEFT_X__SHIFT				0
#define VIVS_DE_CLIP_TOP_LEFT_X(x)				(((x) << VIVS_DE_CLIP_TOP_LEFT_X__SHIFT) & VIVS_DE_CLIP_TOP_LEFT_X__MASK)
#define VIVS_DE_CLIP_TOP_LEFT_Y__MASK				0x7fff0000
#define VIVS_DE_CLIP_TOP_LEFT_Y__SHIFT				16
#define VIVS_DE_CLIP_TOP_LEFT_Y(x)				(((x) << VIVS_DE_CLIP_TOP_LEFT_Y__SHIFT) & VIVS_DE_CLIP_TOP_LEFT_Y__MASK)

#define VIVS_DE_CLIP_BOTTOM_RIGHT				0x00001264
#define VIVS_DE_CLIP_BOTTOM_RIGHT_X__MASK			0x00007fff
#define VIVS_DE_CLIP_BOTTOM_RIGHT_X__SHIFT			0
#define VIVS_DE_CLIP_BOTTOM_RIGHT_X(x)				(((x) << VIVS_DE_CLIP_BOTTOM_RIGHT_X__SHIFT) & VIVS_DE_CLIP_BOTTOM_RIGHT_X__MASK)
#define VIVS_DE_CLIP_BOTTOM_RIGHT_Y__MASK			0x7fff0000
#define VIVS_DE_CLIP_BOTTOM_RIGHT_Y__SHIFT			16
#define VIVS_DE_CLIP_BOTTOM_RIGHT_Y(x)				(((x) << VIVS_DE_CLIP_BOTTOM_RIGHT_Y__SHIFT) & VIVS_DE_CLIP_BOTTOM_RIGHT_Y__MASK)

#define VIVS_DE_CLEAR_BYTE_MASK					0x00001268

#define VIVS_DE_CONFIG						0x0000126c
#define VIVS_DE_CONFIG_MIRROR_BLT_ENABLE__MASK			0x00000001
#define VIVS_DE_CONFIG_MIRROR_BLT_ENABLE__SHIFT			0
#define VIVS_DE_CONFIG_MIRROR_BLT_ENABLE_OFF			0x00000000
#define VIVS_DE_CONFIG_MIRROR_BLT_ENABLE_ON			0x00000001
#define VIVS_DE_CONFIG_MIRROR_BLT_MODE__MASK			0x00000030
#define VIVS_DE_CONFIG_MIRROR_BLT_MODE__SHIFT			4
#define VIVS_DE_CONFIG_MIRROR_BLT_MODE_NORMAL			0x00000000
#define VIVS_DE_CONFIG_MIRROR_BLT_MODE_HMIRROR			0x00000010
#define VIVS_DE_CONFIG_MIRROR_BLT_MODE_VMIRROR			0x00000020
#define VIVS_DE_CONFIG_MIRROR_BLT_MODE_FULL_MIRROR		0x00000030
#define VIVS_DE_CONFIG_SOURCE_SELECT__MASK			0x00070000
#define VIVS_DE_CONFIG_SOURCE_SELECT__SHIFT			16
#define VIVS_DE_CONFIG_SOURCE_SELECT(x)				(((x) << VIVS_DE_CONFIG_SOURCE_SELECT__SHIFT) & VIVS_DE_CONFIG_SOURCE_SELECT__MASK)
#define VIVS_DE_CONFIG_DESTINATION_SELECT__MASK			0x00300000
#define VIVS_DE_CONFIG_DESTINATION_SELECT__SHIFT		20
#define VIVS_DE_CONFIG_DESTINATION_SELECT(x)			(((x) << VIVS_DE_CONFIG_DESTINATION_SELECT__SHIFT) & VIVS_DE_CONFIG_DESTINATION_SELECT__MASK)

#define VIVS_DE_CLEAR_PIXEL_VALUE_LOW				0x00001270

#define VIVS_DE_CLEAR_PIXEL_VALUE_HIGH				0x00001274

#define VIVS_DE_SRC_ORIGIN_FRACTION				0x00001278
#define VIVS_DE_SRC_ORIGIN_FRACTION_X__MASK			0x0000ffff
#define VIVS_DE_SRC_ORIGIN_FRACTION_X__SHIFT			0
#define VIVS_DE_SRC_ORIGIN_FRACTION_X(x)			(((x) << VIVS_DE_SRC_ORIGIN_FRACTION_X__SHIFT) & VIVS_DE_SRC_ORIGIN_FRACTION_X__MASK)
#define VIVS_DE_SRC_ORIGIN_FRACTION_Y__MASK			0xffff0000
#define VIVS_DE_SRC_ORIGIN_FRACTION_Y__SHIFT			16
#define VIVS_DE_SRC_ORIGIN_FRACTION_Y(x)			(((x) << VIVS_DE_SRC_ORIGIN_FRACTION_Y__SHIFT) & VIVS_DE_SRC_ORIGIN_FRACTION_Y__MASK)

#define VIVS_DE_ALPHA_CONTROL					0x0000127c
#define VIVS_DE_ALPHA_CONTROL_ENABLE__MASK			0x00000001
#define VIVS_DE_ALPHA_CONTROL_ENABLE__SHIFT			0
#define VIVS_DE_ALPHA_CONTROL_ENABLE_OFF			0x00000000
#define VIVS_DE_ALPHA_CONTROL_ENABLE_ON				0x00000001
#define VIVS_DE_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA__MASK	0x00ff0000
#define VIVS_DE_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA__SHIFT	16
#define VIVS_DE_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA(x)		(((x) << VIVS_DE_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA__SHIFT) & VIVS_DE_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA__MASK)
#define VIVS_DE_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA__MASK	0xff000000
#define VIVS_DE_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA__SHIFT	24
#define VIVS_DE_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA(x)		(((x) << VIVS_DE_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA__SHIFT) & VIVS_DE_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA__MASK)

#define VIVS_DE_ALPHA_MODES					0x00001280
#define VIVS_DE_ALPHA_MODES_SRC_ALPHA_MODE__MASK		0x00000001
#define VIVS_DE_ALPHA_MODES_SRC_ALPHA_MODE__SHIFT		0
#define VIVS_DE_ALPHA_MODES_SRC_ALPHA_MODE_NORMAL		0x00000000
#define VIVS_DE_ALPHA_MODES_SRC_ALPHA_MODE_INVERSED		0x00000001
#define VIVS_DE_ALPHA_MODES_DST_ALPHA_MODE__MASK		0x00000010
#define VIVS_DE_ALPHA_MODES_DST_ALPHA_MODE__SHIFT		4
#define VIVS_DE_ALPHA_MODES_DST_ALPHA_MODE_NORMAL		0x00000000
#define VIVS_DE_ALPHA_MODES_DST_ALPHA_MODE_INVERSED		0x00000010
#define VIVS_DE_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE__MASK		0x00000300
#define VIVS_DE_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE__SHIFT	8
#define VIVS_DE_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE_NORMAL	0x00000000
#define VIVS_DE_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE_GLOBAL	0x00000100
#define VIVS_DE_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE_SCALED	0x00000200
#define VIVS_DE_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE__MASK		0x00003000
#define VIVS_DE_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE__SHIFT	12
#define VIVS_DE_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE_NORMAL	0x00000000
#define VIVS_DE_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE_GLOBAL	0x00001000
#define VIVS_DE_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE_SCALED	0x00002000
#define VIVS_DE_ALPHA_MODES_PE10_SRC_COLOR_MULTIPLY__MASK	0x00010000
#define VIVS_DE_ALPHA_MODES_PE10_SRC_COLOR_MULTIPLY__SHIFT	16
#define VIVS_DE_ALPHA_MODES_PE10_SRC_COLOR_MULTIPLY_DISABLE	0x00000000
#define VIVS_DE_ALPHA_MODES_PE10_SRC_COLOR_MULTIPLY_ENABLE	0x00010000
#define VIVS_DE_ALPHA_MODES_PE10_DST_COLOR_MULTIPLY__MASK	0x00100000
#define VIVS_DE_ALPHA_MODES_PE10_DST_COLOR_MULTIPLY__SHIFT	20
#define VIVS_DE_ALPHA_MODES_PE10_DST_COLOR_MULTIPLY_DISABLE	0x00000000
#define VIVS_DE_ALPHA_MODES_PE10_DST_COLOR_MULTIPLY_ENABLE	0x00100000
#define VIVS_DE_ALPHA_MODES_SRC_BLENDING_MODE__MASK		0x07000000
#define VIVS_DE_ALPHA_MODES_SRC_BLENDING_MODE__SHIFT		24
#define VIVS_DE_ALPHA_MODES_SRC_BLENDING_MODE(x)		(((x) << VIVS_DE_ALPHA_MODES_SRC_BLENDING_MODE__SHIFT) & VIVS_DE_ALPHA_MODES_SRC_BLENDING_MODE__MASK)
#define VIVS_DE_ALPHA_MODES_SRC_ALPHA_FACTOR__MASK		0x08000000
#define VIVS_DE_ALPHA_MODES_SRC_ALPHA_FACTOR__SHIFT		27
#define VIVS_DE_ALPHA_MODES_SRC_ALPHA_FACTOR_DISABLE		0x00000000
#define VIVS_DE_ALPHA_MODES_SRC_ALPHA_FACTOR_ENABLE		0x08000000
#define VIVS_DE_ALPHA_MODES_DST_BLENDING_MODE__MASK		0x70000000
#define VIVS_DE_ALPHA_MODES_DST_BLENDING_MODE__SHIFT		28
#define VIVS_DE_ALPHA_MODES_DST_BLENDING_MODE(x)		(((x) << VIVS_DE_ALPHA_MODES_DST_BLENDING_MODE__SHIFT) & VIVS_DE_ALPHA_MODES_DST_BLENDING_MODE__MASK)
#define VIVS_DE_ALPHA_MODES_DST_ALPHA_FACTOR__MASK		0x80000000
#define VIVS_DE_ALPHA_MODES_DST_ALPHA_FACTOR__SHIFT		31
#define VIVS_DE_ALPHA_MODES_DST_ALPHA_FACTOR_DISABLE		0x00000000
#define VIVS_DE_ALPHA_MODES_DST_ALPHA_FACTOR_ENABLE		0x80000000

#define VIVS_DE_UPLANE_ADDRESS					0x00001284

#define VIVS_DE_UPLANE_STRIDE					0x00001288
#define VIVS_DE_UPLANE_STRIDE_STRIDE__MASK			0x0003ffff
#define VIVS_DE_UPLANE_STRIDE_STRIDE__SHIFT			0
#define VIVS_DE_UPLANE_STRIDE_STRIDE(x)				(((x) << VIVS_DE_UPLANE_STRIDE_STRIDE__SHIFT) & VIVS_DE_UPLANE_STRIDE_STRIDE__MASK)

#define VIVS_DE_VPLANE_ADDRESS					0x0000128c

#define VIVS_DE_VPLANE_STRIDE					0x00001290
#define VIVS_DE_VPLANE_STRIDE_STRIDE__MASK			0x0003ffff
#define VIVS_DE_VPLANE_STRIDE_STRIDE__SHIFT			0
#define VIVS_DE_VPLANE_STRIDE_STRIDE(x)				(((x) << VIVS_DE_VPLANE_STRIDE_STRIDE__SHIFT) & VIVS_DE_VPLANE_STRIDE_STRIDE__MASK)

#define VIVS_DE_VR_CONFIG					0x00001294
#define VIVS_DE_VR_CONFIG_START__MASK				0x00000003
#define VIVS_DE_VR_CONFIG_START__SHIFT				0
#define VIVS_DE_VR_CONFIG_START_HORIZONTAL_BLIT			0x00000000
#define VIVS_DE_VR_CONFIG_START_VERTICAL_BLIT			0x00000001
#define VIVS_DE_VR_CONFIG_START_ONE_PASS_BLIT			0x00000002
#define VIVS_DE_VR_CONFIG_START_MASK				0x00000008

#define VIVS_DE_VR_SOURCE_IMAGE_LOW				0x00001298
#define VIVS_DE_VR_SOURCE_IMAGE_LOW_LEFT__MASK			0x0000ffff
#define VIVS_DE_VR_SOURCE_IMAGE_LOW_LEFT__SHIFT			0
#define VIVS_DE_VR_SOURCE_IMAGE_LOW_LEFT(x)			(((x) << VIVS_DE_VR_SOURCE_IMAGE_LOW_LEFT__SHIFT) & VIVS_DE_VR_SOURCE_IMAGE_LOW_LEFT__MASK)
#define VIVS_DE_VR_SOURCE_IMAGE_LOW_TOP__MASK			0xffff0000
#define VIVS_DE_VR_SOURCE_IMAGE_LOW_TOP__SHIFT			16
#define VIVS_DE_VR_SOURCE_IMAGE_LOW_TOP(x)			(((x) << VIVS_DE_VR_SOURCE_IMAGE_LOW_TOP__SHIFT) & VIVS_DE_VR_SOURCE_IMAGE_LOW_TOP__MASK)

#define VIVS_DE_VR_SOURCE_IMAGE_HIGH				0x0000129c
#define VIVS_DE_VR_SOURCE_IMAGE_HIGH_RIGHT__MASK		0x0000ffff
#define VIVS_DE_VR_SOURCE_IMAGE_HIGH_RIGHT__SHIFT		0
#define VIVS_DE_VR_SOURCE_IMAGE_HIGH_RIGHT(x)			(((x) << VIVS_DE_VR_SOURCE_IMAGE_HIGH_RIGHT__SHIFT) & VIVS_DE_VR_SOURCE_IMAGE_HIGH_RIGHT__MASK)
#define VIVS_DE_VR_SOURCE_IMAGE_HIGH_BOTTOM__MASK		0xffff0000
#define VIVS_DE_VR_SOURCE_IMAGE_HIGH_BOTTOM__SHIFT		16
#define VIVS_DE_VR_SOURCE_IMAGE_HIGH_BOTTOM(x)			(((x) << VIVS_DE_VR_SOURCE_IMAGE_HIGH_BOTTOM__SHIFT) & VIVS_DE_VR_SOURCE_IMAGE_HIGH_BOTTOM__MASK)

#define VIVS_DE_VR_SOURCE_ORIGIN_LOW				0x000012a0
#define VIVS_DE_VR_SOURCE_ORIGIN_LOW_X__MASK			0xffffffff
#define VIVS_DE_VR_SOURCE_ORIGIN_LOW_X__SHIFT			0
#define VIVS_DE_VR_SOURCE_ORIGIN_LOW_X(x)			(((x) << VIVS_DE_VR_SOURCE_ORIGIN_LOW_X__SHIFT) & VIVS_DE_VR_SOURCE_ORIGIN_LOW_X__MASK)

#define VIVS_DE_VR_SOURCE_ORIGIN_HIGH				0x000012a4
#define VIVS_DE_VR_SOURCE_ORIGIN_HIGH_Y__MASK			0xffffffff
#define VIVS_DE_VR_SOURCE_ORIGIN_HIGH_Y__SHIFT			0
#define VIVS_DE_VR_SOURCE_ORIGIN_HIGH_Y(x)			(((x) << VIVS_DE_VR_SOURCE_ORIGIN_HIGH_Y__SHIFT) & VIVS_DE_VR_SOURCE_ORIGIN_HIGH_Y__MASK)

#define VIVS_DE_VR_TARGET_WINDOW_LOW				0x000012a8
#define VIVS_DE_VR_TARGET_WINDOW_LOW_LEFT__MASK			0x0000ffff
#define VIVS_DE_VR_TARGET_WINDOW_LOW_LEFT__SHIFT		0
#define VIVS_DE_VR_TARGET_WINDOW_LOW_LEFT(x)			(((x) << VIVS_DE_VR_TARGET_WINDOW_LOW_LEFT__SHIFT) & VIVS_DE_VR_TARGET_WINDOW_LOW_LEFT__MASK)
#define VIVS_DE_VR_TARGET_WINDOW_LOW_TOP__MASK			0xffff0000
#define VIVS_DE_VR_TARGET_WINDOW_LOW_TOP__SHIFT			16
#define VIVS_DE_VR_TARGET_WINDOW_LOW_TOP(x)			(((x) << VIVS_DE_VR_TARGET_WINDOW_LOW_TOP__SHIFT) & VIVS_DE_VR_TARGET_WINDOW_LOW_TOP__MASK)

#define VIVS_DE_VR_TARGET_WINDOW_HIGH				0x000012ac
#define VIVS_DE_VR_TARGET_WINDOW_HIGH_RIGHT__MASK		0x0000ffff
#define VIVS_DE_VR_TARGET_WINDOW_HIGH_RIGHT__SHIFT		0
#define VIVS_DE_VR_TARGET_WINDOW_HIGH_RIGHT(x)			(((x) << VIVS_DE_VR_TARGET_WINDOW_HIGH_RIGHT__SHIFT) & VIVS_DE_VR_TARGET_WINDOW_HIGH_RIGHT__MASK)
#define VIVS_DE_VR_TARGET_WINDOW_HIGH_BOTTOM__MASK		0xffff0000
#define VIVS_DE_VR_TARGET_WINDOW_HIGH_BOTTOM__SHIFT		16
#define VIVS_DE_VR_TARGET_WINDOW_HIGH_BOTTOM(x)			(((x) << VIVS_DE_VR_TARGET_WINDOW_HIGH_BOTTOM__SHIFT) & VIVS_DE_VR_TARGET_WINDOW_HIGH_BOTTOM__MASK)

#define VIVS_DE_PE_CONFIG					0x000012b0
#define VIVS_DE_PE_CONFIG_DESTINATION_FETCH__MASK		0x00000003
#define VIVS_DE_PE_CONFIG_DESTINATION_FETCH__SHIFT		0
#define VIVS_DE_PE_CONFIG_DESTINATION_FETCH_DISABLE		0x00000000
#define VIVS_DE_PE_CONFIG_DESTINATION_FETCH_DEFAULT		0x00000001
#define VIVS_DE_PE_CONFIG_DESTINATION_FETCH_ALWAYS		0x00000002
#define VIVS_DE_PE_CONFIG_DESTINATION_FETCH_MASK		0x00000008

#define VIVS_DE_DEST_ROTATION_HEIGHT				0x000012b4
#define VIVS_DE_DEST_ROTATION_HEIGHT_HEIGHT__MASK		0x0000ffff
#define VIVS_DE_DEST_ROTATION_HEIGHT_HEIGHT__SHIFT		0
#define VIVS_DE_DEST_ROTATION_HEIGHT_HEIGHT(x)			(((x) << VIVS_DE_DEST_ROTATION_HEIGHT_HEIGHT__SHIFT) & VIVS_DE_DEST_ROTATION_HEIGHT_HEIGHT__MASK)

#define VIVS_DE_SRC_ROTATION_HEIGHT				0x000012b8
#define VIVS_DE_SRC_ROTATION_HEIGHT_HEIGHT__MASK		0x0000ffff
#define VIVS_DE_SRC_ROTATION_HEIGHT_HEIGHT__SHIFT		0
#define VIVS_DE_SRC_ROTATION_HEIGHT_HEIGHT(x)			(((x) << VIVS_DE_SRC_ROTATION_HEIGHT_HEIGHT__SHIFT) & VIVS_DE_SRC_ROTATION_HEIGHT_HEIGHT__MASK)

#define VIVS_DE_ROT_ANGLE					0x000012bc
#define VIVS_DE_ROT_ANGLE_SRC__MASK				0x00000007
#define VIVS_DE_ROT_ANGLE_SRC__SHIFT				0
#define VIVS_DE_ROT_ANGLE_SRC(x)				(((x) << VIVS_DE_ROT_ANGLE_SRC__SHIFT) & VIVS_DE_ROT_ANGLE_SRC__MASK)
#define VIVS_DE_ROT_ANGLE_DST__MASK				0x00000038
#define VIVS_DE_ROT_ANGLE_DST__SHIFT				3
#define VIVS_DE_ROT_ANGLE_DST(x)				(((x) << VIVS_DE_ROT_ANGLE_DST__SHIFT) & VIVS_DE_ROT_ANGLE_DST__MASK)
#define VIVS_DE_ROT_ANGLE_SRC_MASK				0x00000100
#define VIVS_DE_ROT_ANGLE_DST_MASK				0x00000200
#define VIVS_DE_ROT_ANGLE_SRC_MIRROR__MASK			0x00003000
#define VIVS_DE_ROT_ANGLE_SRC_MIRROR__SHIFT			12
#define VIVS_DE_ROT_ANGLE_SRC_MIRROR(x)				(((x) << VIVS_DE_ROT_ANGLE_SRC_MIRROR__SHIFT) & VIVS_DE_ROT_ANGLE_SRC_MIRROR__MASK)
#define VIVS_DE_ROT_ANGLE_SRC_MIRROR_MASK			0x00008000
#define VIVS_DE_ROT_ANGLE_DST_MIRROR__MASK			0x00030000
#define VIVS_DE_ROT_ANGLE_DST_MIRROR__SHIFT			16
#define VIVS_DE_ROT_ANGLE_DST_MIRROR(x)				(((x) << VIVS_DE_ROT_ANGLE_DST_MIRROR__SHIFT) & VIVS_DE_ROT_ANGLE_DST_MIRROR__MASK)
#define VIVS_DE_ROT_ANGLE_DST_MIRROR_MASK			0x00080000

#define VIVS_DE_CLEAR_PIXEL_VALUE32				0x000012c0

#define VIVS_DE_DEST_COLOR_KEY					0x000012c4

#define VIVS_DE_GLOBAL_SRC_COLOR				0x000012c8

#define VIVS_DE_GLOBAL_DEST_COLOR				0x000012cc

#define VIVS_DE_COLOR_MULTIPLY_MODES				0x000012d0
#define VIVS_DE_COLOR_MULTIPLY_MODES_SRC_PREMULTIPLY__MASK	0x00000001
#define VIVS_DE_COLOR_MULTIPLY_MODES_SRC_PREMULTIPLY__SHIFT	0
#define VIVS_DE_COLOR_MULTIPLY_MODES_SRC_PREMULTIPLY_DISABLE	0x00000000
#define VIVS_DE_COLOR_MULTIPLY_MODES_SRC_PREMULTIPLY_ENABLE	0x00000001
#define VIVS_DE_COLOR_MULTIPLY_MODES_DST_PREMULTIPLY__MASK	0x00000010
#define VIVS_DE_COLOR_MULTIPLY_MODES_DST_PREMULTIPLY__SHIFT	4
#define VIVS_DE_COLOR_MULTIPLY_MODES_DST_PREMULTIPLY_DISABLE	0x00000000
#define VIVS_DE_COLOR_MULTIPLY_MODES_DST_PREMULTIPLY_ENABLE	0x00000010
#define VIVS_DE_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY__MASK	0x00000300
#define VIVS_DE_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY__SHIFT	8
#define VIVS_DE_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY_DISABLE	0x00000000
#define VIVS_DE_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY_ALPHA	0x00000100
#define VIVS_DE_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY_COLOR	0x00000200
#define VIVS_DE_COLOR_MULTIPLY_MODES_DST_DEMULTIPLY__MASK	0x00100000
#define VIVS_DE_COLOR_MULTIPLY_MODES_DST_DEMULTIPLY__SHIFT	20
#define VIVS_DE_COLOR_MULTIPLY_MODES_DST_DEMULTIPLY_DISABLE	0x00000000
#define VIVS_DE_COLOR_MULTIPLY_MODES_DST_DEMULTIPLY_ENABLE	0x00100000

#define VIVS_DE_PE_TRANSPARENCY					0x000012d4
#define VIVS_DE_PE_TRANSPARENCY_SOURCE__MASK			0x00000003
#define VIVS_DE_PE_TRANSPARENCY_SOURCE__SHIFT			0
#define VIVS_DE_PE_TRANSPARENCY_SOURCE_OPAQUE			0x00000000
#define VIVS_DE_PE_TRANSPARENCY_SOURCE_MASK			0x00000001
#define VIVS_DE_PE_TRANSPARENCY_SOURCE_KEY			0x00000002
#define VIVS_DE_PE_TRANSPARENCY_PATTERN__MASK			0x00000030
#define VIVS_DE_PE_TRANSPARENCY_PATTERN__SHIFT			4
#define VIVS_DE_PE_TRANSPARENCY_PATTERN_OPAQUE			0x00000000
#define VIVS_DE_PE_TRANSPARENCY_PATTERN_MASK			0x00000010
#define VIVS_DE_PE_TRANSPARENCY_PATTERN_KEY			0x00000020
#define VIVS_DE_PE_TRANSPARENCY_DESTINATION__MASK		0x00000300
#define VIVS_DE_PE_TRANSPARENCY_DESTINATION__SHIFT		8
#define VIVS_DE_PE_TRANSPARENCY_DESTINATION_OPAQUE		0x00000000
#define VIVS_DE_PE_TRANSPARENCY_DESTINATION_MASK		0x00000100
#define VIVS_DE_PE_TRANSPARENCY_DESTINATION_KEY			0x00000200
#define VIVS_DE_PE_TRANSPARENCY_TRANSPARENCY_MASK		0x00001000
#define VIVS_DE_PE_TRANSPARENCY_USE_SRC_OVERRIDE__MASK		0x00030000
#define VIVS_DE_PE_TRANSPARENCY_USE_SRC_OVERRIDE__SHIFT		16
#define VIVS_DE_PE_TRANSPARENCY_USE_SRC_OVERRIDE_DEFAULT	0x00000000
#define VIVS_DE_PE_TRANSPARENCY_USE_SRC_OVERRIDE_USE_ENABLE	0x00010000
#define VIVS_DE_PE_TRANSPARENCY_USE_SRC_OVERRIDE_USE_DISABLE	0x00020000
#define VIVS_DE_PE_TRANSPARENCY_USE_PAT_OVERRIDE__MASK		0x00300000
#define VIVS_DE_PE_TRANSPARENCY_USE_PAT_OVERRIDE__SHIFT		20
#define VIVS_DE_PE_TRANSPARENCY_USE_PAT_OVERRIDE_DEFAULT	0x00000000
#define VIVS_DE_PE_TRANSPARENCY_USE_PAT_OVERRIDE_USE_ENABLE	0x00100000
#define VIVS_DE_PE_TRANSPARENCY_USE_PAT_OVERRIDE_USE_DISABLE	0x00200000
#define VIVS_DE_PE_TRANSPARENCY_USE_DST_OVERRIDE__MASK		0x03000000
#define VIVS_DE_PE_TRANSPARENCY_USE_DST_OVERRIDE__SHIFT		24
#define VIVS_DE_PE_TRANSPARENCY_USE_DST_OVERRIDE_DEFAULT	0x00000000
#define VIVS_DE_PE_TRANSPARENCY_USE_DST_OVERRIDE_USE_ENABLE	0x01000000
#define VIVS_DE_PE_TRANSPARENCY_USE_DST_OVERRIDE_USE_DISABLE	0x02000000
#define VIVS_DE_PE_TRANSPARENCY_RESOURCE_OVERRIDE_MASK		0x10000000
#define VIVS_DE_PE_TRANSPARENCY_DFB_COLOR_KEY__MASK		0x20000000
#define VIVS_DE_PE_TRANSPARENCY_DFB_COLOR_KEY__SHIFT		29
#define VIVS_DE_PE_TRANSPARENCY_DFB_COLOR_KEY_DISABLE		0x00000000
#define VIVS_DE_PE_TRANSPARENCY_DFB_COLOR_KEY_ENABLE		0x20000000
#define VIVS_DE_PE_TRANSPARENCY_DFB_COLOR_KEY_MASK		0x80000000

#define VIVS_DE_PE_CONTROL					0x000012d8
#define VIVS_DE_PE_CONTROL_YUV__MASK				0x00000001
#define VIVS_DE_PE_CONTROL_YUV__SHIFT				0
#define VIVS_DE_PE_CONTROL_YUV_601				0x00000000
#define VIVS_DE_PE_CONTROL_YUV_709				0x00000001
#define VIVS_DE_PE_CONTROL_YUV_MASK				0x00000008
#define VIVS_DE_PE_CONTROL_UV_SWIZZLE__MASK			0x00000010
#define VIVS_DE_PE_CONTROL_UV_SWIZZLE__SHIFT			4
#define VIVS_DE_PE_CONTROL_UV_SWIZZLE_UV			0x00000000
#define VIVS_DE_PE_CONTROL_UV_SWIZZLE_VU			0x00000010
#define VIVS_DE_PE_CONTROL_UV_SWIZZLE_MASK			0x00000080
#define VIVS_DE_PE_CONTROL_YUVRGB__MASK				0x00000100
#define VIVS_DE_PE_CONTROL_YUVRGB__SHIFT			8
#define VIVS_DE_PE_CONTROL_YUVRGB_DISABLE			0x00000000
#define VIVS_DE_PE_CONTROL_YUVRGB_ENABLE			0x00000100
#define VIVS_DE_PE_CONTROL_YUVRGB_MASK				0x00000800

#define VIVS_DE_SRC_COLOR_KEY_HIGH				0x000012dc

#define VIVS_DE_DEST_COLOR_KEY_HIGH				0x000012e0

#define VIVS_DE_VR_CONFIG_EX					0x000012e4
#define VIVS_DE_VR_CONFIG_EX_VERTICAL_LINE_WIDTH__MASK		0x00000003
#define VIVS_DE_VR_CONFIG_EX_VERTICAL_LINE_WIDTH__SHIFT		0
#define VIVS_DE_VR_CONFIG_EX_VERTICAL_LINE_WIDTH_AUTO		0x00000000
#define VIVS_DE_VR_CONFIG_EX_VERTICAL_LINE_WIDTH_PIXELS16	0x00000001
#define VIVS_DE_VR_CONFIG_EX_VERTICAL_LINE_WIDTH_PIXELS32	0x00000002
#define VIVS_DE_VR_CONFIG_EX_VERTICAL_LINE_WIDTH_MASK		0x00000008
#define VIVS_DE_VR_CONFIG_EX_FILTER_TAP__MASK			0x000000f0
#define VIVS_DE_VR_CONFIG_EX_FILTER_TAP__SHIFT			4
#define VIVS_DE_VR_CONFIG_EX_FILTER_TAP(x)			(((x) << VIVS_DE_VR_CONFIG_EX_FILTER_TAP__SHIFT) & VIVS_DE_VR_CONFIG_EX_FILTER_TAP__MASK)
#define VIVS_DE_VR_CONFIG_EX_FILTER_TAP_MASK			0x00000100

#define VIVS_DE_PE_DITHER_LOW					0x000012e8
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X0_Y0__MASK			0x0000000f
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X0_Y0__SHIFT		0
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X0_Y0(x)			(((x) << VIVS_DE_PE_DITHER_LOW_PIXEL_X0_Y0__SHIFT) & VIVS_DE_PE_DITHER_LOW_PIXEL_X0_Y0__MASK)
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X1_Y0__MASK			0x000000f0
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X1_Y0__SHIFT		4
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X1_Y0(x)			(((x) << VIVS_DE_PE_DITHER_LOW_PIXEL_X1_Y0__SHIFT) & VIVS_DE_PE_DITHER_LOW_PIXEL_X1_Y0__MASK)
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X2_Y0__MASK			0x00000f00
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X2_Y0__SHIFT		8
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X2_Y0(x)			(((x) << VIVS_DE_PE_DITHER_LOW_PIXEL_X2_Y0__SHIFT) & VIVS_DE_PE_DITHER_LOW_PIXEL_X2_Y0__MASK)
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X3_Y0__MASK			0x0000f000
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X3_Y0__SHIFT		12
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X3_Y0(x)			(((x) << VIVS_DE_PE_DITHER_LOW_PIXEL_X3_Y0__SHIFT) & VIVS_DE_PE_DITHER_LOW_PIXEL_X3_Y0__MASK)
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X0_Y1__MASK			0x000f0000
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X0_Y1__SHIFT		16
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X0_Y1(x)			(((x) << VIVS_DE_PE_DITHER_LOW_PIXEL_X0_Y1__SHIFT) & VIVS_DE_PE_DITHER_LOW_PIXEL_X0_Y1__MASK)
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X1_Y1__MASK			0x00f00000
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X1_Y1__SHIFT		20
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X1_Y1(x)			(((x) << VIVS_DE_PE_DITHER_LOW_PIXEL_X1_Y1__SHIFT) & VIVS_DE_PE_DITHER_LOW_PIXEL_X1_Y1__MASK)
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X2_Y1__MASK			0x0f000000
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X2_Y1__SHIFT		24
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X2_Y1(x)			(((x) << VIVS_DE_PE_DITHER_LOW_PIXEL_X2_Y1__SHIFT) & VIVS_DE_PE_DITHER_LOW_PIXEL_X2_Y1__MASK)
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X3_Y1__MASK			0xf0000000
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X3_Y1__SHIFT		28
#define VIVS_DE_PE_DITHER_LOW_PIXEL_X3_Y1(x)			(((x) << VIVS_DE_PE_DITHER_LOW_PIXEL_X3_Y1__SHIFT) & VIVS_DE_PE_DITHER_LOW_PIXEL_X3_Y1__MASK)

#define VIVS_DE_PE_DITHER_HIGH					0x000012ec
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X0_Y2__MASK		0x0000000f
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X0_Y2__SHIFT		0
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X0_Y2(x)			(((x) << VIVS_DE_PE_DITHER_HIGH_PIXEL_X0_Y2__SHIFT) & VIVS_DE_PE_DITHER_HIGH_PIXEL_X0_Y2__MASK)
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X1_Y2__MASK		0x000000f0
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X1_Y2__SHIFT		4
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X1_Y2(x)			(((x) << VIVS_DE_PE_DITHER_HIGH_PIXEL_X1_Y2__SHIFT) & VIVS_DE_PE_DITHER_HIGH_PIXEL_X1_Y2__MASK)
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X2_Y2__MASK		0x00000f00
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X2_Y2__SHIFT		8
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X2_Y2(x)			(((x) << VIVS_DE_PE_DITHER_HIGH_PIXEL_X2_Y2__SHIFT) & VIVS_DE_PE_DITHER_HIGH_PIXEL_X2_Y2__MASK)
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X3_Y2__MASK		0x0000f000
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X3_Y2__SHIFT		12
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X3_Y2(x)			(((x) << VIVS_DE_PE_DITHER_HIGH_PIXEL_X3_Y2__SHIFT) & VIVS_DE_PE_DITHER_HIGH_PIXEL_X3_Y2__MASK)
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X0_Y3__MASK		0x000f0000
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X0_Y3__SHIFT		16
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X0_Y3(x)			(((x) << VIVS_DE_PE_DITHER_HIGH_PIXEL_X0_Y3__SHIFT) & VIVS_DE_PE_DITHER_HIGH_PIXEL_X0_Y3__MASK)
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X1_Y3__MASK		0x00f00000
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X1_Y3__SHIFT		20
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X1_Y3(x)			(((x) << VIVS_DE_PE_DITHER_HIGH_PIXEL_X1_Y3__SHIFT) & VIVS_DE_PE_DITHER_HIGH_PIXEL_X1_Y3__MASK)
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X2_Y3__MASK		0x0f000000
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X2_Y3__SHIFT		24
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X2_Y3(x)			(((x) << VIVS_DE_PE_DITHER_HIGH_PIXEL_X2_Y3__SHIFT) & VIVS_DE_PE_DITHER_HIGH_PIXEL_X2_Y3__MASK)
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X3_Y3__MASK		0xf0000000
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X3_Y3__SHIFT		28
#define VIVS_DE_PE_DITHER_HIGH_PIXEL_X3_Y3(x)			(((x) << VIVS_DE_PE_DITHER_HIGH_PIXEL_X3_Y3__SHIFT) & VIVS_DE_PE_DITHER_HIGH_PIXEL_X3_Y3__MASK)

#define VIVS_DE_BW_CONFIG					0x000012f0
#define VIVS_DE_BW_CONFIG_BLOCK_CONFIG__MASK			0x00000001
#define VIVS_DE_BW_CONFIG_BLOCK_CONFIG__SHIFT			0
#define VIVS_DE_BW_CONFIG_BLOCK_CONFIG_AUTO			0x00000000
#define VIVS_DE_BW_CONFIG_BLOCK_CONFIG_CUSTOMIZE		0x00000001
#define VIVS_DE_BW_CONFIG_BLOCK_CONFIG_MASK			0x00000008
#define VIVS_DE_BW_CONFIG_BLOCK_WALK_DIRECTION__MASK		0x00000010
#define VIVS_DE_BW_CONFIG_BLOCK_WALK_DIRECTION__SHIFT		4
#define VIVS_DE_BW_CONFIG_BLOCK_WALK_DIRECTION_RIGHT_BOTTOM	0x00000000
#define VIVS_DE_BW_CONFIG_BLOCK_WALK_DIRECTION_BOTTOM_RIGHT	0x00000010
#define VIVS_DE_BW_CONFIG_BLOCK_WALK_DIRECTION_MASK		0x00000080
#define VIVS_DE_BW_CONFIG_TILE_WALK_DIRECTION__MASK		0x00000100
#define VIVS_DE_BW_CONFIG_TILE_WALK_DIRECTION__SHIFT		8
#define VIVS_DE_BW_CONFIG_TILE_WALK_DIRECTION_RIGHT_BOTTOM	0x00000000
#define VIVS_DE_BW_CONFIG_TILE_WALK_DIRECTION_BOTTOM_RIGHT	0x00000100
#define VIVS_DE_BW_CONFIG_TILE_WALK_DIRECTION_MASK		0x00000800
#define VIVS_DE_BW_CONFIG_PIXEL_WALK_DIRECTION__MASK		0x00001000
#define VIVS_DE_BW_CONFIG_PIXEL_WALK_DIRECTION__SHIFT		12
#define VIVS_DE_BW_CONFIG_PIXEL_WALK_DIRECTION_RIGHT_BOTTOM	0x00000000
#define VIVS_DE_BW_CONFIG_PIXEL_WALK_DIRECTION_BOTTOM_RIGHT	0x00001000
#define VIVS_DE_BW_CONFIG_PIXEL_WALK_DIRECTION_MASK		0x00008000

#define VIVS_DE_BW_BLOCK_SIZE					0x000012f4
#define VIVS_DE_BW_BLOCK_SIZE_WIDTH__MASK			0x0000ffff
#define VIVS_DE_BW_BLOCK_SIZE_WIDTH__SHIFT			0
#define VIVS_DE_BW_BLOCK_SIZE_WIDTH(x)				(((x) << VIVS_DE_BW_BLOCK_SIZE_WIDTH__SHIFT) & VIVS_DE_BW_BLOCK_SIZE_WIDTH__MASK)
#define VIVS_DE_BW_BLOCK_SIZE_HEIGHT__MASK			0xffff0000
#define VIVS_DE_BW_BLOCK_SIZE_HEIGHT__SHIFT			16
#define VIVS_DE_BW_BLOCK_SIZE_HEIGHT(x)				(((x) << VIVS_DE_BW_BLOCK_SIZE_HEIGHT__SHIFT) & VIVS_DE_BW_BLOCK_SIZE_HEIGHT__MASK)

#define VIVS_DE_BW_TILE_SIZE					0x000012f8
#define VIVS_DE_BW_TILE_SIZE_WIDTH__MASK			0x0000ffff
#define VIVS_DE_BW_TILE_SIZE_WIDTH__SHIFT			0
#define VIVS_DE_BW_TILE_SIZE_WIDTH(x)				(((x) << VIVS_DE_BW_TILE_SIZE_WIDTH__SHIFT) & VIVS_DE_BW_TILE_SIZE_WIDTH__MASK)
#define VIVS_DE_BW_TILE_SIZE_HEIGHT__MASK			0xffff0000
#define VIVS_DE_BW_TILE_SIZE_HEIGHT__SHIFT			16
#define VIVS_DE_BW_TILE_SIZE_HEIGHT(x)				(((x) << VIVS_DE_BW_TILE_SIZE_HEIGHT__SHIFT) & VIVS_DE_BW_TILE_SIZE_HEIGHT__MASK)

#define VIVS_DE_BW_BLOCK_MASK					0x000012fc
#define VIVS_DE_BW_BLOCK_MASK_HORIZONTAL__MASK			0x0000ffff
#define VIVS_DE_BW_BLOCK_MASK_HORIZONTAL__SHIFT			0
#define VIVS_DE_BW_BLOCK_MASK_HORIZONTAL(x)			(((x) << VIVS_DE_BW_BLOCK_MASK_HORIZONTAL__SHIFT) & VIVS_DE_BW_BLOCK_MASK_HORIZONTAL__MASK)
#define VIVS_DE_BW_BLOCK_MASK_VERTICAL__MASK			0xffff0000
#define VIVS_DE_BW_BLOCK_MASK_VERTICAL__SHIFT			16
#define VIVS_DE_BW_BLOCK_MASK_VERTICAL(x)			(((x) << VIVS_DE_BW_BLOCK_MASK_VERTICAL__SHIFT) & VIVS_DE_BW_BLOCK_MASK_VERTICAL__MASK)

#define VIVS_DE_SRC_EX_CONFIG					0x00001300
#define VIVS_DE_SRC_EX_CONFIG_MULTI_TILED__MASK			0x00000001
#define VIVS_DE_SRC_EX_CONFIG_MULTI_TILED__SHIFT		0
#define VIVS_DE_SRC_EX_CONFIG_MULTI_TILED_DISABLE		0x00000000
#define VIVS_DE_SRC_EX_CONFIG_MULTI_TILED_ENABLE		0x00000001
#define VIVS_DE_SRC_EX_CONFIG_SUPER_TILED__MASK			0x00000008
#define VIVS_DE_SRC_EX_CONFIG_SUPER_TILED__SHIFT		3
#define VIVS_DE_SRC_EX_CONFIG_SUPER_TILED_DISABLE		0x00000000
#define VIVS_DE_SRC_EX_CONFIG_SUPER_TILED_ENABLE		0x00000008
#define VIVS_DE_SRC_EX_CONFIG_MINOR_TILED__MASK			0x00000100
#define VIVS_DE_SRC_EX_CONFIG_MINOR_TILED__SHIFT		8
#define VIVS_DE_SRC_EX_CONFIG_MINOR_TILED_DISABLE		0x00000000
#define VIVS_DE_SRC_EX_CONFIG_MINOR_TILED_ENABLE		0x00000100

#define VIVS_DE_SRC_EX_ADDRESS					0x00001304

#define VIVS_DE_DE_MULTI_SOURCE					0x00001308
#define VIVS_DE_DE_MULTI_SOURCE_MAX_SOURCE__MASK		0x00000007
#define VIVS_DE_DE_MULTI_SOURCE_MAX_SOURCE__SHIFT		0
#define VIVS_DE_DE_MULTI_SOURCE_MAX_SOURCE(x)			(((x) << VIVS_DE_DE_MULTI_SOURCE_MAX_SOURCE__SHIFT) & VIVS_DE_DE_MULTI_SOURCE_MAX_SOURCE__MASK)
#define VIVS_DE_DE_MULTI_SOURCE_HORIZONTAL_BLOCK__MASK		0x00000700
#define VIVS_DE_DE_MULTI_SOURCE_HORIZONTAL_BLOCK__SHIFT		8
#define VIVS_DE_DE_MULTI_SOURCE_HORIZONTAL_BLOCK_PIXEL16	0x00000000
#define VIVS_DE_DE_MULTI_SOURCE_HORIZONTAL_BLOCK_PIXEL32	0x00000100
#define VIVS_DE_DE_MULTI_SOURCE_HORIZONTAL_BLOCK_PIXEL64	0x00000200
#define VIVS_DE_DE_MULTI_SOURCE_HORIZONTAL_BLOCK_PIXEL128	0x00000300
#define VIVS_DE_DE_MULTI_SOURCE_HORIZONTAL_BLOCK_PIXEL256	0x00000400
#define VIVS_DE_DE_MULTI_SOURCE_HORIZONTAL_BLOCK_PIXEL512	0x00000500
#define VIVS_DE_DE_MULTI_SOURCE_VERTICAL_BLOCK__MASK		0x00070000
#define VIVS_DE_DE_MULTI_SOURCE_VERTICAL_BLOCK__SHIFT		16
#define VIVS_DE_DE_MULTI_SOURCE_VERTICAL_BLOCK_LINE1		0x00000000
#define VIVS_DE_DE_MULTI_SOURCE_VERTICAL_BLOCK_LINE2		0x00010000
#define VIVS_DE_DE_MULTI_SOURCE_VERTICAL_BLOCK_LINE4		0x00020000
#define VIVS_DE_DE_MULTI_SOURCE_VERTICAL_BLOCK_LINE8		0x00030000
#define VIVS_DE_DE_MULTI_SOURCE_VERTICAL_BLOCK_LINE16		0x00040000
#define VIVS_DE_DE_MULTI_SOURCE_VERTICAL_BLOCK_LINE32		0x00050000
#define VIVS_DE_DE_MULTI_SOURCE_VERTICAL_BLOCK_LINE64		0x00060000
#define VIVS_DE_DE_MULTI_SOURCE_VERTICAL_BLOCK_LINE128		0x00070000

#define VIVS_DE_DEYUV_CONVERSION				0x0000130c
#define VIVS_DE_DEYUV_CONVERSION_ENABLE__MASK			0x00000003
#define VIVS_DE_DEYUV_CONVERSION_ENABLE__SHIFT			0
#define VIVS_DE_DEYUV_CONVERSION_ENABLE_OFF			0x00000000
#define VIVS_DE_DEYUV_CONVERSION_ENABLE_PLANE1			0x00000001
#define VIVS_DE_DEYUV_CONVERSION_ENABLE_PLANE2			0x00000002
#define VIVS_DE_DEYUV_CONVERSION_ENABLE_PLANE3			0x00000003
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_COUNT__MASK		0x0000000c
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_COUNT__SHIFT		2
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_COUNT(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE1_COUNT__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE1_COUNT__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_COUNT__MASK		0x00000030
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_COUNT__SHIFT		4
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_COUNT(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE2_COUNT__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE2_COUNT__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_COUNT__MASK		0x000000c0
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_COUNT__SHIFT		6
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_COUNT(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE3_COUNT__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE3_COUNT__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_B__MASK		0x00000300
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_B__SHIFT	8
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_B(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_B__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_B__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_G__MASK		0x00000c00
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_G__SHIFT	10
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_G(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_G__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_G__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_R__MASK		0x00003000
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_R__SHIFT	12
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_R(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_R__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_R__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_A__MASK		0x0000c000
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_A__SHIFT	14
#define VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_A(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_A__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE1_SWIZZLE_A__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_B__MASK		0x00030000
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_B__SHIFT	16
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_B(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_B__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_B__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_G__MASK		0x000c0000
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_G__SHIFT	18
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_G(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_G__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_G__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_R__MASK		0x00300000
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_R__SHIFT	20
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_R(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_R__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_R__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_A__MASK		0x00c00000
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_A__SHIFT	22
#define VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_A(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_A__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE2_SWIZZLE_A__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_B__MASK		0x03000000
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_B__SHIFT	24
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_B(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_B__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_B__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_G__MASK		0x0c000000
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_G__SHIFT	26
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_G(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_G__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_G__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_R__MASK		0x30000000
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_R__SHIFT	28
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_R(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_R__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_R__MASK)
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_A__MASK		0xc0000000
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_A__SHIFT	30
#define VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_A(x)		(((x) << VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_A__SHIFT) & VIVS_DE_DEYUV_CONVERSION_PLANE3_SWIZZLE_A__MASK)

#define VIVS_DE_DE_PLANE2_ADDRESS				0x00001310

#define VIVS_DE_DE_PLANE2_STRIDE				0x00001314
#define VIVS_DE_DE_PLANE2_STRIDE_STRIDE__MASK			0x0003ffff
#define VIVS_DE_DE_PLANE2_STRIDE_STRIDE__SHIFT			0
#define VIVS_DE_DE_PLANE2_STRIDE_STRIDE(x)			(((x) << VIVS_DE_DE_PLANE2_STRIDE_STRIDE__SHIFT) & VIVS_DE_DE_PLANE2_STRIDE_STRIDE__MASK)

#define VIVS_DE_DE_PLANE3_ADDRESS				0x00001318

#define VIVS_DE_DE_PLANE3_STRIDE				0x0000131c
#define VIVS_DE_DE_PLANE3_STRIDE_STRIDE__MASK			0x0003ffff
#define VIVS_DE_DE_PLANE3_STRIDE_STRIDE__SHIFT			0
#define VIVS_DE_DE_PLANE3_STRIDE_STRIDE(x)			(((x) << VIVS_DE_DE_PLANE3_STRIDE_STRIDE__SHIFT) & VIVS_DE_DE_PLANE3_STRIDE_STRIDE__MASK)

#define VIVS_DE_DE_STALL_DE					0x00001320
#define VIVS_DE_DE_STALL_DE_ENABLE__MASK			0x00000001
#define VIVS_DE_DE_STALL_DE_ENABLE__SHIFT			0
#define VIVS_DE_DE_STALL_DE_ENABLE_DISABLE			0x00000000
#define VIVS_DE_DE_STALL_DE_ENABLE_ENABLE			0x00000001

#define VIVS_DE_FILTER_KERNEL(i0)			       (0x00001800 + 0x4*(i0))
#define VIVS_DE_FILTER_KERNEL__ESIZE				0x00000004
#define VIVS_DE_FILTER_KERNEL__LEN				0x00000080
#define VIVS_DE_FILTER_KERNEL_COEFFICIENT0__MASK		0x0000ffff
#define VIVS_DE_FILTER_KERNEL_COEFFICIENT0__SHIFT		0
#define VIVS_DE_FILTER_KERNEL_COEFFICIENT0(x)			(((x) << VIVS_DE_FILTER_KERNEL_COEFFICIENT0__SHIFT) & VIVS_DE_FILTER_KERNEL_COEFFICIENT0__MASK)
#define VIVS_DE_FILTER_KERNEL_COEFFICIENT1__MASK		0xffff0000
#define VIVS_DE_FILTER_KERNEL_COEFFICIENT1__SHIFT		16
#define VIVS_DE_FILTER_KERNEL_COEFFICIENT1(x)			(((x) << VIVS_DE_FILTER_KERNEL_COEFFICIENT1__SHIFT) & VIVS_DE_FILTER_KERNEL_COEFFICIENT1__MASK)

#define VIVS_DE_INDEX_COLOR_TABLE(i0)			       (0x00001c00 + 0x4*(i0))
#define VIVS_DE_INDEX_COLOR_TABLE__ESIZE			0x00000004
#define VIVS_DE_INDEX_COLOR_TABLE__LEN				0x00000100

#define VIVS_DE_HORI_FILTER_KERNEL(i0)			       (0x00002800 + 0x4*(i0))
#define VIVS_DE_HORI_FILTER_KERNEL__ESIZE			0x00000004
#define VIVS_DE_HORI_FILTER_KERNEL__LEN				0x00000080
#define VIVS_DE_HORI_FILTER_KERNEL_COEFFICIENT0__MASK		0x0000ffff
#define VIVS_DE_HORI_FILTER_KERNEL_COEFFICIENT0__SHIFT		0
#define VIVS_DE_HORI_FILTER_KERNEL_COEFFICIENT0(x)		(((x) << VIVS_DE_HORI_FILTER_KERNEL_COEFFICIENT0__SHIFT) & VIVS_DE_HORI_FILTER_KERNEL_COEFFICIENT0__MASK)
#define VIVS_DE_HORI_FILTER_KERNEL_COEFFICIENT1__MASK		0xffff0000
#define VIVS_DE_HORI_FILTER_KERNEL_COEFFICIENT1__SHIFT		16
#define VIVS_DE_HORI_FILTER_KERNEL_COEFFICIENT1(x)		(((x) << VIVS_DE_HORI_FILTER_KERNEL_COEFFICIENT1__SHIFT) & VIVS_DE_HORI_FILTER_KERNEL_COEFFICIENT1__MASK)

#define VIVS_DE_VERTI_FILTER_KERNEL(i0)			       (0x00002a00 + 0x4*(i0))
#define VIVS_DE_VERTI_FILTER_KERNEL__ESIZE			0x00000004
#define VIVS_DE_VERTI_FILTER_KERNEL__LEN			0x00000080
#define VIVS_DE_VERTI_FILTER_KERNEL_COEFFICIENT0__MASK		0x0000ffff
#define VIVS_DE_VERTI_FILTER_KERNEL_COEFFICIENT0__SHIFT		0
#define VIVS_DE_VERTI_FILTER_KERNEL_COEFFICIENT0(x)		(((x) << VIVS_DE_VERTI_FILTER_KERNEL_COEFFICIENT0__SHIFT) & VIVS_DE_VERTI_FILTER_KERNEL_COEFFICIENT0__MASK)
#define VIVS_DE_VERTI_FILTER_KERNEL_COEFFICIENT1__MASK		0xffff0000
#define VIVS_DE_VERTI_FILTER_KERNEL_COEFFICIENT1__SHIFT		16
#define VIVS_DE_VERTI_FILTER_KERNEL_COEFFICIENT1(x)		(((x) << VIVS_DE_VERTI_FILTER_KERNEL_COEFFICIENT1__SHIFT) & VIVS_DE_VERTI_FILTER_KERNEL_COEFFICIENT1__MASK)

#define VIVS_DE_INDEX_COLOR_TABLE32(i0)			       (0x00003400 + 0x4*(i0))
#define VIVS_DE_INDEX_COLOR_TABLE32__ESIZE			0x00000004
#define VIVS_DE_INDEX_COLOR_TABLE32__LEN			0x00000100

#define VIVS_DE_BLOCK4						0x00000000

#define VIVS_DE_BLOCK4_SRC_ADDRESS(i0)			       (0x00012800 + 0x4*(i0))
#define VIVS_DE_BLOCK4_SRC_ADDRESS__ESIZE			0x00000004
#define VIVS_DE_BLOCK4_SRC_ADDRESS__LEN				0x00000004

#define VIVS_DE_BLOCK4_SRC_STRIDE(i0)			       (0x00012810 + 0x4*(i0))
#define VIVS_DE_BLOCK4_SRC_STRIDE__ESIZE			0x00000004
#define VIVS_DE_BLOCK4_SRC_STRIDE__LEN				0x00000004
#define VIVS_DE_BLOCK4_SRC_STRIDE_STRIDE__MASK			0x0003ffff
#define VIVS_DE_BLOCK4_SRC_STRIDE_STRIDE__SHIFT			0
#define VIVS_DE_BLOCK4_SRC_STRIDE_STRIDE(x)			(((x) << VIVS_DE_BLOCK4_SRC_STRIDE_STRIDE__SHIFT) & VIVS_DE_BLOCK4_SRC_STRIDE_STRIDE__MASK)

#define VIVS_DE_BLOCK4_SRC_ROTATION_CONFIG(i0)		       (0x00012820 + 0x4*(i0))
#define VIVS_DE_BLOCK4_SRC_ROTATION_CONFIG__ESIZE		0x00000004
#define VIVS_DE_BLOCK4_SRC_ROTATION_CONFIG__LEN			0x00000004
#define VIVS_DE_BLOCK4_SRC_ROTATION_CONFIG_WIDTH__MASK		0x0000ffff
#define VIVS_DE_BLOCK4_SRC_ROTATION_CONFIG_WIDTH__SHIFT		0
#define VIVS_DE_BLOCK4_SRC_ROTATION_CONFIG_WIDTH(x)		(((x) << VIVS_DE_BLOCK4_SRC_ROTATION_CONFIG_WIDTH__SHIFT) & VIVS_DE_BLOCK4_SRC_ROTATION_CONFIG_WIDTH__MASK)
#define VIVS_DE_BLOCK4_SRC_ROTATION_CONFIG_ROTATION__MASK	0x00010000
#define VIVS_DE_BLOCK4_SRC_ROTATION_CONFIG_ROTATION__SHIFT	16
#define VIVS_DE_BLOCK4_SRC_ROTATION_CONFIG_ROTATION_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_SRC_ROTATION_CONFIG_ROTATION_ENABLE	0x00010000

#define VIVS_DE_BLOCK4_SRC_CONFIG(i0)			       (0x00012830 + 0x4*(i0))
#define VIVS_DE_BLOCK4_SRC_CONFIG__ESIZE			0x00000004
#define VIVS_DE_BLOCK4_SRC_CONFIG__LEN				0x00000004
#define VIVS_DE_BLOCK4_SRC_CONFIG_PE10_SOURCE_FORMAT__MASK	0x0000000f
#define VIVS_DE_BLOCK4_SRC_CONFIG_PE10_SOURCE_FORMAT__SHIFT	0
#define VIVS_DE_BLOCK4_SRC_CONFIG_PE10_SOURCE_FORMAT(x)		(((x) << VIVS_DE_BLOCK4_SRC_CONFIG_PE10_SOURCE_FORMAT__SHIFT) & VIVS_DE_BLOCK4_SRC_CONFIG_PE10_SOURCE_FORMAT__MASK)
#define VIVS_DE_BLOCK4_SRC_CONFIG_TRANSPARENCY__MASK		0x00000030
#define VIVS_DE_BLOCK4_SRC_CONFIG_TRANSPARENCY__SHIFT		4
#define VIVS_DE_BLOCK4_SRC_CONFIG_TRANSPARENCY(x)		(((x) << VIVS_DE_BLOCK4_SRC_CONFIG_TRANSPARENCY__SHIFT) & VIVS_DE_BLOCK4_SRC_CONFIG_TRANSPARENCY__MASK)
#define VIVS_DE_BLOCK4_SRC_CONFIG_SRC_RELATIVE__MASK		0x00000040
#define VIVS_DE_BLOCK4_SRC_CONFIG_SRC_RELATIVE__SHIFT		6
#define VIVS_DE_BLOCK4_SRC_CONFIG_SRC_RELATIVE_ABSOLUTE		0x00000000
#define VIVS_DE_BLOCK4_SRC_CONFIG_SRC_RELATIVE_RELATIVE		0x00000040
#define VIVS_DE_BLOCK4_SRC_CONFIG_TILED__MASK			0x00000080
#define VIVS_DE_BLOCK4_SRC_CONFIG_TILED__SHIFT			7
#define VIVS_DE_BLOCK4_SRC_CONFIG_TILED_DISABLE			0x00000000
#define VIVS_DE_BLOCK4_SRC_CONFIG_TILED_ENABLE			0x00000080
#define VIVS_DE_BLOCK4_SRC_CONFIG_LOCATION__MASK		0x00000100
#define VIVS_DE_BLOCK4_SRC_CONFIG_LOCATION__SHIFT		8
#define VIVS_DE_BLOCK4_SRC_CONFIG_LOCATION_MEMORY		0x00000000
#define VIVS_DE_BLOCK4_SRC_CONFIG_LOCATION_STREAM		0x00000100
#define VIVS_DE_BLOCK4_SRC_CONFIG_PACK__MASK			0x00003000
#define VIVS_DE_BLOCK4_SRC_CONFIG_PACK__SHIFT			12
#define VIVS_DE_BLOCK4_SRC_CONFIG_PACK_PACKED8			0x00000000
#define VIVS_DE_BLOCK4_SRC_CONFIG_PACK_PACKED16			0x00001000
#define VIVS_DE_BLOCK4_SRC_CONFIG_PACK_PACKED32			0x00002000
#define VIVS_DE_BLOCK4_SRC_CONFIG_PACK_UNPACKED			0x00003000
#define VIVS_DE_BLOCK4_SRC_CONFIG_MONO_TRANSPARENCY__MASK	0x00008000
#define VIVS_DE_BLOCK4_SRC_CONFIG_MONO_TRANSPARENCY__SHIFT	15
#define VIVS_DE_BLOCK4_SRC_CONFIG_MONO_TRANSPARENCY_BACKGROUND	0x00000000
#define VIVS_DE_BLOCK4_SRC_CONFIG_MONO_TRANSPARENCY_FOREGROUND	0x00008000
#define VIVS_DE_BLOCK4_SRC_CONFIG_UNK16				0x00010000
#define VIVS_DE_BLOCK4_SRC_CONFIG_SWIZZLE__MASK			0x00300000
#define VIVS_DE_BLOCK4_SRC_CONFIG_SWIZZLE__SHIFT		20
#define VIVS_DE_BLOCK4_SRC_CONFIG_SWIZZLE(x)			(((x) << VIVS_DE_BLOCK4_SRC_CONFIG_SWIZZLE__SHIFT) & VIVS_DE_BLOCK4_SRC_CONFIG_SWIZZLE__MASK)
#define VIVS_DE_BLOCK4_SRC_CONFIG_SOURCE_FORMAT__MASK		0x1f000000
#define VIVS_DE_BLOCK4_SRC_CONFIG_SOURCE_FORMAT__SHIFT		24
#define VIVS_DE_BLOCK4_SRC_CONFIG_SOURCE_FORMAT(x)		(((x) << VIVS_DE_BLOCK4_SRC_CONFIG_SOURCE_FORMAT__SHIFT) & VIVS_DE_BLOCK4_SRC_CONFIG_SOURCE_FORMAT__MASK)
#define VIVS_DE_BLOCK4_SRC_CONFIG_DISABLE420_L2_CACHE		0x20000000
#define VIVS_DE_BLOCK4_SRC_CONFIG_ENDIAN_CONTROL__MASK		0xc0000000
#define VIVS_DE_BLOCK4_SRC_CONFIG_ENDIAN_CONTROL__SHIFT		30
#define VIVS_DE_BLOCK4_SRC_CONFIG_ENDIAN_CONTROL(x)		(((x) << VIVS_DE_BLOCK4_SRC_CONFIG_ENDIAN_CONTROL__SHIFT) & VIVS_DE_BLOCK4_SRC_CONFIG_ENDIAN_CONTROL__MASK)

#define VIVS_DE_BLOCK4_SRC_ORIGIN(i0)			       (0x00012840 + 0x4*(i0))
#define VIVS_DE_BLOCK4_SRC_ORIGIN__ESIZE			0x00000004
#define VIVS_DE_BLOCK4_SRC_ORIGIN__LEN				0x00000004
#define VIVS_DE_BLOCK4_SRC_ORIGIN_X__MASK			0x0000ffff
#define VIVS_DE_BLOCK4_SRC_ORIGIN_X__SHIFT			0
#define VIVS_DE_BLOCK4_SRC_ORIGIN_X(x)				(((x) << VIVS_DE_BLOCK4_SRC_ORIGIN_X__SHIFT) & VIVS_DE_BLOCK4_SRC_ORIGIN_X__MASK)
#define VIVS_DE_BLOCK4_SRC_ORIGIN_Y__MASK			0xffff0000
#define VIVS_DE_BLOCK4_SRC_ORIGIN_Y__SHIFT			16
#define VIVS_DE_BLOCK4_SRC_ORIGIN_Y(x)				(((x) << VIVS_DE_BLOCK4_SRC_ORIGIN_Y__SHIFT) & VIVS_DE_BLOCK4_SRC_ORIGIN_Y__MASK)

#define VIVS_DE_BLOCK4_SRC_SIZE(i0)			       (0x00012850 + 0x4*(i0))
#define VIVS_DE_BLOCK4_SRC_SIZE__ESIZE				0x00000004
#define VIVS_DE_BLOCK4_SRC_SIZE__LEN				0x00000004
#define VIVS_DE_BLOCK4_SRC_SIZE_X__MASK				0x0000ffff
#define VIVS_DE_BLOCK4_SRC_SIZE_X__SHIFT			0
#define VIVS_DE_BLOCK4_SRC_SIZE_X(x)				(((x) << VIVS_DE_BLOCK4_SRC_SIZE_X__SHIFT) & VIVS_DE_BLOCK4_SRC_SIZE_X__MASK)
#define VIVS_DE_BLOCK4_SRC_SIZE_Y__MASK				0xffff0000
#define VIVS_DE_BLOCK4_SRC_SIZE_Y__SHIFT			16
#define VIVS_DE_BLOCK4_SRC_SIZE_Y(x)				(((x) << VIVS_DE_BLOCK4_SRC_SIZE_Y__SHIFT) & VIVS_DE_BLOCK4_SRC_SIZE_Y__MASK)

#define VIVS_DE_BLOCK4_SRC_COLOR_BG(i0)			       (0x00012860 + 0x4*(i0))
#define VIVS_DE_BLOCK4_SRC_COLOR_BG__ESIZE			0x00000004
#define VIVS_DE_BLOCK4_SRC_COLOR_BG__LEN			0x00000004

#define VIVS_DE_BLOCK4_ROP(i0)				       (0x00012870 + 0x4*(i0))
#define VIVS_DE_BLOCK4_ROP__ESIZE				0x00000004
#define VIVS_DE_BLOCK4_ROP__LEN					0x00000004
#define VIVS_DE_BLOCK4_ROP_ROP_FG__MASK				0x000000ff
#define VIVS_DE_BLOCK4_ROP_ROP_FG__SHIFT			0
#define VIVS_DE_BLOCK4_ROP_ROP_FG(x)				(((x) << VIVS_DE_BLOCK4_ROP_ROP_FG__SHIFT) & VIVS_DE_BLOCK4_ROP_ROP_FG__MASK)
#define VIVS_DE_BLOCK4_ROP_ROP_BG__MASK				0x0000ff00
#define VIVS_DE_BLOCK4_ROP_ROP_BG__SHIFT			8
#define VIVS_DE_BLOCK4_ROP_ROP_BG(x)				(((x) << VIVS_DE_BLOCK4_ROP_ROP_BG__SHIFT) & VIVS_DE_BLOCK4_ROP_ROP_BG__MASK)
#define VIVS_DE_BLOCK4_ROP_TYPE__MASK				0x00300000
#define VIVS_DE_BLOCK4_ROP_TYPE__SHIFT				20
#define VIVS_DE_BLOCK4_ROP_TYPE_ROP2_PATTERN			0x00000000
#define VIVS_DE_BLOCK4_ROP_TYPE_ROP2_SOURCE			0x00100000
#define VIVS_DE_BLOCK4_ROP_TYPE_ROP3				0x00200000
#define VIVS_DE_BLOCK4_ROP_TYPE_ROP4				0x00300000

#define VIVS_DE_BLOCK4_ALPHA_CONTROL(i0)		       (0x00012880 + 0x4*(i0))
#define VIVS_DE_BLOCK4_ALPHA_CONTROL__ESIZE			0x00000004
#define VIVS_DE_BLOCK4_ALPHA_CONTROL__LEN			0x00000004
#define VIVS_DE_BLOCK4_ALPHA_CONTROL_ENABLE__MASK		0x00000001
#define VIVS_DE_BLOCK4_ALPHA_CONTROL_ENABLE__SHIFT		0
#define VIVS_DE_BLOCK4_ALPHA_CONTROL_ENABLE_OFF			0x00000000
#define VIVS_DE_BLOCK4_ALPHA_CONTROL_ENABLE_ON			0x00000001
#define VIVS_DE_BLOCK4_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA__MASK	0x00ff0000
#define VIVS_DE_BLOCK4_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA__SHIFT	16
#define VIVS_DE_BLOCK4_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA(x)	(((x) << VIVS_DE_BLOCK4_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA__SHIFT) & VIVS_DE_BLOCK4_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA__MASK)
#define VIVS_DE_BLOCK4_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA__MASK	0xff000000
#define VIVS_DE_BLOCK4_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA__SHIFT	24
#define VIVS_DE_BLOCK4_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA(x)	(((x) << VIVS_DE_BLOCK4_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA__SHIFT) & VIVS_DE_BLOCK4_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA__MASK)

#define VIVS_DE_BLOCK4_ALPHA_MODES(i0)			       (0x00012890 + 0x4*(i0))
#define VIVS_DE_BLOCK4_ALPHA_MODES__ESIZE			0x00000004
#define VIVS_DE_BLOCK4_ALPHA_MODES__LEN				0x00000004
#define VIVS_DE_BLOCK4_ALPHA_MODES_SRC_ALPHA_MODE__MASK		0x00000001
#define VIVS_DE_BLOCK4_ALPHA_MODES_SRC_ALPHA_MODE__SHIFT	0
#define VIVS_DE_BLOCK4_ALPHA_MODES_SRC_ALPHA_MODE_NORMAL	0x00000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_SRC_ALPHA_MODE_INVERSED	0x00000001
#define VIVS_DE_BLOCK4_ALPHA_MODES_DST_ALPHA_MODE__MASK		0x00000010
#define VIVS_DE_BLOCK4_ALPHA_MODES_DST_ALPHA_MODE__SHIFT	4
#define VIVS_DE_BLOCK4_ALPHA_MODES_DST_ALPHA_MODE_NORMAL	0x00000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_DST_ALPHA_MODE_INVERSED	0x00000010
#define VIVS_DE_BLOCK4_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE__MASK	0x00000300
#define VIVS_DE_BLOCK4_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE__SHIFT	8
#define VIVS_DE_BLOCK4_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE_NORMAL	0x00000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE_GLOBAL	0x00000100
#define VIVS_DE_BLOCK4_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE_SCALED	0x00000200
#define VIVS_DE_BLOCK4_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE__MASK	0x00003000
#define VIVS_DE_BLOCK4_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE__SHIFT	12
#define VIVS_DE_BLOCK4_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE_NORMAL	0x00000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE_GLOBAL	0x00001000
#define VIVS_DE_BLOCK4_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE_SCALED	0x00002000
#define VIVS_DE_BLOCK4_ALPHA_MODES_PE10_SRC_COLOR_MULTIPLY__MASK	0x00010000
#define VIVS_DE_BLOCK4_ALPHA_MODES_PE10_SRC_COLOR_MULTIPLY__SHIFT	16
#define VIVS_DE_BLOCK4_ALPHA_MODES_PE10_SRC_COLOR_MULTIPLY_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_PE10_SRC_COLOR_MULTIPLY_ENABLE	0x00010000
#define VIVS_DE_BLOCK4_ALPHA_MODES_PE10_DST_COLOR_MULTIPLY__MASK	0x00100000
#define VIVS_DE_BLOCK4_ALPHA_MODES_PE10_DST_COLOR_MULTIPLY__SHIFT	20
#define VIVS_DE_BLOCK4_ALPHA_MODES_PE10_DST_COLOR_MULTIPLY_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_PE10_DST_COLOR_MULTIPLY_ENABLE	0x00100000
#define VIVS_DE_BLOCK4_ALPHA_MODES_SRC_BLENDING_MODE__MASK	0x07000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_SRC_BLENDING_MODE__SHIFT	24
#define VIVS_DE_BLOCK4_ALPHA_MODES_SRC_BLENDING_MODE(x)		(((x) << VIVS_DE_BLOCK4_ALPHA_MODES_SRC_BLENDING_MODE__SHIFT) & VIVS_DE_BLOCK4_ALPHA_MODES_SRC_BLENDING_MODE__MASK)
#define VIVS_DE_BLOCK4_ALPHA_MODES_SRC_ALPHA_FACTOR__MASK	0x08000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_SRC_ALPHA_FACTOR__SHIFT	27
#define VIVS_DE_BLOCK4_ALPHA_MODES_SRC_ALPHA_FACTOR_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_SRC_ALPHA_FACTOR_ENABLE	0x08000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_DST_BLENDING_MODE__MASK	0x70000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_DST_BLENDING_MODE__SHIFT	28
#define VIVS_DE_BLOCK4_ALPHA_MODES_DST_BLENDING_MODE(x)		(((x) << VIVS_DE_BLOCK4_ALPHA_MODES_DST_BLENDING_MODE__SHIFT) & VIVS_DE_BLOCK4_ALPHA_MODES_DST_BLENDING_MODE__MASK)
#define VIVS_DE_BLOCK4_ALPHA_MODES_DST_ALPHA_FACTOR__MASK	0x80000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_DST_ALPHA_FACTOR__SHIFT	31
#define VIVS_DE_BLOCK4_ALPHA_MODES_DST_ALPHA_FACTOR_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_ALPHA_MODES_DST_ALPHA_FACTOR_ENABLE	0x80000000

#define VIVS_DE_BLOCK4_ADDRESS_U(i0)			       (0x000128a0 + 0x4*(i0))
#define VIVS_DE_BLOCK4_ADDRESS_U__ESIZE				0x00000004
#define VIVS_DE_BLOCK4_ADDRESS_U__LEN				0x00000004

#define VIVS_DE_BLOCK4_STRIDE_U(i0)			       (0x000128b0 + 0x4*(i0))
#define VIVS_DE_BLOCK4_STRIDE_U__ESIZE				0x00000004
#define VIVS_DE_BLOCK4_STRIDE_U__LEN				0x00000004
#define VIVS_DE_BLOCK4_STRIDE_U_STRIDE__MASK			0x0003ffff
#define VIVS_DE_BLOCK4_STRIDE_U_STRIDE__SHIFT			0
#define VIVS_DE_BLOCK4_STRIDE_U_STRIDE(x)			(((x) << VIVS_DE_BLOCK4_STRIDE_U_STRIDE__SHIFT) & VIVS_DE_BLOCK4_STRIDE_U_STRIDE__MASK)

#define VIVS_DE_BLOCK4_ADDRESS_V(i0)			       (0x000128c0 + 0x4*(i0))
#define VIVS_DE_BLOCK4_ADDRESS_V__ESIZE				0x00000004
#define VIVS_DE_BLOCK4_ADDRESS_V__LEN				0x00000004

#define VIVS_DE_BLOCK4_STRIDE_V(i0)			       (0x000128d0 + 0x4*(i0))
#define VIVS_DE_BLOCK4_STRIDE_V__ESIZE				0x00000004
#define VIVS_DE_BLOCK4_STRIDE_V__LEN				0x00000004
#define VIVS_DE_BLOCK4_STRIDE_V_STRIDE__MASK			0x0003ffff
#define VIVS_DE_BLOCK4_STRIDE_V_STRIDE__SHIFT			0
#define VIVS_DE_BLOCK4_STRIDE_V_STRIDE(x)			(((x) << VIVS_DE_BLOCK4_STRIDE_V_STRIDE__SHIFT) & VIVS_DE_BLOCK4_STRIDE_V_STRIDE__MASK)

#define VIVS_DE_BLOCK4_SRC_ROTATION_HEIGHT(i0)		       (0x000128e0 + 0x4*(i0))
#define VIVS_DE_BLOCK4_SRC_ROTATION_HEIGHT__ESIZE		0x00000004
#define VIVS_DE_BLOCK4_SRC_ROTATION_HEIGHT__LEN			0x00000004
#define VIVS_DE_BLOCK4_SRC_ROTATION_HEIGHT_HEIGHT__MASK		0x0000ffff
#define VIVS_DE_BLOCK4_SRC_ROTATION_HEIGHT_HEIGHT__SHIFT	0
#define VIVS_DE_BLOCK4_SRC_ROTATION_HEIGHT_HEIGHT(x)		(((x) << VIVS_DE_BLOCK4_SRC_ROTATION_HEIGHT_HEIGHT__SHIFT) & VIVS_DE_BLOCK4_SRC_ROTATION_HEIGHT_HEIGHT__MASK)

#define VIVS_DE_BLOCK4_ROT_ANGLE(i0)			       (0x000128f0 + 0x4*(i0))
#define VIVS_DE_BLOCK4_ROT_ANGLE__ESIZE				0x00000004
#define VIVS_DE_BLOCK4_ROT_ANGLE__LEN				0x00000004
#define VIVS_DE_BLOCK4_ROT_ANGLE_SRC__MASK			0x00000007
#define VIVS_DE_BLOCK4_ROT_ANGLE_SRC__SHIFT			0
#define VIVS_DE_BLOCK4_ROT_ANGLE_SRC(x)				(((x) << VIVS_DE_BLOCK4_ROT_ANGLE_SRC__SHIFT) & VIVS_DE_BLOCK4_ROT_ANGLE_SRC__MASK)
#define VIVS_DE_BLOCK4_ROT_ANGLE_DST__MASK			0x00000038
#define VIVS_DE_BLOCK4_ROT_ANGLE_DST__SHIFT			3
#define VIVS_DE_BLOCK4_ROT_ANGLE_DST(x)				(((x) << VIVS_DE_BLOCK4_ROT_ANGLE_DST__SHIFT) & VIVS_DE_BLOCK4_ROT_ANGLE_DST__MASK)
#define VIVS_DE_BLOCK4_ROT_ANGLE_SRC_MASK			0x00000100
#define VIVS_DE_BLOCK4_ROT_ANGLE_DST_MASK			0x00000200
#define VIVS_DE_BLOCK4_ROT_ANGLE_SRC_MIRROR__MASK		0x00003000
#define VIVS_DE_BLOCK4_ROT_ANGLE_SRC_MIRROR__SHIFT		12
#define VIVS_DE_BLOCK4_ROT_ANGLE_SRC_MIRROR(x)			(((x) << VIVS_DE_BLOCK4_ROT_ANGLE_SRC_MIRROR__SHIFT) & VIVS_DE_BLOCK4_ROT_ANGLE_SRC_MIRROR__MASK)
#define VIVS_DE_BLOCK4_ROT_ANGLE_SRC_MIRROR_MASK		0x00008000
#define VIVS_DE_BLOCK4_ROT_ANGLE_DST_MIRROR__MASK		0x00030000
#define VIVS_DE_BLOCK4_ROT_ANGLE_DST_MIRROR__SHIFT		16
#define VIVS_DE_BLOCK4_ROT_ANGLE_DST_MIRROR(x)			(((x) << VIVS_DE_BLOCK4_ROT_ANGLE_DST_MIRROR__SHIFT) & VIVS_DE_BLOCK4_ROT_ANGLE_DST_MIRROR__MASK)
#define VIVS_DE_BLOCK4_ROT_ANGLE_DST_MIRROR_MASK		0x00080000

#define VIVS_DE_BLOCK4_GLOBAL_SRC_COLOR(i0)		       (0x00012900 + 0x4*(i0))
#define VIVS_DE_BLOCK4_GLOBAL_SRC_COLOR__ESIZE			0x00000004
#define VIVS_DE_BLOCK4_GLOBAL_SRC_COLOR__LEN			0x00000004

#define VIVS_DE_BLOCK4_GLOBAL_DEST_COLOR(i0)		       (0x00012910 + 0x4*(i0))
#define VIVS_DE_BLOCK4_GLOBAL_DEST_COLOR__ESIZE			0x00000004
#define VIVS_DE_BLOCK4_GLOBAL_DEST_COLOR__LEN			0x00000004

#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES(i0)		       (0x00012920 + 0x4*(i0))
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES__ESIZE		0x00000004
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES__LEN		0x00000004
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_SRC_PREMULTIPLY__MASK	0x00000001
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_SRC_PREMULTIPLY__SHIFT	0
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_SRC_PREMULTIPLY_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_SRC_PREMULTIPLY_ENABLE	0x00000001
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_DST_PREMULTIPLY__MASK	0x00000010
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_DST_PREMULTIPLY__SHIFT	4
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_DST_PREMULTIPLY_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_DST_PREMULTIPLY_ENABLE	0x00000010
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY__MASK	0x00000300
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY__SHIFT	8
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY_ALPHA	0x00000100
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY_COLOR	0x00000200
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_DST_DEMULTIPLY__MASK	0x00100000
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_DST_DEMULTIPLY__SHIFT	20
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_DST_DEMULTIPLY_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_COLOR_MULTIPLY_MODES_DST_DEMULTIPLY_ENABLE	0x00100000

#define VIVS_DE_BLOCK4_TRANSPARENCY(i0)			       (0x00012930 + 0x4*(i0))
#define VIVS_DE_BLOCK4_TRANSPARENCY__ESIZE			0x00000004
#define VIVS_DE_BLOCK4_TRANSPARENCY__LEN			0x00000004
#define VIVS_DE_BLOCK4_TRANSPARENCY_SOURCE__MASK		0x00000003
#define VIVS_DE_BLOCK4_TRANSPARENCY_SOURCE__SHIFT		0
#define VIVS_DE_BLOCK4_TRANSPARENCY_SOURCE_OPAQUE		0x00000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_SOURCE_MASK			0x00000001
#define VIVS_DE_BLOCK4_TRANSPARENCY_SOURCE_KEY			0x00000002
#define VIVS_DE_BLOCK4_TRANSPARENCY_PATTERN__MASK		0x00000030
#define VIVS_DE_BLOCK4_TRANSPARENCY_PATTERN__SHIFT		4
#define VIVS_DE_BLOCK4_TRANSPARENCY_PATTERN_OPAQUE		0x00000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_PATTERN_MASK		0x00000010
#define VIVS_DE_BLOCK4_TRANSPARENCY_PATTERN_KEY			0x00000020
#define VIVS_DE_BLOCK4_TRANSPARENCY_DESTINATION__MASK		0x00000300
#define VIVS_DE_BLOCK4_TRANSPARENCY_DESTINATION__SHIFT		8
#define VIVS_DE_BLOCK4_TRANSPARENCY_DESTINATION_OPAQUE		0x00000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_DESTINATION_MASK		0x00000100
#define VIVS_DE_BLOCK4_TRANSPARENCY_DESTINATION_KEY		0x00000200
#define VIVS_DE_BLOCK4_TRANSPARENCY_TRANSPARENCY_MASK		0x00001000
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_SRC_OVERRIDE__MASK	0x00030000
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_SRC_OVERRIDE__SHIFT	16
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_SRC_OVERRIDE_DEFAULT	0x00000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_SRC_OVERRIDE_USE_ENABLE	0x00010000
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_SRC_OVERRIDE_USE_DISABLE	0x00020000
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_PAT_OVERRIDE__MASK	0x00300000
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_PAT_OVERRIDE__SHIFT	20
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_PAT_OVERRIDE_DEFAULT	0x00000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_PAT_OVERRIDE_USE_ENABLE	0x00100000
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_PAT_OVERRIDE_USE_DISABLE	0x00200000
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_DST_OVERRIDE__MASK	0x03000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_DST_OVERRIDE__SHIFT	24
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_DST_OVERRIDE_DEFAULT	0x00000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_DST_OVERRIDE_USE_ENABLE	0x01000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_USE_DST_OVERRIDE_USE_DISABLE	0x02000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_RESOURCE_OVERRIDE_MASK	0x10000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_DFB_COLOR_KEY__MASK		0x20000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_DFB_COLOR_KEY__SHIFT	29
#define VIVS_DE_BLOCK4_TRANSPARENCY_DFB_COLOR_KEY_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_DFB_COLOR_KEY_ENABLE	0x20000000
#define VIVS_DE_BLOCK4_TRANSPARENCY_DFB_COLOR_KEY_MASK		0x80000000

#define VIVS_DE_BLOCK4_CONTROL(i0)			       (0x00012940 + 0x4*(i0))
#define VIVS_DE_BLOCK4_CONTROL__ESIZE				0x00000004
#define VIVS_DE_BLOCK4_CONTROL__LEN				0x00000004
#define VIVS_DE_BLOCK4_CONTROL_YUV__MASK			0x00000001
#define VIVS_DE_BLOCK4_CONTROL_YUV__SHIFT			0
#define VIVS_DE_BLOCK4_CONTROL_YUV_601				0x00000000
#define VIVS_DE_BLOCK4_CONTROL_YUV_709				0x00000001
#define VIVS_DE_BLOCK4_CONTROL_YUV_MASK				0x00000008
#define VIVS_DE_BLOCK4_CONTROL_UV_SWIZZLE__MASK			0x00000010
#define VIVS_DE_BLOCK4_CONTROL_UV_SWIZZLE__SHIFT		4
#define VIVS_DE_BLOCK4_CONTROL_UV_SWIZZLE_UV			0x00000000
#define VIVS_DE_BLOCK4_CONTROL_UV_SWIZZLE_VU			0x00000010
#define VIVS_DE_BLOCK4_CONTROL_UV_SWIZZLE_MASK			0x00000080
#define VIVS_DE_BLOCK4_CONTROL_YUVRGB__MASK			0x00000100
#define VIVS_DE_BLOCK4_CONTROL_YUVRGB__SHIFT			8
#define VIVS_DE_BLOCK4_CONTROL_YUVRGB_DISABLE			0x00000000
#define VIVS_DE_BLOCK4_CONTROL_YUVRGB_ENABLE			0x00000100
#define VIVS_DE_BLOCK4_CONTROL_YUVRGB_MASK			0x00000800

#define VIVS_DE_BLOCK4_SRC_COLOR_KEY_HIGH(i0)		       (0x00012950 + 0x4*(i0))
#define VIVS_DE_BLOCK4_SRC_COLOR_KEY_HIGH__ESIZE		0x00000004
#define VIVS_DE_BLOCK4_SRC_COLOR_KEY_HIGH__LEN			0x00000004

#define VIVS_DE_BLOCK4_SRC_EX_CONFIG(i0)		       (0x00012960 + 0x4*(i0))
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG__ESIZE			0x00000004
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG__LEN			0x00000004
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG_MULTI_TILED__MASK		0x00000001
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG_MULTI_TILED__SHIFT		0
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG_MULTI_TILED_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG_MULTI_TILED_ENABLE		0x00000001
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG_SUPER_TILED__MASK		0x00000008
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG_SUPER_TILED__SHIFT		3
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG_SUPER_TILED_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG_SUPER_TILED_ENABLE		0x00000008
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG_MINOR_TILED__MASK		0x00000100
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG_MINOR_TILED__SHIFT		8
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG_MINOR_TILED_DISABLE	0x00000000
#define VIVS_DE_BLOCK4_SRC_EX_CONFIG_MINOR_TILED_ENABLE		0x00000100

#define VIVS_DE_BLOCK4_SRC_EX_ADDRESS(i0)		       (0x00012970 + 0x4*(i0))
#define VIVS_DE_BLOCK4_SRC_EX_ADDRESS__ESIZE			0x00000004
#define VIVS_DE_BLOCK4_SRC_EX_ADDRESS__LEN			0x00000004

#define VIVS_DE_BLOCK8						0x00000000

#define VIVS_DE_BLOCK8_SRC_ADDRESS(i0)			       (0x00012a00 + 0x4*(i0))
#define VIVS_DE_BLOCK8_SRC_ADDRESS__ESIZE			0x00000004
#define VIVS_DE_BLOCK8_SRC_ADDRESS__LEN				0x00000008

#define VIVS_DE_BLOCK8_SRC_STRIDE(i0)			       (0x00012a20 + 0x4*(i0))
#define VIVS_DE_BLOCK8_SRC_STRIDE__ESIZE			0x00000004
#define VIVS_DE_BLOCK8_SRC_STRIDE__LEN				0x00000008
#define VIVS_DE_BLOCK8_SRC_STRIDE_STRIDE__MASK			0x0003ffff
#define VIVS_DE_BLOCK8_SRC_STRIDE_STRIDE__SHIFT			0
#define VIVS_DE_BLOCK8_SRC_STRIDE_STRIDE(x)			(((x) << VIVS_DE_BLOCK8_SRC_STRIDE_STRIDE__SHIFT) & VIVS_DE_BLOCK8_SRC_STRIDE_STRIDE__MASK)

#define VIVS_DE_BLOCK8_SRC_ROTATION_CONFIG(i0)		       (0x00012a40 + 0x4*(i0))
#define VIVS_DE_BLOCK8_SRC_ROTATION_CONFIG__ESIZE		0x00000004
#define VIVS_DE_BLOCK8_SRC_ROTATION_CONFIG__LEN			0x00000008
#define VIVS_DE_BLOCK8_SRC_ROTATION_CONFIG_WIDTH__MASK		0x0000ffff
#define VIVS_DE_BLOCK8_SRC_ROTATION_CONFIG_WIDTH__SHIFT		0
#define VIVS_DE_BLOCK8_SRC_ROTATION_CONFIG_WIDTH(x)		(((x) << VIVS_DE_BLOCK8_SRC_ROTATION_CONFIG_WIDTH__SHIFT) & VIVS_DE_BLOCK8_SRC_ROTATION_CONFIG_WIDTH__MASK)
#define VIVS_DE_BLOCK8_SRC_ROTATION_CONFIG_ROTATION__MASK	0x00010000
#define VIVS_DE_BLOCK8_SRC_ROTATION_CONFIG_ROTATION__SHIFT	16
#define VIVS_DE_BLOCK8_SRC_ROTATION_CONFIG_ROTATION_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_SRC_ROTATION_CONFIG_ROTATION_ENABLE	0x00010000

#define VIVS_DE_BLOCK8_SRC_CONFIG(i0)			       (0x00012a60 + 0x4*(i0))
#define VIVS_DE_BLOCK8_SRC_CONFIG__ESIZE			0x00000004
#define VIVS_DE_BLOCK8_SRC_CONFIG__LEN				0x00000008
#define VIVS_DE_BLOCK8_SRC_CONFIG_PE10_SOURCE_FORMAT__MASK	0x0000000f
#define VIVS_DE_BLOCK8_SRC_CONFIG_PE10_SOURCE_FORMAT__SHIFT	0
#define VIVS_DE_BLOCK8_SRC_CONFIG_PE10_SOURCE_FORMAT(x)		(((x) << VIVS_DE_BLOCK8_SRC_CONFIG_PE10_SOURCE_FORMAT__SHIFT) & VIVS_DE_BLOCK8_SRC_CONFIG_PE10_SOURCE_FORMAT__MASK)
#define VIVS_DE_BLOCK8_SRC_CONFIG_TRANSPARENCY__MASK		0x00000030
#define VIVS_DE_BLOCK8_SRC_CONFIG_TRANSPARENCY__SHIFT		4
#define VIVS_DE_BLOCK8_SRC_CONFIG_TRANSPARENCY(x)		(((x) << VIVS_DE_BLOCK8_SRC_CONFIG_TRANSPARENCY__SHIFT) & VIVS_DE_BLOCK8_SRC_CONFIG_TRANSPARENCY__MASK)
#define VIVS_DE_BLOCK8_SRC_CONFIG_SRC_RELATIVE__MASK		0x00000040
#define VIVS_DE_BLOCK8_SRC_CONFIG_SRC_RELATIVE__SHIFT		6
#define VIVS_DE_BLOCK8_SRC_CONFIG_SRC_RELATIVE_ABSOLUTE		0x00000000
#define VIVS_DE_BLOCK8_SRC_CONFIG_SRC_RELATIVE_RELATIVE		0x00000040
#define VIVS_DE_BLOCK8_SRC_CONFIG_TILED__MASK			0x00000080
#define VIVS_DE_BLOCK8_SRC_CONFIG_TILED__SHIFT			7
#define VIVS_DE_BLOCK8_SRC_CONFIG_TILED_DISABLE			0x00000000
#define VIVS_DE_BLOCK8_SRC_CONFIG_TILED_ENABLE			0x00000080
#define VIVS_DE_BLOCK8_SRC_CONFIG_LOCATION__MASK		0x00000100
#define VIVS_DE_BLOCK8_SRC_CONFIG_LOCATION__SHIFT		8
#define VIVS_DE_BLOCK8_SRC_CONFIG_LOCATION_MEMORY		0x00000000
#define VIVS_DE_BLOCK8_SRC_CONFIG_LOCATION_STREAM		0x00000100
#define VIVS_DE_BLOCK8_SRC_CONFIG_PACK__MASK			0x00003000
#define VIVS_DE_BLOCK8_SRC_CONFIG_PACK__SHIFT			12
#define VIVS_DE_BLOCK8_SRC_CONFIG_PACK_PACKED8			0x00000000
#define VIVS_DE_BLOCK8_SRC_CONFIG_PACK_PACKED16			0x00001000
#define VIVS_DE_BLOCK8_SRC_CONFIG_PACK_PACKED32			0x00002000
#define VIVS_DE_BLOCK8_SRC_CONFIG_PACK_UNPACKED			0x00003000
#define VIVS_DE_BLOCK8_SRC_CONFIG_MONO_TRANSPARENCY__MASK	0x00008000
#define VIVS_DE_BLOCK8_SRC_CONFIG_MONO_TRANSPARENCY__SHIFT	15
#define VIVS_DE_BLOCK8_SRC_CONFIG_MONO_TRANSPARENCY_BACKGROUND	0x00000000
#define VIVS_DE_BLOCK8_SRC_CONFIG_MONO_TRANSPARENCY_FOREGROUND	0x00008000
#define VIVS_DE_BLOCK8_SRC_CONFIG_UNK16				0x00010000
#define VIVS_DE_BLOCK8_SRC_CONFIG_SWIZZLE__MASK			0x00300000
#define VIVS_DE_BLOCK8_SRC_CONFIG_SWIZZLE__SHIFT		20
#define VIVS_DE_BLOCK8_SRC_CONFIG_SWIZZLE(x)			(((x) << VIVS_DE_BLOCK8_SRC_CONFIG_SWIZZLE__SHIFT) & VIVS_DE_BLOCK8_SRC_CONFIG_SWIZZLE__MASK)
#define VIVS_DE_BLOCK8_SRC_CONFIG_SOURCE_FORMAT__MASK		0x1f000000
#define VIVS_DE_BLOCK8_SRC_CONFIG_SOURCE_FORMAT__SHIFT		24
#define VIVS_DE_BLOCK8_SRC_CONFIG_SOURCE_FORMAT(x)		(((x) << VIVS_DE_BLOCK8_SRC_CONFIG_SOURCE_FORMAT__SHIFT) & VIVS_DE_BLOCK8_SRC_CONFIG_SOURCE_FORMAT__MASK)
#define VIVS_DE_BLOCK8_SRC_CONFIG_DISABLE420_L2_CACHE		0x20000000
#define VIVS_DE_BLOCK8_SRC_CONFIG_ENDIAN_CONTROL__MASK		0xc0000000
#define VIVS_DE_BLOCK8_SRC_CONFIG_ENDIAN_CONTROL__SHIFT		30
#define VIVS_DE_BLOCK8_SRC_CONFIG_ENDIAN_CONTROL(x)		(((x) << VIVS_DE_BLOCK8_SRC_CONFIG_ENDIAN_CONTROL__SHIFT) & VIVS_DE_BLOCK8_SRC_CONFIG_ENDIAN_CONTROL__MASK)

#define VIVS_DE_BLOCK8_SRC_ORIGIN(i0)			       (0x00012a80 + 0x4*(i0))
#define VIVS_DE_BLOCK8_SRC_ORIGIN__ESIZE			0x00000004
#define VIVS_DE_BLOCK8_SRC_ORIGIN__LEN				0x00000008
#define VIVS_DE_BLOCK8_SRC_ORIGIN_X__MASK			0x0000ffff
#define VIVS_DE_BLOCK8_SRC_ORIGIN_X__SHIFT			0
#define VIVS_DE_BLOCK8_SRC_ORIGIN_X(x)				(((x) << VIVS_DE_BLOCK8_SRC_ORIGIN_X__SHIFT) & VIVS_DE_BLOCK8_SRC_ORIGIN_X__MASK)
#define VIVS_DE_BLOCK8_SRC_ORIGIN_Y__MASK			0xffff0000
#define VIVS_DE_BLOCK8_SRC_ORIGIN_Y__SHIFT			16
#define VIVS_DE_BLOCK8_SRC_ORIGIN_Y(x)				(((x) << VIVS_DE_BLOCK8_SRC_ORIGIN_Y__SHIFT) & VIVS_DE_BLOCK8_SRC_ORIGIN_Y__MASK)

#define VIVS_DE_BLOCK8_SRC_SIZE(i0)			       (0x00012aa0 + 0x4*(i0))
#define VIVS_DE_BLOCK8_SRC_SIZE__ESIZE				0x00000004
#define VIVS_DE_BLOCK8_SRC_SIZE__LEN				0x00000008
#define VIVS_DE_BLOCK8_SRC_SIZE_X__MASK				0x0000ffff
#define VIVS_DE_BLOCK8_SRC_SIZE_X__SHIFT			0
#define VIVS_DE_BLOCK8_SRC_SIZE_X(x)				(((x) << VIVS_DE_BLOCK8_SRC_SIZE_X__SHIFT) & VIVS_DE_BLOCK8_SRC_SIZE_X__MASK)
#define VIVS_DE_BLOCK8_SRC_SIZE_Y__MASK				0xffff0000
#define VIVS_DE_BLOCK8_SRC_SIZE_Y__SHIFT			16
#define VIVS_DE_BLOCK8_SRC_SIZE_Y(x)				(((x) << VIVS_DE_BLOCK8_SRC_SIZE_Y__SHIFT) & VIVS_DE_BLOCK8_SRC_SIZE_Y__MASK)

#define VIVS_DE_BLOCK8_SRC_COLOR_BG(i0)			       (0x00012ac0 + 0x4*(i0))
#define VIVS_DE_BLOCK8_SRC_COLOR_BG__ESIZE			0x00000004
#define VIVS_DE_BLOCK8_SRC_COLOR_BG__LEN			0x00000008

#define VIVS_DE_BLOCK8_ROP(i0)				       (0x00012ae0 + 0x4*(i0))
#define VIVS_DE_BLOCK8_ROP__ESIZE				0x00000004
#define VIVS_DE_BLOCK8_ROP__LEN					0x00000008
#define VIVS_DE_BLOCK8_ROP_ROP_FG__MASK				0x000000ff
#define VIVS_DE_BLOCK8_ROP_ROP_FG__SHIFT			0
#define VIVS_DE_BLOCK8_ROP_ROP_FG(x)				(((x) << VIVS_DE_BLOCK8_ROP_ROP_FG__SHIFT) & VIVS_DE_BLOCK8_ROP_ROP_FG__MASK)
#define VIVS_DE_BLOCK8_ROP_ROP_BG__MASK				0x0000ff00
#define VIVS_DE_BLOCK8_ROP_ROP_BG__SHIFT			8
#define VIVS_DE_BLOCK8_ROP_ROP_BG(x)				(((x) << VIVS_DE_BLOCK8_ROP_ROP_BG__SHIFT) & VIVS_DE_BLOCK8_ROP_ROP_BG__MASK)
#define VIVS_DE_BLOCK8_ROP_TYPE__MASK				0x00300000
#define VIVS_DE_BLOCK8_ROP_TYPE__SHIFT				20
#define VIVS_DE_BLOCK8_ROP_TYPE_ROP2_PATTERN			0x00000000
#define VIVS_DE_BLOCK8_ROP_TYPE_ROP2_SOURCE			0x00100000
#define VIVS_DE_BLOCK8_ROP_TYPE_ROP3				0x00200000
#define VIVS_DE_BLOCK8_ROP_TYPE_ROP4				0x00300000

#define VIVS_DE_BLOCK8_ALPHA_CONTROL(i0)		       (0x00012b00 + 0x4*(i0))
#define VIVS_DE_BLOCK8_ALPHA_CONTROL__ESIZE			0x00000004
#define VIVS_DE_BLOCK8_ALPHA_CONTROL__LEN			0x00000008
#define VIVS_DE_BLOCK8_ALPHA_CONTROL_ENABLE__MASK		0x00000001
#define VIVS_DE_BLOCK8_ALPHA_CONTROL_ENABLE__SHIFT		0
#define VIVS_DE_BLOCK8_ALPHA_CONTROL_ENABLE_OFF			0x00000000
#define VIVS_DE_BLOCK8_ALPHA_CONTROL_ENABLE_ON			0x00000001
#define VIVS_DE_BLOCK8_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA__MASK	0x00ff0000
#define VIVS_DE_BLOCK8_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA__SHIFT	16
#define VIVS_DE_BLOCK8_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA(x)	(((x) << VIVS_DE_BLOCK8_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA__SHIFT) & VIVS_DE_BLOCK8_ALPHA_CONTROL_PE10_GLOBAL_SRC_ALPHA__MASK)
#define VIVS_DE_BLOCK8_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA__MASK	0xff000000
#define VIVS_DE_BLOCK8_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA__SHIFT	24
#define VIVS_DE_BLOCK8_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA(x)	(((x) << VIVS_DE_BLOCK8_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA__SHIFT) & VIVS_DE_BLOCK8_ALPHA_CONTROL_PE10_GLOBAL_DST_ALPHA__MASK)

#define VIVS_DE_BLOCK8_ALPHA_MODES(i0)			       (0x00012b20 + 0x4*(i0))
#define VIVS_DE_BLOCK8_ALPHA_MODES__ESIZE			0x00000004
#define VIVS_DE_BLOCK8_ALPHA_MODES__LEN				0x00000008
#define VIVS_DE_BLOCK8_ALPHA_MODES_SRC_ALPHA_MODE__MASK		0x00000001
#define VIVS_DE_BLOCK8_ALPHA_MODES_SRC_ALPHA_MODE__SHIFT	0
#define VIVS_DE_BLOCK8_ALPHA_MODES_SRC_ALPHA_MODE_NORMAL	0x00000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_SRC_ALPHA_MODE_INVERSED	0x00000001
#define VIVS_DE_BLOCK8_ALPHA_MODES_DST_ALPHA_MODE__MASK		0x00000010
#define VIVS_DE_BLOCK8_ALPHA_MODES_DST_ALPHA_MODE__SHIFT	4
#define VIVS_DE_BLOCK8_ALPHA_MODES_DST_ALPHA_MODE_NORMAL	0x00000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_DST_ALPHA_MODE_INVERSED	0x00000010
#define VIVS_DE_BLOCK8_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE__MASK	0x00000300
#define VIVS_DE_BLOCK8_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE__SHIFT	8
#define VIVS_DE_BLOCK8_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE_NORMAL	0x00000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE_GLOBAL	0x00000100
#define VIVS_DE_BLOCK8_ALPHA_MODES_GLOBAL_SRC_ALPHA_MODE_SCALED	0x00000200
#define VIVS_DE_BLOCK8_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE__MASK	0x00003000
#define VIVS_DE_BLOCK8_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE__SHIFT	12
#define VIVS_DE_BLOCK8_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE_NORMAL	0x00000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE_GLOBAL	0x00001000
#define VIVS_DE_BLOCK8_ALPHA_MODES_GLOBAL_DST_ALPHA_MODE_SCALED	0x00002000
#define VIVS_DE_BLOCK8_ALPHA_MODES_PE10_SRC_COLOR_MULTIPLY__MASK	0x00010000
#define VIVS_DE_BLOCK8_ALPHA_MODES_PE10_SRC_COLOR_MULTIPLY__SHIFT	16
#define VIVS_DE_BLOCK8_ALPHA_MODES_PE10_SRC_COLOR_MULTIPLY_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_PE10_SRC_COLOR_MULTIPLY_ENABLE	0x00010000
#define VIVS_DE_BLOCK8_ALPHA_MODES_PE10_DST_COLOR_MULTIPLY__MASK	0x00100000
#define VIVS_DE_BLOCK8_ALPHA_MODES_PE10_DST_COLOR_MULTIPLY__SHIFT	20
#define VIVS_DE_BLOCK8_ALPHA_MODES_PE10_DST_COLOR_MULTIPLY_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_PE10_DST_COLOR_MULTIPLY_ENABLE	0x00100000
#define VIVS_DE_BLOCK8_ALPHA_MODES_SRC_BLENDING_MODE__MASK	0x07000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_SRC_BLENDING_MODE__SHIFT	24
#define VIVS_DE_BLOCK8_ALPHA_MODES_SRC_BLENDING_MODE(x)		(((x) << VIVS_DE_BLOCK8_ALPHA_MODES_SRC_BLENDING_MODE__SHIFT) & VIVS_DE_BLOCK8_ALPHA_MODES_SRC_BLENDING_MODE__MASK)
#define VIVS_DE_BLOCK8_ALPHA_MODES_SRC_ALPHA_FACTOR__MASK	0x08000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_SRC_ALPHA_FACTOR__SHIFT	27
#define VIVS_DE_BLOCK8_ALPHA_MODES_SRC_ALPHA_FACTOR_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_SRC_ALPHA_FACTOR_ENABLE	0x08000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_DST_BLENDING_MODE__MASK	0x70000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_DST_BLENDING_MODE__SHIFT	28
#define VIVS_DE_BLOCK8_ALPHA_MODES_DST_BLENDING_MODE(x)		(((x) << VIVS_DE_BLOCK8_ALPHA_MODES_DST_BLENDING_MODE__SHIFT) & VIVS_DE_BLOCK8_ALPHA_MODES_DST_BLENDING_MODE__MASK)
#define VIVS_DE_BLOCK8_ALPHA_MODES_DST_ALPHA_FACTOR__MASK	0x80000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_DST_ALPHA_FACTOR__SHIFT	31
#define VIVS_DE_BLOCK8_ALPHA_MODES_DST_ALPHA_FACTOR_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_ALPHA_MODES_DST_ALPHA_FACTOR_ENABLE	0x80000000

#define VIVS_DE_BLOCK8_ADDRESS_U(i0)			       (0x00012b40 + 0x4*(i0))
#define VIVS_DE_BLOCK8_ADDRESS_U__ESIZE				0x00000004
#define VIVS_DE_BLOCK8_ADDRESS_U__LEN				0x00000008

#define VIVS_DE_BLOCK8_STRIDE_U(i0)			       (0x00012b60 + 0x4*(i0))
#define VIVS_DE_BLOCK8_STRIDE_U__ESIZE				0x00000004
#define VIVS_DE_BLOCK8_STRIDE_U__LEN				0x00000008
#define VIVS_DE_BLOCK8_STRIDE_U_STRIDE__MASK			0x0003ffff
#define VIVS_DE_BLOCK8_STRIDE_U_STRIDE__SHIFT			0
#define VIVS_DE_BLOCK8_STRIDE_U_STRIDE(x)			(((x) << VIVS_DE_BLOCK8_STRIDE_U_STRIDE__SHIFT) & VIVS_DE_BLOCK8_STRIDE_U_STRIDE__MASK)

#define VIVS_DE_BLOCK8_ADDRESS_V(i0)			       (0x00012b80 + 0x4*(i0))
#define VIVS_DE_BLOCK8_ADDRESS_V__ESIZE				0x00000004
#define VIVS_DE_BLOCK8_ADDRESS_V__LEN				0x00000008

#define VIVS_DE_BLOCK8_STRIDE_V(i0)			       (0x00012ba0 + 0x4*(i0))
#define VIVS_DE_BLOCK8_STRIDE_V__ESIZE				0x00000004
#define VIVS_DE_BLOCK8_STRIDE_V__LEN				0x00000008
#define VIVS_DE_BLOCK8_STRIDE_V_STRIDE__MASK			0x0003ffff
#define VIVS_DE_BLOCK8_STRIDE_V_STRIDE__SHIFT			0
#define VIVS_DE_BLOCK8_STRIDE_V_STRIDE(x)			(((x) << VIVS_DE_BLOCK8_STRIDE_V_STRIDE__SHIFT) & VIVS_DE_BLOCK8_STRIDE_V_STRIDE__MASK)

#define VIVS_DE_BLOCK8_SRC_ROTATION_HEIGHT(i0)		       (0x00012bc0 + 0x4*(i0))
#define VIVS_DE_BLOCK8_SRC_ROTATION_HEIGHT__ESIZE		0x00000004
#define VIVS_DE_BLOCK8_SRC_ROTATION_HEIGHT__LEN			0x00000008
#define VIVS_DE_BLOCK8_SRC_ROTATION_HEIGHT_HEIGHT__MASK		0x0000ffff
#define VIVS_DE_BLOCK8_SRC_ROTATION_HEIGHT_HEIGHT__SHIFT	0
#define VIVS_DE_BLOCK8_SRC_ROTATION_HEIGHT_HEIGHT(x)		(((x) << VIVS_DE_BLOCK8_SRC_ROTATION_HEIGHT_HEIGHT__SHIFT) & VIVS_DE_BLOCK8_SRC_ROTATION_HEIGHT_HEIGHT__MASK)

#define VIVS_DE_BLOCK8_ROT_ANGLE(i0)			       (0x00012be0 + 0x4*(i0))
#define VIVS_DE_BLOCK8_ROT_ANGLE__ESIZE				0x00000004
#define VIVS_DE_BLOCK8_ROT_ANGLE__LEN				0x00000008
#define VIVS_DE_BLOCK8_ROT_ANGLE_SRC__MASK			0x00000007
#define VIVS_DE_BLOCK8_ROT_ANGLE_SRC__SHIFT			0
#define VIVS_DE_BLOCK8_ROT_ANGLE_SRC(x)				(((x) << VIVS_DE_BLOCK8_ROT_ANGLE_SRC__SHIFT) & VIVS_DE_BLOCK8_ROT_ANGLE_SRC__MASK)
#define VIVS_DE_BLOCK8_ROT_ANGLE_DST__MASK			0x00000038
#define VIVS_DE_BLOCK8_ROT_ANGLE_DST__SHIFT			3
#define VIVS_DE_BLOCK8_ROT_ANGLE_DST(x)				(((x) << VIVS_DE_BLOCK8_ROT_ANGLE_DST__SHIFT) & VIVS_DE_BLOCK8_ROT_ANGLE_DST__MASK)
#define VIVS_DE_BLOCK8_ROT_ANGLE_SRC_MASK			0x00000100
#define VIVS_DE_BLOCK8_ROT_ANGLE_DST_MASK			0x00000200
#define VIVS_DE_BLOCK8_ROT_ANGLE_SRC_MIRROR__MASK		0x00003000
#define VIVS_DE_BLOCK8_ROT_ANGLE_SRC_MIRROR__SHIFT		12
#define VIVS_DE_BLOCK8_ROT_ANGLE_SRC_MIRROR(x)			(((x) << VIVS_DE_BLOCK8_ROT_ANGLE_SRC_MIRROR__SHIFT) & VIVS_DE_BLOCK8_ROT_ANGLE_SRC_MIRROR__MASK)
#define VIVS_DE_BLOCK8_ROT_ANGLE_SRC_MIRROR_MASK		0x00008000
#define VIVS_DE_BLOCK8_ROT_ANGLE_DST_MIRROR__MASK		0x00030000
#define VIVS_DE_BLOCK8_ROT_ANGLE_DST_MIRROR__SHIFT		16
#define VIVS_DE_BLOCK8_ROT_ANGLE_DST_MIRROR(x)			(((x) << VIVS_DE_BLOCK8_ROT_ANGLE_DST_MIRROR__SHIFT) & VIVS_DE_BLOCK8_ROT_ANGLE_DST_MIRROR__MASK)
#define VIVS_DE_BLOCK8_ROT_ANGLE_DST_MIRROR_MASK		0x00080000

#define VIVS_DE_BLOCK8_GLOBAL_SRC_COLOR(i0)		       (0x00012c00 + 0x4*(i0))
#define VIVS_DE_BLOCK8_GLOBAL_SRC_COLOR__ESIZE			0x00000004
#define VIVS_DE_BLOCK8_GLOBAL_SRC_COLOR__LEN			0x00000008

#define VIVS_DE_BLOCK8_GLOBAL_DEST_COLOR(i0)		       (0x00012c20 + 0x4*(i0))
#define VIVS_DE_BLOCK8_GLOBAL_DEST_COLOR__ESIZE			0x00000004
#define VIVS_DE_BLOCK8_GLOBAL_DEST_COLOR__LEN			0x00000008

#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES(i0)		       (0x00012c40 + 0x4*(i0))
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES__ESIZE		0x00000004
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES__LEN		0x00000008
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_SRC_PREMULTIPLY__MASK	0x00000001
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_SRC_PREMULTIPLY__SHIFT	0
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_SRC_PREMULTIPLY_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_SRC_PREMULTIPLY_ENABLE	0x00000001
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_DST_PREMULTIPLY__MASK	0x00000010
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_DST_PREMULTIPLY__SHIFT	4
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_DST_PREMULTIPLY_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_DST_PREMULTIPLY_ENABLE	0x00000010
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY__MASK	0x00000300
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY__SHIFT	8
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY_ALPHA	0x00000100
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_SRC_GLOBAL_PREMULTIPLY_COLOR	0x00000200
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_DST_DEMULTIPLY__MASK	0x00100000
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_DST_DEMULTIPLY__SHIFT	20
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_DST_DEMULTIPLY_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_COLOR_MULTIPLY_MODES_DST_DEMULTIPLY_ENABLE	0x00100000

#define VIVS_DE_BLOCK8_TRANSPARENCY(i0)			       (0x00012c60 + 0x4*(i0))
#define VIVS_DE_BLOCK8_TRANSPARENCY__ESIZE			0x00000004
#define VIVS_DE_BLOCK8_TRANSPARENCY__LEN			0x00000008
#define VIVS_DE_BLOCK8_TRANSPARENCY_SOURCE__MASK		0x00000003
#define VIVS_DE_BLOCK8_TRANSPARENCY_SOURCE__SHIFT		0
#define VIVS_DE_BLOCK8_TRANSPARENCY_SOURCE_OPAQUE		0x00000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_SOURCE_MASK			0x00000001
#define VIVS_DE_BLOCK8_TRANSPARENCY_SOURCE_KEY			0x00000002
#define VIVS_DE_BLOCK8_TRANSPARENCY_PATTERN__MASK		0x00000030
#define VIVS_DE_BLOCK8_TRANSPARENCY_PATTERN__SHIFT		4
#define VIVS_DE_BLOCK8_TRANSPARENCY_PATTERN_OPAQUE		0x00000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_PATTERN_MASK		0x00000010
#define VIVS_DE_BLOCK8_TRANSPARENCY_PATTERN_KEY			0x00000020
#define VIVS_DE_BLOCK8_TRANSPARENCY_DESTINATION__MASK		0x00000300
#define VIVS_DE_BLOCK8_TRANSPARENCY_DESTINATION__SHIFT		8
#define VIVS_DE_BLOCK8_TRANSPARENCY_DESTINATION_OPAQUE		0x00000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_DESTINATION_MASK		0x00000100
#define VIVS_DE_BLOCK8_TRANSPARENCY_DESTINATION_KEY		0x00000200
#define VIVS_DE_BLOCK8_TRANSPARENCY_TRANSPARENCY_MASK		0x00001000
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_SRC_OVERRIDE__MASK	0x00030000
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_SRC_OVERRIDE__SHIFT	16
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_SRC_OVERRIDE_DEFAULT	0x00000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_SRC_OVERRIDE_USE_ENABLE	0x00010000
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_SRC_OVERRIDE_USE_DISABLE	0x00020000
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_PAT_OVERRIDE__MASK	0x00300000
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_PAT_OVERRIDE__SHIFT	20
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_PAT_OVERRIDE_DEFAULT	0x00000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_PAT_OVERRIDE_USE_ENABLE	0x00100000
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_PAT_OVERRIDE_USE_DISABLE	0x00200000
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_DST_OVERRIDE__MASK	0x03000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_DST_OVERRIDE__SHIFT	24
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_DST_OVERRIDE_DEFAULT	0x00000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_DST_OVERRIDE_USE_ENABLE	0x01000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_USE_DST_OVERRIDE_USE_DISABLE	0x02000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_RESOURCE_OVERRIDE_MASK	0x10000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_DFB_COLOR_KEY__MASK		0x20000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_DFB_COLOR_KEY__SHIFT	29
#define VIVS_DE_BLOCK8_TRANSPARENCY_DFB_COLOR_KEY_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_DFB_COLOR_KEY_ENABLE	0x20000000
#define VIVS_DE_BLOCK8_TRANSPARENCY_DFB_COLOR_KEY_MASK		0x80000000

#define VIVS_DE_BLOCK8_CONTROL(i0)			       (0x00012c80 + 0x4*(i0))
#define VIVS_DE_BLOCK8_CONTROL__ESIZE				0x00000004
#define VIVS_DE_BLOCK8_CONTROL__LEN				0x00000008
#define VIVS_DE_BLOCK8_CONTROL_YUV__MASK			0x00000001
#define VIVS_DE_BLOCK8_CONTROL_YUV__SHIFT			0
#define VIVS_DE_BLOCK8_CONTROL_YUV_601				0x00000000
#define VIVS_DE_BLOCK8_CONTROL_YUV_709				0x00000001
#define VIVS_DE_BLOCK8_CONTROL_YUV_MASK				0x00000008
#define VIVS_DE_BLOCK8_CONTROL_UV_SWIZZLE__MASK			0x00000010
#define VIVS_DE_BLOCK8_CONTROL_UV_SWIZZLE__SHIFT		4
#define VIVS_DE_BLOCK8_CONTROL_UV_SWIZZLE_UV			0x00000000
#define VIVS_DE_BLOCK8_CONTROL_UV_SWIZZLE_VU			0x00000010
#define VIVS_DE_BLOCK8_CONTROL_UV_SWIZZLE_MASK			0x00000080
#define VIVS_DE_BLOCK8_CONTROL_YUVRGB__MASK			0x00000100
#define VIVS_DE_BLOCK8_CONTROL_YUVRGB__SHIFT			8
#define VIVS_DE_BLOCK8_CONTROL_YUVRGB_DISABLE			0x00000000
#define VIVS_DE_BLOCK8_CONTROL_YUVRGB_ENABLE			0x00000100
#define VIVS_DE_BLOCK8_CONTROL_YUVRGB_MASK			0x00000800

#define VIVS_DE_BLOCK8_SRC_COLOR_KEY_HIGH(i0)		       (0x00012ca0 + 0x4*(i0))
#define VIVS_DE_BLOCK8_SRC_COLOR_KEY_HIGH__ESIZE		0x00000004
#define VIVS_DE_BLOCK8_SRC_COLOR_KEY_HIGH__LEN			0x00000008

#define VIVS_DE_BLOCK8_SRC_EX_CONFIG(i0)		       (0x00012cc0 + 0x4*(i0))
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG__ESIZE			0x00000004
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG__LEN			0x00000008
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG_MULTI_TILED__MASK		0x00000001
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG_MULTI_TILED__SHIFT		0
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG_MULTI_TILED_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG_MULTI_TILED_ENABLE		0x00000001
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG_SUPER_TILED__MASK		0x00000008
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG_SUPER_TILED__SHIFT		3
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG_SUPER_TILED_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG_SUPER_TILED_ENABLE		0x00000008
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG_MINOR_TILED__MASK		0x00000100
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG_MINOR_TILED__SHIFT		8
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG_MINOR_TILED_DISABLE	0x00000000
#define VIVS_DE_BLOCK8_SRC_EX_CONFIG_MINOR_TILED_ENABLE		0x00000100

#define VIVS_DE_BLOCK8_SRC_EX_ADDRESS(i0)		       (0x00012ce0 + 0x4*(i0))
#define VIVS_DE_BLOCK8_SRC_EX_ADDRESS__ESIZE			0x00000004
#define VIVS_DE_BLOCK8_SRC_EX_ADDRESS__LEN			0x00000008


#endif /* STATE_2D_XML */