1f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#ifndef RNNDB_NV50_3D_XML 2f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define RNNDB_NV50_3D_XML 3f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 4f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org/* Autogenerated file, DO NOT EDIT manually! 5f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 6f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgThis file was generated by the rules-ng-ng headergen tool in this git repository: 7f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orghttp://0x04.net/cgit/index.cgi/rules-ng-ng 8f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orggit clone git://0x04.net/rules-ng-ng 9f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 10f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgThe rules-ng-ng source files this header was generated from are: 11f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- rnndb/nv50_3d.xml ( 65226 bytes, from 2012-01-28 13:46:30) 12f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- ./rnndb/copyright.xml ( 6452 bytes, from 2011-08-11 18:25:12) 13f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- ./rnndb/nv_defs.xml ( 4437 bytes, from 2011-08-11 18:25:12) 14f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- ./rnndb/nv50_defs.xml ( 5468 bytes, from 2011-08-11 18:25:12) 15f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- ./rnndb/nvchipsets.xml ( 3617 bytes, from 2011-08-11 18:25:12) 16f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- ./rnndb/nv_3ddefs.xml ( 16394 bytes, from 2011-08-11 18:25:12) 17f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- ./rnndb/nv_object.xml ( 12672 bytes, from 2011-08-11 18:25:12) 18f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 19f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgCopyright (C) 2006-2012 by the following authors: 20f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Artur Huillet <arthur.huillet@free.fr> (ahuillet) 21f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Ben Skeggs (darktama, darktama_) 22f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- B. R. <koala_br@users.sourceforge.net> (koala_br) 23f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Carlos Martin <carlosmn@users.sf.net> (carlosmn) 24f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Christoph Bumiller <e0425955@student.tuwien.ac.at> (calim, chrisbmr) 25f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Dawid Gajownik <gajownik@users.sf.net> (gajownik) 26f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Dmitry Baryshkov 27f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Dmitry Eremin-Solenikov <lumag@users.sf.net> (lumag) 28f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- EdB <edb_@users.sf.net> (edb_) 29f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Erik Waling <erikwailing@users.sf.net> (erikwaling) 30f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Francisco Jerez <currojerez@riseup.net> (curro) 31f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- imirkin <imirkin@users.sf.net> (imirkin) 32f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- jb17bsome <jb17bsome@bellsouth.net> (jb17bsome) 33f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Jeremy Kolb <kjeremy@users.sf.net> (kjeremy) 34f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Laurent Carlier <lordheavym@gmail.com> (lordheavy) 35f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Luca Barbieri <luca@luca-barbieri.com> (lb, lb1) 36f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Maarten Maathuis <madman2003@gmail.com> (stillunknown) 37f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Marcin Kościelnicki <koriakin@0x04.net> (mwk, koriakin) 38f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Mark Carey <mark.carey@gmail.com> (careym) 39f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Matthieu Castet <matthieu.castet@parrot.com> (mat-c) 40f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- nvidiaman <nvidiaman@users.sf.net> (nvidiaman) 41f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Patrice Mandin <patmandin@gmail.com> (pmandin, pmdata) 42f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Pekka Paalanen <pq@iki.fi> (pq, ppaalanen) 43f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Peter Popov <ironpeter@users.sf.net> (ironpeter) 44f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Richard Hughes <hughsient@users.sf.net> (hughsient) 45f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Rudi Cilibrasi <cilibrar@users.sf.net> (cilibrar) 46f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Serge Martin 47f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Simon Raffeiner 48f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Stephane Loeuillet <leroutier@users.sf.net> (leroutier) 49f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Stephane Marchesin <stephane.marchesin@gmail.com> (marcheu) 50f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- sturmflut <sturmflut@users.sf.net> (sturmflut) 51f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Sylvain Munaut <tnt@246tNt.com> 52f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Victor Stinner <victor.stinner@haypocalc.com> (haypo) 53f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Wladmir van der Laan <laanwj@gmail.com> (miathan6) 54f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org- Younes Manton <younes.m@gmail.com> (ymanton) 55f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 56f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgPermission is hereby granted, free of charge, to any person obtaining 57f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orga copy of this software and associated documentation files (the 58f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org"Software"), to deal in the Software without restriction, including 59f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgwithout limitation the rights to use, copy, modify, merge, publish, 60f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgdistribute, sublicense, and/or sell copies of the Software, and to 61f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgpermit persons to whom the Software is furnished to do so, subject to 62f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgthe following conditions: 63f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 64f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgThe above copyright notice and this permission notice (including the 65f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgnext paragraph) shall be included in all copies or substantial 66f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgportions of the Software. 67f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 68f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 69f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 70f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 71f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgIN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE 72f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 73f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 74f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 75f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org*/ 76f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 77f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 78f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 79f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_NOTIFY 0x00000180 80f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 81f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_ZETA 0x00000184 82f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 83f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_QUERY 0x00000188 84f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 85f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_VTXBUF 0x0000018c 86f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 87f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_LOCAL 0x00000190 88f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 89f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_STACK 0x00000194 90f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 91f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_CODE_CB 0x00000198 92f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 93f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_TSC 0x0000019c 94f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 95f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_TIC 0x000001a0 96f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 97f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_TEXTURE 0x000001a4 98f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 99f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_STRMOUT 0x000001a8 100f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 101f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_CLIPID 0x000001ac 102f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 103f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_COLOR(i0) (0x000001c0 + 0x4*(i0)) 104f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_COLOR__ESIZE 0x00000004 105f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DMA_COLOR__LEN 0x00000008 106f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 107f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT(i0) (0x00000200 + 0x20*(i0)) 108f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT__ESIZE 0x00000020 109f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT__LEN 0x00000008 110f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 111f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_ADDRESS_HIGH(i0) (0x00000200 + 0x20*(i0)) 112f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 113f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_ADDRESS_LOW(i0) (0x00000204 + 0x20*(i0)) 114f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 115f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_FORMAT(i0) (0x00000208 + 0x20*(i0)) 116f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 117f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_TILE_MODE(i0) (0x0000020c + 0x20*(i0)) 118f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_TILE_MODE_X__MASK 0x0000000f 119f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_TILE_MODE_X__SHIFT 0 120f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_TILE_MODE_Y__MASK 0x000000f0 121f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_TILE_MODE_Y__SHIFT 4 122f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_TILE_MODE_Z__MASK 0x00000f00 123f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_TILE_MODE_Z__SHIFT 8 124f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 125f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_LAYER_STRIDE(i0) (0x00000210 + 0x20*(i0)) 126f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_LAYER_STRIDE__SHR 2 127f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 128f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_UNK14(i0) (0x00000214 + 0x20*(i0)) 129f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 130f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_1F(i0) (0x00000300 + 0x4*(i0)) 131f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_1F__ESIZE 0x00000004 132f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_1F__LEN 0x00000010 133f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 134f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2H(i0) (0x00000340 + 0x4*(i0)) 135f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2H__ESIZE 0x00000004 136f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2H__LEN 0x00000010 137f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2H_X__MASK 0x0000ffff 138f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2H_X__SHIFT 0 139f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2H_Y__MASK 0xffff0000 140f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2H_Y__SHIFT 16 141f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 142f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2F_X(i0) (0x00000380 + 0x8*(i0)) 143f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2F_X__ESIZE 0x00000008 144f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2F_X__LEN 0x00000010 145f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 146f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2F_Y(i0) (0x00000384 + 0x8*(i0)) 147f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2F_Y__ESIZE 0x00000008 148f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2F_Y__LEN 0x00000010 149f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 150f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_3F_X(i0) (0x00000400 + 0x10*(i0)) 151f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_3F_X__ESIZE 0x00000010 152f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_3F_X__LEN 0x00000010 153f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 154f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_3F_Y(i0) (0x00000404 + 0x10*(i0)) 155f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_3F_Y__ESIZE 0x00000010 156f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_3F_Y__LEN 0x00000010 157f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 158f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_3F_Z(i0) (0x00000408 + 0x10*(i0)) 159f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_3F_Z__ESIZE 0x00000010 160f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_3F_Z__LEN 0x00000010 161f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 162f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4F_X(i0) (0x00000500 + 0x10*(i0)) 163f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4F_X__ESIZE 0x00000010 164f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4F_X__LEN 0x00000010 165f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 166f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4F_Y(i0) (0x00000504 + 0x10*(i0)) 167f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4F_Y__ESIZE 0x00000010 168f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4F_Y__LEN 0x00000010 169f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 170f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4F_Z(i0) (0x00000508 + 0x10*(i0)) 171f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4F_Z__ESIZE 0x00000010 172f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4F_Z__LEN 0x00000010 173f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 174f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4F_W(i0) (0x0000050c + 0x10*(i0)) 175f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4F_W__ESIZE 0x00000010 176f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4F_W__LEN 0x00000010 177f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 178f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_0(i0) (0x00000600 + 0x8*(i0)) 179f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_0__ESIZE 0x00000008 180f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_0__LEN 0x00000010 181f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_0_X__MASK 0x0000ffff 182f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_0_X__SHIFT 0 183f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_0_Y__MASK 0xffff0000 184f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_0_Y__SHIFT 16 185f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 186f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_1(i0) (0x00000604 + 0x8*(i0)) 187f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_1__ESIZE 0x00000008 188f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_1__LEN 0x00000010 189f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_1_Z__MASK 0x0000ffff 190f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_1_Z__SHIFT 0 191f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_1_W__MASK 0xffff0000 192f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4H_1_W__SHIFT 16 193f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 194f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2I(i0) (0x00000680 + 0x4*(i0)) 195f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2I__ESIZE 0x00000004 196f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2I__LEN 0x00000010 197f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2I_X__MASK 0x0000ffff 198f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2I_X__SHIFT 0 199f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2I_Y__MASK 0xffff0000 200f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2I_Y__SHIFT 16 201f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 202f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2NI(i0) (0x000006c0 + 0x4*(i0)) 203f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2NI__ESIZE 0x00000004 204f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2NI__LEN 0x00000010 205f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2NI_X__MASK 0x0000ffff 206f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2NI_X__SHIFT 0 207f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2NI_Y__MASK 0xffff0000 208f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_2NI_Y__SHIFT 16 209f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 210f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_0(i0) (0x00000700 + 0x8*(i0)) 211f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_0__ESIZE 0x00000008 212f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_0__LEN 0x00000010 213f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_0_X__MASK 0x0000ffff 214f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_0_X__SHIFT 0 215f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_0_Y__MASK 0xffff0000 216f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_0_Y__SHIFT 16 217f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 218f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_1(i0) (0x00000704 + 0x8*(i0)) 219f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_1__ESIZE 0x00000008 220f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_1__LEN 0x00000010 221f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_1_Z__MASK 0x0000ffff 222f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_1_Z__SHIFT 0 223f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_1_W__MASK 0xffff0000 224f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4I_1_W__SHIFT 16 225f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 226f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_0(i0) (0x00000780 + 0x8*(i0)) 227f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_0__ESIZE 0x00000008 228f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_0__LEN 0x00000010 229f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_0_X__MASK 0x0000ffff 230f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_0_X__SHIFT 0 231f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_0_Y__MASK 0xffff0000 232f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_0_Y__SHIFT 16 233f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 234f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_1(i0) (0x00000784 + 0x8*(i0)) 235f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_1__ESIZE 0x00000008 236f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_1__LEN 0x00000010 237f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_1_Z__MASK 0x0000ffff 238f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_1_Z__SHIFT 0 239f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_1_W__MASK 0xffff0000 240f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NI_1_W__SHIFT 16 241f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 242f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4UB(i0) (0x00000800 + 0x4*(i0)) 243f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4UB__ESIZE 0x00000004 244f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4UB__LEN 0x00000010 245f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4UB_X__MASK 0x000000ff 246f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4UB_X__SHIFT 0 247f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4UB_Y__MASK 0x0000ff00 248f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4UB_Y__SHIFT 8 249f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4UB_Z__MASK 0x00ff0000 250f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4UB_Z__SHIFT 16 251f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4UB_W__MASK 0xff000000 252f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4UB_W__SHIFT 24 253f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 254f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4B(i0) (0x00000840 + 0x4*(i0)) 255f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4B__ESIZE 0x00000004 256f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4B__LEN 0x00000010 257f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4B_X__MASK 0x000000ff 258f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4B_X__SHIFT 0 259f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4B_Y__MASK 0x0000ff00 260f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4B_Y__SHIFT 8 261f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4B_Z__MASK 0x00ff0000 262f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4B_Z__SHIFT 16 263f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4B_W__MASK 0xff000000 264f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4B_W__SHIFT 24 265f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 266f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NUB(i0) (0x00000880 + 0x4*(i0)) 267f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NUB__ESIZE 0x00000004 268f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NUB__LEN 0x00000010 269f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NUB_X__MASK 0x000000ff 270f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NUB_X__SHIFT 0 271f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NUB_Y__MASK 0x0000ff00 272f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NUB_Y__SHIFT 8 273f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NUB_Z__MASK 0x00ff0000 274f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NUB_Z__SHIFT 16 275f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NUB_W__MASK 0xff000000 276f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NUB_W__SHIFT 24 277f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 278f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NB(i0) (0x000008c0 + 0x4*(i0)) 279f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NB__ESIZE 0x00000004 280f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NB__LEN 0x00000010 281f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NB_X__MASK 0x000000ff 282f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NB_X__SHIFT 0 283f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NB_Y__MASK 0x0000ff00 284f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NB_Y__SHIFT 8 285f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NB_Z__MASK 0x00ff0000 286f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NB_Z__SHIFT 16 287f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NB_W__MASK 0xff000000 288f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_4NB_W__SHIFT 24 289f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 290f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_FETCH(i0) (0x00000900 + 0x10*(i0)) 291f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_FETCH__ESIZE 0x00000010 292f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_FETCH__LEN 0x00000010 293f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_FETCH_STRIDE__MASK 0x00000fff 294f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_FETCH_STRIDE__SHIFT 0 295f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_FETCH_ENABLE 0x20000000 296f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 297f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_START_HIGH(i0) (0x00000904 + 0x10*(i0)) 298f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_START_HIGH__ESIZE 0x00000010 299f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_START_HIGH__LEN 0x00000010 300f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 301f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_START_LOW(i0) (0x00000908 + 0x10*(i0)) 302f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_START_LOW__ESIZE 0x00000010 303f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_START_LOW__LEN 0x00000010 304f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 305f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_DIVISOR(i0) (0x0000090c + 0x10*(i0)) 306f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_DIVISOR__ESIZE 0x00000010 307f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_DIVISOR__LEN 0x00000010 308f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 309f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_SCALE_X(i0) (0x00000a00 + 0x20*(i0)) 310f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_SCALE_X__ESIZE 0x00000020 311f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_SCALE_X__LEN 0x00000010 312f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 313f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_SCALE_Y(i0) (0x00000a04 + 0x20*(i0)) 314f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_SCALE_Y__ESIZE 0x00000020 315f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_SCALE_Y__LEN 0x00000010 316f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 317f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_SCALE_Z(i0) (0x00000a08 + 0x20*(i0)) 318f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_SCALE_Z__ESIZE 0x00000020 319f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_SCALE_Z__LEN 0x00000010 320f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 321f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_TRANSLATE_X(i0) (0x00000a0c + 0x20*(i0)) 322f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_TRANSLATE_X__ESIZE 0x00000020 323f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_TRANSLATE_X__LEN 0x00000010 324f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 325f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_TRANSLATE_Y(i0) (0x00000a10 + 0x20*(i0)) 326f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_TRANSLATE_Y__ESIZE 0x00000020 327f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_TRANSLATE_Y__LEN 0x00000010 328f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 329f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_TRANSLATE_Z(i0) (0x00000a14 + 0x20*(i0)) 330f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_TRANSLATE_Z__ESIZE 0x00000020 331f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_TRANSLATE_Z__LEN 0x00000010 332f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 333f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_HORIZ(i0) (0x00000c00 + 0x10*(i0)) 334f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_HORIZ__ESIZE 0x00000010 335f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_HORIZ__LEN 0x00000010 336f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_HORIZ_X__MASK 0x0000ffff 337f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_HORIZ_X__SHIFT 0 338f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_HORIZ_W__MASK 0xffff0000 339f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_HORIZ_W__SHIFT 16 340f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 341f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_VERT(i0) (0x00000c04 + 0x10*(i0)) 342f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_VERT__ESIZE 0x00000010 343f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_VERT__LEN 0x00000010 344f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_VERT_Y__MASK 0x0000ffff 345f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_VERT_Y__SHIFT 0 346f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_VERT_H__MASK 0xffff0000 347f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_VERT_H__SHIFT 16 348f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 349f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_RANGE_NEAR(i0) (0x00000c08 + 0x10*(i0)) 350f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_RANGE_NEAR__ESIZE 0x00000010 351f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_RANGE_NEAR__LEN 0x00000010 352f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 353f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_RANGE_FAR(i0) (0x00000c0c + 0x10*(i0)) 354f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_RANGE_FAR__ESIZE 0x00000010 355f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_RANGE_FAR__LEN 0x00000010 356f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 357f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_HORIZ(i0) (0x00000d00 + 0x8*(i0)) 358f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_HORIZ__ESIZE 0x00000008 359f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_HORIZ__LEN 0x00000008 360f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_HORIZ_MIN__MASK 0x0000ffff 361f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_HORIZ_MIN__SHIFT 0 362f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_HORIZ_MAX__MASK 0xffff0000 363f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_HORIZ_MAX__SHIFT 16 364f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 365f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_VERT(i0) (0x00000d04 + 0x8*(i0)) 366f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_VERT__ESIZE 0x00000008 367f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_VERT__LEN 0x00000008 368f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_VERT_MIN__MASK 0x0000ffff 369f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_VERT_MIN__SHIFT 0 370f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_VERT_MAX__MASK 0xffff0000 371f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECT_VERT_MAX__SHIFT 16 372f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 373f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_HORIZ(i0) (0x00000d40 + 0x8*(i0)) 374f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_HORIZ__ESIZE 0x00000008 375f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_HORIZ__LEN 0x00000004 376f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_HORIZ_X__MASK 0x0000ffff 377f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_HORIZ_X__SHIFT 0 378f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_HORIZ_W__MASK 0xffff0000 379f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_HORIZ_W__SHIFT 16 380f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 381f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_VERT(i0) (0x00000d44 + 0x8*(i0)) 382f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_VERT__ESIZE 0x00000008 383f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_VERT__LEN 0x00000004 384f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_VERT_Y__MASK 0x0000ffff 385f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_VERT_Y__SHIFT 0 386f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_VERT_H__MASK 0xffff0000 387f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_REGION_VERT_H__SHIFT 16 388f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 389f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0D60 0x00000d60 390f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 391f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0D64 0x00000d64 392f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 393f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_ENABLE 0x00000d68 394f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_ENABLE_VFETCH_VERTICES 0x00000001 395f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_ENABLE_VFETCH_PRIMITIVES 0x00000002 396f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_ENABLE_VP_LAUNCHES 0x00000004 397f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_ENABLE_GP_LAUNCHES 0x00000008 398f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_ENABLE_GP_PRIMITIVES_OUT 0x00000010 399f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_ENABLE_TRANSFORM_FEEDBACK 0x00000020 400f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_ENABLE_GENERATED_PRIMITIVES 0x00000040 401f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_ENABLE_RAST_PRIMITIVES_PRECLIP 0x00000080 402f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_ENABLE_RAST_PRIMITIVES_POSTCLIP 0x00000100 403f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_ENABLE_FP_PIXELS 0x00000200 404f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_COUNTER_ENABLE_UNK0A 0x00000400 405f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 406f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0D6C(i0) (0x00000d6c + 0x4*(i0)) 407f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0D6C__ESIZE 0x00000004 408f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0D6C__LEN 0x00000002 409f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0D6C_X__MASK 0x0000ffff 410f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0D6C_X__SHIFT 0 411f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0D6C_Y__MASK 0xffff0000 412f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0D6C_Y__SHIFT 16 413f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 414f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BUFFER_FIRST 0x00000d74 415f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 416f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BUFFER_COUNT 0x00000d78 417f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 418f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0D7C 0x00000d7c 419f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 420f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_COLOR(i0) (0x00000d80 + 0x4*(i0)) 421f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_COLOR__ESIZE 0x00000004 422f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_COLOR__LEN 0x00000004 423f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 424f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_DEPTH 0x00000d90 425f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 426f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STACK_ADDRESS_HIGH 0x00000d94 427f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 428f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STACK_ADDRESS_LOW 0x00000d98 429f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 430f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STACK_SIZE_LOG 0x00000d9c 431f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 432f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_STENCIL 0x00000da0 433f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 434f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_PARAMS_LATCH 0x00000da4 435f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 436f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_PRIMITIVE_LIMIT 0x00000da8 437f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 438f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_MODE_FRONT 0x00000dac 439f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_MODE_FRONT_POINT 0x00001b00 440f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_MODE_FRONT_LINE 0x00001b01 441f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_MODE_FRONT_FILL 0x00001b02 442f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 443f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_MODE_BACK 0x00000db0 444f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_MODE_BACK_POINT 0x00001b00 445f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_MODE_BACK_LINE 0x00001b01 446f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_MODE_BACK_FILL 0x00001b02 447f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 448f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_SMOOTH_ENABLE 0x00000db4 449f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 450f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0DB8 0x00000db8 451f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 452f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_UNK0DBC 0x00000dbc 453f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_UNK0DBC_UNK0 0x00000001 454f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_UNK0DBC_UNK16__MASK 0x00030000 455f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_UNK0DBC_UNK16__SHIFT 16 456f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 457f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_OFFSET_POINT_ENABLE 0x00000dc0 458f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 459f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_OFFSET_LINE_ENABLE 0x00000dc4 460f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 461f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_OFFSET_FILL_ENABLE 0x00000dc8 462f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 463f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0DCC 0x00000dcc 464f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 465f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_MASK_UNK0DD0(i0) (0x00000dd0 + 0x4*(i0)) 466f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_MASK_UNK0DD0__ESIZE 0x00000004 467f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_ATTR_MASK_UNK0DD0__LEN 0x00000002 468f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 469f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_UNK0DD8 0x00000dd8 470f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_UNK0DD8_UNK0__MASK 0x00000007 471f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_UNK0DD8_UNK0__SHIFT 0 472f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_ZCULL_UNK0DD8_UNK9 0x00000200 473f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_UNK0DD8_UNK16__MASK 0xffff0000 474f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_UNK0DD8_UNK16__SHIFT 16 475f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 476f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0DDC 0x00000ddc 477f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 478f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0DE0 0x00000de0 479f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 480f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_WATCHDOG_TIMER 0x00000de4 481f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 482f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0DE8 0x00000de8 483f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 484f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0DEC 0x00000dec 485f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 486f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0DF0 0x00000df0 487f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0DF0_UNK0 0x00000001 488f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0DF0_UNK1__MASK 0x00000ff0 489f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0DF0_UNK1__SHIFT 4 490f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 491f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0DF4 0x00000df4 492f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 493f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_WINDOW_OFFSET_X 0x00000df8 494f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 495f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_WINDOW_OFFSET_Y 0x00000dfc 496f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 497f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_ENABLE(i0) (0x00000e00 + 0x10*(i0)) 498f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_ENABLE__ESIZE 0x00000010 499f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_ENABLE__LEN 0x00000010 500f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 501f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_HORIZ(i0) (0x00000e04 + 0x10*(i0)) 502f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_HORIZ__ESIZE 0x00000010 503f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_HORIZ__LEN 0x00000010 504f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_HORIZ_MIN__MASK 0x0000ffff 505f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_HORIZ_MIN__SHIFT 0 506f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_HORIZ_MAX__MASK 0xffff0000 507f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_HORIZ_MAX__SHIFT 16 508f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 509f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_VERT(i0) (0x00000e08 + 0x10*(i0)) 510f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_VERT__ESIZE 0x00000010 511f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_VERT__LEN 0x00000010 512f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_VERT_MIN__MASK 0x0000ffff 513f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_VERT_MIN__SHIFT 0 514f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_VERT_MAX__MASK 0xffff0000 515f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCISSOR_VERT_MAX__SHIFT 16 516f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 517f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_ADDR 0x00000f00 518f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_ADDR_ID__MASK 0x003fff00 519f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_ADDR_ID__SHIFT 8 520f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_ADDR_BUFFER__MASK 0x0000007f 521f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_ADDR_BUFFER__SHIFT 0 522f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 523f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_DATA(i0) (0x00000f04 + 0x4*(i0)) 524f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_DATA__ESIZE 0x00000004 525f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_DATA__LEN 0x00000010 526f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 527f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOCAL_WARPS_LOG_ALLOC 0x00000f44 528f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 529f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOCAL_WARPS_NO_CLAMP 0x00000f48 530f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 531f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STACK_WARPS_LOG_ALLOC 0x00000f4c 532f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 533f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STACK_WARPS_NO_CLAMP 0x00000f50 534f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 535f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_FUNC_REF 0x00000f54 536f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 537f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_MASK 0x00000f58 538f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 539f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_FUNC_MASK 0x00000f5c 540f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 541f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0F60(i0) (0x00000f60 + 0x4*(i0)) 542f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0F60__ESIZE 0x00000004 543f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0F60__LEN 0x00000004 544f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 545f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_ADDRESS_HIGH 0x00000f70 546f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 547f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_ADDRESS_LOW 0x00000f74 548f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 549f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0F78 0x00000f78 550f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 551f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ADDRESS_HIGH 0x00000f7c 552f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 553f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ADDRESS_LOW 0x00000f80 554f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 555f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_RUNOUT_ADDRESS_HIGH 0x00000f84 556f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 557f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_RUNOUT_ADDRESS_LOW 0x00000f88 558f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 559f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0F8C 0x00000f8c 560f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 561f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COLOR_MASK_COMMON 0x00000f90 562f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 563f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0F94 0x00000f94 564f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 565f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0F98 0x00000f98 566f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 567f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_BOUNDS(i0) (0x00000f9c + 0x4*(i0)) 568f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_BOUNDS__ESIZE 0x00000004 569f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_BOUNDS__LEN 0x00000002 570f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 571f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_ADDRESS_HIGH 0x00000fa4 572f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 573f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_ADDRESS_LOW 0x00000fa8 574f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 575f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0FAC 0x00000fac 576f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0FAC_UNK0 0x00000001 577f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_UNK0FAC_UNK2 0x00000002 578f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0FAC_UNK1__MASK 0x000ffff0 579f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0FAC_UNK1__SHIFT 4 580f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 581f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0FB0 0x00000fb0 582f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 583f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0FB4 0x00000fb4 584f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 585f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0FB8 0x00000fb8 586f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 587f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MSAA_MASK(i0) (0x00000fbc + 0x4*(i0)) 588f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MSAA_MASK__ESIZE 0x00000004 589f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MSAA_MASK__LEN 0x00000004 590f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 591f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_ADDRESS_HIGH 0x00000fcc 592f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 593f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_ADDRESS_LOW 0x00000fd0 594f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 595f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_VIEWPORT 0x00000fd4 596f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_VIEWPORT_VIEWPORT_ID__MASK 0x000000ff 597f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_VIEWPORT_VIEWPORT_ID__SHIFT 0 598f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 599f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0FD8 0x00000fd8 600f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0FD8_UNK0 0x00000001 601f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0FD8_UNK1 0x00000010 602f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 603f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0FDC 0x00000fdc 604f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 605f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_ADDRESS_HIGH 0x00000fe0 606f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 607f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_ADDRESS_LOW 0x00000fe4 608f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 609f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_FORMAT 0x00000fe8 610f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 611f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_TILE_MODE 0x00000fec 612f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 613f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_LAYER_STRIDE 0x00000ff0 614f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_LAYER_STRIDE__SHR 2 615f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 616f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_SCISSOR_HORIZ 0x00000ff4 617f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_SCISSOR_HORIZ_W__MASK 0xffff0000 618f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_SCISSOR_HORIZ_W__SHIFT 16 619f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_SCISSOR_HORIZ_X__MASK 0x0000ffff 620f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_SCISSOR_HORIZ_X__SHIFT 0 621f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 622f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_SCISSOR_VERT 0x00000ff8 623f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_SCISSOR_VERT_H__MASK 0xffff0000 624f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_SCISSOR_VERT_H__SHIFT 16 625f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_SCISSOR_VERT_Y__MASK 0x0000ffff 626f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_SCISSOR_VERT_Y__SHIFT 0 627f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 628f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK0FFC 0x00000ffc 629f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 630f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_PER_INSTANCE(i0) (0x00001000 + 0x4*(i0)) 631f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_PER_INSTANCE__ESIZE 0x00000004 632f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_PER_INSTANCE__LEN 0x00000010 633f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 634f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1040(i0) (0x00001040 + 0x4*(i0)) 635f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1040__ESIZE 0x00000004 636f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1040__LEN 0x00000010 637f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 638f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_LIMIT_HIGH(i0) (0x00001080 + 0x8*(i0)) 639f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_LIMIT_HIGH__ESIZE 0x00000008 640f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_LIMIT_HIGH__LEN 0x00000010 641f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 642f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_LIMIT_LOW(i0) (0x00001084 + 0x8*(i0)) 643f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_LIMIT_LOW__ESIZE 0x00000008 644f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_LIMIT_LOW__LEN 0x00000010 645f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 646f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1100 0x00001100 647f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 648f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1104 0x00001104 649f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1104_0__MASK 0x0000ffff 650f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1104_0__SHIFT 0 651f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1104_0__MAX 0x00002000 652f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1104_0__ALIGN 0x00000040 653f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1104_1__MASK 0xffff0000 654f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1104_1__SHIFT 16 655f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1104_1__MAX 0x00002000 656f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1104_1__ALIGN 0x00000040 657f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 658f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1108 0x00001108 659f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1108_0 0x00000001 660f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1108_1 0x00000010 661f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 662f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK110C 0x0000110c 663f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 664f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_UNK1110 0x00001110 665f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 666f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_WRCACHE_FLUSH 0x00001114 667f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 668f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_VERTEX_ID_BASE 0x00001118 669f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 670f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_PRIMITIVE_ID 0x0000111c 671f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 672f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VTX_ATTR_MASK_UNK0DD0_ALT(i0) (0x00001120 + 0x4*(i0)) 673f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VTX_ATTR_MASK_UNK0DD0_ALT__ESIZE 0x00000004 674f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VTX_ATTR_MASK_UNK0DD0_ALT__LEN 0x00000004 675f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 676f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT(i0) (0x00001130 + 0x4*(i0)) 677f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT__ESIZE 0x00000004 678f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT__LEN 0x00000004 679f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_7__MASK 0xf0000000 680f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_7__SHIFT 28 681f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_7_X 0x10000000 682f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_7_Y 0x20000000 683f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_7_Z 0x40000000 684f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_7_W 0x80000000 685f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_6__MASK 0x0f000000 686f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_6__SHIFT 24 687f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_6_X 0x01000000 688f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_6_Y 0x02000000 689f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_6_Z 0x04000000 690f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_6_W 0x08000000 691f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_5__MASK 0x00f00000 692f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_5__SHIFT 20 693f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_5_X 0x00100000 694f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_5_Y 0x00200000 695f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_5_Z 0x00400000 696f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_5_W 0x00800000 697f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_4__MASK 0x000f0000 698f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_4__SHIFT 16 699f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_4_X 0x00010000 700f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_4_Y 0x00020000 701f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_4_Z 0x00040000 702f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_4_W 0x00080000 703f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_3__MASK 0x0000f000 704f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_3__SHIFT 12 705f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_3_X 0x00001000 706f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_3_Y 0x00002000 707f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_3_Z 0x00004000 708f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_3_W 0x00008000 709f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_2__MASK 0x00000f00 710f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_2__SHIFT 8 711f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_2_X 0x00000100 712f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_2_Y 0x00000200 713f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_2_Z 0x00000400 714f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_2_W 0x00000800 715f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_1__MASK 0x000000f0 716f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_1__SHIFT 4 717f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_1_X 0x00000010 718f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_1_Y 0x00000020 719f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_1_Z 0x00000040 720f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_1_W 0x00000080 721f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_0__MASK 0x0000000f 722f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_0__SHIFT 0 723f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_0_X 0x00000001 724f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_0_Y 0x00000002 725f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_0_Z 0x00000004 726f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_ATTR_EN_ALT_0_W 0x00000008 727f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 728f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_UNK1140 0x00001140 729f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 730f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_UNK1144 0x00001144 731f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 732f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE 0x0000114c 733f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_ATTR__MASK 0x000000ff 734f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_ATTR__SHIFT 0 735f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_COMP__MASK 0x00000700 736f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_COMP__SHIFT 8 737f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_COMP__MIN 0x00000001 738f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_COMP__MAX 0x00000004 739f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_SIZE__MASK 0x00007000 740f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_SIZE__SHIFT 12 741f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_SIZE_8 0x00001000 742f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_SIZE_16 0x00002000 743f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_SIZE_32 0x00004000 744f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_TYPE__MASK 0x00070000 745f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_TYPE__SHIFT 16 746f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_TYPE_SNORM 0x00010000 747f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_TYPE_UNORM 0x00020000 748f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_TYPE_SINT 0x00030000 749f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_TYPE_UINT 0x00040000 750f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_TYPE_USCALED 0x00050000 751f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_TYPE_SSCALED 0x00060000 752f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DEFINE_TYPE_FLOAT 0x00070000 753f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 754f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DATA(i0) (0x00001150 + 0x4*(i0)) 755f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DATA__ESIZE 0x00000004 756f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VTX_ATTR_DATA__LEN 0x00000004 757f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 758f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT(i0) (0x00001160 + 0x4*(i0)) 759f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT__ESIZE 0x00000004 760f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT__LEN 0x00000020 761f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_BUFFER__MASK 0x0000001f 762f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_BUFFER__SHIFT 0 763f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_CONST 0x00000040 764f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_OFFSET__MASK 0x001fff80 765f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_OFFSET__SHIFT 7 766f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT__MASK 0x07e00000 767f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT__SHIFT 21 768f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_32_32_32_32 0x00200000 769f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_32_32_32 0x00400000 770f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_16_16_16_16 0x00600000 771f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_32_32 0x00800000 772f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_16_16_16 0x00a00000 773f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_8_8_8_8 0x01400000 774f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_16_16 0x01e00000 775f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_32 0x02400000 776f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_8_8_8 0x02600000 777f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_8_8 0x03000000 778f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_16 0x03600000 779f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_8 0x03a00000 780f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_FORMAT_10_10_10_2 0x06000000 781f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_TYPE__MASK 0x38000000 782f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_TYPE__SHIFT 27 783f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_TYPE_SNORM 0x08000000 784f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_TYPE_UNORM 0x10000000 785f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_TYPE_SINT 0x18000000 786f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_TYPE_UINT 0x20000000 787f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_TYPE_USCALED 0x28000000 788f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_TYPE_SSCALED 0x30000000 789f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_TYPE_FLOAT 0x38000000 790f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_ATTRIB_ALT_BGRA 0x80000000 791f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 792f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL 0x0000121c 793f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_COUNT__MASK 0x0000000f 794f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_COUNT__SHIFT 0 795f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP0__MASK 0x00000070 796f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP0__SHIFT 4 797f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP1__MASK 0x00000380 798f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP1__SHIFT 7 799f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP2__MASK 0x00001c00 800f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP2__SHIFT 10 801f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP3__MASK 0x0000e000 802f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP3__SHIFT 13 803f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP4__MASK 0x00070000 804f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP4__SHIFT 16 805f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP5__MASK 0x00380000 806f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP5__SHIFT 19 807f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP6__MASK 0x01c00000 808f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP6__SHIFT 22 809f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP7__MASK 0x0e000000 810f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_CONTROL_MAP7__SHIFT 25 811f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 812f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1220 0x00001220 813f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 814f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_ARRAY_MODE 0x00001224 815f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_ARRAY_MODE_LAYERS__MASK 0x0000ffff 816f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_ARRAY_MODE_LAYERS__SHIFT 0 817f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_ARRAY_MODE_MODE__MASK 0x00010000 818f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_ARRAY_MODE_MODE__SHIFT 16 819f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_ARRAY_MODE_MODE_2D_ARRAY 0x00000000 820f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_ARRAY_MODE_MODE_3D 0x00010000 821f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 822f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_HORIZ 0x00001228 823f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 824f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_VERT 0x0000122c 825f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 826f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_ARRAY_MODE 0x00001230 827f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_ARRAY_MODE_LAYERS__MASK 0x0000ffff 828f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_ARRAY_MODE_LAYERS__SHIFT 0 829f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_ARRAY_MODE_UNK 0x00010000 830f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 831f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINKED_TSC 0x00001234 832f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 833f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1238 0x00001238 834f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 835f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_DRAW_TFB_BYTES 0x0000123c 836f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 837f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_HORIZ(i0) (0x00001240 + 0x8*(i0)) 838f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_HORIZ__ESIZE 0x00000008 839f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_HORIZ__LEN 0x00000008 840f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_HORIZ_WIDTH__MASK 0x0fffffff 841f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_HORIZ_WIDTH__SHIFT 0 842f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_HORIZ_LINEAR 0x80000000 843f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 844f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_VERT(i0) (0x00001244 + 0x8*(i0)) 845f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_VERT__ESIZE 0x00000008 846f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_VERT__LEN 0x00000008 847f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 848f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_DEF_ADDRESS_HIGH 0x00001280 849f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 850f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_DEF_ADDRESS_LOW 0x00001284 851f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 852f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_DEF_SET 0x00001288 853f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_DEF_SET_SIZE__MASK 0x0000ffff 854f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_DEF_SET_SIZE__SHIFT 0 855f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_DEF_SET_BUFFER__MASK 0x007f0000 856f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CB_DEF_SET_BUFFER__SHIFT 16 857f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 858f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK128C 0x0000128c 859f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK128C_0__MASK 0x00000003 860f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK128C_0__SHIFT 0 861f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK128C_1__MASK 0x00000030 862f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK128C_1__SHIFT 4 863f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK128C_2__MASK 0x00000300 864f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK128C_2__SHIFT 8 865f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK128C_3__MASK 0x00003000 866f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK128C_3__SHIFT 12 867f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 868f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CALL_LIMIT_LOG 0x00001290 869f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CALL_LIMIT_LOG_VP__MASK 0x0000000f 870f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CALL_LIMIT_LOG_VP__SHIFT 0 871f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CALL_LIMIT_LOG_GP__MASK 0x000000f0 872f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CALL_LIMIT_LOG_GP__SHIFT 4 873f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CALL_LIMIT_LOG_FP__MASK 0x00000f00 874f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CALL_LIMIT_LOG_FP__SHIFT 8 875f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 876f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_BUFFERS_CTRL 0x00001294 877f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_BUFFERS_CTRL_INTERLEAVED 0x00000001 878f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_STRMOUT_BUFFERS_CTRL_LIMIT_MODE__MASK 0x00000002 879f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_STRMOUT_BUFFERS_CTRL_LIMIT_MODE__SHIFT 1 880f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_STRMOUT_BUFFERS_CTRL_LIMIT_MODE_PRIMITIVES 0x00000000 881f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_STRMOUT_BUFFERS_CTRL_LIMIT_MODE_OFFSET 0x00000002 882f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_BUFFERS_CTRL_SEPARATE__MASK 0x000000f0 883f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_BUFFERS_CTRL_SEPARATE__SHIFT 4 884f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_BUFFERS_CTRL_STRIDE__MASK 0x000fff00 885f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_BUFFERS_CTRL_STRIDE__SHIFT 8 886f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_BUFFERS_CTRL_STRIDE__MAX 0x00000800 887f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 888f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_RESULT_COUNT 0x00001298 889f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 890f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VTX_UNK129C 0x0000129c 891f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 892f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12A0 0x000012a0 893f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 894f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12A8 0x000012a8 895f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12A8_UNK1 0x00000001 896f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12A8_UNK2__MASK 0x000ffff0 897f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12A8_UNK2__SHIFT 4 898f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 899f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12AC 0x000012ac 900f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 901f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12B0 0x000012b0 902f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12B0_UNK0__MASK 0x000000ff 903f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12B0_UNK0__SHIFT 0 904f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12B0_UNK1__MASK 0x0000ff00 905f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12B0_UNK1__SHIFT 8 906f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12B0_UNK2__MASK 0x00ff0000 907f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12B0_UNK2__SHIFT 16 908f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12B0_UNK3__MASK 0xff000000 909f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12B0_UNK3__SHIFT 24 910f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12B0_UNK3__MAX 0x00000080 911f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 912f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12B4 0x000012b4 913f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 914f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK12B8 0x000012b8 915f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 916f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_TEST_ENABLE 0x000012cc 917f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 918f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_D3D_FILL_MODE 0x000012d0 919f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_D3D_FILL_MODE_POINT 0x00000001 920f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_D3D_FILL_MODE_WIREFRAME 0x00000002 921f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_D3D_FILL_MODE_SOLID 0x00000003 922f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 923f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SHADE_MODEL 0x000012d4 924f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SHADE_MODEL_FLAT 0x00001d00 925f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SHADE_MODEL_SMOOTH 0x00001d01 926f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 927f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOCAL_ADDRESS_HIGH 0x000012d8 928f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 929f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOCAL_ADDRESS_LOW 0x000012dc 930f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 931f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOCAL_SIZE_LOG 0x000012e0 932f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 933f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_INDEPENDENT 0x000012e4 934f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 935f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_WRITE_ENABLE 0x000012e8 936f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 937f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ALPHA_TEST_ENABLE 0x000012ec 938f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 939f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_SET(i0) (0x000012f0 + 0x4*(i0)) 940f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_SET__ESIZE 0x00000004 941f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_SET__LEN 0x00000004 942f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 943f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_SETUP 0x00001300 944f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_SETUP_OFFSET__MASK 0xc0000000 945f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_SETUP_OFFSET__SHIFT 30 946f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_SETUP_COUNT__MASK 0x3fffffff 947f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_SETUP_COUNT__SHIFT 0 948f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 949f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8 0x00001304 950f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_I0__MASK 0x000000ff 951f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_I0__SHIFT 0 952f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_I1__MASK 0x0000ff00 953f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_I1__SHIFT 8 954f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_I2__MASK 0x00ff0000 955f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_I2__SHIFT 16 956f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_I3__MASK 0xff000000 957f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U8_I3__SHIFT 24 958f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 959f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_D3D_CULL_MODE 0x00001308 960f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_D3D_CULL_MODE_NONE 0x00000001 961f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_D3D_CULL_MODE_FRONT 0x00000002 962f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_D3D_CULL_MODE_BACK 0x00000003 963f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 964f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_TEST_FUNC 0x0000130c 965f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_TEST_FUNC_NEVER 0x00000200 966f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_TEST_FUNC_LESS 0x00000201 967f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_TEST_FUNC_EQUAL 0x00000202 968f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_TEST_FUNC_LEQUAL 0x00000203 969f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_TEST_FUNC_GREATER 0x00000204 970f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_TEST_FUNC_NOTEQUAL 0x00000205 971f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_TEST_FUNC_GEQUAL 0x00000206 972f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_TEST_FUNC_ALWAYS 0x00000207 973f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 974f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ALPHA_TEST_REF 0x00001310 975f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 976f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ALPHA_TEST_FUNC 0x00001314 977f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ALPHA_TEST_FUNC_NEVER 0x00000200 978f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ALPHA_TEST_FUNC_LESS 0x00000201 979f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ALPHA_TEST_FUNC_EQUAL 0x00000202 980f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ALPHA_TEST_FUNC_LEQUAL 0x00000203 981f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ALPHA_TEST_FUNC_GREATER 0x00000204 982f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ALPHA_TEST_FUNC_NOTEQUAL 0x00000205 983f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ALPHA_TEST_FUNC_GEQUAL 0x00000206 984f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ALPHA_TEST_FUNC_ALWAYS 0x00000207 985f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 986f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_DRAW_TFB_STRIDE 0x00001318 987f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_DRAW_TFB_STRIDE__MIN 0x00000001 988f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_DRAW_TFB_STRIDE__MAX 0x00000fff 989f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 990f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_COLOR(i0) (0x0000131c + 0x4*(i0)) 991f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_COLOR__ESIZE 0x00000004 992f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_COLOR__LEN 0x00000004 993f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 994f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK132C 0x0000132c 995f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 996f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TSC_FLUSH 0x00001330 997f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TSC_FLUSH_SPECIFIC 0x00000001 998f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TSC_FLUSH_ENTRY__MASK 0x03fffff0 999f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TSC_FLUSH_ENTRY__SHIFT 4 1000f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1001f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TIC_FLUSH 0x00001334 1002f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TIC_FLUSH_SPECIFIC 0x00000001 1003f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TIC_FLUSH_ENTRY__MASK 0x03fffff0 1004f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TIC_FLUSH_ENTRY__SHIFT 4 1005f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1006f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_CACHE_CTL 0x00001338 1007f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_CACHE_CTL_UNK1__MASK 0x00000030 1008f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_CACHE_CTL_UNK1__SHIFT 4 1009f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1010f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_SEPARATE_ALPHA 0x0000133c 1011f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1012f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_EQUATION_RGB 0x00001340 1013f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_EQUATION_RGB_FUNC_ADD 0x00008006 1014f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_EQUATION_RGB_MIN 0x00008007 1015f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_EQUATION_RGB_MAX 0x00008008 1016f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_EQUATION_RGB_FUNC_SUBTRACT 0x0000800a 1017f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_EQUATION_RGB_FUNC_REVERSE_SUBTRACT 0x0000800b 1018f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1019f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_FUNC_SRC_RGB 0x00001344 1020f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1021f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_FUNC_DST_RGB 0x00001348 1022f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1023f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_EQUATION_ALPHA 0x0000134c 1024f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_EQUATION_ALPHA_FUNC_ADD 0x00008006 1025f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_EQUATION_ALPHA_MIN 0x00008007 1026f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_EQUATION_ALPHA_MAX 0x00008008 1027f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_EQUATION_ALPHA_FUNC_SUBTRACT 0x0000800a 1028f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_EQUATION_ALPHA_FUNC_REVERSE_SUBTRACT 0x0000800b 1029f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1030f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_FUNC_SRC_ALPHA 0x00001350 1031f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1032f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1354 0x00001354 1033f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1034f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_FUNC_DST_ALPHA 0x00001358 1035f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1036f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_ENABLE_COMMON 0x0000135c 1037f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1038f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_ENABLE(i0) (0x00001360 + 0x4*(i0)) 1039f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_ENABLE__ESIZE 0x00000004 1040f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BLEND_ENABLE__LEN 0x00000008 1041f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1042f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_ENABLE 0x00001380 1043f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1044f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_FAIL 0x00001384 1045f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_FAIL_ZERO 0x00000000 1046f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_FAIL_INVERT 0x0000150a 1047f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_FAIL_KEEP 0x00001e00 1048f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_FAIL_REPLACE 0x00001e01 1049f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_FAIL_INCR 0x00001e02 1050f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_FAIL_DECR 0x00001e03 1051f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_FAIL_INCR_WRAP 0x00008507 1052f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_FAIL_DECR_WRAP 0x00008508 1053f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1054f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZFAIL 0x00001388 1055f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZFAIL_ZERO 0x00000000 1056f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZFAIL_INVERT 0x0000150a 1057f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZFAIL_KEEP 0x00001e00 1058f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZFAIL_REPLACE 0x00001e01 1059f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZFAIL_INCR 0x00001e02 1060f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZFAIL_DECR 0x00001e03 1061f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZFAIL_INCR_WRAP 0x00008507 1062f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZFAIL_DECR_WRAP 0x00008508 1063f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1064f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZPASS 0x0000138c 1065f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZPASS_ZERO 0x00000000 1066f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZPASS_INVERT 0x0000150a 1067f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZPASS_KEEP 0x00001e00 1068f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZPASS_REPLACE 0x00001e01 1069f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZPASS_INCR 0x00001e02 1070f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZPASS_DECR 0x00001e03 1071f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZPASS_INCR_WRAP 0x00008507 1072f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_OP_ZPASS_DECR_WRAP 0x00008508 1073f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1074f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_FUNC_FUNC 0x00001390 1075f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_FUNC_FUNC_NEVER 0x00000200 1076f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_FUNC_FUNC_LESS 0x00000201 1077f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_FUNC_FUNC_EQUAL 0x00000202 1078f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_FUNC_FUNC_LEQUAL 0x00000203 1079f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204 1080f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL 0x00000205 1081f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_FUNC_FUNC_GEQUAL 0x00000206 1082f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_FUNC_FUNC_ALWAYS 0x00000207 1083f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1084f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_FUNC_REF 0x00001394 1085f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1086f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_MASK 0x00001398 1087f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1088f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_FRONT_FUNC_MASK 0x0000139c 1089f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1090f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK13A0 0x000013a0 1091f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1092f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_DRAW_TFB_BASE 0x000013a4 1093f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1094f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRAG_COLOR_CLAMP_EN 0x000013a8 1095f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRAG_COLOR_CLAMP_EN_0 0x00000001 1096f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRAG_COLOR_CLAMP_EN_1 0x00000010 1097f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRAG_COLOR_CLAMP_EN_2 0x00000100 1098f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRAG_COLOR_CLAMP_EN_3 0x00001000 1099f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRAG_COLOR_CLAMP_EN_4 0x00010000 1100f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRAG_COLOR_CLAMP_EN_5 0x00100000 1101f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRAG_COLOR_CLAMP_EN_6 0x01000000 1102f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRAG_COLOR_CLAMP_EN_7 0x10000000 1103f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1104f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_Y_CONTROL 0x000013ac 1105f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_Y_CONTROL_Y_NEGATE 0x00000001 1106f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SCREEN_Y_CONTROL_TRIANGLE_RAST_FLIP 0x00000010 1107f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1108f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_WIDTH 0x000013b0 1109f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1110f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_LIMITS(i0) (0x000013b4 + 0x4*(i0)) 1111f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_LIMITS__ESIZE 0x00000004 1112f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_LIMITS__LEN 0x00000003 1113f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_LIMITS_SAMPLERS_LOG2__MASK 0x0000000f 1114f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_LIMITS_SAMPLERS_LOG2__SHIFT 0 1115f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_LIMITS_SAMPLERS_LOG2__MIN 0x00000000 1116f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_LIMITS_SAMPLERS_LOG2__MAX 0x00000004 1117f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_LIMITS_TEXTURES_LOG2__MASK 0x000000f0 1118f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_LIMITS_TEXTURES_LOG2__SHIFT 4 1119f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_LIMITS_TEXTURES_LOG2__MIN 0x00000000 1120f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TEX_LIMITS_TEXTURES_LOG2__MAX 0x00000007 1121f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1122f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_COORD_REPLACE_MAP(i0) (0x000013c0 + 0x4*(i0)) 1123f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_COORD_REPLACE_MAP__ESIZE 0x00000004 1124f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_COORD_REPLACE_MAP__LEN 0x00000010 1125f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1126f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1400_LANES 0x00001400 1127f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1128f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1404 0x00001404 1129f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1130f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1408 0x00001408 1131f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1132f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_START_ID 0x0000140c 1133f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1134f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_START_ID 0x00001410 1135f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1136f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_START_ID 0x00001414 1137f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1138f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_UNK1418 0x00001418 1139f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1140f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK141C 0x0000141c 1141f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1142f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_VERTEX_OUTPUT_COUNT 0x00001420 1143f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_VERTEX_OUTPUT_COUNT__MIN 0x00000001 1144f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_VERTEX_OUTPUT_COUNT__MAX 0x00000400 1145f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1146f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_FLUSH 0x0000142c 1147f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1148f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1430 0x00001430 1149f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1430_UNK0 0x00000010 1150f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1430_UNK1 0x00000100 1151f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1152f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_BASE 0x00001434 1153f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1154f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_INSTANCE_BASE 0x00001438 1155f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1156f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_FLAGS 0x0000143c 1157f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_FLAGS_STENCIL_MASK 0x00000001 1158f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_FLAGS_CLEAR_RECT__MASK 0x00000010 1159f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_FLAGS_CLEAR_RECT__SHIFT 4 1160f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_FLAGS_CLEAR_RECT_SCISSOR 0x00000000 1161f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_FLAGS_CLEAR_RECT_VIEWPORT 0x00000010 1162f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1163f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CODE_CB_FLUSH 0x00001440 1164f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1165f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC(i0) (0x00001444 + 0x8*(i0)) 1166f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC__ESIZE 0x00000008 1167f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC__LEN 0x00000003 1168f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC_VALID 0x00000001 1169f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC_SAMPLER__MASK 0x000000f0 1170f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC_SAMPLER__SHIFT 4 1171f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC_TSC__MASK 0x001ff000 1172f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC_TSC__SHIFT 12 1173f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1174f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC(i0) (0x00001448 + 0x8*(i0)) 1175f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC__ESIZE 0x00000008 1176f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC__LEN 0x00000003 1177f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC_VALID 0x00000001 1178f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC_TEXTURE__MASK 0x000001fe 1179f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC_TEXTURE__SHIFT 1 1180f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC_TIC__MASK 0x7ffffe00 1181f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC_TIC__SHIFT 9 1182f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1183f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC2(i0) (0x00001468 + 0x8*(i0)) 1184f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC2__ESIZE 0x00000008 1185f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC2__LEN 0x00000003 1186f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC2_VALID 0x00000001 1187f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC2_SAMPLER__MASK 0x00000010 1188f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC2_SAMPLER__SHIFT 4 1189f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC2_TSC__MASK 0x001ff000 1190f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TSC2_TSC__SHIFT 12 1191f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1192f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC2(i0) (0x0000146c + 0x8*(i0)) 1193f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC2__ESIZE 0x00000008 1194f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC2__LEN 0x00000003 1195f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC2_VALID 0x00000001 1196f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC2_TEXTURE__MASK 0x00000002 1197f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC2_TEXTURE__SHIFT 1 1198f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC2_TIC__MASK 0x7ffffe00 1199f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_BIND_TIC2_TIC__SHIFT 9 1200f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1201f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_MAP(i0) (0x00001480 + 0x4*(i0)) 1202f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_MAP__ESIZE 0x00000004 1203f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_MAP__LEN 0x00000020 1204f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1205f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_HEIGHT 0x00001504 1206f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_HEIGHT__MAX 0x00002000 1207f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1208f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_FILL_RECT_HORIZ 0x00001508 1209f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_FILL_RECT_HORIZ_LOW__MASK 0x0000ffff 1210f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_FILL_RECT_HORIZ_LOW__SHIFT 0 1211f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_FILL_RECT_HORIZ_HIGH__MASK 0xffff0000 1212f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_FILL_RECT_HORIZ_HIGH__SHIFT 16 1213f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1214f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_FILL_RECT_VERT 0x0000150c 1215f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_FILL_RECT_VERT_LOW__MASK 0x0000ffff 1216f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_FILL_RECT_VERT_LOW__SHIFT 0 1217f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_FILL_RECT_VERT_HIGH__MASK 0xffff0000 1218f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_FILL_RECT_VERT_HIGH__SHIFT 16 1219f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1220f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_ENABLE 0x00001510 1221f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_ENABLE_0 0x00000001 1222f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_ENABLE_1 0x00000002 1223f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_ENABLE_2 0x00000004 1224f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_ENABLE_3 0x00000008 1225f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_ENABLE_4 0x00000010 1226f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_ENABLE_5 0x00000020 1227f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_ENABLE_6 0x00000040 1228f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_ENABLE_7 0x00000080 1229f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1230f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SAMPLECNT_ENABLE 0x00001514 1231f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1232f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_SIZE 0x00001518 1233f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1234f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_STATCTRS_ENABLE 0x0000151c 1235f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1236f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_SPRITE_ENABLE 0x00001520 1237f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1238f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_UNK152C 0x0000152c 1239f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_UNK152C_UNK0 0x00000001 1240f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_UNK152C_UNK1 0x00000010 1241f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_UNK152C_UNK2 0x00000100 1242f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_UNK152C_UNK3__MASK 0x000ff000 1243f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_UNK152C_UNK3__SHIFT 12 1244f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_UNK152C_UNK3__MAX 0x00000028 1245f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1246f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET 0x00001530 1247f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET_SAMPLECNT 0x00000001 1248f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET_ZCULL_STATS 0x00000002 1249f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_COUNTER_RESET_STRMOUT_VERTICES 0x00000008 1250f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET_TRANSFORM_FEEDBACK 0x00000010 1251f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET_GENERATED_PRIMITIVES 0x00000011 1252f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET_VFETCH_VERTICES 0x00000012 1253f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET_VFETCH_PRIMITIVES 0x00000013 1254f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET_VP_LAUNCHES 0x00000015 1255f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET_GP_LAUNCHES 0x0000001a 1256f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET_GP_PRIMITIVES_OUT 0x0000001b 1257f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET_RAST_PRIMITIVES_PRECLIP 0x0000001c 1258f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET_RAST_PRIMITIVES_POSTCLIP 0x0000001d 1259f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COUNTER_RESET_FP_PIXELS 0x0000001e 1260f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1261f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_ENABLE 0x00001534 1262f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1263f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_ENABLE 0x00001538 1264f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1265f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_CTRL 0x0000153c 1266f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_CTRL_ALPHA_TO_COVERAGE 0x00000001 1267f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_CTRL_ALPHA_TO_ONE 0x00000010 1268f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1269f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_NOPERSPECTIVE_BITMAP(i0) (0x00001540 + 0x4*(i0)) 1270f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_NOPERSPECTIVE_BITMAP__ESIZE 0x00000004 1271f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_NOPERSPECTIVE_BITMAP__LEN 0x00000004 1272f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1273f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COND_ADDRESS_HIGH 0x00001550 1274f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1275f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COND_ADDRESS_LOW 0x00001554 1276f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1277f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COND_MODE 0x00001558 1278f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COND_MODE_NEVER 0x00000000 1279f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COND_MODE_ALWAYS 0x00000001 1280f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COND_MODE_RES_NON_ZERO 0x00000002 1281f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COND_MODE_EQUAL 0x00000003 1282f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COND_MODE_NOT_EQUAL 0x00000004 1283f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1284f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TSC_ADDRESS_HIGH 0x0000155c 1285f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1286f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TSC_ADDRESS_LOW 0x00001560 1287f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TSC_ADDRESS_LOW__ALIGN 0x00000020 1288f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1289f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TSC_LIMIT 0x00001564 1290f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TSC_LIMIT__MAX 0x00001fff 1291f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1292f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1568 0x00001568 1293f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1294f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_OFFSET_FACTOR 0x0000156c 1295f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1296f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_SMOOTH_ENABLE 0x00001570 1297f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1298f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TIC_ADDRESS_HIGH 0x00001574 1299f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1300f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TIC_ADDRESS_LOW 0x00001578 1301f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1302f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_TIC_LIMIT 0x0000157c 1303f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1304f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_CONTROL(i0) (0x00001580 + 0x4*(i0)) 1305f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_CONTROL__ESIZE 0x00000004 1306f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_CONTROL__LEN 0x00000004 1307f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_CONTROL_UNK0 0x00000001 1308f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_CONTROL_UNK1__MASK 0x00000070 1309f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_CONTROL_UNK1__SHIFT 4 1310f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_CONTROL_UNK2__MASK 0x00ffff00 1311f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_CONTROL_UNK2__SHIFT 8 1312f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_CONTROL_UNK3__MASK 0xff000000 1313f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PM_CONTROL_UNK3__SHIFT 24 1314f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1315f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_REGION 0x00001590 1316f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1317f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_TWO_SIDE_ENABLE 0x00001594 1318f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1319f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_FAIL 0x00001598 1320f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_FAIL_ZERO 0x00000000 1321f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_FAIL_INVERT 0x0000150a 1322f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_FAIL_KEEP 0x00001e00 1323f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_FAIL_REPLACE 0x00001e01 1324f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_FAIL_INCR 0x00001e02 1325f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_FAIL_DECR 0x00001e03 1326f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_FAIL_INCR_WRAP 0x00008507 1327f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_FAIL_DECR_WRAP 0x00008508 1328f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1329f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZFAIL 0x0000159c 1330f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZFAIL_ZERO 0x00000000 1331f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZFAIL_INVERT 0x0000150a 1332f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZFAIL_KEEP 0x00001e00 1333f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZFAIL_REPLACE 0x00001e01 1334f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZFAIL_INCR 0x00001e02 1335f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZFAIL_DECR 0x00001e03 1336f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZFAIL_INCR_WRAP 0x00008507 1337f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZFAIL_DECR_WRAP 0x00008508 1338f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1339f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZPASS 0x000015a0 1340f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZPASS_ZERO 0x00000000 1341f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZPASS_INVERT 0x0000150a 1342f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZPASS_KEEP 0x00001e00 1343f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZPASS_REPLACE 0x00001e01 1344f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZPASS_INCR 0x00001e02 1345f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZPASS_DECR 0x00001e03 1346f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZPASS_INCR_WRAP 0x00008507 1347f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_OP_ZPASS_DECR_WRAP 0x00008508 1348f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1349f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_FUNC_FUNC 0x000015a4 1350f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_FUNC_FUNC_NEVER 0x00000200 1351f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_FUNC_FUNC_LESS 0x00000201 1352f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_FUNC_FUNC_EQUAL 0x00000202 1353f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_FUNC_FUNC_LEQUAL 0x00000203 1354f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204 1355f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_FUNC_FUNC_NOTEQUAL 0x00000205 1356f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_FUNC_FUNC_GEQUAL 0x00000206 1357f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STENCIL_BACK_FUNC_FUNC_ALWAYS 0x00000207 1358f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1359f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK15A8 0x000015a8 1360f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK15A8_UNK1__MASK 0x00000007 1361f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK15A8_UNK1__SHIFT 0 1362f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK15A8_UNK2__MASK 0x00000070 1363f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK15A8_UNK2__SHIFT 4 1364f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1365f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK15AC 0x000015ac 1366f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1367f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK15B0 0x000015b0 1368f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK15B0_0 0x00000001 1369f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK15B0_1 0x00000010 1370f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK15B0_2 0x00000100 1371f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1372f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CSAA_ENABLE 0x000015b4 1373f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1374f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRAMEBUFFER_SRGB 0x000015b8 1375f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1376f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_OFFSET_UNITS 0x000015bc 1377f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1378f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_UNK15C4 0x000015c4 1379f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1380f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_UNK15C8 0x000015c8 1381f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1382f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LAYER 0x000015cc 1383f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LAYER_IDX__MASK 0x0000ffff 1384f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LAYER_IDX__SHIFT 0 1385f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LAYER_USE_GP 0x00010000 1386f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1387f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_MODE 0x000015d0 1388f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_MODE_MS1 0x00000000 1389f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_MODE_MS2 0x00000001 1390f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_MODE_MS4 0x00000002 1391f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_MODE_MS8 0x00000003 1392f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_MODE_MS8_ALT 0x00000004 1393f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_MODE_MS2_ALT 0x00000005 1394f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_MODE_UNK6 0x00000006 1395f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_MODE_MS4_CS4 0x00000008 1396f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_MODE_MS4_CS12 0x00000009 1397f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_MODE_MS8_CS8 0x0000000a 1398f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_MULTISAMPLE_MODE_MS8_CS24 0x0000000b 1399f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1400f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D 0x000015d4 1401f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D_PRIMITIVE__MASK 0x0fffffff 1402f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D_PRIMITIVE__SHIFT 0 1403f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D_PRIMITIVE_POINTS 0x00000001 1404f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D_PRIMITIVE_LINES 0x00000002 1405f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D_PRIMITIVE_LINE_STRIP 0x00000003 1406f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D_PRIMITIVE_TRIANGLES 0x00000004 1407f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D_PRIMITIVE_TRIANGLE_STRIP 0x00000005 1408f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D_PRIMITIVE_LINES_ADJACENCY 0x0000000a 1409f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D_PRIMITIVE_LINE_STRIP_ADJACENCY 0x0000000b 1410f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D_PRIMITIVE_TRIANGLES_ADJACENCY 0x0000000c 1411f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D_PRIMITIVE_TRIANGLE_STRIP_ADJACENCY 0x0000000d 1412f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_D3D_INSTANCE_NEXT 0x10000000 1413f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_VERTEX_BEGIN_D3D_PRIMITIVE_ID_CONT 0x20000000 1414f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VERTEX_BEGIN_D3D_INSTANCE_CONT 0x40000000 1415f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1416f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_END_D3D 0x000015d8 1417f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_END_D3D_UNK0 0x00000001 1418f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VERTEX_END_D3D_UNK1 0x00000002 1419f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1420f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL 0x000015dc 1421f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE__MASK 0x0fffffff 1422f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE__SHIFT 0 1423f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_POINTS 0x00000000 1424f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_LINES 0x00000001 1425f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_LINE_LOOP 0x00000002 1426f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_LINE_STRIP 0x00000003 1427f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_TRIANGLES 0x00000004 1428f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_TRIANGLE_STRIP 0x00000005 1429f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_TRIANGLE_FAN 0x00000006 1430f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_QUADS 0x00000007 1431f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_QUAD_STRIP 0x00000008 1432f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_POLYGON 0x00000009 1433f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_LINES_ADJACENCY 0x0000000a 1434f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_LINE_STRIP_ADJACENCY 0x0000000b 1435f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_TRIANGLES_ADJACENCY 0x0000000c 1436f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_PRIMITIVE_TRIANGLE_STRIP_ADJACENCY 0x0000000d 1437f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BEGIN_GL_INSTANCE_NEXT 0x10000000 1438f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_VERTEX_BEGIN_GL_PRIMITIVE_ID_CONT 0x20000000 1439f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VERTEX_BEGIN_GL_INSTANCE_CONT 0x40000000 1440f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1441f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_END_GL 0x000015e0 1442f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_END_GL_UNK0 0x00000001 1443f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VERTEX_END_GL_UNK1 0x00000002 1444f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1445f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_EDGEFLAG 0x000015e4 1446f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1447f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U32 0x000015e8 1448f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1449f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U16_SETUP 0x000015ec 1450f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U16_SETUP_OFFSET__MASK 0xc0000000 1451f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U16_SETUP_OFFSET__SHIFT 30 1452f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U16_SETUP_COUNT__MASK 0x3fffffff 1453f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U16_SETUP_COUNT__SHIFT 0 1454f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1455f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U16 0x000015f0 1456f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U16_I0__MASK 0x0000ffff 1457f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U16_I0__SHIFT 0 1458f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U16_I1__MASK 0xffff0000 1459f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VB_ELEMENT_U16_I1__SHIFT 16 1460f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1461f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BASE_HIGH 0x000015f4 1462f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1463f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_BASE_LOW 0x000015f8 1464f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1465f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_DATA 0x00001640 1466f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1467f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PRIM_RESTART_ENABLE 0x00001644 1468f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1469f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PRIM_RESTART_INDEX 0x00001648 1470f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1471f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_GP_BUILTIN_ATTR_EN 0x0000164c 1472f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_GP_BUILTIN_ATTR_EN_VERTEX_ID 0x00000001 1473f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_GP_BUILTIN_ATTR_EN_INSTANCE_ID 0x00000010 1474f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_GP_BUILTIN_ATTR_EN_PRIMITIVE_ID 0x00000100 1475f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_GP_BUILTIN_ATTR_EN_UNK12 0x00001000 1476f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1477f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN(i0) (0x00001650 + 0x4*(i0)) 1478f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN__ESIZE 0x00000004 1479f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN__LEN 0x00000002 1480f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_7__MASK 0xf0000000 1481f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_7__SHIFT 28 1482f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_7_X 0x10000000 1483f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_7_Y 0x20000000 1484f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_7_Z 0x40000000 1485f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_7_W 0x80000000 1486f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_6__MASK 0x0f000000 1487f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_6__SHIFT 24 1488f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_6_X 0x01000000 1489f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_6_Y 0x02000000 1490f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_6_Z 0x04000000 1491f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_6_W 0x08000000 1492f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_5__MASK 0x00f00000 1493f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_5__SHIFT 20 1494f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_5_X 0x00100000 1495f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_5_Y 0x00200000 1496f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_5_Z 0x00400000 1497f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_5_W 0x00800000 1498f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_4__MASK 0x000f0000 1499f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_4__SHIFT 16 1500f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_4_X 0x00010000 1501f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_4_Y 0x00020000 1502f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_4_Z 0x00040000 1503f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_4_W 0x00080000 1504f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_3__MASK 0x0000f000 1505f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_3__SHIFT 12 1506f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_3_X 0x00001000 1507f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_3_Y 0x00002000 1508f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_3_Z 0x00004000 1509f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_3_W 0x00008000 1510f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_2__MASK 0x00000f00 1511f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_2__SHIFT 8 1512f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_2_X 0x00000100 1513f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_2_Y 0x00000200 1514f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_2_Z 0x00000400 1515f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_2_W 0x00000800 1516f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_1__MASK 0x000000f0 1517f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_1__SHIFT 4 1518f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_1_X 0x00000010 1519f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_1_Y 0x00000020 1520f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_1_Z 0x00000040 1521f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_1_W 0x00000080 1522f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_0__MASK 0x0000000f 1523f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_0__SHIFT 0 1524f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_0_X 0x00000001 1525f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_0_Y 0x00000002 1526f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_0_Z 0x00000004 1527f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_ATTR_EN_0_W 0x00000008 1528f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1529f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_SMOOTH_ENABLE 0x00001658 1530f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1531f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_RASTER_RULES 0x0000165c 1532f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_RASTER_RULES_OGL 0x00000000 1533f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_RASTER_RULES_D3D 0x00000001 1534f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1535f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_SPRITE_CTRL 0x00001660 1536f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_SPRITE_CTRL_COORD_ORIGIN__MASK 0x00000010 1537f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_SPRITE_CTRL_COORD_ORIGIN__SHIFT 4 1538f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_SPRITE_CTRL_COORD_ORIGIN_LOWER_LEFT 0x00000000 1539f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POINT_SPRITE_CTRL_COORD_ORIGIN_UPPER_LEFT 0x00000010 1540f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1541f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_TEX_MISC 0x00001664 1542f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_TEX_MISC_UNK1 0x00000002 1543f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_TEX_MISC_SEAMLESS_CUBE_MAP 0x00000004 1544f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1545f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_SMOOTH_BLUR 0x00001668 1546f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_SMOOTH_BLUR_LOW 0x00000000 1547f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_SMOOTH_BLUR_MEDIUM 0x00000001 1548f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_SMOOTH_BLUR_HIGH 0x00000002 1549f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1550f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_STIPPLE_ENABLE 0x0000166c 1551f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1552f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COVERAGE_LUT(i0) (0x00001670 + 0x4*(i0)) 1553f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COVERAGE_LUT__ESIZE 0x00000004 1554f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COVERAGE_LUT__LEN 0x00000004 1555f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COVERAGE_LUT_0__MASK 0x000000ff 1556f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COVERAGE_LUT_0__SHIFT 0 1557f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COVERAGE_LUT_1__MASK 0x0000ff00 1558f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COVERAGE_LUT_1__SHIFT 8 1559f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COVERAGE_LUT_2__MASK 0x00ff0000 1560f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COVERAGE_LUT_2__SHIFT 16 1561f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COVERAGE_LUT_3__MASK 0xff000000 1562f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COVERAGE_LUT_3__SHIFT 24 1563f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1564f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_STIPPLE 0x00001680 1565f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_STIPPLE_FACTOR_M1__MASK 0x000000ff 1566f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_STIPPLE_FACTOR_M1__SHIFT 0 1567f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_STIPPLE_PATTERN__MASK 0x00ffff00 1568f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_STIPPLE_PATTERN__SHIFT 8 1569f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1570f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_PROVOKING_VERTEX_LAST 0x00001684 1571f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1572f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_TWO_SIDE_ENABLE 0x00001688 1573f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1574f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_STIPPLE_ENABLE 0x0000168c 1575f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1576f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1690 0x00001690 1577f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1690_ALWAYS_DERIV 0x00000001 1578f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1690_UNK16 0x00010000 1579f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1580f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SET_PROGRAM_CB 0x00001694 1581f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SET_PROGRAM_CB_PROGRAM__MASK 0x000000f0 1582f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SET_PROGRAM_CB_PROGRAM__SHIFT 4 1583f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SET_PROGRAM_CB_PROGRAM_VERTEX 0x00000000 1584f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SET_PROGRAM_CB_PROGRAM_GEOMETRY 0x00000020 1585f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SET_PROGRAM_CB_PROGRAM_FRAGMENT 0x00000030 1586f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SET_PROGRAM_CB_INDEX__MASK 0x00000f00 1587f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SET_PROGRAM_CB_INDEX__SHIFT 8 1588f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SET_PROGRAM_CB_BUFFER__MASK 0x0007f000 1589f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SET_PROGRAM_CB_BUFFER__SHIFT 12 1590f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SET_PROGRAM_CB_VALID 0x00000001 1591f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1592f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1698 0x00001698 1593f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1698_0 0x00000001 1594f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1698_1 0x00000010 1595f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1698_2 0x00000100 1596f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1597f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_SAMPLE_SHADING 0x0000169c 1598f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_SAMPLE_SHADING_MIN_SAMPLES__MASK 0x0000000f 1599f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_SAMPLE_SHADING_MIN_SAMPLES__SHIFT 0 1600f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_SAMPLE_SHADING_ENABLE 0x00000010 1601f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1602f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_UNK16A0 0x000016a0 1603f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1604f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_RESULT_MAP_SIZE 0x000016ac 1605f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1606f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_REG_ALLOC_TEMP 0x000016b0 1607f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1608f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_UNK16B4 0x000016b4 1609f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_UNK16B4_UNK0 0x00000001 1610f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_UNK16B4_UNK1 0x00000002 1611f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1612f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_REG_ALLOC_RESULT 0x000016b8 1613f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1614f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_RESULT_MAP(i0) (0x000016bc + 0x4*(i0)) 1615f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_RESULT_MAP__ESIZE 0x00000004 1616f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_RESULT_MAP__LEN 0x00000011 1617f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_RESULT_MAP_0__MASK 0x000000ff 1618f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_RESULT_MAP_0__SHIFT 0 1619f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_RESULT_MAP_1__MASK 0x0000ff00 1620f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_RESULT_MAP_1__SHIFT 8 1621f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_RESULT_MAP_2__MASK 0x00ff0000 1622f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_RESULT_MAP_2__SHIFT 16 1623f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_RESULT_MAP_3__MASK 0xff000000 1624f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VP_RESULT_MAP_3__SHIFT 24 1625f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1626f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_STIPPLE_PATTERN(i0) (0x00001700 + 0x4*(i0)) 1627f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_STIPPLE_PATTERN__ESIZE 0x00000004 1628f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_STIPPLE_PATTERN__LEN 0x00000020 1629f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1630f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_STRMOUT_OFFSET(i0) (0x00001780 + 0x4*(i0)) 1631f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_STRMOUT_OFFSET__ESIZE 0x00000004 1632f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_STRMOUT_OFFSET__LEN 0x00000004 1633f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1634f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_ENABLE 0x00001798 1635f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1636f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_REG_ALLOC_TEMP 0x000017a0 1637f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1638f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_REG_ALLOC_RESULT 0x000017a8 1639f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1640f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_RESULT_MAP_SIZE 0x000017ac 1641f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1642f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_OUTPUT_PRIMITIVE_TYPE 0x000017b0 1643f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_OUTPUT_PRIMITIVE_TYPE_POINTS 0x00000001 1644f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_OUTPUT_PRIMITIVE_TYPE_LINE_STRIP 0x00000002 1645f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_OUTPUT_PRIMITIVE_TYPE_TRIANGLE_STRIP 0x00000003 1646f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1647f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RASTERIZE_ENABLE 0x000017b4 1648f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1649f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_ENABLE 0x000017b8 1650f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1651f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_RESULT_MAP(i0) (0x000017fc + 0x4*(i0)) 1652f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_RESULT_MAP__ESIZE 0x00000004 1653f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_RESULT_MAP__LEN 0x00000021 1654f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_RESULT_MAP_0__MASK 0x000000ff 1655f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_RESULT_MAP_0__SHIFT 0 1656f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_RESULT_MAP_1__MASK 0x0000ff00 1657f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_RESULT_MAP_1__SHIFT 8 1658f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_RESULT_MAP_2__MASK 0x00ff0000 1659f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_RESULT_MAP_2__SHIFT 16 1660f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_RESULT_MAP_3__MASK 0xff000000 1661f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_RESULT_MAP_3__SHIFT 24 1662f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1663f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_POLYGON_OFFSET_CLAMP 0x0000187c 1664f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1665f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_PER_INSTANCE_ALT(i0) (0x00001880 + 0x4*(i0)) 1666f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_PER_INSTANCE_ALT__ESIZE 0x00000004 1667f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_PER_INSTANCE_ALT__LEN 0x00000020 1668f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1669f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_GP_VIEWPORT_ID_ENABLE 0x00001900 1670f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1671f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_COLOR 0x00001904 1672f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_COLOR_FFC0_ID__MASK 0x000000ff 1673f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_COLOR_FFC0_ID__SHIFT 0 1674f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_COLOR_BFC0_ID__MASK 0x0000ff00 1675f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_COLOR_BFC0_ID__SHIFT 8 1676f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_COLOR_COLR_NR__MASK 0x00ff0000 1677f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_COLOR_COLR_NR__SHIFT 16 1678f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_COLOR_CLMP_EN 0x01000000 1679f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1680f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_CLIP 0x00001908 1681f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_CLIP_CLIP_START__MASK 0x000000ff 1682f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_CLIP_CLIP_START__SHIFT 0 1683f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_CLIP_CLIP_NUM__MASK 0x00000f00 1684f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_CLIP_CLIP_NUM__SHIFT 8 1685f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1686f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_LAYER 0x0000190c 1687f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_LAYER_LAYER_ID__MASK 0x000000ff 1688f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_LAYER_LAYER_ID__SHIFT 0 1689f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1690f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_PTSZ 0x00001910 1691f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_PTSZ_PTSZ_EN__MASK 0x00000001 1692f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_PTSZ_PTSZ_EN__SHIFT 0 1693f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_PTSZ_PTSZ_ID__MASK 0x00000ff0 1694f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_PTSZ_PTSZ_ID__SHIFT 4 1695f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1696f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_PRIM_ID 0x00001914 1697f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_PRIM_ID_PRIM_ID__MASK 0x000000ff 1698f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_SEMANTIC_PRIM_ID_PRIM_ID__SHIFT 0 1699f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1700f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CULL_FACE_ENABLE 0x00001918 1701f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1702f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRONT_FACE 0x0000191c 1703f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRONT_FACE_CW 0x00000900 1704f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FRONT_FACE_CCW 0x00000901 1705f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1706f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CULL_FACE 0x00001920 1707f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CULL_FACE_FRONT 0x00000404 1708f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CULL_FACE_BACK 0x00000405 1709f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CULL_FACE_FRONT_AND_BACK 0x00000408 1710f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1711f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LINE_LAST_PIXEL 0x00001924 1712f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1713f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_FP_MULTISAMPLE 0x00001928 1714f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_FP_MULTISAMPLE_EXPORT_SAMPLE_MASK 0x00000001 1715f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_FP_MULTISAMPLE_FORCE_PER_SAMPLE 0x00000002 1716f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1717f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEWPORT_TRANSFORM_EN 0x0000192c 1718f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1719f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEW_VOLUME_CLIP_CTRL 0x0000193c 1720f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEW_VOLUME_CLIP_CTRL_UNK0 0x00000001 1721f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VIEW_VOLUME_CLIP_CTRL_UNK1 0x00000002 1722f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_VIEW_VOLUME_CLIP_CTRL_UNK2 0x00000004 1723f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEW_VOLUME_CLIP_CTRL_DEPTH_CLAMP_NEAR 0x00000008 1724f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEW_VOLUME_CLIP_CTRL_DEPTH_CLAMP_FAR 0x00000010 1725f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEW_VOLUME_CLIP_CTRL_UNK7 0x00000080 1726f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEW_VOLUME_CLIP_CTRL_UNK10 0x00000400 1727f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEW_VOLUME_CLIP_CTRL_UNK11 0x00000800 1728f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEW_VOLUME_CLIP_CTRL_UNK12__MASK 0x00003000 1729f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEW_VOLUME_CLIP_CTRL_UNK12__SHIFT 12 1730f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEW_VOLUME_CLIP_CTRL_UNK12_UNK0 0x00000000 1731f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VIEW_VOLUME_CLIP_CTRL_UNK12_UNK1 0x00001000 1732f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_VIEW_VOLUME_CLIP_CTRL_UNK12_UNK2 0x00002000 1733f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1734f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE 0x00001940 1735f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_0__MASK 0x00000001 1736f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_0__SHIFT 0 1737f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_0_CLIP 0x00000000 1738f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_0_CULL 0x00000001 1739f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_1__MASK 0x00000010 1740f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_1__SHIFT 4 1741f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_1_CLIP 0x00000000 1742f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_1_CULL 0x00000010 1743f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_2__MASK 0x00000100 1744f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_2__SHIFT 8 1745f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_2_CLIP 0x00000000 1746f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_2_CULL 0x00000100 1747f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_3__MASK 0x00001000 1748f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_3__SHIFT 12 1749f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_3_CLIP 0x00000000 1750f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_3_CULL 0x00001000 1751f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_4__MASK 0x00010000 1752f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_4__SHIFT 16 1753f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_4_CLIP 0x00000000 1754f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_4_CULL 0x00010000 1755f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_5__MASK 0x00100000 1756f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_5__SHIFT 20 1757f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_5_CLIP 0x00000000 1758f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_5_CULL 0x00100000 1759f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_6__MASK 0x01000000 1760f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_6__SHIFT 24 1761f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_6_CLIP 0x00000000 1762f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_6_CULL 0x01000000 1763f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_7__MASK 0x10000000 1764f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_7__SHIFT 28 1765f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_7_CLIP 0x00000000 1766f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_DISTANCE_MODE_7_CULL 0x10000000 1767f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1768f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_UNK1944 0x00001944 1769f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1770f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECTS_EN 0x0000194c 1771f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1772f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECTS_MODE 0x00001950 1773f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECTS_MODE_INSIDE_ANY 0x00000000 1774f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECTS_MODE_OUTSIDE_ALL 0x00000001 1775f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIP_RECTS_MODE_NEVER 0x00000002 1776f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1777f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_VALIDATE 0x00001954 1778f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_VALIDATE_CLEAR_UNK0 0x00000001 1779f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_VALIDATE_CLEAR_UNK1 0x00000010 1780f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1781f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZCULL_INVALIDATE 0x00001958 1782f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1783f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_UNK1960 0x00001960 1784f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_UNK1960_0 0x00000001 1785f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_UNK1960_1 0x00000010 1786f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1787f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1968 0x00001968 1788f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1968_0 0x00000001 1789f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1968_1 0x00000010 1790f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1791f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_CTRL_UNK196C 0x0000196c 1792f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_CTRL_UNK196C_0 0x00000001 1793f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_CTRL_UNK196C_1 0x00000010 1794f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1795f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1978 0x00001978 1796f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1797f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_ENABLE 0x0000197c 1798f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1799f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_WIDTH 0x00001980 1800f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_WIDTH__MAX 0x00002000 1801f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_WIDTH__ALIGN 0x00000040 1802f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1803f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_ID 0x00001984 1804f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1805f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL 0x00001988 1806f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL_UMASK__MASK 0xff000000 1807f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL_UMASK__SHIFT 24 1808f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL_UMASK_X 0x01000000 1809f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL_UMASK_Y 0x02000000 1810f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL_UMASK_Z 0x04000000 1811f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL_UMASK_W 0x08000000 1812f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL_COUNT_NONFLAT__MASK 0x00ff0000 1813f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL_COUNT_NONFLAT__SHIFT 16 1814f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL_OFFSET__MASK 0x0000ff00 1815f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL_OFFSET__SHIFT 8 1816f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL_COUNT__MASK 0x000000ff 1817f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_INTERPOLANT_CTRL_COUNT__SHIFT 0 1818f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1819f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_REG_ALLOC_TEMP 0x0000198c 1820f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1821f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_REG_MODE 0x000019a0 1822f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_REG_MODE_PACKED 0x00000001 1823f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_REG_MODE_STRIPED 0x00000002 1824f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1825f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_CONTROL 0x000019a8 1826f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_CONTROL_MULTIPLE_RESULTS 0x00000001 1827f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_CONTROL_EXPORTS_Z 0x00000100 1828f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_FP_CONTROL_USES_KIL 0x00100000 1829f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1830f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DEPTH_BOUNDS_EN 0x000019bc 1831f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1832f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK19C0 0x000019c0 1833f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1834f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_ENABLE 0x000019c4 1835f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1836f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP 0x000019c8 1837f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_CLEAR 0x00001500 1838f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_AND 0x00001501 1839f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_AND_REVERSE 0x00001502 1840f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_COPY 0x00001503 1841f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_AND_INVERTED 0x00001504 1842f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_NOOP 0x00001505 1843f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_XOR 0x00001506 1844f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_OR 0x00001507 1845f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_NOR 0x00001508 1846f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_EQUIV 0x00001509 1847f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_INVERT 0x0000150a 1848f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_OR_REVERSE 0x0000150b 1849f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_COPY_INVERTED 0x0000150c 1850f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_OR_INVERTED 0x0000150d 1851f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_NAND 0x0000150e 1852f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_LOGIC_OP_SET 0x0000150f 1853f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1854f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_ZETA_COMP_ENABLE 0x000019cc 1855f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1856f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_BUFFERS 0x000019d0 1857f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_BUFFERS_Z 0x00000001 1858f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_BUFFERS_S 0x00000002 1859f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_BUFFERS_R 0x00000004 1860f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_BUFFERS_G 0x00000008 1861f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_BUFFERS_B 0x00000010 1862f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_BUFFERS_A 0x00000020 1863f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_BUFFERS_RT__MASK 0x000003c0 1864f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_BUFFERS_RT__SHIFT 6 1865f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_BUFFERS_LAYER__MASK 0x001ffc00 1866f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLEAR_BUFFERS_LAYER__SHIFT 10 1867f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1868f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_CLIPID_FILL 0x000019d4 1869f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1870f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK19D8(i0) (0x000019d8 + 0x4*(i0)) 1871f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK19D8__ESIZE 0x00000004 1872f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK19D8__LEN 0x00000002 1873f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1874f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_COMP_ENABLE(i0) (0x000019e0 + 0x4*(i0)) 1875f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_COMP_ENABLE__ESIZE 0x00000004 1876f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_RT_COMP_ENABLE__LEN 0x00000008 1877f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1878f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COLOR_MASK(i0) (0x00001a00 + 0x4*(i0)) 1879f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COLOR_MASK__ESIZE 0x00000004 1880f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COLOR_MASK__LEN 0x00000008 1881f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COLOR_MASK_R 0x0000000f 1882f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COLOR_MASK_G 0x000000f0 1883f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COLOR_MASK_B 0x00000f00 1884f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_COLOR_MASK_A 0x0000f000 1885f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1886f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A20 0x00001a20 1887f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1888f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_DELAY 0x00001a24 1889f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1890f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A28 0x00001a28 1891f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A28_0__MASK 0x000000ff 1892f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A28_0__SHIFT 0 1893f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A28_1 0x00000100 1894f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1895f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A2C 0x00001a2c 1896f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1897f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A30 0x00001a30 1898f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1899f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A34 0x00001a34 1900f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1901f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A38 0x00001a38 1902f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1903f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A3C 0x00001a3c 1904f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1905f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40(i0) (0x00001a40 + 0x4*(i0)) 1906f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40__ESIZE 0x00000004 1907f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40__LEN 0x00000010 1908f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_0__MASK 0x00000007 1909f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_0__SHIFT 0 1910f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_1__MASK 0x00000070 1911f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_1__SHIFT 4 1912f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_2__MASK 0x00000700 1913f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_2__SHIFT 8 1914f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_3__MASK 0x00007000 1915f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_3__SHIFT 12 1916f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_4__MASK 0x00070000 1917f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_4__SHIFT 16 1918f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_5__MASK 0x00700000 1919f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_5__SHIFT 20 1920f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_6__MASK 0x07000000 1921f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_6__SHIFT 24 1922f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_7__MASK 0x70000000 1923f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_UNK1A40_7__SHIFT 28 1924f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1925f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_ADDRESS_HIGH(i0) (0x00001a80 + 0x10*(i0)) 1926f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_ADDRESS_HIGH__ESIZE 0x00000010 1927f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_ADDRESS_HIGH__LEN 0x00000004 1928f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1929f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_ADDRESS_LOW(i0) (0x00001a84 + 0x10*(i0)) 1930f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_ADDRESS_LOW__ESIZE 0x00000010 1931f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_ADDRESS_LOW__LEN 0x00000004 1932f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1933f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_NUM_ATTRIBS(i0) (0x00001a88 + 0x10*(i0)) 1934f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_NUM_ATTRIBS__ESIZE 0x00000010 1935f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_NUM_ATTRIBS__LEN 0x00000004 1936f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_STRMOUT_NUM_ATTRIBS__MAX 0x00000040 1937f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1938f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_STRMOUT_OFFSET_LIMIT(i0) (0x00001a8c + 0x10*(i0)) 1939f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_STRMOUT_OFFSET_LIMIT__ESIZE 0x00000010 1940f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_STRMOUT_OFFSET_LIMIT__LEN 0x00000004 1941f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1942f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB(i0) (0x00001ac0 + 0x4*(i0)) 1943f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB__ESIZE 0x00000004 1944f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB__LEN 0x00000010 1945f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_BUFFER__MASK 0x0000000f 1946f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_BUFFER__SHIFT 0 1947f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_CONST 0x00000010 1948f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_OFFSET__MASK 0x0007ffe0 1949f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_OFFSET__SHIFT 5 1950f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT__MASK 0x01f80000 1951f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT__SHIFT 19 1952f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_32_32_32_32 0x00080000 1953f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_32_32_32 0x00100000 1954f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_16_16_16_16 0x00180000 1955f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_32_32 0x00200000 1956f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_16_16_16 0x00280000 1957f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_8_8_8_8 0x00500000 1958f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_16_16 0x00780000 1959f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_32 0x00900000 1960f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_8_8_8 0x00980000 1961f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_8_8 0x00c00000 1962f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_16 0x00d80000 1963f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_8 0x00e80000 1964f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_10_10_10_2 0x01800000 1965f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_TYPE__MASK 0x7e000000 1966f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_TYPE__SHIFT 25 1967f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_TYPE_FLOAT 0x7e000000 1968f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_TYPE_UNORM 0x24000000 1969f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_TYPE_SNORM 0x12000000 1970f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_TYPE_USCALED 0x5a000000 1971f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_TYPE_SSCALED 0x6c000000 1972f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_TYPE_UINT 0x48000000 1973f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_TYPE_SINT 0x36000000 1974f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_VERTEX_ARRAY_ATTRIB_BGRA 0x80000000 1975f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1976f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_ADDRESS_HIGH 0x00001b00 1977f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1978f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_ADDRESS_LOW 0x00001b04 1979f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1980f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_SEQUENCE 0x00001b08 1981f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 1982f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET 0x00001b0c 1983f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_MODE__MASK 0x00000003 1984f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_MODE__SHIFT 0 1985f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_MODE_WRITE_UNK0 0x00000000 1986f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_MODE_SYNC 0x00000001 1987f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_MODE_WRITE_UNK2 0x00000002 1988f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNK4 0x00000010 1989f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_QUERY_GET_INDEX__MASK 0x000000e0 1990f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_QUERY_GET_INDEX__SHIFT 5 1991f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNK8 0x00000100 1992f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNIT__MASK 0x0000f000 1993f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNIT__SHIFT 12 1994f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNIT_UNK00 0x00000000 1995f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNIT_VFETCH 0x00001000 1996f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNIT_VP 0x00002000 1997f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNIT_RAST 0x00004000 1998f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNIT_STRMOUT 0x00005000 1999f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNIT_GP 0x00006000 2000f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNIT_ZCULL 0x00007000 2001f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNIT_TPROP 0x0000a000 2002f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNIT_UNK0C 0x0000c000 2003f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_UNIT_CROP 0x0000f000 2004f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_SYNC_COND__MASK 0x00010000 2005f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_SYNC_COND__SHIFT 16 2006f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_SYNC_COND_NEQUAL 0x00000000 2007f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_SYNC_COND_GREATER 0x00010000 2008f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_INTR 0x00100000 2009f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_TYPE__MASK 0x00800000 2010f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_TYPE__SHIFT 23 2011f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_TYPE_QUERY 0x00000000 2012f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_TYPE_COUNTER 0x00800000 2013f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_QUERY_SELECT__MASK 0x0f000000 2014f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_QUERY_SELECT__SHIFT 24 2015f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_QUERY_SELECT_ZERO 0x00000000 2016f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_QUERY_SELECT_SAMPLECNT 0x01000000 2017f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_QUERY_SELECT_STRMOUT_NO_OVERFLOW 0x02000000 2018f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_QUERY_GET_QUERY_SELECT_STRMOUT_DROPPED_PRIMITIVES 0x03000000 2019f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_QUERY_GET_QUERY_SELECT_STRMOUT_VERTICES 0x04000000 2020f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_QUERY_SELECT_ZCULL_STAT_UNK0 0x05000000 2021f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_QUERY_SELECT_ZCULL_STAT_UNK1 0x06000000 2022f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_QUERY_SELECT_ZCULL_STAT_UNK2 0x07000000 2023f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_QUERY_SELECT_ZCULL_STAT_UNK3 0x08000000 2024f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_QUERY_GET_QUERY_SELECT_RT_UNK14 0x0c000000 2025f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_QUERY_GET_QUERY_SELECT_STRMOUT_OFFSET 0x0d000000 2026f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_COUNTER_SELECT__MASK 0x0f000000 2027f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_COUNTER_SELECT__SHIFT 24 2028f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_COUNTER_SELECT_VFETCH_VERTICES 0x00000000 2029f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_COUNTER_SELECT_VFETCH_PRIMITIVES 0x01000000 2030f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_COUNTER_SELECT_VP_LAUNCHES 0x02000000 2031f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_COUNTER_SELECT_GP_LAUNCHES 0x03000000 2032f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_COUNTER_SELECT_GP_PRIMITIVES_OUT 0x04000000 2033f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_COUNTER_SELECT_TRANSFORM_FEEDBACK 0x05000000 2034f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_COUNTER_SELECT_GENERATED_PRIMITIVES 0x06000000 2035f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_COUNTER_SELECT_RAST_PRIMITIVES_PRECLIP 0x07000000 2036f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_COUNTER_SELECT_RAST_PRIMITIVES_POSTCLIP 0x08000000 2037f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_COUNTER_SELECT_FP_PIXELS 0x09000000 2038f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV84_3D_QUERY_GET_COUNTER_SELECT_UNK0A 0x0a000000 2039f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA0_3D_QUERY_GET_COUNTER_SELECT_UNK0C 0x0c000000 2040f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NV50_3D_QUERY_GET_SHORT 0x10000000 2041f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2042f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_RESULT_MAP_ALT(i0) (0x00001b3c + 0x4*(i0)) 2043f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_RESULT_MAP_ALT__ESIZE 0x00000004 2044f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_RESULT_MAP_ALT__LEN 0x00000020 2045f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_RESULT_MAP_ALT_0__MASK 0x000000ff 2046f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_RESULT_MAP_ALT_0__SHIFT 0 2047f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_RESULT_MAP_ALT_1__MASK 0x0000ff00 2048f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_RESULT_MAP_ALT_1__SHIFT 8 2049f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_RESULT_MAP_ALT_2__MASK 0x00ff0000 2050f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_RESULT_MAP_ALT_2__SHIFT 16 2051f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_RESULT_MAP_ALT_3__MASK 0xff000000 2052f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VP_RESULT_MAP_ALT_3__SHIFT 24 2053f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2054f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_FETCH_ALT(i0) (0x00001c00 + 0x10*(i0)) 2055f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_FETCH_ALT__ESIZE 0x00000010 2056f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_FETCH_ALT__LEN 0x00000020 2057f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_FETCH_ALT_STRIDE__MASK 0x00000fff 2058f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_FETCH_ALT_STRIDE__SHIFT 0 2059f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_FETCH_ALT_ENABLE 0x20000000 2060f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2061f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_START_HIGH_ALT(i0) (0x00001c04 + 0x10*(i0)) 2062f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_START_HIGH_ALT__ESIZE 0x00000010 2063f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_START_HIGH_ALT__LEN 0x00000020 2064f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2065f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_START_LOW_ALT(i0) (0x00001c08 + 0x10*(i0)) 2066f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_START_LOW_ALT__ESIZE 0x00000010 2067f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_START_LOW_ALT__LEN 0x00000020 2068f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2069f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_DIVISOR_ALT(i0) (0x00001c0c + 0x10*(i0)) 2070f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_DIVISOR_ALT__ESIZE 0x00000010 2071f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_DIVISOR_ALT__LEN 0x00000020 2072f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2073f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND(i0) (0x00001e00 + 0x20*(i0)) 2074f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND__ESIZE 0x00000020 2075f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND__LEN 0x00000008 2076f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2077f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_SEPARATE_ALPHA(i0) (0x00001e00 + 0x20*(i0)) 2078f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2079f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_EQUATION_RGB(i0) (0x00001e04 + 0x20*(i0)) 2080f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_EQUATION_RGB_FUNC_ADD 0x00008006 2081f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_EQUATION_RGB_MIN 0x00008007 2082f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_EQUATION_RGB_MAX 0x00008008 2083f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_EQUATION_RGB_FUNC_SUBTRACT 0x0000800a 2084f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_EQUATION_RGB_FUNC_REVERSE_SUBTRACT 0x0000800b 2085f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2086f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_FUNC_SRC_RGB(i0) (0x00001e08 + 0x20*(i0)) 2087f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2088f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_FUNC_DST_RGB(i0) (0x00001e0c + 0x20*(i0)) 2089f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2090f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_EQUATION_ALPHA(i0) (0x00001e10 + 0x20*(i0)) 2091f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_EQUATION_ALPHA_FUNC_ADD 0x00008006 2092f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_EQUATION_ALPHA_MIN 0x00008007 2093f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_EQUATION_ALPHA_MAX 0x00008008 2094f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_EQUATION_ALPHA_FUNC_SUBTRACT 0x0000800a 2095f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_EQUATION_ALPHA_FUNC_REVERSE_SUBTRACT 0x0000800b 2096f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2097f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_FUNC_SRC_ALPHA(i0) (0x00001e14 + 0x20*(i0)) 2098f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2099f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_IBLEND_FUNC_DST_ALPHA(i0) (0x00001e18 + 0x20*(i0)) 2100f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2101f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_LIMIT_HIGH_ALT(i0) (0x00001f00 + 0x8*(i0)) 2102f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_LIMIT_HIGH_ALT__ESIZE 0x00000008 2103f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_LIMIT_HIGH_ALT__LEN 0x00000020 2104f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2105f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_LIMIT_LOW_ALT(i0) (0x00001f04 + 0x8*(i0)) 2106f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_LIMIT_LOW_ALT__ESIZE 0x00000008 2107f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define NVA3_3D_VERTEX_ARRAY_LIMIT_LOW_ALT__LEN 0x00000020 2108f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2109f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 2110f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#endif /* RNNDB_NV50_3D_XML */ 2111