1bf215546Sopenharmony_ci#ifndef STATE_3D_XML 2bf215546Sopenharmony_ci#define STATE_3D_XML 3bf215546Sopenharmony_ci 4bf215546Sopenharmony_ci/* Autogenerated file, DO NOT EDIT manually! 5bf215546Sopenharmony_ci 6bf215546Sopenharmony_ciThis file was generated by the rules-ng-ng headergen tool in this git repository: 7bf215546Sopenharmony_cihttp://0x04.net/cgit/index.cgi/rules-ng-ng 8bf215546Sopenharmony_cigit clone git://0x04.net/rules-ng-ng 9bf215546Sopenharmony_ci 10bf215546Sopenharmony_ciThe rules-ng-ng source files this header was generated from are: 11bf215546Sopenharmony_ci- state.xml ( 26877 bytes, from 2022-04-09 20:48:40) 12bf215546Sopenharmony_ci- common.xml ( 35468 bytes, from 2020-10-28 12:56:03) 13bf215546Sopenharmony_ci- common_3d.xml ( 15058 bytes, from 2020-10-28 12:56:03) 14bf215546Sopenharmony_ci- state_hi.xml ( 34803 bytes, from 2020-10-28 12:56:03) 15bf215546Sopenharmony_ci- copyright.xml ( 1597 bytes, from 2020-10-28 12:56:03) 16bf215546Sopenharmony_ci- state_2d.xml ( 51552 bytes, from 2020-10-28 12:56:03) 17bf215546Sopenharmony_ci- state_3d.xml ( 84326 bytes, from 2022-04-09 21:11:44) 18bf215546Sopenharmony_ci- state_blt.xml ( 14252 bytes, from 2020-10-28 12:56:03) 19bf215546Sopenharmony_ci- state_vg.xml ( 5975 bytes, from 2020-10-28 12:56:03) 20bf215546Sopenharmony_ci 21bf215546Sopenharmony_ciCopyright (C) 2012-2022 by the following authors: 22bf215546Sopenharmony_ci- Wladimir J. van der Laan <laanwj@gmail.com> 23bf215546Sopenharmony_ci- Christian Gmeiner <christian.gmeiner@gmail.com> 24bf215546Sopenharmony_ci- Lucas Stach <l.stach@pengutronix.de> 25bf215546Sopenharmony_ci- Russell King <rmk@arm.linux.org.uk> 26bf215546Sopenharmony_ci 27bf215546Sopenharmony_ciPermission is hereby granted, free of charge, to any person obtaining a 28bf215546Sopenharmony_cicopy of this software and associated documentation files (the "Software"), 29bf215546Sopenharmony_cito deal in the Software without restriction, including without limitation 30bf215546Sopenharmony_cithe rights to use, copy, modify, merge, publish, distribute, sub license, 31bf215546Sopenharmony_ciand/or sell copies of the Software, and to permit persons to whom the 32bf215546Sopenharmony_ciSoftware is furnished to do so, subject to the following conditions: 33bf215546Sopenharmony_ci 34bf215546Sopenharmony_ciThe above copyright notice and this permission notice (including the 35bf215546Sopenharmony_cinext paragraph) shall be included in all copies or substantial portions 36bf215546Sopenharmony_ciof the Software. 37bf215546Sopenharmony_ci 38bf215546Sopenharmony_ciTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 39bf215546Sopenharmony_ciIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 40bf215546Sopenharmony_ciFITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL 41bf215546Sopenharmony_ciTHE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 42bf215546Sopenharmony_ciLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 43bf215546Sopenharmony_ciFROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 44bf215546Sopenharmony_ciDEALINGS IN THE SOFTWARE. 45bf215546Sopenharmony_ci*/ 46bf215546Sopenharmony_ci 47bf215546Sopenharmony_ci 48bf215546Sopenharmony_ci#define STENCIL_OP_KEEP 0x00000000 49bf215546Sopenharmony_ci#define STENCIL_OP_ZERO 0x00000001 50bf215546Sopenharmony_ci#define STENCIL_OP_REPLACE 0x00000002 51bf215546Sopenharmony_ci#define STENCIL_OP_INCR 0x00000003 52bf215546Sopenharmony_ci#define STENCIL_OP_DECR 0x00000004 53bf215546Sopenharmony_ci#define STENCIL_OP_INVERT 0x00000005 54bf215546Sopenharmony_ci#define STENCIL_OP_INCR_WRAP 0x00000006 55bf215546Sopenharmony_ci#define STENCIL_OP_DECR_WRAP 0x00000007 56bf215546Sopenharmony_ci#define BLEND_EQ_ADD 0x00000000 57bf215546Sopenharmony_ci#define BLEND_EQ_SUBTRACT 0x00000001 58bf215546Sopenharmony_ci#define BLEND_EQ_REVERSE_SUBTRACT 0x00000002 59bf215546Sopenharmony_ci#define BLEND_EQ_MIN 0x00000003 60bf215546Sopenharmony_ci#define BLEND_EQ_MAX 0x00000004 61bf215546Sopenharmony_ci#define BLEND_FUNC_ZERO 0x00000000 62bf215546Sopenharmony_ci#define BLEND_FUNC_ONE 0x00000001 63bf215546Sopenharmony_ci#define BLEND_FUNC_SRC_COLOR 0x00000002 64bf215546Sopenharmony_ci#define BLEND_FUNC_ONE_MINUS_SRC_COLOR 0x00000003 65bf215546Sopenharmony_ci#define BLEND_FUNC_SRC_ALPHA 0x00000004 66bf215546Sopenharmony_ci#define BLEND_FUNC_ONE_MINUS_SRC_ALPHA 0x00000005 67bf215546Sopenharmony_ci#define BLEND_FUNC_DST_ALPHA 0x00000006 68bf215546Sopenharmony_ci#define BLEND_FUNC_ONE_MINUS_DST_ALPHA 0x00000007 69bf215546Sopenharmony_ci#define BLEND_FUNC_DST_COLOR 0x00000008 70bf215546Sopenharmony_ci#define BLEND_FUNC_ONE_MINUS_DST_COLOR 0x00000009 71bf215546Sopenharmony_ci#define BLEND_FUNC_SRC_ALPHA_SATURATE 0x0000000a 72bf215546Sopenharmony_ci#define BLEND_FUNC_CONSTANT_ALPHA 0x0000000b 73bf215546Sopenharmony_ci#define BLEND_FUNC_ONE_MINUS_CONSTANT_ALPHA 0x0000000c 74bf215546Sopenharmony_ci#define BLEND_FUNC_CONSTANT_COLOR 0x0000000d 75bf215546Sopenharmony_ci#define BLEND_FUNC_ONE_MINUS_CONSTANT_COLOR 0x0000000e 76bf215546Sopenharmony_ci#define RS_FORMAT_X4R4G4B4 0x00000000 77bf215546Sopenharmony_ci#define RS_FORMAT_A4R4G4B4 0x00000001 78bf215546Sopenharmony_ci#define RS_FORMAT_X1R5G5B5 0x00000002 79bf215546Sopenharmony_ci#define RS_FORMAT_A1R5G5B5 0x00000003 80bf215546Sopenharmony_ci#define RS_FORMAT_R5G6B5 0x00000004 81bf215546Sopenharmony_ci#define RS_FORMAT_X8R8G8B8 0x00000005 82bf215546Sopenharmony_ci#define RS_FORMAT_A8R8G8B8 0x00000006 83bf215546Sopenharmony_ci#define RS_FORMAT_YUY2 0x00000007 84bf215546Sopenharmony_ci#define RS_FORMAT_64BPP_CLEAR 0x00000015 85bf215546Sopenharmony_ci#define PE_FORMAT_X4R4G4B4 0x00000000 86bf215546Sopenharmony_ci#define PE_FORMAT_A4R4G4B4 0x00000001 87bf215546Sopenharmony_ci#define PE_FORMAT_X1R5G5B5 0x00000002 88bf215546Sopenharmony_ci#define PE_FORMAT_A1R5G5B5 0x00000003 89bf215546Sopenharmony_ci#define PE_FORMAT_R5G6B5 0x00000004 90bf215546Sopenharmony_ci#define PE_FORMAT_X8R8G8B8 0x00000005 91bf215546Sopenharmony_ci#define PE_FORMAT_A8R8G8B8 0x00000006 92bf215546Sopenharmony_ci#define PE_FORMAT_YUY2 0x00000007 93bf215546Sopenharmony_ci#define PE_FORMAT_A8 0x00000010 94bf215546Sopenharmony_ci#define PE_FORMAT_R16F 0x00000011 95bf215546Sopenharmony_ci#define PE_FORMAT_G16R16F 0x00000012 96bf215546Sopenharmony_ci#define PE_FORMAT_A16B16G16R16F 0x00000013 97bf215546Sopenharmony_ci#define PE_FORMAT_R32F 0x00000014 98bf215546Sopenharmony_ci#define PE_FORMAT_G32R32F 0x00000015 99bf215546Sopenharmony_ci#define PE_FORMAT_A2B10G10R10 0x00000016 100bf215546Sopenharmony_ci#define PE_FORMAT_R8I 0x00000017 101bf215546Sopenharmony_ci#define PE_FORMAT_G8R8I 0x00000018 102bf215546Sopenharmony_ci#define PE_FORMAT_A8B8G8R8I 0x00000019 103bf215546Sopenharmony_ci#define PE_FORMAT_R16I 0x0000001a 104bf215546Sopenharmony_ci#define PE_FORMAT_G16R16I 0x0000001b 105bf215546Sopenharmony_ci#define PE_FORMAT_A16B16G16R16I 0x0000001c 106bf215546Sopenharmony_ci#define PE_FORMAT_B10G11R11F 0x0000001d 107bf215546Sopenharmony_ci#define PE_FORMAT_A2B10G10R10UI 0x0000001e 108bf215546Sopenharmony_ci#define PE_FORMAT_G8R8 0x0000001f 109bf215546Sopenharmony_ci#define PE_FORMAT_R8 0x00000023 110bf215546Sopenharmony_ci#define LOGIC_OP_CLEAR 0x00000000 111bf215546Sopenharmony_ci#define LOGIC_OP_NOR 0x00000001 112bf215546Sopenharmony_ci#define LOGIC_OP_AND_INVERTED 0x00000002 113bf215546Sopenharmony_ci#define LOGIC_OP_COPY_INVERTED 0x00000003 114bf215546Sopenharmony_ci#define LOGIC_OP_AND_REVERSE 0x00000004 115bf215546Sopenharmony_ci#define LOGIC_OP_INVERT 0x00000005 116bf215546Sopenharmony_ci#define LOGIC_OP_XOR 0x00000006 117bf215546Sopenharmony_ci#define LOGIC_OP_NAND 0x00000007 118bf215546Sopenharmony_ci#define LOGIC_OP_AND 0x00000008 119bf215546Sopenharmony_ci#define LOGIC_OP_EQUIV 0x00000009 120bf215546Sopenharmony_ci#define LOGIC_OP_NOOP 0x0000000a 121bf215546Sopenharmony_ci#define LOGIC_OP_OR_INVERTED 0x0000000b 122bf215546Sopenharmony_ci#define LOGIC_OP_COPY 0x0000000c 123bf215546Sopenharmony_ci#define LOGIC_OP_OR_REVERSE 0x0000000d 124bf215546Sopenharmony_ci#define LOGIC_OP_OR 0x0000000e 125bf215546Sopenharmony_ci#define LOGIC_OP_SET 0x0000000f 126bf215546Sopenharmony_ci#define COLOR_OUTPUT_MODE_NORMAL 0x00000000 127bf215546Sopenharmony_ci#define COLOR_OUTPUT_MODE_A2B10G10R10UI 0x00000001 128bf215546Sopenharmony_ci#define COLOR_OUTPUT_MODE_UIF32 0x00000002 129bf215546Sopenharmony_ci#define COLOR_OUTPUT_MODE_U8 0x00000003 130bf215546Sopenharmony_ci#define COLOR_OUTPUT_MODE_U16 0x00000004 131bf215546Sopenharmony_ci#define COLOR_OUTPUT_MODE_I8 0x00000005 132bf215546Sopenharmony_ci#define COLOR_OUTPUT_MODE_I16 0x00000006 133bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR0__MASK 0x00000007 134bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR0__SHIFT 0 135bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR0(x) (((x) << VARYING_NUM_COMPONENTS_VAR0__SHIFT) & VARYING_NUM_COMPONENTS_VAR0__MASK) 136bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR1__MASK 0x00000070 137bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR1__SHIFT 4 138bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR1(x) (((x) << VARYING_NUM_COMPONENTS_VAR1__SHIFT) & VARYING_NUM_COMPONENTS_VAR1__MASK) 139bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR2__MASK 0x00000700 140bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR2__SHIFT 8 141bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR2(x) (((x) << VARYING_NUM_COMPONENTS_VAR2__SHIFT) & VARYING_NUM_COMPONENTS_VAR2__MASK) 142bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR3__MASK 0x00007000 143bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR3__SHIFT 12 144bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR3(x) (((x) << VARYING_NUM_COMPONENTS_VAR3__SHIFT) & VARYING_NUM_COMPONENTS_VAR3__MASK) 145bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR4__MASK 0x00070000 146bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR4__SHIFT 16 147bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR4(x) (((x) << VARYING_NUM_COMPONENTS_VAR4__SHIFT) & VARYING_NUM_COMPONENTS_VAR4__MASK) 148bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR5__MASK 0x00700000 149bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR5__SHIFT 20 150bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR5(x) (((x) << VARYING_NUM_COMPONENTS_VAR5__SHIFT) & VARYING_NUM_COMPONENTS_VAR5__MASK) 151bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR6__MASK 0x07000000 152bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR6__SHIFT 24 153bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR6(x) (((x) << VARYING_NUM_COMPONENTS_VAR6__SHIFT) & VARYING_NUM_COMPONENTS_VAR6__MASK) 154bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR7__MASK 0x70000000 155bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR7__SHIFT 28 156bf215546Sopenharmony_ci#define VARYING_NUM_COMPONENTS_VAR7(x) (((x) << VARYING_NUM_COMPONENTS_VAR7__SHIFT) & VARYING_NUM_COMPONENTS_VAR7__MASK) 157bf215546Sopenharmony_ci#define VIVS_VS 0x00000000 158bf215546Sopenharmony_ci 159bf215546Sopenharmony_ci#define VIVS_VS_END_PC 0x00000800 160bf215546Sopenharmony_ci 161bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_COUNT 0x00000804 162bf215546Sopenharmony_ci 163bf215546Sopenharmony_ci#define VIVS_VS_INPUT_COUNT 0x00000808 164bf215546Sopenharmony_ci#define VIVS_VS_INPUT_COUNT_COUNT__MASK 0x0000000f 165bf215546Sopenharmony_ci#define VIVS_VS_INPUT_COUNT_COUNT__SHIFT 0 166bf215546Sopenharmony_ci#define VIVS_VS_INPUT_COUNT_COUNT(x) (((x) << VIVS_VS_INPUT_COUNT_COUNT__SHIFT) & VIVS_VS_INPUT_COUNT_COUNT__MASK) 167bf215546Sopenharmony_ci#define VIVS_VS_INPUT_COUNT_UNK8__MASK 0x00001f00 168bf215546Sopenharmony_ci#define VIVS_VS_INPUT_COUNT_UNK8__SHIFT 8 169bf215546Sopenharmony_ci#define VIVS_VS_INPUT_COUNT_UNK8(x) (((x) << VIVS_VS_INPUT_COUNT_UNK8__SHIFT) & VIVS_VS_INPUT_COUNT_UNK8__MASK) 170bf215546Sopenharmony_ci#define VIVS_VS_INPUT_COUNT_ID_ENABLE 0x80000000 171bf215546Sopenharmony_ci 172bf215546Sopenharmony_ci#define VIVS_VS_TEMP_REGISTER_CONTROL 0x0000080c 173bf215546Sopenharmony_ci#define VIVS_VS_TEMP_REGISTER_CONTROL_NUM_TEMPS__MASK 0x0000003f 174bf215546Sopenharmony_ci#define VIVS_VS_TEMP_REGISTER_CONTROL_NUM_TEMPS__SHIFT 0 175bf215546Sopenharmony_ci#define VIVS_VS_TEMP_REGISTER_CONTROL_NUM_TEMPS(x) (((x) << VIVS_VS_TEMP_REGISTER_CONTROL_NUM_TEMPS__SHIFT) & VIVS_VS_TEMP_REGISTER_CONTROL_NUM_TEMPS__MASK) 176bf215546Sopenharmony_ci 177bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT(i0) (0x00000810 + 0x4*(i0)) 178bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT__ESIZE 0x00000004 179bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT__LEN 0x00000004 180bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_O0__MASK 0x000000ff 181bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_O0__SHIFT 0 182bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_O0(x) (((x) << VIVS_VS_OUTPUT_O0__SHIFT) & VIVS_VS_OUTPUT_O0__MASK) 183bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_O1__MASK 0x0000ff00 184bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_O1__SHIFT 8 185bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_O1(x) (((x) << VIVS_VS_OUTPUT_O1__SHIFT) & VIVS_VS_OUTPUT_O1__MASK) 186bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_O2__MASK 0x00ff0000 187bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_O2__SHIFT 16 188bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_O2(x) (((x) << VIVS_VS_OUTPUT_O2__SHIFT) & VIVS_VS_OUTPUT_O2__MASK) 189bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_O3__MASK 0xff000000 190bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_O3__SHIFT 24 191bf215546Sopenharmony_ci#define VIVS_VS_OUTPUT_O3(x) (((x) << VIVS_VS_OUTPUT_O3__SHIFT) & VIVS_VS_OUTPUT_O3__MASK) 192bf215546Sopenharmony_ci 193bf215546Sopenharmony_ci#define VIVS_VS_INPUT(i0) (0x00000820 + 0x4*(i0)) 194bf215546Sopenharmony_ci#define VIVS_VS_INPUT__ESIZE 0x00000004 195bf215546Sopenharmony_ci#define VIVS_VS_INPUT__LEN 0x00000004 196bf215546Sopenharmony_ci#define VIVS_VS_INPUT_I0__MASK 0x000000ff 197bf215546Sopenharmony_ci#define VIVS_VS_INPUT_I0__SHIFT 0 198bf215546Sopenharmony_ci#define VIVS_VS_INPUT_I0(x) (((x) << VIVS_VS_INPUT_I0__SHIFT) & VIVS_VS_INPUT_I0__MASK) 199bf215546Sopenharmony_ci#define VIVS_VS_INPUT_I1__MASK 0x0000ff00 200bf215546Sopenharmony_ci#define VIVS_VS_INPUT_I1__SHIFT 8 201bf215546Sopenharmony_ci#define VIVS_VS_INPUT_I1(x) (((x) << VIVS_VS_INPUT_I1__SHIFT) & VIVS_VS_INPUT_I1__MASK) 202bf215546Sopenharmony_ci#define VIVS_VS_INPUT_I2__MASK 0x00ff0000 203bf215546Sopenharmony_ci#define VIVS_VS_INPUT_I2__SHIFT 16 204bf215546Sopenharmony_ci#define VIVS_VS_INPUT_I2(x) (((x) << VIVS_VS_INPUT_I2__SHIFT) & VIVS_VS_INPUT_I2__MASK) 205bf215546Sopenharmony_ci#define VIVS_VS_INPUT_I3__MASK 0xff000000 206bf215546Sopenharmony_ci#define VIVS_VS_INPUT_I3__SHIFT 24 207bf215546Sopenharmony_ci#define VIVS_VS_INPUT_I3(x) (((x) << VIVS_VS_INPUT_I3__SHIFT) & VIVS_VS_INPUT_I3__MASK) 208bf215546Sopenharmony_ci 209bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING 0x00000830 210bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING_A__MASK 0x000000ff 211bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING_A__SHIFT 0 212bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING_A(x) (((x) << VIVS_VS_LOAD_BALANCING_A__SHIFT) & VIVS_VS_LOAD_BALANCING_A__MASK) 213bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING_B__MASK 0x0000ff00 214bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING_B__SHIFT 8 215bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING_B(x) (((x) << VIVS_VS_LOAD_BALANCING_B__SHIFT) & VIVS_VS_LOAD_BALANCING_B__MASK) 216bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING_C__MASK 0x00ff0000 217bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING_C__SHIFT 16 218bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING_C(x) (((x) << VIVS_VS_LOAD_BALANCING_C__SHIFT) & VIVS_VS_LOAD_BALANCING_C__MASK) 219bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING_D__MASK 0xff000000 220bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING_D__SHIFT 24 221bf215546Sopenharmony_ci#define VIVS_VS_LOAD_BALANCING_D(x) (((x) << VIVS_VS_LOAD_BALANCING_D__SHIFT) & VIVS_VS_LOAD_BALANCING_D__MASK) 222bf215546Sopenharmony_ci 223bf215546Sopenharmony_ci#define VIVS_VS_PERF_COUNTER 0x00000834 224bf215546Sopenharmony_ci 225bf215546Sopenharmony_ci#define VIVS_VS_START_PC 0x00000838 226bf215546Sopenharmony_ci 227bf215546Sopenharmony_ci#define VIVS_VS_UNK00850 0x00000850 228bf215546Sopenharmony_ci 229bf215546Sopenharmony_ci#define VIVS_VS_UNK00854 0x00000854 230bf215546Sopenharmony_ci 231bf215546Sopenharmony_ci#define VIVS_VS_UNK00858 0x00000858 232bf215546Sopenharmony_ci 233bf215546Sopenharmony_ci#define VIVS_VS_RANGE 0x0000085c 234bf215546Sopenharmony_ci#define VIVS_VS_RANGE_LOW__MASK 0x0000ffff 235bf215546Sopenharmony_ci#define VIVS_VS_RANGE_LOW__SHIFT 0 236bf215546Sopenharmony_ci#define VIVS_VS_RANGE_LOW(x) (((x) << VIVS_VS_RANGE_LOW__SHIFT) & VIVS_VS_RANGE_LOW__MASK) 237bf215546Sopenharmony_ci#define VIVS_VS_RANGE_HIGH__MASK 0xffff0000 238bf215546Sopenharmony_ci#define VIVS_VS_RANGE_HIGH__SHIFT 16 239bf215546Sopenharmony_ci#define VIVS_VS_RANGE_HIGH(x) (((x) << VIVS_VS_RANGE_HIGH__SHIFT) & VIVS_VS_RANGE_HIGH__MASK) 240bf215546Sopenharmony_ci 241bf215546Sopenharmony_ci#define VIVS_VS_UNIFORM_CACHE 0x00000860 242bf215546Sopenharmony_ci#define VIVS_VS_UNIFORM_CACHE_FLUSH 0x00000001 243bf215546Sopenharmony_ci#define VIVS_VS_UNIFORM_CACHE_PS 0x00000010 244bf215546Sopenharmony_ci#define VIVS_VS_UNIFORM_CACHE_RTNE_ROUNDING 0x00001000 245bf215546Sopenharmony_ci 246bf215546Sopenharmony_ci#define VIVS_VS_UNIFORM_BASE 0x00000864 247bf215546Sopenharmony_ci 248bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_CONTROL 0x00000868 249bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_CONTROL_ENABLE 0x00000001 250bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_CONTROL_FLUSH_VS 0x00000010 251bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_CONTROL_FLUSH_PS 0x00000020 252bf215546Sopenharmony_ci 253bf215546Sopenharmony_ci#define VIVS_VS_INST_ADDR 0x0000086c 254bf215546Sopenharmony_ci 255bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_COUNT 0x00000870 256bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_COUNT_COUNT__MASK 0x000003ff 257bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_COUNT_COUNT__SHIFT 0 258bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_COUNT_COUNT(x) (((x) << VIVS_VS_HALTI5_OUTPUT_COUNT_COUNT__SHIFT) & VIVS_VS_HALTI5_OUTPUT_COUNT_COUNT__MASK) 259bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_COUNT_B__MASK 0x0007ff00 260bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_COUNT_B__SHIFT 8 261bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_COUNT_B(x) (((x) << VIVS_VS_HALTI5_OUTPUT_COUNT_B__SHIFT) & VIVS_VS_HALTI5_OUTPUT_COUNT_B__MASK) 262bf215546Sopenharmony_ci 263bf215546Sopenharmony_ci#define VIVS_VS_NEWRANGE_LOW 0x00000874 264bf215546Sopenharmony_ci 265bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK00878 0x00000878 266bf215546Sopenharmony_ci 267bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK00880 0x00000880 268bf215546Sopenharmony_ci 269bf215546Sopenharmony_ci#define VIVS_VS_HALTI1_UNK00884 0x00000884 270bf215546Sopenharmony_ci 271bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_PREFETCH 0x0000088c 272bf215546Sopenharmony_ci 273bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_UNK00890 0x00000890 274bf215546Sopenharmony_ci 275bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK00898(i0) (0x00000898 + 0x4*(i0)) 276bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK00898__ESIZE 0x00000004 277bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK00898__LEN 0x00000002 278bf215546Sopenharmony_ci 279bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK008A0 0x000008a0 280bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK008A0_A__MASK 0x0000003f 281bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK008A0_A__SHIFT 0 282bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK008A0_A(x) (((x) << VIVS_VS_HALTI5_UNK008A0_A__SHIFT) & VIVS_VS_HALTI5_UNK008A0_A__MASK) 283bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK008A0_B__MASK 0x0007f000 284bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK008A0_B__SHIFT 12 285bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK008A0_B(x) (((x) << VIVS_VS_HALTI5_UNK008A0_B__SHIFT) & VIVS_VS_HALTI5_UNK008A0_B__MASK) 286bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK008A0_C__MASK 0x1ff00000 287bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK008A0_C__SHIFT 20 288bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK008A0_C(x) (((x) << VIVS_VS_HALTI5_UNK008A0_C__SHIFT) & VIVS_VS_HALTI5_UNK008A0_C__MASK) 289bf215546Sopenharmony_ci 290bf215546Sopenharmony_ci#define VIVS_VS_SAMPLER_BASE 0x000008a8 291bf215546Sopenharmony_ci 292bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_INVALIDATE 0x000008b0 293bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_INVALIDATE_UNK0 0x00000001 294bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_INVALIDATE_UNK1 0x00000002 295bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_INVALIDATE_UNK2 0x00000004 296bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_INVALIDATE_UNK3 0x00000008 297bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_INVALIDATE_UNK4 0x00000010 298bf215546Sopenharmony_ci 299bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_UNK008B8 0x000008b8 300bf215546Sopenharmony_ci 301bf215546Sopenharmony_ci#define VIVS_VS_NEWRANGE_HIGH 0x000008bc 302bf215546Sopenharmony_ci 303bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT(i0) (0x000008c0 + 0x4*(i0)) 304bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT__ESIZE 0x00000004 305bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT__LEN 0x00000008 306bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT_I0__MASK 0x000000ff 307bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT_I0__SHIFT 0 308bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT_I0(x) (((x) << VIVS_VS_HALTI5_INPUT_I0__SHIFT) & VIVS_VS_HALTI5_INPUT_I0__MASK) 309bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT_I1__MASK 0x0000ff00 310bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT_I1__SHIFT 8 311bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT_I1(x) (((x) << VIVS_VS_HALTI5_INPUT_I1__SHIFT) & VIVS_VS_HALTI5_INPUT_I1__MASK) 312bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT_I2__MASK 0x00ff0000 313bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT_I2__SHIFT 16 314bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT_I2(x) (((x) << VIVS_VS_HALTI5_INPUT_I2__SHIFT) & VIVS_VS_HALTI5_INPUT_I2__MASK) 315bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT_I3__MASK 0xff000000 316bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT_I3__SHIFT 24 317bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_INPUT_I3(x) (((x) << VIVS_VS_HALTI5_INPUT_I3__SHIFT) & VIVS_VS_HALTI5_INPUT_I3__MASK) 318bf215546Sopenharmony_ci 319bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT(i0) (0x000008e0 + 0x4*(i0)) 320bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT__ESIZE 0x00000004 321bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT__LEN 0x00000008 322bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_O0__MASK 0x000000ff 323bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_O0__SHIFT 0 324bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_O0(x) (((x) << VIVS_VS_HALTI5_OUTPUT_O0__SHIFT) & VIVS_VS_HALTI5_OUTPUT_O0__MASK) 325bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_O1__MASK 0x0000ff00 326bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_O1__SHIFT 8 327bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_O1(x) (((x) << VIVS_VS_HALTI5_OUTPUT_O1__SHIFT) & VIVS_VS_HALTI5_OUTPUT_O1__MASK) 328bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_O2__MASK 0x00ff0000 329bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_O2__SHIFT 16 330bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_O2(x) (((x) << VIVS_VS_HALTI5_OUTPUT_O2__SHIFT) & VIVS_VS_HALTI5_OUTPUT_O2__MASK) 331bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_O3__MASK 0xff000000 332bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_O3__SHIFT 24 333bf215546Sopenharmony_ci#define VIVS_VS_HALTI5_OUTPUT_O3(x) (((x) << VIVS_VS_HALTI5_OUTPUT_O3__SHIFT) & VIVS_VS_HALTI5_OUTPUT_O3__MASK) 334bf215546Sopenharmony_ci 335bf215546Sopenharmony_ci#define VIVS_VS_INST_MEM(i0) (0x00004000 + 0x4*(i0)) 336bf215546Sopenharmony_ci#define VIVS_VS_INST_MEM__ESIZE 0x00000004 337bf215546Sopenharmony_ci#define VIVS_VS_INST_MEM__LEN 0x00000400 338bf215546Sopenharmony_ci 339bf215546Sopenharmony_ci#define VIVS_VS_UNIFORMS(i0) (0x00005000 + 0x4*(i0)) 340bf215546Sopenharmony_ci#define VIVS_VS_UNIFORMS__ESIZE 0x00000004 341bf215546Sopenharmony_ci#define VIVS_VS_UNIFORMS__LEN 0x00000400 342bf215546Sopenharmony_ci 343bf215546Sopenharmony_ci#define VIVS_VS_ICACHE_COUNT 0x00015604 344bf215546Sopenharmony_ci 345bf215546Sopenharmony_ci#define VIVS_CL 0x00000000 346bf215546Sopenharmony_ci 347bf215546Sopenharmony_ci#define VIVS_CL_CONFIG 0x00000900 348bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_DIMENSIONS__MASK 0x00000003 349bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_DIMENSIONS__SHIFT 0 350bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_DIMENSIONS(x) (((x) << VIVS_CL_CONFIG_DIMENSIONS__SHIFT) & VIVS_CL_CONFIG_DIMENSIONS__MASK) 351bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_TRAVERSE_ORDER__MASK 0x00000070 352bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_TRAVERSE_ORDER__SHIFT 4 353bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_TRAVERSE_ORDER(x) (((x) << VIVS_CL_CONFIG_TRAVERSE_ORDER__SHIFT) & VIVS_CL_CONFIG_TRAVERSE_ORDER__MASK) 354bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_ENABLE_SWATH_X 0x00000100 355bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_ENABLE_SWATH_Y 0x00000200 356bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_ENABLE_SWATH_Z 0x00000400 357bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_SWATH_SIZE_X__MASK 0x0000f000 358bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_SWATH_SIZE_X__SHIFT 12 359bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_SWATH_SIZE_X(x) (((x) << VIVS_CL_CONFIG_SWATH_SIZE_X__SHIFT) & VIVS_CL_CONFIG_SWATH_SIZE_X__MASK) 360bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_SWATH_SIZE_Y__MASK 0x000f0000 361bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_SWATH_SIZE_Y__SHIFT 16 362bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_SWATH_SIZE_Y(x) (((x) << VIVS_CL_CONFIG_SWATH_SIZE_Y__SHIFT) & VIVS_CL_CONFIG_SWATH_SIZE_Y__MASK) 363bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_SWATH_SIZE_Z__MASK 0x00f00000 364bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_SWATH_SIZE_Z__SHIFT 20 365bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_SWATH_SIZE_Z(x) (((x) << VIVS_CL_CONFIG_SWATH_SIZE_Z__SHIFT) & VIVS_CL_CONFIG_SWATH_SIZE_Z__MASK) 366bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_VALUE_ORDER__MASK 0x07000000 367bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_VALUE_ORDER__SHIFT 24 368bf215546Sopenharmony_ci#define VIVS_CL_CONFIG_VALUE_ORDER(x) (((x) << VIVS_CL_CONFIG_VALUE_ORDER__SHIFT) & VIVS_CL_CONFIG_VALUE_ORDER__MASK) 369bf215546Sopenharmony_ci 370bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_X 0x00000904 371bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_X_SIZE__MASK 0x0000ffff 372bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_X_SIZE__SHIFT 0 373bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_X_SIZE(x) (((x) << VIVS_CL_GLOBAL_X_SIZE__SHIFT) & VIVS_CL_GLOBAL_X_SIZE__MASK) 374bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_X_OFFSET__MASK 0xffff0000 375bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_X_OFFSET__SHIFT 16 376bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_X_OFFSET(x) (((x) << VIVS_CL_GLOBAL_X_OFFSET__SHIFT) & VIVS_CL_GLOBAL_X_OFFSET__MASK) 377bf215546Sopenharmony_ci 378bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Y 0x00000908 379bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Y_SIZE__MASK 0x0000ffff 380bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Y_SIZE__SHIFT 0 381bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Y_SIZE(x) (((x) << VIVS_CL_GLOBAL_Y_SIZE__SHIFT) & VIVS_CL_GLOBAL_Y_SIZE__MASK) 382bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Y_OFFSET__MASK 0xffff0000 383bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Y_OFFSET__SHIFT 16 384bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Y_OFFSET(x) (((x) << VIVS_CL_GLOBAL_Y_OFFSET__SHIFT) & VIVS_CL_GLOBAL_Y_OFFSET__MASK) 385bf215546Sopenharmony_ci 386bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Z 0x0000090c 387bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Z_SIZE__MASK 0x0000ffff 388bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Z_SIZE__SHIFT 0 389bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Z_SIZE(x) (((x) << VIVS_CL_GLOBAL_Z_SIZE__SHIFT) & VIVS_CL_GLOBAL_Z_SIZE__MASK) 390bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Z_OFFSET__MASK 0xffff0000 391bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Z_OFFSET__SHIFT 16 392bf215546Sopenharmony_ci#define VIVS_CL_GLOBAL_Z_OFFSET(x) (((x) << VIVS_CL_GLOBAL_Z_OFFSET__SHIFT) & VIVS_CL_GLOBAL_Z_OFFSET__MASK) 393bf215546Sopenharmony_ci 394bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_X 0x00000910 395bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_X_SIZE__MASK 0x000003ff 396bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_X_SIZE__SHIFT 0 397bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_X_SIZE(x) (((x) << VIVS_CL_WORKGROUP_X_SIZE__SHIFT) & VIVS_CL_WORKGROUP_X_SIZE__MASK) 398bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_X_COUNT__MASK 0xffff0000 399bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_X_COUNT__SHIFT 16 400bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_X_COUNT(x) (((x) << VIVS_CL_WORKGROUP_X_COUNT__SHIFT) & VIVS_CL_WORKGROUP_X_COUNT__MASK) 401bf215546Sopenharmony_ci 402bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Y 0x00000914 403bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Y_SIZE__MASK 0x000003ff 404bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Y_SIZE__SHIFT 0 405bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Y_SIZE(x) (((x) << VIVS_CL_WORKGROUP_Y_SIZE__SHIFT) & VIVS_CL_WORKGROUP_Y_SIZE__MASK) 406bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Y_COUNT__MASK 0xffff0000 407bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Y_COUNT__SHIFT 16 408bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Y_COUNT(x) (((x) << VIVS_CL_WORKGROUP_Y_COUNT__SHIFT) & VIVS_CL_WORKGROUP_Y_COUNT__MASK) 409bf215546Sopenharmony_ci 410bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Z 0x00000918 411bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Z_SIZE__MASK 0x000003ff 412bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Z_SIZE__SHIFT 0 413bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Z_SIZE(x) (((x) << VIVS_CL_WORKGROUP_Z_SIZE__SHIFT) & VIVS_CL_WORKGROUP_Z_SIZE__MASK) 414bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Z_COUNT__MASK 0xffff0000 415bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Z_COUNT__SHIFT 16 416bf215546Sopenharmony_ci#define VIVS_CL_WORKGROUP_Z_COUNT(x) (((x) << VIVS_CL_WORKGROUP_Z_COUNT__SHIFT) & VIVS_CL_WORKGROUP_Z_COUNT__MASK) 417bf215546Sopenharmony_ci 418bf215546Sopenharmony_ci#define VIVS_CL_THREAD_ALLOCATION 0x0000091c 419bf215546Sopenharmony_ci 420bf215546Sopenharmony_ci#define VIVS_CL_KICKER 0x00000920 421bf215546Sopenharmony_ci 422bf215546Sopenharmony_ci#define VIVS_CL_UNK00924 0x00000924 423bf215546Sopenharmony_ci 424bf215546Sopenharmony_ci#define VIVS_CL_UNK00940 0x00000940 425bf215546Sopenharmony_ci 426bf215546Sopenharmony_ci#define VIVS_CL_UNK00944 0x00000944 427bf215546Sopenharmony_ci 428bf215546Sopenharmony_ci#define VIVS_CL_UNK00948 0x00000948 429bf215546Sopenharmony_ci 430bf215546Sopenharmony_ci#define VIVS_CL_UNK0094C 0x0000094c 431bf215546Sopenharmony_ci 432bf215546Sopenharmony_ci#define VIVS_CL_UNK00950 0x00000950 433bf215546Sopenharmony_ci 434bf215546Sopenharmony_ci#define VIVS_CL_UNK00954 0x00000954 435bf215546Sopenharmony_ci 436bf215546Sopenharmony_ci#define VIVS_CL_HALTI5_UNK00958 0x00000958 437bf215546Sopenharmony_ci 438bf215546Sopenharmony_ci#define VIVS_CL_HALTI5_UNK0095C 0x0000095c 439bf215546Sopenharmony_ci 440bf215546Sopenharmony_ci#define VIVS_CL_HALTI5_UNK00960 0x00000960 441bf215546Sopenharmony_ci 442bf215546Sopenharmony_ci#define VIVS_PA 0x00000000 443bf215546Sopenharmony_ci 444bf215546Sopenharmony_ci#define VIVS_PA_VIEWPORT_SCALE_X 0x00000a00 445bf215546Sopenharmony_ci 446bf215546Sopenharmony_ci#define VIVS_PA_VIEWPORT_SCALE_Y 0x00000a04 447bf215546Sopenharmony_ci 448bf215546Sopenharmony_ci#define VIVS_PA_VIEWPORT_SCALE_Z 0x00000a08 449bf215546Sopenharmony_ci 450bf215546Sopenharmony_ci#define VIVS_PA_VIEWPORT_OFFSET_X 0x00000a0c 451bf215546Sopenharmony_ci 452bf215546Sopenharmony_ci#define VIVS_PA_VIEWPORT_OFFSET_Y 0x00000a10 453bf215546Sopenharmony_ci 454bf215546Sopenharmony_ci#define VIVS_PA_VIEWPORT_OFFSET_Z 0x00000a14 455bf215546Sopenharmony_ci 456bf215546Sopenharmony_ci#define VIVS_PA_LINE_WIDTH 0x00000a18 457bf215546Sopenharmony_ci 458bf215546Sopenharmony_ci#define VIVS_PA_POINT_SIZE 0x00000a1c 459bf215546Sopenharmony_ci 460bf215546Sopenharmony_ci#define VIVS_PA_UNK00A24 0x00000a24 461bf215546Sopenharmony_ci 462bf215546Sopenharmony_ci#define VIVS_PA_SYSTEM_MODE 0x00000a28 463bf215546Sopenharmony_ci#define VIVS_PA_SYSTEM_MODE_PROVOKING_VERTEX_LAST 0x00000001 464bf215546Sopenharmony_ci#define VIVS_PA_SYSTEM_MODE_HALF_PIXEL_CENTER 0x00000010 465bf215546Sopenharmony_ci 466bf215546Sopenharmony_ci#define VIVS_PA_W_CLIP_LIMIT 0x00000a2c 467bf215546Sopenharmony_ci 468bf215546Sopenharmony_ci#define VIVS_PA_ATTRIBUTE_ELEMENT_COUNT 0x00000a30 469bf215546Sopenharmony_ci#define VIVS_PA_ATTRIBUTE_ELEMENT_COUNT_UNK0__MASK 0x000000ff 470bf215546Sopenharmony_ci#define VIVS_PA_ATTRIBUTE_ELEMENT_COUNT_UNK0__SHIFT 0 471bf215546Sopenharmony_ci#define VIVS_PA_ATTRIBUTE_ELEMENT_COUNT_UNK0(x) (((x) << VIVS_PA_ATTRIBUTE_ELEMENT_COUNT_UNK0__SHIFT) & VIVS_PA_ATTRIBUTE_ELEMENT_COUNT_UNK0__MASK) 472bf215546Sopenharmony_ci#define VIVS_PA_ATTRIBUTE_ELEMENT_COUNT_COUNT__MASK 0x0000ff00 473bf215546Sopenharmony_ci#define VIVS_PA_ATTRIBUTE_ELEMENT_COUNT_COUNT__SHIFT 8 474bf215546Sopenharmony_ci#define VIVS_PA_ATTRIBUTE_ELEMENT_COUNT_COUNT(x) (((x) << VIVS_PA_ATTRIBUTE_ELEMENT_COUNT_COUNT__SHIFT) & VIVS_PA_ATTRIBUTE_ELEMENT_COUNT_COUNT__MASK) 475bf215546Sopenharmony_ci 476bf215546Sopenharmony_ci#define VIVS_PA_CONFIG 0x00000a34 477bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_POINT_SIZE_ENABLE 0x00000004 478bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_POINT_SIZE_ENABLE_MASK 0x00000008 479bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_POINT_SPRITE_ENABLE 0x00000010 480bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_POINT_SPRITE_ENABLE_MASK 0x00000020 481bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_CULL_FACE_MODE__MASK 0x00000300 482bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_CULL_FACE_MODE__SHIFT 8 483bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_CULL_FACE_MODE_OFF 0x00000000 484bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_CULL_FACE_MODE_CW 0x00000100 485bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_CULL_FACE_MODE_CCW 0x00000200 486bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_CULL_FACE_MODE_MASK 0x00000400 487bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_FILL_MODE__MASK 0x00003000 488bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_FILL_MODE__SHIFT 12 489bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_FILL_MODE_POINT 0x00000000 490bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_FILL_MODE_WIREFRAME 0x00001000 491bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_FILL_MODE_SOLID 0x00002000 492bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_FILL_MODE_MASK 0x00004000 493bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_SHADE_MODEL__MASK 0x00030000 494bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_SHADE_MODEL__SHIFT 16 495bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_SHADE_MODEL_FLAT 0x00000000 496bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_SHADE_MODEL_SMOOTH 0x00010000 497bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_SHADE_MODEL_MASK 0x00040000 498bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_WIDE_LINE 0x00400000 499bf215546Sopenharmony_ci#define VIVS_PA_CONFIG_WIDE_LINE_MASK 0x00800000 500bf215546Sopenharmony_ci 501bf215546Sopenharmony_ci#define VIVS_PA_WIDE_LINE_WIDTH0 0x00000a38 502bf215546Sopenharmony_ci 503bf215546Sopenharmony_ci#define VIVS_PA_WIDE_LINE_WIDTH1 0x00000a3c 504bf215546Sopenharmony_ci 505bf215546Sopenharmony_ci#define VIVS_PA_SHADER_ATTRIBUTES(i0) (0x00000a40 + 0x4*(i0)) 506bf215546Sopenharmony_ci#define VIVS_PA_SHADER_ATTRIBUTES__ESIZE 0x00000004 507bf215546Sopenharmony_ci#define VIVS_PA_SHADER_ATTRIBUTES__LEN 0x0000000a 508bf215546Sopenharmony_ci#define VIVS_PA_SHADER_ATTRIBUTES_BYPASS_FLAT 0x00000001 509bf215546Sopenharmony_ci#define VIVS_PA_SHADER_ATTRIBUTES_UNK4__MASK 0x000000f0 510bf215546Sopenharmony_ci#define VIVS_PA_SHADER_ATTRIBUTES_UNK4__SHIFT 4 511bf215546Sopenharmony_ci#define VIVS_PA_SHADER_ATTRIBUTES_UNK4(x) (((x) << VIVS_PA_SHADER_ATTRIBUTES_UNK4__SHIFT) & VIVS_PA_SHADER_ATTRIBUTES_UNK4__MASK) 512bf215546Sopenharmony_ci#define VIVS_PA_SHADER_ATTRIBUTES_UNK8__MASK 0x00000f00 513bf215546Sopenharmony_ci#define VIVS_PA_SHADER_ATTRIBUTES_UNK8__SHIFT 8 514bf215546Sopenharmony_ci#define VIVS_PA_SHADER_ATTRIBUTES_UNK8(x) (((x) << VIVS_PA_SHADER_ATTRIBUTES_UNK8__SHIFT) & VIVS_PA_SHADER_ATTRIBUTES_UNK8__MASK) 515bf215546Sopenharmony_ci 516bf215546Sopenharmony_ci#define VIVS_PA_VIEWPORT_UNK00A80 0x00000a80 517bf215546Sopenharmony_ci 518bf215546Sopenharmony_ci#define VIVS_PA_VIEWPORT_UNK00A84 0x00000a84 519bf215546Sopenharmony_ci 520bf215546Sopenharmony_ci#define VIVS_PA_FLAGS 0x00000a88 521bf215546Sopenharmony_ci#define VIVS_PA_FLAGS_UNK24 0x01000000 522bf215546Sopenharmony_ci#define VIVS_PA_FLAGS_ZCONVERT_BYPASS 0x40000000 523bf215546Sopenharmony_ci 524bf215546Sopenharmony_ci#define VIVS_PA_ZFARCLIPPING 0x00000a8c 525bf215546Sopenharmony_ci 526bf215546Sopenharmony_ci#define VIVS_PA_VARYING_NUM_COMPONENTS(i0) (0x00000a90 + 0x4*(i0)) 527bf215546Sopenharmony_ci#define VIVS_PA_VARYING_NUM_COMPONENTS__ESIZE 0x00000004 528bf215546Sopenharmony_ci#define VIVS_PA_VARYING_NUM_COMPONENTS__LEN 0x00000004 529bf215546Sopenharmony_ci 530bf215546Sopenharmony_ci#define VIVS_PA_VS_OUTPUT_COUNT 0x00000aa8 531bf215546Sopenharmony_ci 532bf215546Sopenharmony_ci#define VIVS_SE 0x00000000 533bf215546Sopenharmony_ci 534bf215546Sopenharmony_ci#define VIVS_SE_SCISSOR_LEFT 0x00000c00 535bf215546Sopenharmony_ci 536bf215546Sopenharmony_ci#define VIVS_SE_SCISSOR_TOP 0x00000c04 537bf215546Sopenharmony_ci 538bf215546Sopenharmony_ci#define VIVS_SE_SCISSOR_RIGHT 0x00000c08 539bf215546Sopenharmony_ci 540bf215546Sopenharmony_ci#define VIVS_SE_SCISSOR_BOTTOM 0x00000c0c 541bf215546Sopenharmony_ci 542bf215546Sopenharmony_ci#define VIVS_SE_DEPTH_SCALE 0x00000c10 543bf215546Sopenharmony_ci 544bf215546Sopenharmony_ci#define VIVS_SE_DEPTH_BIAS 0x00000c14 545bf215546Sopenharmony_ci 546bf215546Sopenharmony_ci#define VIVS_SE_CONFIG 0x00000c18 547bf215546Sopenharmony_ci#define VIVS_SE_CONFIG_LAST_PIXEL_ENABLE 0x00000001 548bf215546Sopenharmony_ci 549bf215546Sopenharmony_ci#define VIVS_SE_UNK00C1C 0x00000c1c 550bf215546Sopenharmony_ci 551bf215546Sopenharmony_ci#define VIVS_SE_CLIP_RIGHT 0x00000c20 552bf215546Sopenharmony_ci 553bf215546Sopenharmony_ci#define VIVS_SE_CLIP_BOTTOM 0x00000c24 554bf215546Sopenharmony_ci 555bf215546Sopenharmony_ci#define VIVS_RA 0x00000000 556bf215546Sopenharmony_ci 557bf215546Sopenharmony_ci#define VIVS_RA_CONTROL 0x00000e00 558bf215546Sopenharmony_ci#define VIVS_RA_CONTROL_UNK0 0x00000001 559bf215546Sopenharmony_ci#define VIVS_RA_CONTROL_LAST_VARYING_2X 0x00000002 560bf215546Sopenharmony_ci 561bf215546Sopenharmony_ci#define VIVS_RA_MULTISAMPLE_UNK00E04 0x00000e04 562bf215546Sopenharmony_ci 563bf215546Sopenharmony_ci#define VIVS_RA_EARLY_DEPTH 0x00000e08 564bf215546Sopenharmony_ci#define VIVS_RA_EARLY_DEPTH_TEST_ENABLE 0x00000001 565bf215546Sopenharmony_ci#define VIVS_RA_EARLY_DEPTH_HDEPTH_DISABLE 0x01000000 566bf215546Sopenharmony_ci#define VIVS_RA_EARLY_DEPTH_WRITE_DISABLE 0x10000000 567bf215546Sopenharmony_ci 568bf215546Sopenharmony_ci#define VIVS_RA_UNK00E0C 0x00000e0c 569bf215546Sopenharmony_ci 570bf215546Sopenharmony_ci#define VIVS_RA_MULTISAMPLE_UNK00E10(i0) (0x00000e10 + 0x4*(i0)) 571bf215546Sopenharmony_ci#define VIVS_RA_MULTISAMPLE_UNK00E10__ESIZE 0x00000004 572bf215546Sopenharmony_ci#define VIVS_RA_MULTISAMPLE_UNK00E10__LEN 0x00000004 573bf215546Sopenharmony_ci 574bf215546Sopenharmony_ci#define VIVS_RA_HDEPTH_CONTROL 0x00000e20 575bf215546Sopenharmony_ci#define VIVS_RA_HDEPTH_CONTROL_UNK0 0x00000001 576bf215546Sopenharmony_ci#define VIVS_RA_HDEPTH_CONTROL_COMPARE__MASK 0x00007000 577bf215546Sopenharmony_ci#define VIVS_RA_HDEPTH_CONTROL_COMPARE__SHIFT 12 578bf215546Sopenharmony_ci#define VIVS_RA_HDEPTH_CONTROL_COMPARE(x) (((x) << VIVS_RA_HDEPTH_CONTROL_COMPARE__SHIFT) & VIVS_RA_HDEPTH_CONTROL_COMPARE__MASK) 579bf215546Sopenharmony_ci 580bf215546Sopenharmony_ci#define VIVS_RA_UNK00E24 0x00000e24 581bf215546Sopenharmony_ci 582bf215546Sopenharmony_ci#define VIVS_RA_HALTI5_UNK00E34 0x00000e34 583bf215546Sopenharmony_ci 584bf215546Sopenharmony_ci#define VIVS_RA_CENTROID_TABLE(i0) (0x00000e40 + 0x4*(i0)) 585bf215546Sopenharmony_ci#define VIVS_RA_CENTROID_TABLE__ESIZE 0x00000004 586bf215546Sopenharmony_ci#define VIVS_RA_CENTROID_TABLE__LEN 0x00000010 587bf215546Sopenharmony_ci 588bf215546Sopenharmony_ci#define VIVS_PS 0x00000000 589bf215546Sopenharmony_ci 590bf215546Sopenharmony_ci#define VIVS_PS_END_PC 0x00001000 591bf215546Sopenharmony_ci 592bf215546Sopenharmony_ci#define VIVS_PS_OUTPUT_REG 0x00001004 593bf215546Sopenharmony_ci 594bf215546Sopenharmony_ci#define VIVS_PS_INPUT_COUNT 0x00001008 595bf215546Sopenharmony_ci#define VIVS_PS_INPUT_COUNT_COUNT__MASK 0x0000000f 596bf215546Sopenharmony_ci#define VIVS_PS_INPUT_COUNT_COUNT__SHIFT 0 597bf215546Sopenharmony_ci#define VIVS_PS_INPUT_COUNT_COUNT(x) (((x) << VIVS_PS_INPUT_COUNT_COUNT__SHIFT) & VIVS_PS_INPUT_COUNT_COUNT__MASK) 598bf215546Sopenharmony_ci#define VIVS_PS_INPUT_COUNT_UNK8__MASK 0x00001f00 599bf215546Sopenharmony_ci#define VIVS_PS_INPUT_COUNT_UNK8__SHIFT 8 600bf215546Sopenharmony_ci#define VIVS_PS_INPUT_COUNT_UNK8(x) (((x) << VIVS_PS_INPUT_COUNT_UNK8__SHIFT) & VIVS_PS_INPUT_COUNT_UNK8__MASK) 601bf215546Sopenharmony_ci#define VIVS_PS_INPUT_COUNT_DUAL16 0x00010000 602bf215546Sopenharmony_ci 603bf215546Sopenharmony_ci#define VIVS_PS_TEMP_REGISTER_CONTROL 0x0000100c 604bf215546Sopenharmony_ci#define VIVS_PS_TEMP_REGISTER_CONTROL_NUM_TEMPS__MASK 0x0000003f 605bf215546Sopenharmony_ci#define VIVS_PS_TEMP_REGISTER_CONTROL_NUM_TEMPS__SHIFT 0 606bf215546Sopenharmony_ci#define VIVS_PS_TEMP_REGISTER_CONTROL_NUM_TEMPS(x) (((x) << VIVS_PS_TEMP_REGISTER_CONTROL_NUM_TEMPS__SHIFT) & VIVS_PS_TEMP_REGISTER_CONTROL_NUM_TEMPS__MASK) 607bf215546Sopenharmony_ci 608bf215546Sopenharmony_ci#define VIVS_PS_CONTROL 0x00001010 609bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_BYPASS 0x00000001 610bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_SATURATE_RT0 0x00000002 611bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_SATURATE_RT1 0x00000004 612bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_SATURATE_RT2 0x00000008 613bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_SATURATE_RT3 0x00000010 614bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_RT_COUNT__MASK 0x00000700 615bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_RT_COUNT__SHIFT 8 616bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_RT_COUNT(x) (((x) << VIVS_PS_CONTROL_RT_COUNT__SHIFT) & VIVS_PS_CONTROL_RT_COUNT__MASK) 617bf215546Sopenharmony_ci 618bf215546Sopenharmony_ci#define VIVS_PS_PERF_COUNTER 0x00001014 619bf215546Sopenharmony_ci 620bf215546Sopenharmony_ci#define VIVS_PS_START_PC 0x00001018 621bf215546Sopenharmony_ci 622bf215546Sopenharmony_ci#define VIVS_PS_RANGE 0x0000101c 623bf215546Sopenharmony_ci#define VIVS_PS_RANGE_LOW__MASK 0x0000ffff 624bf215546Sopenharmony_ci#define VIVS_PS_RANGE_LOW__SHIFT 0 625bf215546Sopenharmony_ci#define VIVS_PS_RANGE_LOW(x) (((x) << VIVS_PS_RANGE_LOW__SHIFT) & VIVS_PS_RANGE_LOW__MASK) 626bf215546Sopenharmony_ci#define VIVS_PS_RANGE_HIGH__MASK 0xffff0000 627bf215546Sopenharmony_ci#define VIVS_PS_RANGE_HIGH__SHIFT 16 628bf215546Sopenharmony_ci#define VIVS_PS_RANGE_HIGH(x) (((x) << VIVS_PS_RANGE_HIGH__SHIFT) & VIVS_PS_RANGE_HIGH__MASK) 629bf215546Sopenharmony_ci 630bf215546Sopenharmony_ci#define VIVS_PS_UNIFORM_BASE 0x00001024 631bf215546Sopenharmony_ci 632bf215546Sopenharmony_ci#define VIVS_PS_INST_ADDR 0x00001028 633bf215546Sopenharmony_ci 634bf215546Sopenharmony_ci#define VIVS_PS_CONTROL2 0x0000102c 635bf215546Sopenharmony_ci#define VIVS_PS_CONTROL2_SATURATE_RT4 0x00000080 636bf215546Sopenharmony_ci#define VIVS_PS_CONTROL2_SATURATE_RT5 0x00008000 637bf215546Sopenharmony_ci#define VIVS_PS_CONTROL2_SATURATE_RT6 0x00800000 638bf215546Sopenharmony_ci#define VIVS_PS_CONTROL2_SATURATE_RT7 0x80000000 639bf215546Sopenharmony_ci 640bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT 0x00001030 641bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE0__MASK 0x00000007 642bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE0__SHIFT 0 643bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE0(x) (((x) << VIVS_PS_CONTROL_EXT_OUTPUT_MODE0__SHIFT) & VIVS_PS_CONTROL_EXT_OUTPUT_MODE0__MASK) 644bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE1__MASK 0x00000070 645bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE1__SHIFT 4 646bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE1(x) (((x) << VIVS_PS_CONTROL_EXT_OUTPUT_MODE1__SHIFT) & VIVS_PS_CONTROL_EXT_OUTPUT_MODE1__MASK) 647bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE2__MASK 0x00000700 648bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE2__SHIFT 8 649bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE2(x) (((x) << VIVS_PS_CONTROL_EXT_OUTPUT_MODE2__SHIFT) & VIVS_PS_CONTROL_EXT_OUTPUT_MODE2__MASK) 650bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE3__MASK 0x00007000 651bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE3__SHIFT 12 652bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE3(x) (((x) << VIVS_PS_CONTROL_EXT_OUTPUT_MODE3__SHIFT) & VIVS_PS_CONTROL_EXT_OUTPUT_MODE3__MASK) 653bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE4__MASK 0x00070000 654bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE4__SHIFT 16 655bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE4(x) (((x) << VIVS_PS_CONTROL_EXT_OUTPUT_MODE4__SHIFT) & VIVS_PS_CONTROL_EXT_OUTPUT_MODE4__MASK) 656bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE5__MASK 0x00700000 657bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE5__SHIFT 20 658bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE5(x) (((x) << VIVS_PS_CONTROL_EXT_OUTPUT_MODE5__SHIFT) & VIVS_PS_CONTROL_EXT_OUTPUT_MODE5__MASK) 659bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE6__MASK 0x07000000 660bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE6__SHIFT 24 661bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE6(x) (((x) << VIVS_PS_CONTROL_EXT_OUTPUT_MODE6__SHIFT) & VIVS_PS_CONTROL_EXT_OUTPUT_MODE6__MASK) 662bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE7__MASK 0x70000000 663bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE7__SHIFT 28 664bf215546Sopenharmony_ci#define VIVS_PS_CONTROL_EXT_OUTPUT_MODE7(x) (((x) << VIVS_PS_CONTROL_EXT_OUTPUT_MODE7__SHIFT) & VIVS_PS_CONTROL_EXT_OUTPUT_MODE7__MASK) 665bf215546Sopenharmony_ci 666bf215546Sopenharmony_ci#define VIVS_PS_UNK01034 0x00001034 667bf215546Sopenharmony_ci 668bf215546Sopenharmony_ci#define VIVS_PS_UNK01038 0x00001038 669bf215546Sopenharmony_ci 670bf215546Sopenharmony_ci#define VIVS_PS_HALTI3_UNK0103C 0x0000103c 671bf215546Sopenharmony_ci 672bf215546Sopenharmony_ci#define VIVS_PS_UNK01040(i0) (0x00001040 + 0x4*(i0)) 673bf215546Sopenharmony_ci#define VIVS_PS_UNK01040__ESIZE 0x00000004 674bf215546Sopenharmony_ci#define VIVS_PS_UNK01040__LEN 0x00000002 675bf215546Sopenharmony_ci 676bf215546Sopenharmony_ci#define VIVS_PS_ICACHE_PREFETCH 0x00001048 677bf215546Sopenharmony_ci 678bf215546Sopenharmony_ci#define VIVS_PS_ICACHE_UNK0104C 0x0000104c 679bf215546Sopenharmony_ci 680bf215546Sopenharmony_ci#define VIVS_PS_MSAA_CONFIG 0x00001054 681bf215546Sopenharmony_ci 682bf215546Sopenharmony_ci#define VIVS_PS_SAMPLER_BASE 0x00001058 683bf215546Sopenharmony_ci 684bf215546Sopenharmony_ci#define VIVS_PS_VARYING_NUM_COMPONENTS(i0) (0x00001080 + 0x4*(i0)) 685bf215546Sopenharmony_ci#define VIVS_PS_VARYING_NUM_COMPONENTS__ESIZE 0x00000004 686bf215546Sopenharmony_ci#define VIVS_PS_VARYING_NUM_COMPONENTS__LEN 0x00000004 687bf215546Sopenharmony_ci 688bf215546Sopenharmony_ci#define VIVS_PS_NEWRANGE_LOW 0x0000087c 689bf215546Sopenharmony_ci 690bf215546Sopenharmony_ci#define VIVS_PS_NEWRANGE_HIGH 0x00001090 691bf215546Sopenharmony_ci 692bf215546Sopenharmony_ci#define VIVS_PS_ICACHE_COUNT 0x00001094 693bf215546Sopenharmony_ci 694bf215546Sopenharmony_ci#define VIVS_PS_HALTI5_UNK01098 0x00001098 695bf215546Sopenharmony_ci 696bf215546Sopenharmony_ci#define VIVS_PS_INST_MEM(i0) (0x00006000 + 0x4*(i0)) 697bf215546Sopenharmony_ci#define VIVS_PS_INST_MEM__ESIZE 0x00000004 698bf215546Sopenharmony_ci#define VIVS_PS_INST_MEM__LEN 0x00000400 699bf215546Sopenharmony_ci 700bf215546Sopenharmony_ci#define VIVS_PS_UNIFORMS(i0) (0x00007000 + 0x4*(i0)) 701bf215546Sopenharmony_ci#define VIVS_PS_UNIFORMS__ESIZE 0x00000004 702bf215546Sopenharmony_ci#define VIVS_PS_UNIFORMS__LEN 0x00000400 703bf215546Sopenharmony_ci 704bf215546Sopenharmony_ci#define VIVS_GS 0x00000000 705bf215546Sopenharmony_ci 706bf215546Sopenharmony_ci#define VIVS_GS_UNK01100 0x00001100 707bf215546Sopenharmony_ci 708bf215546Sopenharmony_ci#define VIVS_GS_UNK01104 0x00001104 709bf215546Sopenharmony_ci 710bf215546Sopenharmony_ci#define VIVS_GS_UNK01108 0x00001108 711bf215546Sopenharmony_ci 712bf215546Sopenharmony_ci#define VIVS_GS_UNK0110C 0x0000110c 713bf215546Sopenharmony_ci 714bf215546Sopenharmony_ci#define VIVS_GS_UNK01110 0x00001110 715bf215546Sopenharmony_ci 716bf215546Sopenharmony_ci#define VIVS_GS_UNK01114 0x00001114 717bf215546Sopenharmony_ci 718bf215546Sopenharmony_ci#define VIVS_GS_ICACHE_PREFETCH 0x00001118 719bf215546Sopenharmony_ci 720bf215546Sopenharmony_ci#define VIVS_GS_UNK0111C 0x0000111c 721bf215546Sopenharmony_ci 722bf215546Sopenharmony_ci#define VIVS_GS_UNK01120(i0) (0x00001120 + 0x4*(i0)) 723bf215546Sopenharmony_ci#define VIVS_GS_UNK01120__ESIZE 0x00000004 724bf215546Sopenharmony_ci#define VIVS_GS_UNK01120__LEN 0x00000008 725bf215546Sopenharmony_ci 726bf215546Sopenharmony_ci#define VIVS_GS_UNK01140 0x00001140 727bf215546Sopenharmony_ci 728bf215546Sopenharmony_ci#define VIVS_GS_UNK01144 0x00001144 729bf215546Sopenharmony_ci 730bf215546Sopenharmony_ci#define VIVS_GS_UNK01148 0x00001148 731bf215546Sopenharmony_ci 732bf215546Sopenharmony_ci#define VIVS_GS_UNK0114C 0x0000114c 733bf215546Sopenharmony_ci 734bf215546Sopenharmony_ci#define VIVS_GS_UNK01154 0x00001154 735bf215546Sopenharmony_ci 736bf215546Sopenharmony_ci#define VIVS_TCS 0x00000000 737bf215546Sopenharmony_ci 738bf215546Sopenharmony_ci#define VIVS_TCS_UNK007C0 0x000007c0 739bf215546Sopenharmony_ci 740bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A00 0x00014a00 741bf215546Sopenharmony_ci 742bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A04 0x00014a04 743bf215546Sopenharmony_ci 744bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A08 0x00014a08 745bf215546Sopenharmony_ci 746bf215546Sopenharmony_ci#define VIVS_TCS_ICACHE_PREFETCH 0x00014a0c 747bf215546Sopenharmony_ci 748bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A10 0x00014a10 749bf215546Sopenharmony_ci 750bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A14 0x00014a14 751bf215546Sopenharmony_ci 752bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A18 0x00014a18 753bf215546Sopenharmony_ci 754bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A1C 0x00014a1c 755bf215546Sopenharmony_ci 756bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A20(i0) (0x00014a20 + 0x4*(i0)) 757bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A20__ESIZE 0x00000004 758bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A20__LEN 0x00000008 759bf215546Sopenharmony_ci 760bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A40 0x00014a40 761bf215546Sopenharmony_ci 762bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A44 0x00014a44 763bf215546Sopenharmony_ci 764bf215546Sopenharmony_ci#define VIVS_TCS_UNK14A4C 0x00014a4c 765bf215546Sopenharmony_ci 766bf215546Sopenharmony_ci#define VIVS_TES 0x00000000 767bf215546Sopenharmony_ci 768bf215546Sopenharmony_ci#define VIVS_TES_UNK14B00 0x00014b00 769bf215546Sopenharmony_ci 770bf215546Sopenharmony_ci#define VIVS_TES_UNK14B04 0x00014b04 771bf215546Sopenharmony_ci 772bf215546Sopenharmony_ci#define VIVS_TES_UNK14B08 0x00014b08 773bf215546Sopenharmony_ci 774bf215546Sopenharmony_ci#define VIVS_TES_UNK14B0C 0x00014b0c 775bf215546Sopenharmony_ci 776bf215546Sopenharmony_ci#define VIVS_TES_ICACHE_PREFETCH 0x00014b10 777bf215546Sopenharmony_ci 778bf215546Sopenharmony_ci#define VIVS_TES_UNK14B14 0x00014b14 779bf215546Sopenharmony_ci 780bf215546Sopenharmony_ci#define VIVS_TES_UNK14B18 0x00014b18 781bf215546Sopenharmony_ci 782bf215546Sopenharmony_ci#define VIVS_TES_UNK14B1C 0x00014b1c 783bf215546Sopenharmony_ci 784bf215546Sopenharmony_ci#define VIVS_TES_UNK14B20 0x00014b20 785bf215546Sopenharmony_ci 786bf215546Sopenharmony_ci#define VIVS_TES_UNK14B24 0x00014b24 787bf215546Sopenharmony_ci 788bf215546Sopenharmony_ci#define VIVS_TES_UNK14B2C 0x00014b2c 789bf215546Sopenharmony_ci 790bf215546Sopenharmony_ci#define VIVS_TES_UNK14B34 0x00014b34 791bf215546Sopenharmony_ci 792bf215546Sopenharmony_ci#define VIVS_TES_UNK14B40(i0) (0x00014b40 + 0x4*(i0)) 793bf215546Sopenharmony_ci#define VIVS_TES_UNK14B40__ESIZE 0x00000004 794bf215546Sopenharmony_ci#define VIVS_TES_UNK14B40__LEN 0x00000008 795bf215546Sopenharmony_ci 796bf215546Sopenharmony_ci#define VIVS_TFB 0x00000000 797bf215546Sopenharmony_ci 798bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C000 0x0001c000 799bf215546Sopenharmony_ci 800bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C008 0x0001c008 801bf215546Sopenharmony_ci 802bf215546Sopenharmony_ci#define VIVS_TFB_FLUSH 0x0001c00c 803bf215546Sopenharmony_ci 804bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C014 0x0001c014 805bf215546Sopenharmony_ci 806bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C040(i0) (0x0001c040 + 0x4*(i0)) 807bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C040__ESIZE 0x00000004 808bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C040__LEN 0x00000004 809bf215546Sopenharmony_ci 810bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C080(i0) (0x0001c080 + 0x4*(i0)) 811bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C080__ESIZE 0x00000004 812bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C080__LEN 0x00000004 813bf215546Sopenharmony_ci 814bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C0C0(i0) (0x0001c0c0 + 0x4*(i0)) 815bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C0C0__ESIZE 0x00000004 816bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C0C0__LEN 0x00000004 817bf215546Sopenharmony_ci 818bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C100(i0) (0x0001c100 + 0x4*(i0)) 819bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C100__ESIZE 0x00000004 820bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C100__LEN 0x00000004 821bf215546Sopenharmony_ci 822bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C800(i0) (0x0001c800 + 0x4*(i0)) 823bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C800__ESIZE 0x00000004 824bf215546Sopenharmony_ci#define VIVS_TFB_UNK1C800__LEN 0x00000200 825bf215546Sopenharmony_ci 826bf215546Sopenharmony_ci#define VIVS_PE 0x00000000 827bf215546Sopenharmony_ci 828bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG 0x00001400 829bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_MODE__MASK 0x00000003 830bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_MODE__SHIFT 0 831bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_MODE_NONE 0x00000000 832bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_MODE_Z 0x00000001 833bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_MODE_W 0x00000002 834bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_MODE_MASK 0x00000008 835bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_FORMAT__MASK 0x00000010 836bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_FORMAT__SHIFT 4 837bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_FORMAT_D16 0x00000000 838bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_FORMAT_D24S8 0x00000010 839bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_FORMAT_MASK 0x00000020 840bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_FUNC__MASK 0x00000700 841bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_FUNC__SHIFT 8 842bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_FUNC(x) (((x) << VIVS_PE_DEPTH_CONFIG_DEPTH_FUNC__SHIFT) & VIVS_PE_DEPTH_CONFIG_DEPTH_FUNC__MASK) 843bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DEPTH_FUNC_MASK 0x00000800 844bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_WRITE_ENABLE 0x00001000 845bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_WRITE_ENABLE_MASK 0x00002000 846bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_EARLY_Z 0x00010000 847bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_EARLY_Z_MASK 0x00020000 848bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_UNK18 0x00040000 849bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_UNK18_MASK 0x00080000 850bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_ONLY_DEPTH 0x00100000 851bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_ONLY_DEPTH_MASK 0x00200000 852bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DISABLE_ZS 0x01000000 853bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_DISABLE_ZS_MASK 0x02000000 854bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_SUPER_TILED 0x04000000 855bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_CONFIG_SUPER_TILED_MASK 0x08000000 856bf215546Sopenharmony_ci 857bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_NEAR 0x00001404 858bf215546Sopenharmony_ci 859bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_FAR 0x00001408 860bf215546Sopenharmony_ci 861bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_NORMALIZE 0x0000140c 862bf215546Sopenharmony_ci 863bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_ADDR 0x00001410 864bf215546Sopenharmony_ci 865bf215546Sopenharmony_ci#define VIVS_PE_DEPTH_STRIDE 0x00001414 866bf215546Sopenharmony_ci 867bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP 0x00001418 868bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FUNC_FRONT__MASK 0x00000007 869bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FUNC_FRONT__SHIFT 0 870bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FUNC_FRONT(x) (((x) << VIVS_PE_STENCIL_OP_FUNC_FRONT__SHIFT) & VIVS_PE_STENCIL_OP_FUNC_FRONT__MASK) 871bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FUNC_FRONT_MASK 0x00000008 872bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_PASS_FRONT__MASK 0x00000070 873bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_PASS_FRONT__SHIFT 4 874bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_PASS_FRONT(x) (((x) << VIVS_PE_STENCIL_OP_PASS_FRONT__SHIFT) & VIVS_PE_STENCIL_OP_PASS_FRONT__MASK) 875bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_PASS_FRONT_MASK 0x00000080 876bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FAIL_FRONT__MASK 0x00000700 877bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FAIL_FRONT__SHIFT 8 878bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FAIL_FRONT(x) (((x) << VIVS_PE_STENCIL_OP_FAIL_FRONT__SHIFT) & VIVS_PE_STENCIL_OP_FAIL_FRONT__MASK) 879bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FAIL_FRONT_MASK 0x00000800 880bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_DEPTH_FAIL_FRONT__MASK 0x00007000 881bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_DEPTH_FAIL_FRONT__SHIFT 12 882bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_DEPTH_FAIL_FRONT(x) (((x) << VIVS_PE_STENCIL_OP_DEPTH_FAIL_FRONT__SHIFT) & VIVS_PE_STENCIL_OP_DEPTH_FAIL_FRONT__MASK) 883bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_DEPTH_FAIL_FRONT_MASK 0x00008000 884bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FUNC_BACK__MASK 0x00070000 885bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FUNC_BACK__SHIFT 16 886bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FUNC_BACK(x) (((x) << VIVS_PE_STENCIL_OP_FUNC_BACK__SHIFT) & VIVS_PE_STENCIL_OP_FUNC_BACK__MASK) 887bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FUNC_BACK_MASK 0x00080000 888bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_PASS_BACK__MASK 0x00700000 889bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_PASS_BACK__SHIFT 20 890bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_PASS_BACK(x) (((x) << VIVS_PE_STENCIL_OP_PASS_BACK__SHIFT) & VIVS_PE_STENCIL_OP_PASS_BACK__MASK) 891bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_PASS_BACK_MASK 0x00800000 892bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FAIL_BACK__MASK 0x07000000 893bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FAIL_BACK__SHIFT 24 894bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FAIL_BACK(x) (((x) << VIVS_PE_STENCIL_OP_FAIL_BACK__SHIFT) & VIVS_PE_STENCIL_OP_FAIL_BACK__MASK) 895bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_FAIL_BACK_MASK 0x08000000 896bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_DEPTH_FAIL_BACK__MASK 0x70000000 897bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_DEPTH_FAIL_BACK__SHIFT 28 898bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_DEPTH_FAIL_BACK(x) (((x) << VIVS_PE_STENCIL_OP_DEPTH_FAIL_BACK__SHIFT) & VIVS_PE_STENCIL_OP_DEPTH_FAIL_BACK__MASK) 899bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_OP_DEPTH_FAIL_BACK_MASK 0x80000000 900bf215546Sopenharmony_ci 901bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG 0x0000141c 902bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_MODE__MASK 0x00000003 903bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_MODE__SHIFT 0 904bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_MODE_DISABLED 0x00000000 905bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_MODE_ONE_SIDED 0x00000001 906bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_MODE_TWO_SIDED 0x00000002 907bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_MODE_MASK 0x00000010 908bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_REF_FRONT_MASK 0x00000020 909bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_MASK_FRONT_MASK 0x00000040 910bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_WRITE_MASK_MASK 0x00000080 911bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_REF_FRONT__MASK 0x0000ff00 912bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_REF_FRONT__SHIFT 8 913bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_REF_FRONT(x) (((x) << VIVS_PE_STENCIL_CONFIG_REF_FRONT__SHIFT) & VIVS_PE_STENCIL_CONFIG_REF_FRONT__MASK) 914bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_MASK_FRONT__MASK 0x00ff0000 915bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_MASK_FRONT__SHIFT 16 916bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_MASK_FRONT(x) (((x) << VIVS_PE_STENCIL_CONFIG_MASK_FRONT__SHIFT) & VIVS_PE_STENCIL_CONFIG_MASK_FRONT__MASK) 917bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_WRITE_MASK_FRONT__MASK 0xff000000 918bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_WRITE_MASK_FRONT__SHIFT 24 919bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_WRITE_MASK_FRONT(x) (((x) << VIVS_PE_STENCIL_CONFIG_WRITE_MASK_FRONT__SHIFT) & VIVS_PE_STENCIL_CONFIG_WRITE_MASK_FRONT__MASK) 920bf215546Sopenharmony_ci 921bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_OP 0x00001420 922bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_OP_ALPHA_TEST 0x00000001 923bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_OP_ALPHA_TEST_MASK 0x00000002 924bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_OP_ALPHA_FUNC__MASK 0x00000070 925bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_OP_ALPHA_FUNC__SHIFT 4 926bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_OP_ALPHA_FUNC(x) (((x) << VIVS_PE_ALPHA_OP_ALPHA_FUNC__SHIFT) & VIVS_PE_ALPHA_OP_ALPHA_FUNC__MASK) 927bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_OP_ALPHA_FUNC_MASK 0x00000080 928bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_OP_ALPHA_REF__MASK 0x0000ff00 929bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_OP_ALPHA_REF__SHIFT 8 930bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_OP_ALPHA_REF(x) (((x) << VIVS_PE_ALPHA_OP_ALPHA_REF__SHIFT) & VIVS_PE_ALPHA_OP_ALPHA_REF__MASK) 931bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_OP_ALPHA_REF_MASKFUNC_MASK 0x00010000 932bf215546Sopenharmony_ci 933bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR 0x00001424 934bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR_B__MASK 0x000000ff 935bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR_B__SHIFT 0 936bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR_B(x) (((x) << VIVS_PE_ALPHA_BLEND_COLOR_B__SHIFT) & VIVS_PE_ALPHA_BLEND_COLOR_B__MASK) 937bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR_G__MASK 0x0000ff00 938bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR_G__SHIFT 8 939bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR_G(x) (((x) << VIVS_PE_ALPHA_BLEND_COLOR_G__SHIFT) & VIVS_PE_ALPHA_BLEND_COLOR_G__MASK) 940bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR_R__MASK 0x00ff0000 941bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR_R__SHIFT 16 942bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR_R(x) (((x) << VIVS_PE_ALPHA_BLEND_COLOR_R__SHIFT) & VIVS_PE_ALPHA_BLEND_COLOR_R__MASK) 943bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR_A__MASK 0xff000000 944bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR_A__SHIFT 24 945bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_BLEND_COLOR_A(x) (((x) << VIVS_PE_ALPHA_BLEND_COLOR_A__SHIFT) & VIVS_PE_ALPHA_BLEND_COLOR_A__MASK) 946bf215546Sopenharmony_ci 947bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG 0x00001428 948bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_BLEND_ENABLE_COLOR 0x00000001 949bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_BLEND_ENABLE_COLOR_MASK 0x00000002 950bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_SRC_FUNC_COLOR_MASK 0x00000004 951bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_DST_FUNC_COLOR_MASK 0x00000008 952bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_SRC_FUNC_COLOR__MASK 0x000000f0 953bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_SRC_FUNC_COLOR__SHIFT 4 954bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_SRC_FUNC_COLOR(x) (((x) << VIVS_PE_ALPHA_CONFIG_SRC_FUNC_COLOR__SHIFT) & VIVS_PE_ALPHA_CONFIG_SRC_FUNC_COLOR__MASK) 955bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_DST_FUNC_COLOR__MASK 0x00000f00 956bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_DST_FUNC_COLOR__SHIFT 8 957bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_DST_FUNC_COLOR(x) (((x) << VIVS_PE_ALPHA_CONFIG_DST_FUNC_COLOR__SHIFT) & VIVS_PE_ALPHA_CONFIG_DST_FUNC_COLOR__MASK) 958bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_EQ_COLOR__MASK 0x00007000 959bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_EQ_COLOR__SHIFT 12 960bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_EQ_COLOR(x) (((x) << VIVS_PE_ALPHA_CONFIG_EQ_COLOR__SHIFT) & VIVS_PE_ALPHA_CONFIG_EQ_COLOR__MASK) 961bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_EQ_COLOR_MASK 0x00008000 962bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_BLEND_SEPARATE_ALPHA 0x00010000 963bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_BLEND_SEPARATE_ALPHA_MASK 0x00020000 964bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_SRC_FUNC_ALPHA_MASK 0x00040000 965bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_DST_FUNC_ALPHA_MASK 0x00080000 966bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_SRC_FUNC_ALPHA__MASK 0x00f00000 967bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_SRC_FUNC_ALPHA__SHIFT 20 968bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_SRC_FUNC_ALPHA(x) (((x) << VIVS_PE_ALPHA_CONFIG_SRC_FUNC_ALPHA__SHIFT) & VIVS_PE_ALPHA_CONFIG_SRC_FUNC_ALPHA__MASK) 969bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_DST_FUNC_ALPHA__MASK 0x0f000000 970bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_DST_FUNC_ALPHA__SHIFT 24 971bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_DST_FUNC_ALPHA(x) (((x) << VIVS_PE_ALPHA_CONFIG_DST_FUNC_ALPHA__SHIFT) & VIVS_PE_ALPHA_CONFIG_DST_FUNC_ALPHA__MASK) 972bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_EQ_ALPHA__MASK 0x70000000 973bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_EQ_ALPHA__SHIFT 28 974bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_EQ_ALPHA(x) (((x) << VIVS_PE_ALPHA_CONFIG_EQ_ALPHA__SHIFT) & VIVS_PE_ALPHA_CONFIG_EQ_ALPHA__MASK) 975bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_CONFIG_EQ_ALPHA_MASK 0x80000000 976bf215546Sopenharmony_ci 977bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT 0x0000142c 978bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_FORMAT__MASK 0x0000000f 979bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_FORMAT__SHIFT 0 980bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_FORMAT(x) (((x) << VIVS_PE_COLOR_FORMAT_FORMAT__SHIFT) & VIVS_PE_COLOR_FORMAT_FORMAT__MASK) 981bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_FORMAT_MASK 0x00000010 982bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_COMPONENTS__MASK 0x00000f00 983bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_COMPONENTS__SHIFT 8 984bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_COMPONENTS(x) (((x) << VIVS_PE_COLOR_FORMAT_COMPONENTS__SHIFT) & VIVS_PE_COLOR_FORMAT_COMPONENTS__MASK) 985bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_COMPONENTS_MASK 0x00001000 986bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_SUPER_TILED_NEW 0x00002000 987bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_OVERWRITE 0x00010000 988bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_OVERWRITE_MASK 0x00020000 989bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_SUPER_TILED 0x00100000 990bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_SUPER_TILED_MASK 0x00200000 991bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_FORMAT_EXT__MASK 0x7f000000 992bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_FORMAT_EXT__SHIFT 24 993bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_FORMAT_EXT(x) (((x) << VIVS_PE_COLOR_FORMAT_FORMAT_EXT__SHIFT) & VIVS_PE_COLOR_FORMAT_FORMAT_EXT__MASK) 994bf215546Sopenharmony_ci#define VIVS_PE_COLOR_FORMAT_FORMAT_EXT_MASK 0x80000000 995bf215546Sopenharmony_ci 996bf215546Sopenharmony_ci#define VIVS_PE_COLOR_ADDR 0x00001430 997bf215546Sopenharmony_ci 998bf215546Sopenharmony_ci#define VIVS_PE_COLOR_STRIDE 0x00001434 999bf215546Sopenharmony_ci 1000bf215546Sopenharmony_ci#define VIVS_PE_HDEPTH_CONTROL 0x00001454 1001bf215546Sopenharmony_ci#define VIVS_PE_HDEPTH_CONTROL_FORMAT__MASK 0x0000000f 1002bf215546Sopenharmony_ci#define VIVS_PE_HDEPTH_CONTROL_FORMAT__SHIFT 0 1003bf215546Sopenharmony_ci#define VIVS_PE_HDEPTH_CONTROL_FORMAT_DISABLED 0x00000000 1004bf215546Sopenharmony_ci#define VIVS_PE_HDEPTH_CONTROL_FORMAT_D16 0x00000005 1005bf215546Sopenharmony_ci#define VIVS_PE_HDEPTH_CONTROL_FORMAT_D24S8 0x00000008 1006bf215546Sopenharmony_ci 1007bf215546Sopenharmony_ci#define VIVS_PE_HDEPTH_ADDR 0x00001458 1008bf215546Sopenharmony_ci 1009bf215546Sopenharmony_ci#define VIVS_PE_UNK0145C 0x0000145c 1010bf215546Sopenharmony_ci 1011bf215546Sopenharmony_ci#define VIVS_PE_PIPE(i0) (0x00000000 + 0x4*(i0)) 1012bf215546Sopenharmony_ci#define VIVS_PE_PIPE__ESIZE 0x00000004 1013bf215546Sopenharmony_ci#define VIVS_PE_PIPE__LEN 0x00000008 1014bf215546Sopenharmony_ci 1015bf215546Sopenharmony_ci#define VIVS_PE_PIPE_COLOR_ADDR(i0) (0x00001460 + 0x4*(i0)) 1016bf215546Sopenharmony_ci 1017bf215546Sopenharmony_ci#define VIVS_PE_PIPE_DEPTH_ADDR(i0) (0x00001480 + 0x4*(i0)) 1018bf215546Sopenharmony_ci 1019bf215546Sopenharmony_ci#define VIVS_PE_PIPE_ADDR_UNK01500(i0) (0x00001500 + 0x4*(i0)) 1020bf215546Sopenharmony_ci 1021bf215546Sopenharmony_ci#define VIVS_PE_PIPE_ADDR_UNK01520(i0) (0x00001520 + 0x4*(i0)) 1022bf215546Sopenharmony_ci 1023bf215546Sopenharmony_ci#define VIVS_PE_PIPE_ADDR_UNK01540(i0) (0x00001540 + 0x4*(i0)) 1024bf215546Sopenharmony_ci 1025bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT 0x000014a0 1026bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT_REF_BACK__MASK 0x000000ff 1027bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT_REF_BACK__SHIFT 0 1028bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT_REF_BACK(x) (((x) << VIVS_PE_STENCIL_CONFIG_EXT_REF_BACK__SHIFT) & VIVS_PE_STENCIL_CONFIG_EXT_REF_BACK__MASK) 1029bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT_REF_BACK_MASK 0x00000100 1030bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT_UNK16_MASK 0x00000200 1031bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT_EXTRA_ALPHA_REF__MASK 0xffff0000 1032bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT_EXTRA_ALPHA_REF__SHIFT 16 1033bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT_EXTRA_ALPHA_REF(x) (((x) << VIVS_PE_STENCIL_CONFIG_EXT_EXTRA_ALPHA_REF__SHIFT) & VIVS_PE_STENCIL_CONFIG_EXT_EXTRA_ALPHA_REF__MASK) 1034bf215546Sopenharmony_ci 1035bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP 0x000014a4 1036bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_OP__MASK 0x0000000f 1037bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_OP__SHIFT 0 1038bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_OP(x) (((x) << VIVS_PE_LOGIC_OP_OP__SHIFT) & VIVS_PE_LOGIC_OP_OP__MASK) 1039bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_OP_MASK 0x00000010 1040bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_DITHER_MODE__MASK 0x00000060 1041bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_DITHER_MODE__SHIFT 5 1042bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_DITHER_MODE(x) (((x) << VIVS_PE_LOGIC_OP_DITHER_MODE__SHIFT) & VIVS_PE_LOGIC_OP_DITHER_MODE__MASK) 1043bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_SINGLE_BUFFER_MASK 0x00000080 1044bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_SINGLE_BUFFER__MASK 0x00000300 1045bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_SINGLE_BUFFER__SHIFT 8 1046bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_SINGLE_BUFFER(x) (((x) << VIVS_PE_LOGIC_OP_SINGLE_BUFFER__SHIFT) & VIVS_PE_LOGIC_OP_SINGLE_BUFFER__MASK) 1047bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_DITHER_MODE_MASK 0x00000400 1048bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_UNK11 0x00000800 1049bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_UNK20__MASK 0x00300000 1050bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_UNK20__SHIFT 20 1051bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_UNK20(x) (((x) << VIVS_PE_LOGIC_OP_UNK20__SHIFT) & VIVS_PE_LOGIC_OP_UNK20__MASK) 1052bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_UNK20_MASK 0x00800000 1053bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_UNK24__MASK 0x07000000 1054bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_UNK24__SHIFT 24 1055bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_UNK24(x) (((x) << VIVS_PE_LOGIC_OP_UNK24__SHIFT) & VIVS_PE_LOGIC_OP_UNK24__MASK) 1056bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_UNK24_MASK 0x08000000 1057bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_SRGB_MASK 0x40000000 1058bf215546Sopenharmony_ci#define VIVS_PE_LOGIC_OP_SRGB 0x80000000 1059bf215546Sopenharmony_ci 1060bf215546Sopenharmony_ci#define VIVS_PE_DITHER(i0) (0x000014a8 + 0x4*(i0)) 1061bf215546Sopenharmony_ci#define VIVS_PE_DITHER__ESIZE 0x00000004 1062bf215546Sopenharmony_ci#define VIVS_PE_DITHER__LEN 0x00000002 1063bf215546Sopenharmony_ci 1064bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT0 0x000014b0 1065bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT0_B__MASK 0x0000ffff 1066bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT0_B__SHIFT 0 1067bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT0_B(x) (((x) << VIVS_PE_ALPHA_COLOR_EXT0_B__SHIFT) & VIVS_PE_ALPHA_COLOR_EXT0_B__MASK) 1068bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT0_G__MASK 0xffff0000 1069bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT0_G__SHIFT 16 1070bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT0_G(x) (((x) << VIVS_PE_ALPHA_COLOR_EXT0_G__SHIFT) & VIVS_PE_ALPHA_COLOR_EXT0_G__MASK) 1071bf215546Sopenharmony_ci 1072bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT1 0x000014b4 1073bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT1_R__MASK 0x0000ffff 1074bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT1_R__SHIFT 0 1075bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT1_R(x) (((x) << VIVS_PE_ALPHA_COLOR_EXT1_R__SHIFT) & VIVS_PE_ALPHA_COLOR_EXT1_R__MASK) 1076bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT1_A__MASK 0xffff0000 1077bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT1_A__SHIFT 16 1078bf215546Sopenharmony_ci#define VIVS_PE_ALPHA_COLOR_EXT1_A(x) (((x) << VIVS_PE_ALPHA_COLOR_EXT1_A__SHIFT) & VIVS_PE_ALPHA_COLOR_EXT1_A__MASK) 1079bf215546Sopenharmony_ci 1080bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT2 0x000014b8 1081bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT2_MASK_BACK__MASK 0x000000ff 1082bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT2_MASK_BACK__SHIFT 0 1083bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT2_MASK_BACK(x) (((x) << VIVS_PE_STENCIL_CONFIG_EXT2_MASK_BACK__SHIFT) & VIVS_PE_STENCIL_CONFIG_EXT2_MASK_BACK__MASK) 1084bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT2_WRITE_MASK_BACK__MASK 0x0000ff00 1085bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT2_WRITE_MASK_BACK__SHIFT 8 1086bf215546Sopenharmony_ci#define VIVS_PE_STENCIL_CONFIG_EXT2_WRITE_MASK_BACK(x) (((x) << VIVS_PE_STENCIL_CONFIG_EXT2_WRITE_MASK_BACK__SHIFT) & VIVS_PE_STENCIL_CONFIG_EXT2_WRITE_MASK_BACK__MASK) 1087bf215546Sopenharmony_ci 1088bf215546Sopenharmony_ci#define VIVS_PE_MEM_CONFIG 0x000014bc 1089bf215546Sopenharmony_ci#define VIVS_PE_MEM_CONFIG_COLOR_TS_MODE__MASK 0x01000000 1090bf215546Sopenharmony_ci#define VIVS_PE_MEM_CONFIG_COLOR_TS_MODE__SHIFT 24 1091bf215546Sopenharmony_ci#define VIVS_PE_MEM_CONFIG_COLOR_TS_MODE(x) (((x) << VIVS_PE_MEM_CONFIG_COLOR_TS_MODE__SHIFT) & VIVS_PE_MEM_CONFIG_COLOR_TS_MODE__MASK) 1092bf215546Sopenharmony_ci#define VIVS_PE_MEM_CONFIG_DEPTH_TS_MODE__MASK 0x04000000 1093bf215546Sopenharmony_ci#define VIVS_PE_MEM_CONFIG_DEPTH_TS_MODE__SHIFT 26 1094bf215546Sopenharmony_ci#define VIVS_PE_MEM_CONFIG_DEPTH_TS_MODE(x) (((x) << VIVS_PE_MEM_CONFIG_DEPTH_TS_MODE__SHIFT) & VIVS_PE_MEM_CONFIG_DEPTH_TS_MODE__MASK) 1095bf215546Sopenharmony_ci 1096bf215546Sopenharmony_ci#define VIVS_PE_HALTI4_UNK014C0 0x000014c0 1097bf215546Sopenharmony_ci 1098bf215546Sopenharmony_ci#define VIVS_PE_ROBUSTNESS_UNK014C4 0x000014c4 1099bf215546Sopenharmony_ci 1100bf215546Sopenharmony_ci#define VIVS_PE_UNK01580(i0) (0x00001580 + 0x4*(i0)) 1101bf215546Sopenharmony_ci#define VIVS_PE_UNK01580__ESIZE 0x00000004 1102bf215546Sopenharmony_ci#define VIVS_PE_UNK01580__LEN 0x00000003 1103bf215546Sopenharmony_ci 1104bf215546Sopenharmony_ci#define VIVS_PE_RT_ADDR(i0) (0x00000000 + 0x20*(i0)) 1105bf215546Sopenharmony_ci#define VIVS_PE_RT_ADDR__ESIZE 0x00000020 1106bf215546Sopenharmony_ci#define VIVS_PE_RT_ADDR__LEN 0x00000008 1107bf215546Sopenharmony_ci 1108bf215546Sopenharmony_ci#define VIVS_PE_RT_ADDR_PIPE(i0, i1) (0x00014800 + 0x20*(i0) + 0x4*(i1)) 1109bf215546Sopenharmony_ci#define VIVS_PE_RT_ADDR_PIPE__ESIZE 0x00000004 1110bf215546Sopenharmony_ci#define VIVS_PE_RT_ADDR_PIPE__LEN 0x00000008 1111bf215546Sopenharmony_ci 1112bf215546Sopenharmony_ci#define VIVS_PE_RT_CONFIG(i0) (0x00014900 + 0x4*(i0)) 1113bf215546Sopenharmony_ci#define VIVS_PE_RT_CONFIG__ESIZE 0x00000004 1114bf215546Sopenharmony_ci#define VIVS_PE_RT_CONFIG__LEN 0x00000008 1115bf215546Sopenharmony_ci#define VIVS_PE_RT_CONFIG_STRIDE__MASK 0x0000ffff 1116bf215546Sopenharmony_ci#define VIVS_PE_RT_CONFIG_STRIDE__SHIFT 0 1117bf215546Sopenharmony_ci#define VIVS_PE_RT_CONFIG_STRIDE(x) (((x) << VIVS_PE_RT_CONFIG_STRIDE__SHIFT) & VIVS_PE_RT_CONFIG_STRIDE__MASK) 1118bf215546Sopenharmony_ci#define VIVS_PE_RT_CONFIG_FORMAT__MASK 0x001f0000 1119bf215546Sopenharmony_ci#define VIVS_PE_RT_CONFIG_FORMAT__SHIFT 16 1120bf215546Sopenharmony_ci#define VIVS_PE_RT_CONFIG_FORMAT(x) (((x) << VIVS_PE_RT_CONFIG_FORMAT__SHIFT) & VIVS_PE_RT_CONFIG_FORMAT__MASK) 1121bf215546Sopenharmony_ci#define VIVS_PE_RT_CONFIG_SUPER_TILED 0x04000000 1122bf215546Sopenharmony_ci#define VIVS_PE_RT_CONFIG_UNK28 0x10000000 1123bf215546Sopenharmony_ci 1124bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14920(i0) (0x00014920 + 0x4*(i0)) 1125bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14920__ESIZE 0x00000004 1126bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14920__LEN 0x00000007 1127bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14920_COMPONENTS__MASK 0x000000f0 1128bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14920_COMPONENTS__SHIFT 4 1129bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14920_COMPONENTS(x) (((x) << VIVS_PE_HALTI5_UNK14920_COMPONENTS__SHIFT) & VIVS_PE_HALTI5_UNK14920_COMPONENTS__MASK) 1130bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14920_UNK8 0x00000100 1131bf215546Sopenharmony_ci 1132bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14940(i0) (0x00014940 + 0x4*(i0)) 1133bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14940__ESIZE 0x00000004 1134bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14940__LEN 0x00000007 1135bf215546Sopenharmony_ci 1136bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14960(i0) (0x00014960 + 0x4*(i0)) 1137bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14960__ESIZE 0x00000004 1138bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14960__LEN 0x00000007 1139bf215546Sopenharmony_ci 1140bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14980(i0) (0x00014980 + 0x4*(i0)) 1141bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14980__ESIZE 0x00000004 1142bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK14980__LEN 0x00000007 1143bf215546Sopenharmony_ci 1144bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK149A0(i0) (0x000149a0 + 0x4*(i0)) 1145bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK149A0__ESIZE 0x00000004 1146bf215546Sopenharmony_ci#define VIVS_PE_HALTI5_UNK149A0__LEN 0x00000007 1147bf215546Sopenharmony_ci 1148bf215546Sopenharmony_ci#define VIVS_PE_ROBUSTNESS_UNK149C0(i0) (0x000149c0 + 0x4*(i0)) 1149bf215546Sopenharmony_ci#define VIVS_PE_ROBUSTNESS_UNK149C0__ESIZE 0x00000004 1150bf215546Sopenharmony_ci#define VIVS_PE_ROBUSTNESS_UNK149C0__LEN 0x00000008 1151bf215546Sopenharmony_ci 1152bf215546Sopenharmony_ci#define VIVS_CO 0x00000000 1153bf215546Sopenharmony_ci 1154bf215546Sopenharmony_ci#define VIVS_CO_UNK03008 0x00003008 1155bf215546Sopenharmony_ci 1156bf215546Sopenharmony_ci#define VIVS_CO_KICKER 0x0000300c 1157bf215546Sopenharmony_ci 1158bf215546Sopenharmony_ci#define VIVS_CO_UNK03010 0x00003010 1159bf215546Sopenharmony_ci 1160bf215546Sopenharmony_ci#define VIVS_CO_UNK03014 0x00003014 1161bf215546Sopenharmony_ci 1162bf215546Sopenharmony_ci#define VIVS_CO_UNK03018 0x00003018 1163bf215546Sopenharmony_ci 1164bf215546Sopenharmony_ci#define VIVS_CO_UNK0301C 0x0000301c 1165bf215546Sopenharmony_ci 1166bf215546Sopenharmony_ci#define VIVS_CO_UNK03020 0x00003020 1167bf215546Sopenharmony_ci 1168bf215546Sopenharmony_ci#define VIVS_CO_UNK03024 0x00003024 1169bf215546Sopenharmony_ci 1170bf215546Sopenharmony_ci#define VIVS_CO_UNK03040 0x00003040 1171bf215546Sopenharmony_ci 1172bf215546Sopenharmony_ci#define VIVS_CO_UNK03044 0x00003044 1173bf215546Sopenharmony_ci 1174bf215546Sopenharmony_ci#define VIVS_CO_UNK03048 0x00003048 1175bf215546Sopenharmony_ci 1176bf215546Sopenharmony_ci#define VIVS_CO_ICACHE_UNK0304C 0x0000304c 1177bf215546Sopenharmony_ci 1178bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER(i0) (0x00000000 + 0x4*(i0)) 1179bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER__ESIZE 0x00000004 1180bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER__LEN 0x00000008 1181bf215546Sopenharmony_ci 1182bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK03060(i0) (0x00003060 + 0x4*(i0)) 1183bf215546Sopenharmony_ci 1184bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK03080(i0) (0x00003080 + 0x4*(i0)) 1185bf215546Sopenharmony_ci 1186bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK030A0(i0) (0x000030a0 + 0x4*(i0)) 1187bf215546Sopenharmony_ci 1188bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK030C0(i0) (0x000030c0 + 0x4*(i0)) 1189bf215546Sopenharmony_ci 1190bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK030E0(i0) (0x000030e0 + 0x4*(i0)) 1191bf215546Sopenharmony_ci 1192bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK03100(i0) (0x00003100 + 0x4*(i0)) 1193bf215546Sopenharmony_ci 1194bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK03120(i0) (0x00003120 + 0x4*(i0)) 1195bf215546Sopenharmony_ci 1196bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK03140(i0) (0x00003140 + 0x4*(i0)) 1197bf215546Sopenharmony_ci 1198bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK03160(i0) (0x00003160 + 0x4*(i0)) 1199bf215546Sopenharmony_ci 1200bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK03180(i0) (0x00003180 + 0x4*(i0)) 1201bf215546Sopenharmony_ci 1202bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK031A0(i0) (0x000031a0 + 0x4*(i0)) 1203bf215546Sopenharmony_ci 1204bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK031C0(i0) (0x000031c0 + 0x4*(i0)) 1205bf215546Sopenharmony_ci 1206bf215546Sopenharmony_ci#define VIVS_CO_SAMPLER_UNK031E0(i0) (0x000031e0 + 0x4*(i0)) 1207bf215546Sopenharmony_ci 1208bf215546Sopenharmony_ci#define VIVS_CO_ADDR_UNK03200(i0) (0x00003200 + 0x20*(i0)) 1209bf215546Sopenharmony_ci#define VIVS_CO_ADDR_UNK03200__ESIZE 0x00000020 1210bf215546Sopenharmony_ci#define VIVS_CO_ADDR_UNK03200__LEN 0x00000008 1211bf215546Sopenharmony_ci 1212bf215546Sopenharmony_ci#define VIVS_CO_ADDR_UNK03200_PPIPE(i0, i1) (0x00003200 + 0x20*(i0) + 0x4*(i1)) 1213bf215546Sopenharmony_ci#define VIVS_CO_ADDR_UNK03200_PPIPE__ESIZE 0x00000004 1214bf215546Sopenharmony_ci#define VIVS_CO_ADDR_UNK03200_PPIPE__LEN 0x00000008 1215bf215546Sopenharmony_ci 1216bf215546Sopenharmony_ci#define VIVS_RS 0x00000000 1217bf215546Sopenharmony_ci 1218bf215546Sopenharmony_ci#define VIVS_RS_KICKER 0x00001600 1219bf215546Sopenharmony_ci 1220bf215546Sopenharmony_ci#define VIVS_RS_CONFIG 0x00001604 1221bf215546Sopenharmony_ci#define VIVS_RS_CONFIG_SOURCE_FORMAT__MASK 0x0000001f 1222bf215546Sopenharmony_ci#define VIVS_RS_CONFIG_SOURCE_FORMAT__SHIFT 0 1223bf215546Sopenharmony_ci#define VIVS_RS_CONFIG_SOURCE_FORMAT(x) (((x) << VIVS_RS_CONFIG_SOURCE_FORMAT__SHIFT) & VIVS_RS_CONFIG_SOURCE_FORMAT__MASK) 1224bf215546Sopenharmony_ci#define VIVS_RS_CONFIG_DOWNSAMPLE_X 0x00000020 1225bf215546Sopenharmony_ci#define VIVS_RS_CONFIG_DOWNSAMPLE_Y 0x00000040 1226bf215546Sopenharmony_ci#define VIVS_RS_CONFIG_SOURCE_TILED 0x00000080 1227bf215546Sopenharmony_ci#define VIVS_RS_CONFIG_DEST_FORMAT__MASK 0x00001f00 1228bf215546Sopenharmony_ci#define VIVS_RS_CONFIG_DEST_FORMAT__SHIFT 8 1229bf215546Sopenharmony_ci#define VIVS_RS_CONFIG_DEST_FORMAT(x) (((x) << VIVS_RS_CONFIG_DEST_FORMAT__SHIFT) & VIVS_RS_CONFIG_DEST_FORMAT__MASK) 1230bf215546Sopenharmony_ci#define VIVS_RS_CONFIG_DEST_TILED 0x00004000 1231bf215546Sopenharmony_ci#define VIVS_RS_CONFIG_SWAP_RB 0x20000000 1232bf215546Sopenharmony_ci#define VIVS_RS_CONFIG_FLIP 0x40000000 1233bf215546Sopenharmony_ci 1234bf215546Sopenharmony_ci#define VIVS_RS_SOURCE_ADDR 0x00001608 1235bf215546Sopenharmony_ci 1236bf215546Sopenharmony_ci#define VIVS_RS_SOURCE_STRIDE 0x0000160c 1237bf215546Sopenharmony_ci#define VIVS_RS_SOURCE_STRIDE_STRIDE__MASK 0x0003ffff 1238bf215546Sopenharmony_ci#define VIVS_RS_SOURCE_STRIDE_STRIDE__SHIFT 0 1239bf215546Sopenharmony_ci#define VIVS_RS_SOURCE_STRIDE_STRIDE(x) (((x) << VIVS_RS_SOURCE_STRIDE_STRIDE__SHIFT) & VIVS_RS_SOURCE_STRIDE_STRIDE__MASK) 1240bf215546Sopenharmony_ci#define VIVS_RS_SOURCE_STRIDE_TS_MODE__MASK 0x20000000 1241bf215546Sopenharmony_ci#define VIVS_RS_SOURCE_STRIDE_TS_MODE__SHIFT 29 1242bf215546Sopenharmony_ci#define VIVS_RS_SOURCE_STRIDE_TS_MODE(x) (((x) << VIVS_RS_SOURCE_STRIDE_TS_MODE__SHIFT) & VIVS_RS_SOURCE_STRIDE_TS_MODE__MASK) 1243bf215546Sopenharmony_ci#define VIVS_RS_SOURCE_STRIDE_SUPER_TILED_NEW 0x08000000 1244bf215546Sopenharmony_ci#define VIVS_RS_SOURCE_STRIDE_MULTI 0x40000000 1245bf215546Sopenharmony_ci#define VIVS_RS_SOURCE_STRIDE_TILING 0x80000000 1246bf215546Sopenharmony_ci 1247bf215546Sopenharmony_ci#define VIVS_RS_DEST_ADDR 0x00001610 1248bf215546Sopenharmony_ci 1249bf215546Sopenharmony_ci#define VIVS_RS_DEST_STRIDE 0x00001614 1250bf215546Sopenharmony_ci#define VIVS_RS_DEST_STRIDE_STRIDE__MASK 0x0003ffff 1251bf215546Sopenharmony_ci#define VIVS_RS_DEST_STRIDE_STRIDE__SHIFT 0 1252bf215546Sopenharmony_ci#define VIVS_RS_DEST_STRIDE_STRIDE(x) (((x) << VIVS_RS_DEST_STRIDE_STRIDE__SHIFT) & VIVS_RS_DEST_STRIDE_STRIDE__MASK) 1253bf215546Sopenharmony_ci#define VIVS_RS_DEST_STRIDE_SUPER_TILED_NEW 0x08000000 1254bf215546Sopenharmony_ci#define VIVS_RS_DEST_STRIDE_MULTI 0x40000000 1255bf215546Sopenharmony_ci#define VIVS_RS_DEST_STRIDE_TILING 0x80000000 1256bf215546Sopenharmony_ci 1257bf215546Sopenharmony_ci#define VIVS_RS_WINDOW_SIZE 0x00001620 1258bf215546Sopenharmony_ci#define VIVS_RS_WINDOW_SIZE_HEIGHT__MASK 0xffff0000 1259bf215546Sopenharmony_ci#define VIVS_RS_WINDOW_SIZE_HEIGHT__SHIFT 16 1260bf215546Sopenharmony_ci#define VIVS_RS_WINDOW_SIZE_HEIGHT(x) (((x) << VIVS_RS_WINDOW_SIZE_HEIGHT__SHIFT) & VIVS_RS_WINDOW_SIZE_HEIGHT__MASK) 1261bf215546Sopenharmony_ci#define VIVS_RS_WINDOW_SIZE_WIDTH__MASK 0x0000ffff 1262bf215546Sopenharmony_ci#define VIVS_RS_WINDOW_SIZE_WIDTH__SHIFT 0 1263bf215546Sopenharmony_ci#define VIVS_RS_WINDOW_SIZE_WIDTH(x) (((x) << VIVS_RS_WINDOW_SIZE_WIDTH__SHIFT) & VIVS_RS_WINDOW_SIZE_WIDTH__MASK) 1264bf215546Sopenharmony_ci 1265bf215546Sopenharmony_ci#define VIVS_RS_DITHER(i0) (0x00001630 + 0x4*(i0)) 1266bf215546Sopenharmony_ci#define VIVS_RS_DITHER__ESIZE 0x00000004 1267bf215546Sopenharmony_ci#define VIVS_RS_DITHER__LEN 0x00000002 1268bf215546Sopenharmony_ci 1269bf215546Sopenharmony_ci#define VIVS_RS_CLEAR_CONTROL 0x0000163c 1270bf215546Sopenharmony_ci#define VIVS_RS_CLEAR_CONTROL_BITS__MASK 0x0000ffff 1271bf215546Sopenharmony_ci#define VIVS_RS_CLEAR_CONTROL_BITS__SHIFT 0 1272bf215546Sopenharmony_ci#define VIVS_RS_CLEAR_CONTROL_BITS(x) (((x) << VIVS_RS_CLEAR_CONTROL_BITS__SHIFT) & VIVS_RS_CLEAR_CONTROL_BITS__MASK) 1273bf215546Sopenharmony_ci#define VIVS_RS_CLEAR_CONTROL_MODE__MASK 0x00030000 1274bf215546Sopenharmony_ci#define VIVS_RS_CLEAR_CONTROL_MODE__SHIFT 16 1275bf215546Sopenharmony_ci#define VIVS_RS_CLEAR_CONTROL_MODE_DISABLED 0x00000000 1276bf215546Sopenharmony_ci#define VIVS_RS_CLEAR_CONTROL_MODE_ENABLED1 0x00010000 1277bf215546Sopenharmony_ci#define VIVS_RS_CLEAR_CONTROL_MODE_ENABLED4 0x00020000 1278bf215546Sopenharmony_ci#define VIVS_RS_CLEAR_CONTROL_MODE_ENABLED4_2 0x00030000 1279bf215546Sopenharmony_ci 1280bf215546Sopenharmony_ci#define VIVS_RS_FILL_VALUE(i0) (0x00001640 + 0x4*(i0)) 1281bf215546Sopenharmony_ci#define VIVS_RS_FILL_VALUE__ESIZE 0x00000004 1282bf215546Sopenharmony_ci#define VIVS_RS_FILL_VALUE__LEN 0x00000004 1283bf215546Sopenharmony_ci 1284bf215546Sopenharmony_ci#define VIVS_RS_EXTRA_CONFIG 0x000016a0 1285bf215546Sopenharmony_ci#define VIVS_RS_EXTRA_CONFIG_AA__MASK 0x00000003 1286bf215546Sopenharmony_ci#define VIVS_RS_EXTRA_CONFIG_AA__SHIFT 0 1287bf215546Sopenharmony_ci#define VIVS_RS_EXTRA_CONFIG_AA(x) (((x) << VIVS_RS_EXTRA_CONFIG_AA__SHIFT) & VIVS_RS_EXTRA_CONFIG_AA__MASK) 1288bf215546Sopenharmony_ci#define VIVS_RS_EXTRA_CONFIG_ENDIAN__MASK 0x00000300 1289bf215546Sopenharmony_ci#define VIVS_RS_EXTRA_CONFIG_ENDIAN__SHIFT 8 1290bf215546Sopenharmony_ci#define VIVS_RS_EXTRA_CONFIG_ENDIAN(x) (((x) << VIVS_RS_EXTRA_CONFIG_ENDIAN__SHIFT) & VIVS_RS_EXTRA_CONFIG_ENDIAN__MASK) 1291bf215546Sopenharmony_ci#define VIVS_RS_EXTRA_CONFIG_UNK20 0x00100000 1292bf215546Sopenharmony_ci#define VIVS_RS_EXTRA_CONFIG_UNK28 0x10000000 1293bf215546Sopenharmony_ci 1294bf215546Sopenharmony_ci#define VIVS_RS_KICKER_INPLACE 0x000016b0 1295bf215546Sopenharmony_ci 1296bf215546Sopenharmony_ci#define VIVS_RS_UNK016B4 0x000016b4 1297bf215546Sopenharmony_ci 1298bf215546Sopenharmony_ci#define VIVS_RS_SINGLE_BUFFER 0x000016b8 1299bf215546Sopenharmony_ci#define VIVS_RS_SINGLE_BUFFER_ENABLE 0x00000001 1300bf215546Sopenharmony_ci 1301bf215546Sopenharmony_ci#define VIVS_RS_PIPE(i0) (0x00000000 + 0x4*(i0)) 1302bf215546Sopenharmony_ci#define VIVS_RS_PIPE__ESIZE 0x00000004 1303bf215546Sopenharmony_ci#define VIVS_RS_PIPE__LEN 0x00000008 1304bf215546Sopenharmony_ci 1305bf215546Sopenharmony_ci#define VIVS_RS_PIPE_SOURCE_ADDR(i0) (0x000016c0 + 0x4*(i0)) 1306bf215546Sopenharmony_ci 1307bf215546Sopenharmony_ci#define VIVS_RS_PIPE_DEST_ADDR(i0) (0x000016e0 + 0x4*(i0)) 1308bf215546Sopenharmony_ci 1309bf215546Sopenharmony_ci#define VIVS_RS_PIPE_OFFSET(i0) (0x00001700 + 0x4*(i0)) 1310bf215546Sopenharmony_ci#define VIVS_RS_PIPE_OFFSET_X__MASK 0x0000ffff 1311bf215546Sopenharmony_ci#define VIVS_RS_PIPE_OFFSET_X__SHIFT 0 1312bf215546Sopenharmony_ci#define VIVS_RS_PIPE_OFFSET_X(x) (((x) << VIVS_RS_PIPE_OFFSET_X__SHIFT) & VIVS_RS_PIPE_OFFSET_X__MASK) 1313bf215546Sopenharmony_ci#define VIVS_RS_PIPE_OFFSET_Y__MASK 0xffff0000 1314bf215546Sopenharmony_ci#define VIVS_RS_PIPE_OFFSET_Y__SHIFT 16 1315bf215546Sopenharmony_ci#define VIVS_RS_PIPE_OFFSET_Y(x) (((x) << VIVS_RS_PIPE_OFFSET_Y__SHIFT) & VIVS_RS_PIPE_OFFSET_Y__MASK) 1316bf215546Sopenharmony_ci 1317bf215546Sopenharmony_ci#define VIVS_TS 0x00000000 1318bf215546Sopenharmony_ci 1319bf215546Sopenharmony_ci#define VIVS_TS_FLUSH_CACHE 0x00001650 1320bf215546Sopenharmony_ci#define VIVS_TS_FLUSH_CACHE_FLUSH 0x00000001 1321bf215546Sopenharmony_ci 1322bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG 0x00001654 1323bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_DEPTH_FAST_CLEAR 0x00000001 1324bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_COLOR_FAST_CLEAR 0x00000002 1325bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_DEPTH_16BPP 0x00000008 1326bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_DEPTH_AUTO_DISABLE 0x00000010 1327bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_COLOR_AUTO_DISABLE 0x00000020 1328bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_DEPTH_COMPRESSION 0x00000040 1329bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_COLOR_COMPRESSION 0x00000080 1330bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_COLOR_COMPRESSION_FORMAT__MASK 0x00000f00 1331bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_COLOR_COMPRESSION_FORMAT__SHIFT 8 1332bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_COLOR_COMPRESSION_FORMAT(x) (((x) << VIVS_TS_MEM_CONFIG_COLOR_COMPRESSION_FORMAT__SHIFT) & VIVS_TS_MEM_CONFIG_COLOR_COMPRESSION_FORMAT__MASK) 1333bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_UNK12 0x00001000 1334bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_HDEPTH_AUTO_DISABLE 0x00002000 1335bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_STENCIL_ENABLE 0x00004000 1336bf215546Sopenharmony_ci#define VIVS_TS_MEM_CONFIG_UNK21 0x00200000 1337bf215546Sopenharmony_ci 1338bf215546Sopenharmony_ci#define VIVS_TS_COLOR_STATUS_BASE 0x00001658 1339bf215546Sopenharmony_ci 1340bf215546Sopenharmony_ci#define VIVS_TS_COLOR_SURFACE_BASE 0x0000165c 1341bf215546Sopenharmony_ci 1342bf215546Sopenharmony_ci#define VIVS_TS_COLOR_CLEAR_VALUE 0x00001660 1343bf215546Sopenharmony_ci 1344bf215546Sopenharmony_ci#define VIVS_TS_DEPTH_STATUS_BASE 0x00001664 1345bf215546Sopenharmony_ci 1346bf215546Sopenharmony_ci#define VIVS_TS_DEPTH_SURFACE_BASE 0x00001668 1347bf215546Sopenharmony_ci 1348bf215546Sopenharmony_ci#define VIVS_TS_DEPTH_CLEAR_VALUE 0x0000166c 1349bf215546Sopenharmony_ci 1350bf215546Sopenharmony_ci#define VIVS_TS_DEPTH_AUTO_DISABLE_COUNT 0x00001670 1351bf215546Sopenharmony_ci 1352bf215546Sopenharmony_ci#define VIVS_TS_COLOR_AUTO_DISABLE_COUNT 0x00001674 1353bf215546Sopenharmony_ci 1354bf215546Sopenharmony_ci#define VIVS_TS_HDEPTH_STATUS_BASE 0x000016a4 1355bf215546Sopenharmony_ci 1356bf215546Sopenharmony_ci#define VIVS_TS_HDEPTH_CLEAR_VALUE 0x000016a8 1357bf215546Sopenharmony_ci 1358bf215546Sopenharmony_ci#define VIVS_TS_HDEPTH_SIZE 0x000016ac 1359bf215546Sopenharmony_ci 1360bf215546Sopenharmony_ci#define VIVS_TS_COLOR_CLEAR_VALUE_EXT 0x000016bc 1361bf215546Sopenharmony_ci 1362bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER(i0) (0x00000000 + 0x4*(i0)) 1363bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER__ESIZE 0x00000004 1364bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER__LEN 0x00000008 1365bf215546Sopenharmony_ci 1366bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_CONFIG(i0) (0x00001720 + 0x4*(i0)) 1367bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_CONFIG_ENABLE 0x00000001 1368bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_CONFIG_COMPRESSION 0x00000002 1369bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_CONFIG_COMPRESSION_FORMAT__MASK 0x000000f0 1370bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_CONFIG_COMPRESSION_FORMAT__SHIFT 4 1371bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_CONFIG_COMPRESSION_FORMAT(x) (((x) << VIVS_TS_SAMPLER_CONFIG_COMPRESSION_FORMAT__SHIFT) & VIVS_TS_SAMPLER_CONFIG_COMPRESSION_FORMAT__MASK) 1372bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_CONFIG_UNK11__MASK 0x00003800 1373bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_CONFIG_UNK11__SHIFT 11 1374bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_CONFIG_UNK11(x) (((x) << VIVS_TS_SAMPLER_CONFIG_UNK11__SHIFT) & VIVS_TS_SAMPLER_CONFIG_UNK11__MASK) 1375bf215546Sopenharmony_ci 1376bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_STATUS_BASE(i0) (0x00001740 + 0x4*(i0)) 1377bf215546Sopenharmony_ci 1378bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_CLEAR_VALUE(i0) (0x00001760 + 0x4*(i0)) 1379bf215546Sopenharmony_ci 1380bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_CLEAR_VALUE2(i0) (0x00001780 + 0x4*(i0)) 1381bf215546Sopenharmony_ci 1382bf215546Sopenharmony_ci#define VIVS_TS_SAMPLER_SURFACE_BASE(i0) (0x00001a80 + 0x4*(i0)) 1383bf215546Sopenharmony_ci 1384bf215546Sopenharmony_ci#define VIVS_TS_RT(i0) (0x00000000 + 0x4*(i0)) 1385bf215546Sopenharmony_ci#define VIVS_TS_RT__ESIZE 0x00000004 1386bf215546Sopenharmony_ci#define VIVS_TS_RT__LEN 0x00000008 1387bf215546Sopenharmony_ci 1388bf215546Sopenharmony_ci#define VIVS_TS_RT_UNK017A0(i0) (0x000017a0 + 0x4*(i0)) 1389bf215546Sopenharmony_ci 1390bf215546Sopenharmony_ci#define VIVS_TS_RT_STATUS_BASE(i0) (0x000017c0 + 0x4*(i0)) 1391bf215546Sopenharmony_ci 1392bf215546Sopenharmony_ci#define VIVS_TS_RT_SURFACE_BASE(i0) (0x000017e0 + 0x4*(i0)) 1393bf215546Sopenharmony_ci 1394bf215546Sopenharmony_ci#define VIVS_TS_RT_CLEAR_VALUE(i0) (0x00001a00 + 0x4*(i0)) 1395bf215546Sopenharmony_ci 1396bf215546Sopenharmony_ci#define VIVS_TS_RT_CLEAR_VALUE2(i0) (0x00001a20 + 0x4*(i0)) 1397bf215546Sopenharmony_ci 1398bf215546Sopenharmony_ci#define VIVS_TS_RT_UNK01A40(i0) (0x00001a40 + 0x4*(i0)) 1399bf215546Sopenharmony_ci 1400bf215546Sopenharmony_ci#define VIVS_YUV 0x00000000 1401bf215546Sopenharmony_ci 1402bf215546Sopenharmony_ci#define VIVS_YUV_CONFIG 0x00001678 1403bf215546Sopenharmony_ci#define VIVS_YUV_CONFIG_ENABLE 0x00000001 1404bf215546Sopenharmony_ci#define VIVS_YUV_CONFIG_SOURCE_FORMAT__MASK 0x00000030 1405bf215546Sopenharmony_ci#define VIVS_YUV_CONFIG_SOURCE_FORMAT__SHIFT 4 1406bf215546Sopenharmony_ci#define VIVS_YUV_CONFIG_SOURCE_FORMAT(x) (((x) << VIVS_YUV_CONFIG_SOURCE_FORMAT__SHIFT) & VIVS_YUV_CONFIG_SOURCE_FORMAT__MASK) 1407bf215546Sopenharmony_ci#define VIVS_YUV_CONFIG_UV_SWAP 0x00000100 1408bf215546Sopenharmony_ci 1409bf215546Sopenharmony_ci#define VIVS_YUV_WINDOW_SIZE 0x0000167c 1410bf215546Sopenharmony_ci#define VIVS_YUV_WINDOW_SIZE_HEIGHT__MASK 0xffff0000 1411bf215546Sopenharmony_ci#define VIVS_YUV_WINDOW_SIZE_HEIGHT__SHIFT 16 1412bf215546Sopenharmony_ci#define VIVS_YUV_WINDOW_SIZE_HEIGHT(x) (((x) << VIVS_YUV_WINDOW_SIZE_HEIGHT__SHIFT) & VIVS_YUV_WINDOW_SIZE_HEIGHT__MASK) 1413bf215546Sopenharmony_ci#define VIVS_YUV_WINDOW_SIZE_WIDTH__MASK 0x0000ffff 1414bf215546Sopenharmony_ci#define VIVS_YUV_WINDOW_SIZE_WIDTH__SHIFT 0 1415bf215546Sopenharmony_ci#define VIVS_YUV_WINDOW_SIZE_WIDTH(x) (((x) << VIVS_YUV_WINDOW_SIZE_WIDTH__SHIFT) & VIVS_YUV_WINDOW_SIZE_WIDTH__MASK) 1416bf215546Sopenharmony_ci 1417bf215546Sopenharmony_ci#define VIVS_YUV_Y_BASE 0x00001680 1418bf215546Sopenharmony_ci 1419bf215546Sopenharmony_ci#define VIVS_YUV_Y_STRIDE 0x00001684 1420bf215546Sopenharmony_ci 1421bf215546Sopenharmony_ci#define VIVS_YUV_U_BASE 0x00001688 1422bf215546Sopenharmony_ci 1423bf215546Sopenharmony_ci#define VIVS_YUV_U_STRIDE 0x0000168c 1424bf215546Sopenharmony_ci 1425bf215546Sopenharmony_ci#define VIVS_YUV_V_BASE 0x00001690 1426bf215546Sopenharmony_ci 1427bf215546Sopenharmony_ci#define VIVS_YUV_V_STRIDE 0x00001694 1428bf215546Sopenharmony_ci 1429bf215546Sopenharmony_ci#define VIVS_YUV_DEST_BASE 0x00001698 1430bf215546Sopenharmony_ci 1431bf215546Sopenharmony_ci#define VIVS_YUV_DEST_STRIDE 0x0000169c 1432bf215546Sopenharmony_ci 1433bf215546Sopenharmony_ci#define VIVS_TE 0x00000000 1434bf215546Sopenharmony_ci 1435bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER(i0) (0x00000000 + 0x4*(i0)) 1436bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER__ESIZE 0x00000004 1437bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER__LEN 0x0000000c 1438bf215546Sopenharmony_ci 1439bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0(i0) (0x00002000 + 0x4*(i0)) 1440bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_TYPE__MASK 0x00000007 1441bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_TYPE__SHIFT 0 1442bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_TYPE(x) (((x) << VIVS_TE_SAMPLER_CONFIG0_TYPE__SHIFT) & VIVS_TE_SAMPLER_CONFIG0_TYPE__MASK) 1443bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_UWRAP__MASK 0x00000018 1444bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_UWRAP__SHIFT 3 1445bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_UWRAP(x) (((x) << VIVS_TE_SAMPLER_CONFIG0_UWRAP__SHIFT) & VIVS_TE_SAMPLER_CONFIG0_UWRAP__MASK) 1446bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_VWRAP__MASK 0x00000060 1447bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_VWRAP__SHIFT 5 1448bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_VWRAP(x) (((x) << VIVS_TE_SAMPLER_CONFIG0_VWRAP__SHIFT) & VIVS_TE_SAMPLER_CONFIG0_VWRAP__MASK) 1449bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_MIN__MASK 0x00000180 1450bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_MIN__SHIFT 7 1451bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_MIN(x) (((x) << VIVS_TE_SAMPLER_CONFIG0_MIN__SHIFT) & VIVS_TE_SAMPLER_CONFIG0_MIN__MASK) 1452bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_MIP__MASK 0x00000600 1453bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_MIP__SHIFT 9 1454bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_MIP(x) (((x) << VIVS_TE_SAMPLER_CONFIG0_MIP__SHIFT) & VIVS_TE_SAMPLER_CONFIG0_MIP__MASK) 1455bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_MAG__MASK 0x00001800 1456bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_MAG__SHIFT 11 1457bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_MAG(x) (((x) << VIVS_TE_SAMPLER_CONFIG0_MAG__SHIFT) & VIVS_TE_SAMPLER_CONFIG0_MAG__MASK) 1458bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_FORMAT__MASK 0x0003e000 1459bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_FORMAT__SHIFT 13 1460bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_FORMAT(x) (((x) << VIVS_TE_SAMPLER_CONFIG0_FORMAT__SHIFT) & VIVS_TE_SAMPLER_CONFIG0_FORMAT__MASK) 1461bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_ROUND_UV 0x00080000 1462bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_ADDRESSING_MODE__MASK 0x00300000 1463bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_ADDRESSING_MODE__SHIFT 20 1464bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_ADDRESSING_MODE(x) (((x) << VIVS_TE_SAMPLER_CONFIG0_ADDRESSING_MODE__SHIFT) & VIVS_TE_SAMPLER_CONFIG0_ADDRESSING_MODE__MASK) 1465bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_ENDIAN__MASK 0x00c00000 1466bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_ENDIAN__SHIFT 22 1467bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_ENDIAN(x) (((x) << VIVS_TE_SAMPLER_CONFIG0_ENDIAN__SHIFT) & VIVS_TE_SAMPLER_CONFIG0_ENDIAN__MASK) 1468bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_ANISOTROPY__MASK 0xff000000 1469bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_ANISOTROPY__SHIFT 24 1470bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG0_ANISOTROPY(x) (((x) << VIVS_TE_SAMPLER_CONFIG0_ANISOTROPY__SHIFT) & VIVS_TE_SAMPLER_CONFIG0_ANISOTROPY__MASK) 1471bf215546Sopenharmony_ci 1472bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_SIZE(i0) (0x00002040 + 0x4*(i0)) 1473bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_SIZE_WIDTH__MASK 0x0000ffff 1474bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_SIZE_WIDTH__SHIFT 0 1475bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_SIZE_WIDTH(x) (((x) << VIVS_TE_SAMPLER_SIZE_WIDTH__SHIFT) & VIVS_TE_SAMPLER_SIZE_WIDTH__MASK) 1476bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_SIZE_HEIGHT__MASK 0xffff0000 1477bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_SIZE_HEIGHT__SHIFT 16 1478bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_SIZE_HEIGHT(x) (((x) << VIVS_TE_SAMPLER_SIZE_HEIGHT__SHIFT) & VIVS_TE_SAMPLER_SIZE_HEIGHT__MASK) 1479bf215546Sopenharmony_ci 1480bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOG_SIZE(i0) (0x00002080 + 0x4*(i0)) 1481bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOG_SIZE_WIDTH__MASK 0x000003ff 1482bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOG_SIZE_WIDTH__SHIFT 0 1483bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOG_SIZE_WIDTH(x) (((x) << VIVS_TE_SAMPLER_LOG_SIZE_WIDTH__SHIFT) & VIVS_TE_SAMPLER_LOG_SIZE_WIDTH__MASK) 1484bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOG_SIZE_HEIGHT__MASK 0x000ffc00 1485bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOG_SIZE_HEIGHT__SHIFT 10 1486bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOG_SIZE_HEIGHT(x) (((x) << VIVS_TE_SAMPLER_LOG_SIZE_HEIGHT__SHIFT) & VIVS_TE_SAMPLER_LOG_SIZE_HEIGHT__MASK) 1487bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOG_SIZE_ASTC 0x10000000 1488bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOG_SIZE_INT_FILTER 0x20000000 1489bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOG_SIZE_SRGB 0x80000000 1490bf215546Sopenharmony_ci 1491bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_CONFIG(i0) (0x000020c0 + 0x4*(i0)) 1492bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_CONFIG_BIAS_ENABLE 0x00000001 1493bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_CONFIG_MAX__MASK 0x000007fe 1494bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_CONFIG_MAX__SHIFT 1 1495bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_CONFIG_MAX(x) (((x) << VIVS_TE_SAMPLER_LOD_CONFIG_MAX__SHIFT) & VIVS_TE_SAMPLER_LOD_CONFIG_MAX__MASK) 1496bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_CONFIG_MIN__MASK 0x001ff800 1497bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_CONFIG_MIN__SHIFT 11 1498bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_CONFIG_MIN(x) (((x) << VIVS_TE_SAMPLER_LOD_CONFIG_MIN__SHIFT) & VIVS_TE_SAMPLER_LOD_CONFIG_MIN__MASK) 1499bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_CONFIG_BIAS__MASK 0x7fe00000 1500bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_CONFIG_BIAS__SHIFT 21 1501bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_CONFIG_BIAS(x) (((x) << VIVS_TE_SAMPLER_LOD_CONFIG_BIAS__SHIFT) & VIVS_TE_SAMPLER_LOD_CONFIG_BIAS__MASK) 1502bf215546Sopenharmony_ci 1503bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_UNK02100(i0) (0x00002100 + 0x4*(i0)) 1504bf215546Sopenharmony_ci 1505bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_UNK02140(i0) (0x00002140 + 0x4*(i0)) 1506bf215546Sopenharmony_ci 1507bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_3D_CONFIG(i0) (0x00002180 + 0x4*(i0)) 1508bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_3D_CONFIG_DEPTH__MASK 0x00003fff 1509bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_3D_CONFIG_DEPTH__SHIFT 0 1510bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_3D_CONFIG_DEPTH(x) (((x) << VIVS_TE_SAMPLER_3D_CONFIG_DEPTH__SHIFT) & VIVS_TE_SAMPLER_3D_CONFIG_DEPTH__MASK) 1511bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_3D_CONFIG_LOG_DEPTH__MASK 0x03ff0000 1512bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_3D_CONFIG_LOG_DEPTH__SHIFT 16 1513bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_3D_CONFIG_LOG_DEPTH(x) (((x) << VIVS_TE_SAMPLER_3D_CONFIG_LOG_DEPTH__SHIFT) & VIVS_TE_SAMPLER_3D_CONFIG_LOG_DEPTH__MASK) 1514bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_3D_CONFIG_WRAP__MASK 0x30000000 1515bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_3D_CONFIG_WRAP__SHIFT 28 1516bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_3D_CONFIG_WRAP(x) (((x) << VIVS_TE_SAMPLER_3D_CONFIG_WRAP__SHIFT) & VIVS_TE_SAMPLER_3D_CONFIG_WRAP__MASK) 1517bf215546Sopenharmony_ci 1518bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1(i0) (0x000021c0 + 0x4*(i0)) 1519bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_FORMAT_EXT__MASK 0x0000003f 1520bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_FORMAT_EXT__SHIFT 0 1521bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_FORMAT_EXT(x) (((x) << VIVS_TE_SAMPLER_CONFIG1_FORMAT_EXT__SHIFT) & VIVS_TE_SAMPLER_CONFIG1_FORMAT_EXT__MASK) 1522bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_R__MASK 0x00000700 1523bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_R__SHIFT 8 1524bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_R(x) (((x) << VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_R__SHIFT) & VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_R__MASK) 1525bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_G__MASK 0x00007000 1526bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_G__SHIFT 12 1527bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_G(x) (((x) << VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_G__SHIFT) & VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_G__MASK) 1528bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_B__MASK 0x00070000 1529bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_B__SHIFT 16 1530bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_B(x) (((x) << VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_B__SHIFT) & VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_B__MASK) 1531bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_A__MASK 0x00700000 1532bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_A__SHIFT 20 1533bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_A(x) (((x) << VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_A__SHIFT) & VIVS_TE_SAMPLER_CONFIG1_SWIZZLE_A__MASK) 1534bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_TS_MODE__MASK 0x00800000 1535bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_TS_MODE__SHIFT 23 1536bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_TS_MODE(x) (((x) << VIVS_TE_SAMPLER_CONFIG1_TS_MODE__SHIFT) & VIVS_TE_SAMPLER_CONFIG1_TS_MODE__MASK) 1537bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_TEXTURE_ARRAY 0x01000000 1538bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_SEAMLESS_CUBE_MAP 0x02000000 1539bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_HALIGN__MASK 0x1c000000 1540bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_HALIGN__SHIFT 26 1541bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_HALIGN(x) (((x) << VIVS_TE_SAMPLER_CONFIG1_HALIGN__SHIFT) & VIVS_TE_SAMPLER_CONFIG1_HALIGN__MASK) 1542bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_CONFIG1_USE_TS 0x40000000 1543bf215546Sopenharmony_ci 1544bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_UNK02200(i0) (0x00002200 + 0x4*(i0)) 1545bf215546Sopenharmony_ci 1546bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_UNK02240(i0) (0x00002240 + 0x4*(i0)) 1547bf215546Sopenharmony_ci 1548bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0(i0) (0x00002280 + 0x4*(i0)) 1549bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_ASTC_FORMAT__MASK 0x0000000f 1550bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_ASTC_FORMAT__SHIFT 0 1551bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_ASTC_FORMAT(x) (((x) << VIVS_TE_SAMPLER_ASTC0_ASTC_FORMAT__SHIFT) & VIVS_TE_SAMPLER_ASTC0_ASTC_FORMAT__MASK) 1552bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_ASTC_SRGB 0x00000010 1553bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_UNK8__MASK 0x0000ff00 1554bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_UNK8__SHIFT 8 1555bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_UNK8(x) (((x) << VIVS_TE_SAMPLER_ASTC0_UNK8__SHIFT) & VIVS_TE_SAMPLER_ASTC0_UNK8__MASK) 1556bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_UNK16__MASK 0x00ff0000 1557bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_UNK16__SHIFT 16 1558bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_UNK16(x) (((x) << VIVS_TE_SAMPLER_ASTC0_UNK16__SHIFT) & VIVS_TE_SAMPLER_ASTC0_UNK16__MASK) 1559bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_UNK24__MASK 0xff000000 1560bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_UNK24__SHIFT 24 1561bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC0_UNK24(x) (((x) << VIVS_TE_SAMPLER_ASTC0_UNK24__SHIFT) & VIVS_TE_SAMPLER_ASTC0_UNK24__MASK) 1562bf215546Sopenharmony_ci 1563bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC1(i0) (0x00002300 + 0x4*(i0)) 1564bf215546Sopenharmony_ci 1565bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC2(i0) (0x00002380 + 0x4*(i0)) 1566bf215546Sopenharmony_ci 1567bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_ASTC3(i0) (0x00002340 + 0x4*(i0)) 1568bf215546Sopenharmony_ci 1569bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_ADDR(i0, i1) (0x00002400 + 0x4*(i0) + 0x40*(i1)) 1570bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_ADDR__ESIZE 0x00000040 1571bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LOD_ADDR__LEN 0x0000000e 1572bf215546Sopenharmony_ci 1573bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LINEAR_STRIDE(i0, i1) (0x00002c00 + 0x4*(i0) + 0x40*(i1)) 1574bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LINEAR_STRIDE__ESIZE 0x00000040 1575bf215546Sopenharmony_ci#define VIVS_TE_SAMPLER_LINEAR_STRIDE__LEN 0x0000000e 1576bf215546Sopenharmony_ci 1577bf215546Sopenharmony_ci#define VIVS_NTE 0x00000000 1578bf215546Sopenharmony_ci 1579bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER(i0) (0x00000000 + 0x4*(i0)) 1580bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER__ESIZE 0x00000004 1581bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER__LEN 0x00000020 1582bf215546Sopenharmony_ci 1583bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0(i0) (0x00010000 + 0x4*(i0)) 1584bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_TYPE__MASK 0x00000007 1585bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_TYPE__SHIFT 0 1586bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_TYPE(x) (((x) << VIVS_NTE_SAMPLER_CONFIG0_TYPE__SHIFT) & VIVS_NTE_SAMPLER_CONFIG0_TYPE__MASK) 1587bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_UWRAP__MASK 0x00000018 1588bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_UWRAP__SHIFT 3 1589bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_UWRAP(x) (((x) << VIVS_NTE_SAMPLER_CONFIG0_UWRAP__SHIFT) & VIVS_NTE_SAMPLER_CONFIG0_UWRAP__MASK) 1590bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_VWRAP__MASK 0x00000060 1591bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_VWRAP__SHIFT 5 1592bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_VWRAP(x) (((x) << VIVS_NTE_SAMPLER_CONFIG0_VWRAP__SHIFT) & VIVS_NTE_SAMPLER_CONFIG0_VWRAP__MASK) 1593bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_MIN__MASK 0x00000180 1594bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_MIN__SHIFT 7 1595bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_MIN(x) (((x) << VIVS_NTE_SAMPLER_CONFIG0_MIN__SHIFT) & VIVS_NTE_SAMPLER_CONFIG0_MIN__MASK) 1596bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_MIP__MASK 0x00000600 1597bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_MIP__SHIFT 9 1598bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_MIP(x) (((x) << VIVS_NTE_SAMPLER_CONFIG0_MIP__SHIFT) & VIVS_NTE_SAMPLER_CONFIG0_MIP__MASK) 1599bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_MAG__MASK 0x00001800 1600bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_MAG__SHIFT 11 1601bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_MAG(x) (((x) << VIVS_NTE_SAMPLER_CONFIG0_MAG__SHIFT) & VIVS_NTE_SAMPLER_CONFIG0_MAG__MASK) 1602bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_FORMAT__MASK 0x0003e000 1603bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_FORMAT__SHIFT 13 1604bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_FORMAT(x) (((x) << VIVS_NTE_SAMPLER_CONFIG0_FORMAT__SHIFT) & VIVS_NTE_SAMPLER_CONFIG0_FORMAT__MASK) 1605bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_ROUND_UV 0x00080000 1606bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_ADDRESSING_MODE__MASK 0x00300000 1607bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_ADDRESSING_MODE__SHIFT 20 1608bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_ADDRESSING_MODE(x) (((x) << VIVS_NTE_SAMPLER_CONFIG0_ADDRESSING_MODE__SHIFT) & VIVS_NTE_SAMPLER_CONFIG0_ADDRESSING_MODE__MASK) 1609bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_ENDIAN__MASK 0x00c00000 1610bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_ENDIAN__SHIFT 22 1611bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_ENDIAN(x) (((x) << VIVS_NTE_SAMPLER_CONFIG0_ENDIAN__SHIFT) & VIVS_NTE_SAMPLER_CONFIG0_ENDIAN__MASK) 1612bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_ANISOTROPY__MASK 0xff000000 1613bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_ANISOTROPY__SHIFT 24 1614bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG0_ANISOTROPY(x) (((x) << VIVS_NTE_SAMPLER_CONFIG0_ANISOTROPY__SHIFT) & VIVS_NTE_SAMPLER_CONFIG0_ANISOTROPY__MASK) 1615bf215546Sopenharmony_ci 1616bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_SIZE(i0) (0x00010080 + 0x4*(i0)) 1617bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_SIZE_WIDTH__MASK 0x0000ffff 1618bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_SIZE_WIDTH__SHIFT 0 1619bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_SIZE_WIDTH(x) (((x) << VIVS_NTE_SAMPLER_SIZE_WIDTH__SHIFT) & VIVS_NTE_SAMPLER_SIZE_WIDTH__MASK) 1620bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_SIZE_HEIGHT__MASK 0xffff0000 1621bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_SIZE_HEIGHT__SHIFT 16 1622bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_SIZE_HEIGHT(x) (((x) << VIVS_NTE_SAMPLER_SIZE_HEIGHT__SHIFT) & VIVS_NTE_SAMPLER_SIZE_HEIGHT__MASK) 1623bf215546Sopenharmony_ci 1624bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOG_SIZE(i0) (0x00010100 + 0x4*(i0)) 1625bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOG_SIZE_WIDTH__MASK 0x000003ff 1626bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOG_SIZE_WIDTH__SHIFT 0 1627bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOG_SIZE_WIDTH(x) (((x) << VIVS_NTE_SAMPLER_LOG_SIZE_WIDTH__SHIFT) & VIVS_NTE_SAMPLER_LOG_SIZE_WIDTH__MASK) 1628bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOG_SIZE_HEIGHT__MASK 0x000ffc00 1629bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOG_SIZE_HEIGHT__SHIFT 10 1630bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOG_SIZE_HEIGHT(x) (((x) << VIVS_NTE_SAMPLER_LOG_SIZE_HEIGHT__SHIFT) & VIVS_NTE_SAMPLER_LOG_SIZE_HEIGHT__MASK) 1631bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOG_SIZE_ASTC 0x10000000 1632bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOG_SIZE_INT_FILTER 0x20000000 1633bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOG_SIZE_SRGB 0x80000000 1634bf215546Sopenharmony_ci 1635bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOD_CONFIG(i0) (0x00010180 + 0x4*(i0)) 1636bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOD_CONFIG_BIAS_ENABLE 0x00000001 1637bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOD_CONFIG_MAX__MASK 0x000007fe 1638bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOD_CONFIG_MAX__SHIFT 1 1639bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOD_CONFIG_MAX(x) (((x) << VIVS_NTE_SAMPLER_LOD_CONFIG_MAX__SHIFT) & VIVS_NTE_SAMPLER_LOD_CONFIG_MAX__MASK) 1640bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOD_CONFIG_MIN__MASK 0x001ff800 1641bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOD_CONFIG_MIN__SHIFT 11 1642bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOD_CONFIG_MIN(x) (((x) << VIVS_NTE_SAMPLER_LOD_CONFIG_MIN__SHIFT) & VIVS_NTE_SAMPLER_LOD_CONFIG_MIN__MASK) 1643bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOD_CONFIG_BIAS__MASK 0x7fe00000 1644bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOD_CONFIG_BIAS__SHIFT 21 1645bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LOD_CONFIG_BIAS(x) (((x) << VIVS_NTE_SAMPLER_LOD_CONFIG_BIAS__SHIFT) & VIVS_NTE_SAMPLER_LOD_CONFIG_BIAS__MASK) 1646bf215546Sopenharmony_ci 1647bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_UNK10200(i0) (0x00010200 + 0x4*(i0)) 1648bf215546Sopenharmony_ci 1649bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LINEAR_STRIDE(i0, i1) (0x00010280 + 0x4*(i0) + 0x4*(i1)) 1650bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LINEAR_STRIDE__ESIZE 0x00000004 1651bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_LINEAR_STRIDE__LEN 0x00000020 1652bf215546Sopenharmony_ci 1653bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_3D_CONFIG(i0) (0x00010300 + 0x4*(i0)) 1654bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_3D_CONFIG_DEPTH__MASK 0x00003fff 1655bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_3D_CONFIG_DEPTH__SHIFT 0 1656bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_3D_CONFIG_DEPTH(x) (((x) << VIVS_NTE_SAMPLER_3D_CONFIG_DEPTH__SHIFT) & VIVS_NTE_SAMPLER_3D_CONFIG_DEPTH__MASK) 1657bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_3D_CONFIG_LOG_DEPTH__MASK 0x03ff0000 1658bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_3D_CONFIG_LOG_DEPTH__SHIFT 16 1659bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_3D_CONFIG_LOG_DEPTH(x) (((x) << VIVS_NTE_SAMPLER_3D_CONFIG_LOG_DEPTH__SHIFT) & VIVS_NTE_SAMPLER_3D_CONFIG_LOG_DEPTH__MASK) 1660bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_3D_CONFIG_WRAP__MASK 0x30000000 1661bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_3D_CONFIG_WRAP__SHIFT 28 1662bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_3D_CONFIG_WRAP(x) (((x) << VIVS_NTE_SAMPLER_3D_CONFIG_WRAP__SHIFT) & VIVS_NTE_SAMPLER_3D_CONFIG_WRAP__MASK) 1663bf215546Sopenharmony_ci 1664bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1(i0) (0x00010380 + 0x4*(i0)) 1665bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_FORMAT_EXT__MASK 0x0000003f 1666bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_FORMAT_EXT__SHIFT 0 1667bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_FORMAT_EXT(x) (((x) << VIVS_NTE_SAMPLER_CONFIG1_FORMAT_EXT__SHIFT) & VIVS_NTE_SAMPLER_CONFIG1_FORMAT_EXT__MASK) 1668bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_R__MASK 0x00000700 1669bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_R__SHIFT 8 1670bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_R(x) (((x) << VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_R__SHIFT) & VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_R__MASK) 1671bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_G__MASK 0x00007000 1672bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_G__SHIFT 12 1673bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_G(x) (((x) << VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_G__SHIFT) & VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_G__MASK) 1674bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_B__MASK 0x00070000 1675bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_B__SHIFT 16 1676bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_B(x) (((x) << VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_B__SHIFT) & VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_B__MASK) 1677bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_A__MASK 0x00700000 1678bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_A__SHIFT 20 1679bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_A(x) (((x) << VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_A__SHIFT) & VIVS_NTE_SAMPLER_CONFIG1_SWIZZLE_A__MASK) 1680bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_TS_MODE__MASK 0x00800000 1681bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_TS_MODE__SHIFT 23 1682bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_TS_MODE(x) (((x) << VIVS_NTE_SAMPLER_CONFIG1_TS_MODE__SHIFT) & VIVS_NTE_SAMPLER_CONFIG1_TS_MODE__MASK) 1683bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_TEXTURE_ARRAY 0x01000000 1684bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_SEAMLESS_CUBE_MAP 0x02000000 1685bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_HALIGN__MASK 0x1c000000 1686bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_HALIGN__SHIFT 26 1687bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_HALIGN(x) (((x) << VIVS_NTE_SAMPLER_CONFIG1_HALIGN__SHIFT) & VIVS_NTE_SAMPLER_CONFIG1_HALIGN__MASK) 1688bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_CONFIG1_USE_TS 0x40000000 1689bf215546Sopenharmony_ci 1690bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_UNK10400(i0) (0x00010400 + 0x4*(i0)) 1691bf215546Sopenharmony_ci 1692bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_UNK10480(i0) (0x00010480 + 0x4*(i0)) 1693bf215546Sopenharmony_ci 1694bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0(i0) (0x00010500 + 0x4*(i0)) 1695bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_ASTC_FORMAT__MASK 0x0000000f 1696bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_ASTC_FORMAT__SHIFT 0 1697bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_ASTC_FORMAT(x) (((x) << VIVS_NTE_SAMPLER_ASTC0_ASTC_FORMAT__SHIFT) & VIVS_NTE_SAMPLER_ASTC0_ASTC_FORMAT__MASK) 1698bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_ASTC_SRGB 0x00000010 1699bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_UNK8__MASK 0x0000ff00 1700bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_UNK8__SHIFT 8 1701bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_UNK8(x) (((x) << VIVS_NTE_SAMPLER_ASTC0_UNK8__SHIFT) & VIVS_NTE_SAMPLER_ASTC0_UNK8__MASK) 1702bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_UNK16__MASK 0x00ff0000 1703bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_UNK16__SHIFT 16 1704bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_UNK16(x) (((x) << VIVS_NTE_SAMPLER_ASTC0_UNK16__SHIFT) & VIVS_NTE_SAMPLER_ASTC0_UNK16__MASK) 1705bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_UNK24__MASK 0xff000000 1706bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_UNK24__SHIFT 24 1707bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC0_UNK24(x) (((x) << VIVS_NTE_SAMPLER_ASTC0_UNK24__SHIFT) & VIVS_NTE_SAMPLER_ASTC0_UNK24__MASK) 1708bf215546Sopenharmony_ci 1709bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC1(i0) (0x00010580 + 0x4*(i0)) 1710bf215546Sopenharmony_ci 1711bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC2(i0) (0x00010600 + 0x4*(i0)) 1712bf215546Sopenharmony_ci 1713bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ASTC3(i0) (0x00010680 + 0x4*(i0)) 1714bf215546Sopenharmony_ci 1715bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_BASELOD(i0) (0x00010700 + 0x4*(i0)) 1716bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_BASELOD_BASELOD__MASK 0x0000000f 1717bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_BASELOD_BASELOD__SHIFT 0 1718bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_BASELOD_BASELOD(x) (((x) << VIVS_NTE_SAMPLER_BASELOD_BASELOD__SHIFT) & VIVS_NTE_SAMPLER_BASELOD_BASELOD__MASK) 1719bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_BASELOD_MAXLOD__MASK 0x00000f00 1720bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_BASELOD_MAXLOD__SHIFT 8 1721bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_BASELOD_MAXLOD(x) (((x) << VIVS_NTE_SAMPLER_BASELOD_MAXLOD__SHIFT) & VIVS_NTE_SAMPLER_BASELOD_MAXLOD__MASK) 1722bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_BASELOD_COMPARE_ENABLE 0x00010000 1723bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_BASELOD_COMPARE_FUNC__MASK 0x00700000 1724bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_BASELOD_COMPARE_FUNC__SHIFT 20 1725bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_BASELOD_COMPARE_FUNC(x) (((x) << VIVS_NTE_SAMPLER_BASELOD_COMPARE_FUNC__SHIFT) & VIVS_NTE_SAMPLER_BASELOD_COMPARE_FUNC__MASK) 1726bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_BASELOD_BASELOD_ENABLE 0x00800000 1727bf215546Sopenharmony_ci 1728bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_UNK10780(i0) (0x00010780 + 0x4*(i0)) 1729bf215546Sopenharmony_ci 1730bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_FRAC_UNK11000(i0) (0x00011000 + 0x4*(i0)) 1731bf215546Sopenharmony_ci 1732bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_FRAC_UNK11080(i0) (0x00011080 + 0x4*(i0)) 1733bf215546Sopenharmony_ci 1734bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_FRAC_UNK11100(i0) (0x00011100 + 0x4*(i0)) 1735bf215546Sopenharmony_ci 1736bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_FRAC_UNK11180(i0) (0x00011180 + 0x4*(i0)) 1737bf215546Sopenharmony_ci 1738bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_HALTI4_UNK11200(i0) (0x00011200 + 0x4*(i0)) 1739bf215546Sopenharmony_ci 1740bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_HALTI4_UNK11280(i0) (0x00011280 + 0x4*(i0)) 1741bf215546Sopenharmony_ci 1742bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_FRAC_UNK11300(i0) (0x00011300 + 0x4*(i0)) 1743bf215546Sopenharmony_ci 1744bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ADDR(i0) (0x00010800 + 0x40*(i0)) 1745bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ADDR__ESIZE 0x00000040 1746bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ADDR__LEN 0x00000020 1747bf215546Sopenharmony_ci 1748bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ADDR_LOD(i0, i1) (0x00010800 + 0x40*(i0) + 0x4*(i1)) 1749bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ADDR_LOD__ESIZE 0x00000004 1750bf215546Sopenharmony_ci#define VIVS_NTE_SAMPLER_ADDR_LOD__LEN 0x0000000e 1751bf215546Sopenharmony_ci 1752bf215546Sopenharmony_ci#define VIVS_NTE_UNK12000(i0) (0x00012000 + 0x4*(i0)) 1753bf215546Sopenharmony_ci#define VIVS_NTE_UNK12000__ESIZE 0x00000004 1754bf215546Sopenharmony_ci#define VIVS_NTE_UNK12000__LEN 0x00000100 1755bf215546Sopenharmony_ci 1756bf215546Sopenharmony_ci#define VIVS_NTE_UNK12400(i0) (0x00012400 + 0x4*(i0)) 1757bf215546Sopenharmony_ci#define VIVS_NTE_UNK12400__ESIZE 0x00000004 1758bf215546Sopenharmony_ci#define VIVS_NTE_UNK12400__LEN 0x00000100 1759bf215546Sopenharmony_ci 1760bf215546Sopenharmony_ci#define VIVS_NTE_HALTI3_UNK14C00(i0) (0x00014c00 + 0x4*(i0)) 1761bf215546Sopenharmony_ci#define VIVS_NTE_HALTI3_UNK14C00__ESIZE 0x00000004 1762bf215546Sopenharmony_ci#define VIVS_NTE_HALTI3_UNK14C00__LEN 0x00000010 1763bf215546Sopenharmony_ci 1764bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_UNK14C40 0x00014c40 1765bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_UNK14C40_UNK0 0x00000001 1766bf215546Sopenharmony_ci 1767bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_FLUSH 0x00014c44 1768bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_FLUSH_UNK28__MASK 0xf0000000 1769bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_FLUSH_UNK28__SHIFT 28 1770bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_FLUSH_UNK28(x) (((x) << VIVS_NTE_DESCRIPTOR_FLUSH_UNK28__SHIFT) & VIVS_NTE_DESCRIPTOR_FLUSH_UNK28__MASK) 1771bf215546Sopenharmony_ci 1772bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_INVALIDATE 0x00014c48 1773bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_INVALIDATE_IDX__MASK 0x000001ff 1774bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_INVALIDATE_IDX__SHIFT 0 1775bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_INVALIDATE_IDX(x) (((x) << VIVS_NTE_DESCRIPTOR_INVALIDATE_IDX__SHIFT) & VIVS_NTE_DESCRIPTOR_INVALIDATE_IDX__MASK) 1776bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_INVALIDATE_UNK29 0x20000000 1777bf215546Sopenharmony_ci 1778bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR(i0) (0x00000000 + 0x4*(i0)) 1779bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR__ESIZE 0x00000004 1780bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR__LEN 0x00000080 1781bf215546Sopenharmony_ci 1782bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_ADDR_MIRROR(i0) (0x00015800 + 0x4*(i0)) 1783bf215546Sopenharmony_ci 1784bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_TX_CTRL_MIRROR(i0) (0x00015a00 + 0x4*(i0)) 1785bf215546Sopenharmony_ci 1786bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_ADDR(i0) (0x00015c00 + 0x4*(i0)) 1787bf215546Sopenharmony_ci 1788bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_TX_CTRL(i0) (0x00015e00 + 0x4*(i0)) 1789bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_TX_CTRL_TS_MODE__MASK 0x00000001 1790bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_TX_CTRL_TS_MODE__SHIFT 0 1791bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_TX_CTRL_TS_MODE(x) (((x) << VIVS_NTE_DESCRIPTOR_TX_CTRL_TS_MODE__SHIFT) & VIVS_NTE_DESCRIPTOR_TX_CTRL_TS_MODE__MASK) 1792bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_TX_CTRL_TS_ENABLE 0x00000002 1793bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_TX_CTRL_TS_INDEX__MASK 0x0000001c 1794bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_TX_CTRL_TS_INDEX__SHIFT 2 1795bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_TX_CTRL_TS_INDEX(x) (((x) << VIVS_NTE_DESCRIPTOR_TX_CTRL_TS_INDEX__SHIFT) & VIVS_NTE_DESCRIPTOR_TX_CTRL_TS_INDEX__MASK) 1796bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_TX_CTRL_COMPRESSION 0x00000020 1797bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_TX_CTRL_128B_TILE 0x00000040 1798bf215546Sopenharmony_ci 1799bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MIRROR(i0) (0x00016000 + 0x4*(i0)) 1800bf215546Sopenharmony_ci 1801bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL1_MIRROR(i0) (0x00016200 + 0x4*(i0)) 1802bf215546Sopenharmony_ci 1803bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_MINMAX_MIRROR(i0) (0x00016400 + 0x4*(i0)) 1804bf215546Sopenharmony_ci 1805bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_BIAS_MIRROR(i0) (0x00016600 + 0x4*(i0)) 1806bf215546Sopenharmony_ci 1807bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_ANISOTROPY_MIRROR(i0) (0x00016800 + 0x4*(i0)) 1808bf215546Sopenharmony_ci 1809bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0(i0) (0x00016c00 + 0x4*(i0)) 1810bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_UWRAP__MASK 0x00000007 1811bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_UWRAP__SHIFT 0 1812bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_UWRAP(x) (((x) << VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_UWRAP__SHIFT) & VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_UWRAP__MASK) 1813bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_VWRAP__MASK 0x00000038 1814bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_VWRAP__SHIFT 3 1815bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_VWRAP(x) (((x) << VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_VWRAP__SHIFT) & VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_VWRAP__MASK) 1816bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_WWRAP__MASK 0x000001c0 1817bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_WWRAP__SHIFT 6 1818bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_WWRAP(x) (((x) << VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_WWRAP__SHIFT) & VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_WWRAP__MASK) 1819bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MIN__MASK 0x00000600 1820bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MIN__SHIFT 9 1821bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MIN(x) (((x) << VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MIN__SHIFT) & VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MIN__MASK) 1822bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MIP__MASK 0x00001800 1823bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MIP__SHIFT 11 1824bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MIP(x) (((x) << VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MIP__SHIFT) & VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MIP__MASK) 1825bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MAG__MASK 0x00006000 1826bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MAG__SHIFT 13 1827bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MAG(x) (((x) << VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MAG__SHIFT) & VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_MAG__MASK) 1828bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_COMPARE_ENABLE 0x00020000 1829bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_COMPARE_FUNC__MASK 0x001c0000 1830bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_COMPARE_FUNC__SHIFT 18 1831bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_COMPARE_FUNC(x) (((x) << VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_COMPARE_FUNC__SHIFT) & VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_COMPARE_FUNC__MASK) 1832bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_UNK21 0x00200000 1833bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_UNK22 0x00400000 1834bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL0_INT_FILTER 0x00800000 1835bf215546Sopenharmony_ci 1836bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL1(i0) (0x00016e00 + 0x4*(i0)) 1837bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL1_UNK1 0x00000002 1838bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL1_SRGB 0x00000004 1839bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL1_UNK3 0x00000008 1840bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL1_UNK4__MASK 0x00000030 1841bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL1_UNK4__SHIFT 4 1842bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_CTRL1_UNK4(x) (((x) << VIVS_NTE_DESCRIPTOR_SAMP_CTRL1_UNK4__SHIFT) & VIVS_NTE_DESCRIPTOR_SAMP_CTRL1_UNK4__MASK) 1843bf215546Sopenharmony_ci 1844bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_MINMAX(i0) (0x00017000 + 0x4*(i0)) 1845bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_MINMAX_MAX__MASK 0x0000ffff 1846bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_MINMAX_MAX__SHIFT 0 1847bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_MINMAX_MAX(x) (((x) << VIVS_NTE_DESCRIPTOR_SAMP_LOD_MINMAX_MAX__SHIFT) & VIVS_NTE_DESCRIPTOR_SAMP_LOD_MINMAX_MAX__MASK) 1848bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_MINMAX_MIN__MASK 0xffff0000 1849bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_MINMAX_MIN__SHIFT 16 1850bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_MINMAX_MIN(x) (((x) << VIVS_NTE_DESCRIPTOR_SAMP_LOD_MINMAX_MIN__SHIFT) & VIVS_NTE_DESCRIPTOR_SAMP_LOD_MINMAX_MIN__MASK) 1851bf215546Sopenharmony_ci 1852bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_BIAS(i0) (0x00017200 + 0x4*(i0)) 1853bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_BIAS_BIAS__MASK 0x0000ffff 1854bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_BIAS_BIAS__SHIFT 0 1855bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_BIAS_BIAS(x) (((x) << VIVS_NTE_DESCRIPTOR_SAMP_LOD_BIAS_BIAS__SHIFT) & VIVS_NTE_DESCRIPTOR_SAMP_LOD_BIAS_BIAS__MASK) 1856bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_LOD_BIAS_ENABLE 0x00010000 1857bf215546Sopenharmony_ci 1858bf215546Sopenharmony_ci#define VIVS_NTE_DESCRIPTOR_SAMP_ANISOTROPY(i0) (0x00017400 + 0x4*(i0)) 1859bf215546Sopenharmony_ci 1860bf215546Sopenharmony_ci#define VIVS_SH 0x00000000 1861bf215546Sopenharmony_ci 1862bf215546Sopenharmony_ci#define VIVS_SH_CONFIG 0x00015600 1863bf215546Sopenharmony_ci#define VIVS_SH_CONFIG_RTNE_ROUNDING 0x00000002 1864bf215546Sopenharmony_ci#define VIVS_SH_CONFIG_DUAL16 0x00000004 1865bf215546Sopenharmony_ci 1866bf215546Sopenharmony_ci#define VIVS_SH_UNK20000(i0) (0x00020000 + 0x4*(i0)) 1867bf215546Sopenharmony_ci#define VIVS_SH_UNK20000__ESIZE 0x00000004 1868bf215546Sopenharmony_ci#define VIVS_SH_UNK20000__LEN 0x00002000 1869bf215546Sopenharmony_ci 1870bf215546Sopenharmony_ci#define VIVS_SH_INST_MEM(i0) (0x0000c000 + 0x4*(i0)) 1871bf215546Sopenharmony_ci#define VIVS_SH_INST_MEM__ESIZE 0x00000004 1872bf215546Sopenharmony_ci#define VIVS_SH_INST_MEM__LEN 0x00001000 1873bf215546Sopenharmony_ci 1874bf215546Sopenharmony_ci#define VIVS_SH_INST_MEM_MIRROR(i0) (0x00008000 + 0x4*(i0)) 1875bf215546Sopenharmony_ci#define VIVS_SH_INST_MEM_MIRROR__ESIZE 0x00000004 1876bf215546Sopenharmony_ci#define VIVS_SH_INST_MEM_MIRROR__LEN 0x00001000 1877bf215546Sopenharmony_ci 1878bf215546Sopenharmony_ci#define VIVS_SH_UNIFORMS(i0) (0x00030000 + 0x4*(i0)) 1879bf215546Sopenharmony_ci#define VIVS_SH_UNIFORMS__ESIZE 0x00000004 1880bf215546Sopenharmony_ci#define VIVS_SH_UNIFORMS__LEN 0x00000800 1881bf215546Sopenharmony_ci 1882bf215546Sopenharmony_ci#define VIVS_SH_HALTI5_UNIFORMS_MIRROR(i0) (0x00034000 + 0x4*(i0)) 1883bf215546Sopenharmony_ci#define VIVS_SH_HALTI5_UNIFORMS_MIRROR__ESIZE 0x00000004 1884bf215546Sopenharmony_ci#define VIVS_SH_HALTI5_UNIFORMS_MIRROR__LEN 0x00000800 1885bf215546Sopenharmony_ci 1886bf215546Sopenharmony_ci#define VIVS_SH_HALTI5_UNIFORMS(i0) (0x00036000 + 0x4*(i0)) 1887bf215546Sopenharmony_ci#define VIVS_SH_HALTI5_UNIFORMS__ESIZE 0x00000004 1888bf215546Sopenharmony_ci#define VIVS_SH_HALTI5_UNIFORMS__LEN 0x00000800 1889bf215546Sopenharmony_ci 1890bf215546Sopenharmony_ci 1891bf215546Sopenharmony_ci#endif /* STATE_3D_XML */ 1892