Home | History | Annotate | Download | only in etnaviv
      1 #ifndef CMDSTREAM_XML
      2 #define CMDSTREAM_XML
      3 
      4 /* Autogenerated file, DO NOT EDIT manually!
      5 
      6 This file was generated by the rules-ng-ng headergen tool in this git repository:
      7 http://0x04.net/cgit/index.cgi/rules-ng-ng
      8 git clone git://0x04.net/rules-ng-ng
      9 
     10 The rules-ng-ng source files this header was generated from are:
     11 - cmdstream.xml (  12621 bytes, from 2016-09-06 14:44:16)
     12 - copyright.xml (   1597 bytes, from 2016-09-06 14:44:16)
     13 - common.xml    (  20583 bytes, from 2016-09-06 14:14:12)
     14 
     15 Copyright (C) 2012-2016 by the following authors:
     16 - Wladimir J. van der Laan <laanwj (at) gmail.com>
     17 - Christian Gmeiner <christian.gmeiner (at) gmail.com>
     18 - Lucas Stach <l.stach (at) pengutronix.de>
     19 - Russell King <rmk (at) arm.linux.org.uk>
     20 
     21 Permission is hereby granted, free of charge, to any person obtaining a
     22 copy of this software and associated documentation files (the "Software"),
     23 to deal in the Software without restriction, including without limitation
     24 the rights to use, copy, modify, merge, publish, distribute, sub license,
     25 and/or sell copies of the Software, and to permit persons to whom the
     26 Software is furnished to do so, subject to the following conditions:
     27 
     28 The above copyright notice and this permission notice (including the
     29 next paragraph) shall be included in all copies or substantial portions
     30 of the Software.
     31 
     32 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     33 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     34 FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
     35 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     36 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
     37 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
     38 DEALINGS IN THE SOFTWARE.
     39 */
     40 
     41 
     42 #define FE_OPCODE_LOAD_STATE					0x00000001
     43 #define FE_OPCODE_END						0x00000002
     44 #define FE_OPCODE_NOP						0x00000003
     45 #define FE_OPCODE_DRAW_2D					0x00000004
     46 #define FE_OPCODE_DRAW_PRIMITIVES				0x00000005
     47 #define FE_OPCODE_DRAW_INDEXED_PRIMITIVES			0x00000006
     48 #define FE_OPCODE_WAIT						0x00000007
     49 #define FE_OPCODE_LINK						0x00000008
     50 #define FE_OPCODE_STALL						0x00000009
     51 #define FE_OPCODE_CALL						0x0000000a
     52 #define FE_OPCODE_RETURN					0x0000000b
     53 #define FE_OPCODE_CHIP_SELECT					0x0000000d
     54 #define PRIMITIVE_TYPE_POINTS					0x00000001
     55 #define PRIMITIVE_TYPE_LINES					0x00000002
     56 #define PRIMITIVE_TYPE_LINE_STRIP				0x00000003
     57 #define PRIMITIVE_TYPE_TRIANGLES				0x00000004
     58 #define PRIMITIVE_TYPE_TRIANGLE_STRIP				0x00000005
     59 #define PRIMITIVE_TYPE_TRIANGLE_FAN				0x00000006
     60 #define PRIMITIVE_TYPE_LINE_LOOP				0x00000007
     61 #define PRIMITIVE_TYPE_QUADS					0x00000008
     62 #define VIV_FE_LOAD_STATE					0x00000000
     63 
     64 #define VIV_FE_LOAD_STATE_HEADER				0x00000000
     65 #define VIV_FE_LOAD_STATE_HEADER_OP__MASK			0xf8000000
     66 #define VIV_FE_LOAD_STATE_HEADER_OP__SHIFT			27
     67 #define VIV_FE_LOAD_STATE_HEADER_OP_LOAD_STATE			0x08000000
     68 #define VIV_FE_LOAD_STATE_HEADER_FIXP				0x04000000
     69 #define VIV_FE_LOAD_STATE_HEADER_COUNT__MASK			0x03ff0000
     70 #define VIV_FE_LOAD_STATE_HEADER_COUNT__SHIFT			16
     71 #define VIV_FE_LOAD_STATE_HEADER_COUNT(x)			(((x) << VIV_FE_LOAD_STATE_HEADER_COUNT__SHIFT) & VIV_FE_LOAD_STATE_HEADER_COUNT__MASK)
     72 #define VIV_FE_LOAD_STATE_HEADER_OFFSET__MASK			0x0000ffff
     73 #define VIV_FE_LOAD_STATE_HEADER_OFFSET__SHIFT			0
     74 #define VIV_FE_LOAD_STATE_HEADER_OFFSET(x)			(((x) << VIV_FE_LOAD_STATE_HEADER_OFFSET__SHIFT) & VIV_FE_LOAD_STATE_HEADER_OFFSET__MASK)
     75 #define VIV_FE_LOAD_STATE_HEADER_OFFSET__SHR			2
     76 
     77 #define VIV_FE_END						0x00000000
     78 
     79 #define VIV_FE_END_HEADER					0x00000000
     80 #define VIV_FE_END_HEADER_EVENT_ID__MASK			0x0000001f
     81 #define VIV_FE_END_HEADER_EVENT_ID__SHIFT			0
     82 #define VIV_FE_END_HEADER_EVENT_ID(x)				(((x) << VIV_FE_END_HEADER_EVENT_ID__SHIFT) & VIV_FE_END_HEADER_EVENT_ID__MASK)
     83 #define VIV_FE_END_HEADER_EVENT_ENABLE				0x00000100
     84 #define VIV_FE_END_HEADER_OP__MASK				0xf8000000
     85 #define VIV_FE_END_HEADER_OP__SHIFT				27
     86 #define VIV_FE_END_HEADER_OP_END				0x10000000
     87 
     88 #define VIV_FE_NOP						0x00000000
     89 
     90 #define VIV_FE_NOP_HEADER					0x00000000
     91 #define VIV_FE_NOP_HEADER_OP__MASK				0xf8000000
     92 #define VIV_FE_NOP_HEADER_OP__SHIFT				27
     93 #define VIV_FE_NOP_HEADER_OP_NOP				0x18000000
     94 
     95 #define VIV_FE_DRAW_2D						0x00000000
     96 
     97 #define VIV_FE_DRAW_2D_HEADER					0x00000000
     98 #define VIV_FE_DRAW_2D_HEADER_COUNT__MASK			0x0000ff00
     99 #define VIV_FE_DRAW_2D_HEADER_COUNT__SHIFT			8
    100 #define VIV_FE_DRAW_2D_HEADER_COUNT(x)				(((x) << VIV_FE_DRAW_2D_HEADER_COUNT__SHIFT) & VIV_FE_DRAW_2D_HEADER_COUNT__MASK)
    101 #define VIV_FE_DRAW_2D_HEADER_DATA_COUNT__MASK			0x07ff0000
    102 #define VIV_FE_DRAW_2D_HEADER_DATA_COUNT__SHIFT			16
    103 #define VIV_FE_DRAW_2D_HEADER_DATA_COUNT(x)			(((x) << VIV_FE_DRAW_2D_HEADER_DATA_COUNT__SHIFT) & VIV_FE_DRAW_2D_HEADER_DATA_COUNT__MASK)
    104 #define VIV_FE_DRAW_2D_HEADER_OP__MASK				0xf8000000
    105 #define VIV_FE_DRAW_2D_HEADER_OP__SHIFT				27
    106 #define VIV_FE_DRAW_2D_HEADER_OP_DRAW_2D			0x20000000
    107 
    108 #define VIV_FE_DRAW_2D_TOP_LEFT					0x00000008
    109 #define VIV_FE_DRAW_2D_TOP_LEFT_X__MASK				0x0000ffff
    110 #define VIV_FE_DRAW_2D_TOP_LEFT_X__SHIFT			0
    111 #define VIV_FE_DRAW_2D_TOP_LEFT_X(x)				(((x) << VIV_FE_DRAW_2D_TOP_LEFT_X__SHIFT) & VIV_FE_DRAW_2D_TOP_LEFT_X__MASK)
    112 #define VIV_FE_DRAW_2D_TOP_LEFT_Y__MASK				0xffff0000
    113 #define VIV_FE_DRAW_2D_TOP_LEFT_Y__SHIFT			16
    114 #define VIV_FE_DRAW_2D_TOP_LEFT_Y(x)				(((x) << VIV_FE_DRAW_2D_TOP_LEFT_Y__SHIFT) & VIV_FE_DRAW_2D_TOP_LEFT_Y__MASK)
    115 
    116 #define VIV_FE_DRAW_2D_BOTTOM_RIGHT				0x0000000c
    117 #define VIV_FE_DRAW_2D_BOTTOM_RIGHT_X__MASK			0x0000ffff
    118 #define VIV_FE_DRAW_2D_BOTTOM_RIGHT_X__SHIFT			0
    119 #define VIV_FE_DRAW_2D_BOTTOM_RIGHT_X(x)			(((x) << VIV_FE_DRAW_2D_BOTTOM_RIGHT_X__SHIFT) & VIV_FE_DRAW_2D_BOTTOM_RIGHT_X__MASK)
    120 #define VIV_FE_DRAW_2D_BOTTOM_RIGHT_Y__MASK			0xffff0000
    121 #define VIV_FE_DRAW_2D_BOTTOM_RIGHT_Y__SHIFT			16
    122 #define VIV_FE_DRAW_2D_BOTTOM_RIGHT_Y(x)			(((x) << VIV_FE_DRAW_2D_BOTTOM_RIGHT_Y__SHIFT) & VIV_FE_DRAW_2D_BOTTOM_RIGHT_Y__MASK)
    123 
    124 #define VIV_FE_DRAW_PRIMITIVES					0x00000000
    125 
    126 #define VIV_FE_DRAW_PRIMITIVES_HEADER				0x00000000
    127 #define VIV_FE_DRAW_PRIMITIVES_HEADER_OP__MASK			0xf8000000
    128 #define VIV_FE_DRAW_PRIMITIVES_HEADER_OP__SHIFT			27
    129 #define VIV_FE_DRAW_PRIMITIVES_HEADER_OP_DRAW_PRIMITIVES	0x28000000
    130 
    131 #define VIV_FE_DRAW_PRIMITIVES_COMMAND				0x00000004
    132 #define VIV_FE_DRAW_PRIMITIVES_COMMAND_TYPE__MASK		0x000000ff
    133 #define VIV_FE_DRAW_PRIMITIVES_COMMAND_TYPE__SHIFT		0
    134 #define VIV_FE_DRAW_PRIMITIVES_COMMAND_TYPE(x)			(((x) << VIV_FE_DRAW_PRIMITIVES_COMMAND_TYPE__SHIFT) & VIV_FE_DRAW_PRIMITIVES_COMMAND_TYPE__MASK)
    135 
    136 #define VIV_FE_DRAW_PRIMITIVES_START				0x00000008
    137 
    138 #define VIV_FE_DRAW_PRIMITIVES_COUNT				0x0000000c
    139 
    140 #define VIV_FE_DRAW_INDEXED_PRIMITIVES				0x00000000
    141 
    142 #define VIV_FE_DRAW_INDEXED_PRIMITIVES_HEADER			0x00000000
    143 #define VIV_FE_DRAW_INDEXED_PRIMITIVES_HEADER_OP__MASK		0xf8000000
    144 #define VIV_FE_DRAW_INDEXED_PRIMITIVES_HEADER_OP__SHIFT		27
    145 #define VIV_FE_DRAW_INDEXED_PRIMITIVES_HEADER_OP_DRAW_INDEXED_PRIMITIVES	0x30000000
    146 
    147 #define VIV_FE_DRAW_INDEXED_PRIMITIVES_COMMAND			0x00000004
    148 #define VIV_FE_DRAW_INDEXED_PRIMITIVES_COMMAND_TYPE__MASK	0x000000ff
    149 #define VIV_FE_DRAW_INDEXED_PRIMITIVES_COMMAND_TYPE__SHIFT	0
    150 #define VIV_FE_DRAW_INDEXED_PRIMITIVES_COMMAND_TYPE(x)		(((x) << VIV_FE_DRAW_INDEXED_PRIMITIVES_COMMAND_TYPE__SHIFT) & VIV_FE_DRAW_INDEXED_PRIMITIVES_COMMAND_TYPE__MASK)
    151 
    152 #define VIV_FE_DRAW_INDEXED_PRIMITIVES_START			0x00000008
    153 
    154 #define VIV_FE_DRAW_INDEXED_PRIMITIVES_COUNT			0x0000000c
    155 
    156 #define VIV_FE_DRAW_INDEXED_PRIMITIVES_OFFSET			0x00000010
    157 
    158 #define VIV_FE_WAIT						0x00000000
    159 
    160 #define VIV_FE_WAIT_HEADER					0x00000000
    161 #define VIV_FE_WAIT_HEADER_DELAY__MASK				0x0000ffff
    162 #define VIV_FE_WAIT_HEADER_DELAY__SHIFT				0
    163 #define VIV_FE_WAIT_HEADER_DELAY(x)				(((x) << VIV_FE_WAIT_HEADER_DELAY__SHIFT) & VIV_FE_WAIT_HEADER_DELAY__MASK)
    164 #define VIV_FE_WAIT_HEADER_OP__MASK				0xf8000000
    165 #define VIV_FE_WAIT_HEADER_OP__SHIFT				27
    166 #define VIV_FE_WAIT_HEADER_OP_WAIT				0x38000000
    167 
    168 #define VIV_FE_LINK						0x00000000
    169 
    170 #define VIV_FE_LINK_HEADER					0x00000000
    171 #define VIV_FE_LINK_HEADER_PREFETCH__MASK			0x0000ffff
    172 #define VIV_FE_LINK_HEADER_PREFETCH__SHIFT			0
    173 #define VIV_FE_LINK_HEADER_PREFETCH(x)				(((x) << VIV_FE_LINK_HEADER_PREFETCH__SHIFT) & VIV_FE_LINK_HEADER_PREFETCH__MASK)
    174 #define VIV_FE_LINK_HEADER_OP__MASK				0xf8000000
    175 #define VIV_FE_LINK_HEADER_OP__SHIFT				27
    176 #define VIV_FE_LINK_HEADER_OP_LINK				0x40000000
    177 
    178 #define VIV_FE_LINK_ADDRESS					0x00000004
    179 
    180 #define VIV_FE_STALL						0x00000000
    181 
    182 #define VIV_FE_STALL_HEADER					0x00000000
    183 #define VIV_FE_STALL_HEADER_OP__MASK				0xf8000000
    184 #define VIV_FE_STALL_HEADER_OP__SHIFT				27
    185 #define VIV_FE_STALL_HEADER_OP_STALL				0x48000000
    186 
    187 #define VIV_FE_STALL_TOKEN					0x00000004
    188 #define VIV_FE_STALL_TOKEN_FROM__MASK				0x0000001f
    189 #define VIV_FE_STALL_TOKEN_FROM__SHIFT				0
    190 #define VIV_FE_STALL_TOKEN_FROM(x)				(((x) << VIV_FE_STALL_TOKEN_FROM__SHIFT) & VIV_FE_STALL_TOKEN_FROM__MASK)
    191 #define VIV_FE_STALL_TOKEN_TO__MASK				0x00001f00
    192 #define VIV_FE_STALL_TOKEN_TO__SHIFT				8
    193 #define VIV_FE_STALL_TOKEN_TO(x)				(((x) << VIV_FE_STALL_TOKEN_TO__SHIFT) & VIV_FE_STALL_TOKEN_TO__MASK)
    194 
    195 #define VIV_FE_CALL						0x00000000
    196 
    197 #define VIV_FE_CALL_HEADER					0x00000000
    198 #define VIV_FE_CALL_HEADER_PREFETCH__MASK			0x0000ffff
    199 #define VIV_FE_CALL_HEADER_PREFETCH__SHIFT			0
    200 #define VIV_FE_CALL_HEADER_PREFETCH(x)				(((x) << VIV_FE_CALL_HEADER_PREFETCH__SHIFT) & VIV_FE_CALL_HEADER_PREFETCH__MASK)
    201 #define VIV_FE_CALL_HEADER_OP__MASK				0xf8000000
    202 #define VIV_FE_CALL_HEADER_OP__SHIFT				27
    203 #define VIV_FE_CALL_HEADER_OP_CALL				0x50000000
    204 
    205 #define VIV_FE_CALL_ADDRESS					0x00000004
    206 
    207 #define VIV_FE_CALL_RETURN_PREFETCH				0x00000008
    208 
    209 #define VIV_FE_CALL_RETURN_ADDRESS				0x0000000c
    210 
    211 #define VIV_FE_RETURN						0x00000000
    212 
    213 #define VIV_FE_RETURN_HEADER					0x00000000
    214 #define VIV_FE_RETURN_HEADER_OP__MASK				0xf8000000
    215 #define VIV_FE_RETURN_HEADER_OP__SHIFT				27
    216 #define VIV_FE_RETURN_HEADER_OP_RETURN				0x58000000
    217 
    218 #define VIV_FE_CHIP_SELECT					0x00000000
    219 
    220 #define VIV_FE_CHIP_SELECT_HEADER				0x00000000
    221 #define VIV_FE_CHIP_SELECT_HEADER_OP__MASK			0xf8000000
    222 #define VIV_FE_CHIP_SELECT_HEADER_OP__SHIFT			27
    223 #define VIV_FE_CHIP_SELECT_HEADER_OP_CHIP_SELECT		0x68000000
    224 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP15			0x00008000
    225 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP14			0x00004000
    226 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP13			0x00002000
    227 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP12			0x00001000
    228 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP11			0x00000800
    229 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP10			0x00000400
    230 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP9			0x00000200
    231 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP8			0x00000100
    232 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP7			0x00000080
    233 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP6			0x00000040
    234 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP5			0x00000020
    235 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP4			0x00000010
    236 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP3			0x00000008
    237 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP2			0x00000004
    238 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP1			0x00000002
    239 #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP0			0x00000001
    240 
    241 
    242 #endif /* CMDSTREAM_XML */
    243