From 14a4057959f8ee0a2249eb2abd64fd6b1f571d98 Mon Sep 17 00:00:00 2001 From: Ian Wisbon Date: Thu, 10 Feb 2011 17:15:15 -0500 Subject: Digi Release Code - 02142011 Missing Files Fix --- drivers/mxc/amd-gpu/include/reg/vgc/vgenums_z160.h | 291 +++++++++++++++++++++ 1 file changed, 291 insertions(+) create mode 100644 drivers/mxc/amd-gpu/include/reg/vgc/vgenums_z160.h (limited to 'drivers/mxc/amd-gpu/include/reg/vgc/vgenums_z160.h') diff --git a/drivers/mxc/amd-gpu/include/reg/vgc/vgenums_z160.h b/drivers/mxc/amd-gpu/include/reg/vgc/vgenums_z160.h new file mode 100644 index 000000000000..911c22fbbba6 --- /dev/null +++ b/drivers/mxc/amd-gpu/include/reg/vgc/vgenums_z160.h @@ -0,0 +1,291 @@ +/* Copyright (c) 2002,2007-2010, Code Aurora Forum. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of Code Aurora Forum, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef __REGS_ENUMS_H +#define __REGS_ENUMS_H + +typedef enum _BB_CULL { + BB_CULL_NONE = 0, + BB_CULL_CW = 1, + BB_CULL_CCW = 2, +} BB_CULL; + +typedef enum _BB_TEXTUREADDRESS { + BB_TADDRESS_WRAP = 0, + BB_TADDRESS_CLAMP = 1, + BB_TADDRESS_BORDER = 2, + BB_TADDRESS_MIRROR = 4, + BB_TADDRESS_MIRRORCLAMP = 5, // Not supported on G3x cores + BB_TADDRESS_MIRRORBORDER = 6, // Not supported on G3x cores +} BB_TEXTUREADDRESS; + +typedef enum _BB_TEXTYPE { + BB_TEXTYPE_4444 = 0, + BB_TEXTYPE_1555 = 1, + BB_TEXTYPE_5551 = 2, + BB_TEXTYPE_565 = 3, + BB_TEXTYPE_8888 = 4, + BB_TEXTYPE_8 = 5, + BB_TEXTYPE_88 = 6, + BB_TEXTYPE_4 = 7, + BB_TEXTYPE_44 = 8, + BB_TEXTYPE_UYVY = 9, + BB_TEXTYPE_YUY2 = 10, + BB_TEXTYPE_YVYU = 11, + BB_TEXTYPE_DXT1 = 12, + BB_TEXTYPE_PACKMAN = 13, + BB_TEXTYPE_PACKMAN_ALPHA4 = 14, + BB_TEXTYPE_1F16 = 15, + BB_TEXTYPE_2F16 = 16, + BB_TEXTYPE_4F16 = 17, + BB_TEXTYPE_IPACKMAN_RGB = 18, + BB_TEXTYPE_IPACKMAN_RGBA = 19, +} BB_TEXTYPE; + +typedef enum _BB_CMPFUNC { + BB_CMP_NEVER = 0, + BB_CMP_LESS = 1, + BB_CMP_EQUAL = 2, + BB_CMP_LESSEQUAL = 3, + BB_CMP_GREATER = 4, + BB_CMP_NOTEQUAL = 5, + BB_CMP_GREATEREQUAL = 6, + BB_CMP_ALWAYS = 7, +} BB_CMPFUNC; + +typedef enum _BB_STENCILOP { + BB_STENCILOP_KEEP = 0, + BB_STENCILOP_ZERO = 1, + BB_STENCILOP_REPLACE = 2, + BB_STENCILOP_INCRSAT = 3, + BB_STENCILOP_DECRSAT = 4, + BB_STENCILOP_INVERT = 5, + BB_STENCILOP_INCR = 6, + BB_STENCILOP_DECR = 7, +} BB_STENCILOP; + +typedef enum _BB_PRIMITIVETYPE { + BB_PT_POINTLIST = 0, + BB_PT_LINELIST = 1, + BB_PT_LINESTRIP = 2, + BB_PT_TRIANGLELIST = 3, + BB_PT_TRIANGLESTRIP = 4, + BB_PT_TRIANGLEFAN = 5, +} BB_PRIMITIVETYPE; + +typedef enum _BB_TEXTUREFILTERTYPE { + BB_TEXF_NONE = 0, // filtering disabled (valid for mip filter only) + BB_TEXF_POINT = 1, // nearest + BB_TEXF_LINEAR = 2, // linear interpolation +} BB_TEXTUREFILTERTYPE; + +typedef enum _BB_BUFFER { + BB_BUFFER_PPCODE = 0, // Pixel processor code + BB_BUFFER_UNUSED = 1, // Unused + BB_BUFFER_CBUF = 2, // Color buffer + BB_BUFFER_ZBUF = 3, // Z buffer + BB_BUFFER_AUXBUF0 = 4, // AUX0 buffer + BB_BUFFER_AUXBUF1 = 5, // AUX1 buffer + BB_BUFFER_AUXBUF2 = 6, // AUX2 buffer + BB_BUFFER_AUXBUF3 = 7, // AUX3 buffer +} BB_BUFFER; + +typedef enum _BB_COLORFORMAT { + BB_COLOR_ARGB4444 = 0, + BB_COLOR_ARGB0565 = 1, + BB_COLOR_ARGB1555 = 2, + BB_COLOR_RGBA5551 = 3, + BB_COLOR_ARGB8888 = 4, + BB_COLOR_R16 = 5, + BB_COLOR_RG1616 = 6, + BB_COLOR_ARGB16161616 = 7, + BB_COLOR_D16 = 8, + BB_COLOR_S4D12 = 9, + BB_COLOR_S1D15 = 10, + BB_COLOR_X8D24 = 11, + BB_COLOR_S8D24 = 12, + BB_COLOR_X2D30 = 13, +} BB_COLORFORMAT; + +typedef enum _BB_PP_REGCONFIG { + BB_PP_REGCONFIG_1 = 0, + BB_PP_REGCONFIG_2 = 1, + BB_PP_REGCONFIG_3 = 8, + BB_PP_REGCONFIG_4 = 2, + BB_PP_REGCONFIG_6 = 9, + BB_PP_REGCONFIG_8 = 3, + BB_PP_REGCONFIG_12 = 10, + BB_PP_REGCONFIG_16 = 4, + BB_PP_REGCONFIG_24 = 11, + BB_PP_REGCONFIG_32 = 5, +} BB_PP_REGCONFIG; + +typedef enum _G2D_read_t { + G2D_READ_DST = 0, + G2D_READ_SRC1 = 1, + G2D_READ_SRC2 = 2, + G2D_READ_SRC3 = 3, +} G2D_read_t; + +typedef enum _G2D_format_t { + G2D_1 = 0, // foreground & background + G2D_1BW = 1, // black & white + G2D_4 = 2, + G2D_8 = 3, // alpha + G2D_4444 = 4, + G2D_1555 = 5, + G2D_0565 = 6, + G2D_8888 = 7, + G2D_YUY2 = 8, + G2D_UYVY = 9, + G2D_YVYU = 10, + G2D_4444_RGBA = 11, + G2D_5551_RGBA = 12, + G2D_8888_RGBA = 13, + G2D_A8 = 14, // for alpha texture only +} G2D_format_t; + +typedef enum _G2D_wrap_t { + G2D_WRAP_CLAMP = 0, + G2D_WRAP_REPEAT = 1, + G2D_WRAP_MIRROR = 2, + G2D_WRAP_BORDER = 3, +} G2D_wrap_t; + +typedef enum _G2D_BLEND_OP { + G2D_BLENDOP_ADD = 0, + G2D_BLENDOP_SUB = 1, + G2D_BLENDOP_MIN = 2, + G2D_BLENDOP_MAX = 3, +} G2D_BLEND_OP; + +typedef enum _G2D_GRAD_OP { + G2D_GRADOP_DOT = 0, + G2D_GRADOP_RCP = 1, + G2D_GRADOP_SQRTMUL = 2, + G2D_GRADOP_SQRTADD = 3, +} G2D_GRAD_OP; + +typedef enum _G2D_BLEND_SRC { + G2D_BLENDSRC_ZERO = 0, // One with invert + G2D_BLENDSRC_SOURCE = 1, // Paint with coverage alpha applied + G2D_BLENDSRC_DESTINATION = 2, + G2D_BLENDSRC_IMAGE = 3, // Second texture + G2D_BLENDSRC_TEMP0 = 4, + G2D_BLENDSRC_TEMP1 = 5, + G2D_BLENDSRC_TEMP2 = 6, +} G2D_BLEND_SRC; + +typedef enum _G2D_BLEND_DST { + G2D_BLENDDST_IGNORE = 0, // Ignore destination + G2D_BLENDDST_TEMP0 = 1, + G2D_BLENDDST_TEMP1 = 2, + G2D_BLENDDST_TEMP2 = 3, +} G2D_BLEND_DST; + +typedef enum _G2D_BLEND_CONST { + G2D_BLENDSRC_CONST0 = 0, + G2D_BLENDSRC_CONST1 = 1, + G2D_BLENDSRC_CONST2 = 2, + G2D_BLENDSRC_CONST3 = 3, + G2D_BLENDSRC_CONST4 = 4, + G2D_BLENDSRC_CONST5 = 5, + G2D_BLENDSRC_CONST6 = 6, + G2D_BLENDSRC_CONST7 = 7, +} G2D_BLEND_CONST; + +typedef enum _V3_NEXTCMD { + VGV3_NEXTCMD_CONTINUE = 0, // Continue reading at current address, COUNT gives size of next packet. + VGV3_NEXTCMD_JUMP = 1, // Jump to CALLADDR, COUNT gives size of next packet. + VGV3_NEXTCMD_CALL = 2, // First call a sub-stream at CALLADDR for CALLCOUNT dwords. Then perform a continue. + VGV3_NEXTCMD_CALLV2TRUE = 3, // Not supported. + VGV3_NEXTCMD_CALLV2FALSE = 4, // Not supported. + VGV3_NEXTCMD_ABORT = 5, // Abort reading. This ends the stream. Normally stream can just be paused (or automatically pauses at the end) which avoids any data being lost. +} V3_NEXTCMD; + +typedef enum _V3_FORMAT { + VGV3_FORMAT_S8 = 0, // Signed 8 bit data (4 writes per data dword) => VGV2-float + VGV3_FORMAT_S16 = 1, // Signed 16 bit data (2 writes per data dword) => VGV2-float + VGV3_FORMAT_S32 = 2, // Signed 32 bit data => VGV2-float + VGV3_FORMAT_F32 = 3, // IEEE 32-bit floating point => VGV2-float + VGV3_FORMAT_RAW = 4, // No conversion +} V3_FORMAT; + +typedef enum _V2_ACTION { + VGV2_ACTION_END = 0, // end previous path + VGV2_ACTION_MOVETOOPEN = 1, // end previous path, C1=C4, start new open subpath + VGV2_ACTION_MOVETOCLOSED = 2, // end previous path, C1=C4, start new closed subpath + VGV2_ACTION_LINETO = 3, // line C1,C4 + VGV2_ACTION_CUBICTO = 4, // cubic C1,C2,C3,C4. + VGV2_ACTION_QUADTO = 5, // quadratic C1,C3,C4. + VGV2_ACTION_SCUBICTO = 6, // smooth cubic C1,C4. + VGV2_ACTION_SQUADTO = 7, // smooth quadratic C1,C3,C4. + VGV2_ACTION_VERTEXTO = 8, // half lineto C4=pos, C3=normal. + VGV2_ACTION_VERTEXTOOPEN = 9, // moveto open + half lineto C4=pos, C3=normal. + VGV2_ACTION_VERTEXTOCLOSED = 10, // moveto closed + half lineto C4=pos, C3=normal. + VGV2_ACTION_MOVETOMOVE = 11, // end previous path, C1=C4, move but do not start a subpath + VGV2_ACTION_FLUSH = 15, // end previous path and block following regwrites until all lines sent +} V2_ACTION; + +typedef enum _V2_CAP { + VGV2_CAP_BUTT = 0, // butt caps (straight line overlappin starting point + VGV2_CAP_ROUND = 1, // round caps (smoothness depends on ARCSIN/ARCCOS registers) + VGV2_CAP_SQUARE = 2, // square caps (square centered on starting point) +} V2_CAP; + +typedef enum _V2_JOIN { + VGV2_JOIN_MITER = 0, // miter joins (both sides extended towards intersection. If angle is too small (compared to STMITER register) the miter is converted into a BEVEL. + VGV2_JOIN_ROUND = 1, // round joins (smoothness depends on ARCSIN/ARCCOS registers) + VGV2_JOIN_BEVEL = 2, // bevel joins (ends of both sides are connected with a single line) +} V2_JOIN; + +enum +{ + G2D_GRADREG_X = 0, // also usable as temp + G2D_GRADREG_Y = 1, // also usable as temp + G2D_GRADREG_OUTX = 8, + G2D_GRADREG_OUTY = 9, + G2D_GRADREG_C0 = 16, + G2D_GRADREG_C1 = 17, + G2D_GRADREG_C2 = 18, + G2D_GRADREG_C3 = 19, + G2D_GRADREG_C4 = 20, + G2D_GRADREG_C5 = 21, + G2D_GRADREG_C6 = 22, + G2D_GRADREG_C7 = 23, + G2D_GRADREG_C8 = 24, + G2D_GRADREG_C9 = 25, + G2D_GRADREG_C10 = 26, + G2D_GRADREG_C11 = 27, + G2D_GRADREG_ZERO = 28, + G2D_GRADREG_ONE = 29, + G2D_GRADREG_MINUSONE = 30, +}; + +#endif -- cgit v1.2.3