/* * $Id$ * * Copyright (C) 2003-2015 JNode.org * * This library is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published * by the Free Software Foundation; either version 2.1 of the License, or * (at your option) any later version. * * This library is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public * License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this library; If not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ package org.jnode.driver.video.nvidia; /** * @author Ewout Prangsma (epr@users.sourceforge.net) */ public interface NVidiaConstants { // NVidia architectures public static final int NV04A = 1; public static final int NV10A = 2; public static final int NV20A = 3; public static final int NV30A = 4; public static final int NV28M = 5; /* NV registers definitions and macros for access to */ // new: /* PCI_config_space */ public static final int NVCFG_DEVID = 0x00; public static final int NVCFG_DEVCTRL = 0x04; public static final int NVCFG_CLASS = 0x08; public static final int NVCFG_HEADER = 0x0c; public static final int NVCFG_BASE1REGS = 0x10; public static final int NVCFG_BASE2FB = 0x14; public static final int NVCFG_BASE3 = 0x18; public static final int NVCFG_BASE4 = 0x1c; // unknown if used public static final int NVCFG_BASE5 = 0x20; // unknown if used public static final int NVCFG_BASE6 = 0x24; // unknown if used public static final int NVCFG_BASE7 = 0x28; // unknown if used public static final int NVCFG_SUBSYSID1 = 0x2c; public static final int NVCFG_ROMBASE = 0x30; public static final int NVCFG_CFG_0 = 0x34; public static final int NVCFG_CFG_1 = 0x38; // unknown if used public static final int NVCFG_INTERRUPT = 0x3c; public static final int NVCFG_SUBSYSID2 = 0x40; public static final int NVCFG_AGPREF = 0x44; public static final int NVCFG_AGPSTAT = 0x48; public static final int NVCFG_AGPCMD = 0x4c; public static final int NVCFG_ROMSHADOW = 0x50; public static final int NVCFG_VGA = 0x54; public static final int NVCFG_SCHRATCH = 0x58; public static final int NVCFG_CFG_10 = 0x5c; public static final int NVCFG_CFG_11 = 0x60; public static final int NVCFG_CFG_12 = 0x64; public static final int NVCFG_CFG_13 = 0x68; // unknown if used public static final int NVCFG_CFG_14 = 0x6c; // unknown if used public static final int NVCFG_CFG_15 = 0x70; // unknown if used public static final int NVCFG_CFG_16 = 0x74; // unknown if used public static final int NVCFG_CFG_17 = 0x78; // unknown if used public static final int NVCFG_GF2IGPU = 0x7c; public static final int NVCFG_CFG_19 = 0x80; // unknown if used public static final int NVCFG_GF4MXIGPU = 0x84; public static final int NVCFG_CFG_21 = 0x88; // unknown if used public static final int NVCFG_CFG_22 = 0x8c; // unknown if used public static final int NVCFG_CFG_23 = 0x90; // unknown if used public static final int NVCFG_CFG_24 = 0x94; // unknown if used public static final int NVCFG_CFG_25 = 0x98; // unknown if used public static final int NVCFG_CFG_26 = 0x9c; // unknown if used public static final int NVCFG_CFG_27 = 0xa0; // unknown if used public static final int NVCFG_CFG_28 = 0xa4; // unknown if used public static final int NVCFG_CFG_29 = 0xa8; // unknown if used public static final int NVCFG_CFG_30 = 0xac; // unknown if used public static final int NVCFG_CFG_31 = 0xb0; // unknown if used public static final int NVCFG_CFG_32 = 0xb4; // unknown if used public static final int NVCFG_CFG_33 = 0xb8; // unknown if used public static final int NVCFG_CFG_34 = 0xbc; // unknown if used public static final int NVCFG_CFG_35 = 0xc0; // unknown if used public static final int NVCFG_CFG_36 = 0xc4; // unknown if used public static final int NVCFG_CFG_37 = 0xc8; // unknown if used public static final int NVCFG_CFG_38 = 0xcc; // unknown if used public static final int NVCFG_CFG_39 = 0xd0; // unknown if used public static final int NVCFG_CFG_40 = 0xd4; // unknown if used public static final int NVCFG_CFG_41 = 0xd8; // unknown if used public static final int NVCFG_CFG_42 = 0xdc; // unknown if used public static final int NVCFG_CFG_43 = 0xe0; // unknown if used public static final int NVCFG_CFG_44 = 0xe4; // unknown if used public static final int NVCFG_CFG_45 = 0xe8; // unknown if used public static final int NVCFG_CFG_46 = 0xec; // unknown if used public static final int NVCFG_CFG_47 = 0xf0; // unknown if used public static final int NVCFG_CFG_48 = 0xf4; // unknown if used public static final int NVCFG_CFG_49 = 0xf8; // unknown if used public static final int NVCFG_CFG_50 = 0xfc; // unknown if used /* Nvidia PCI direct registers */ public static final int NV32_PWRUPCTRL = 0x00000200; public static final int NV8_MISCW = 0x000c03c2; public static final int NV8_MISCR = 0x000c03cc; public static final int NV8_SEQIND = 0x000c03c4; public static final int NV16_SEQIND = 0x000c03c4; public static final int NV8_SEQDAT = 0x000c03c5; public static final int NV8_GRPHIND = 0x000c03ce; public static final int NV16_GRPHIND = 0x000c03ce; public static final int NV8_GRPHDAT = 0x000c03cf; /* bootstrap info registers */ public static final int NV32_NV4STRAPINFO = 0x00100000; public static final int NV32_PFB_CONFIG_0 = 0x00100200; public static final int NV32_NV10STRAPINFO = 0x0010020c; public static final int NV32_NVSTRAPINFO2 = 0x00101000; /* primary head */ public static final int NV8_ATTRINDW = 0x006013c0; public static final int NV8_ATTRDATW = 0x006013c0; public static final int NV8_ATTRDATR = 0x006013c1; public static final int NV8_CRTCIND = 0x006013d4; public static final int NV16_CRTCIND = 0x006013d4; public static final int NV8_CRTCDAT = 0x006013d5; public static final int NV8_INSTAT1 = 0x006013da; public static final int NV32_NV10FBSTADD32 = 0x00600800; public static final int NV32_CONFIG = 0x00600804; // not yet used // (coldstart)... public static final int NV32_RASTER = 0x00600808; public static final int NV32_NV10CURADD32 = 0x0060080c; public static final int NV32_CURCONF = 0x00600810; public static final int NV32_FUNCSEL = 0x00600860; /* secondary head */ public static final int NV8_ATTR2INDW = 0x006033c0; public static final int NV8_ATTR2DATW = 0x006033c0; public static final int NV8_ATTR2DATR = 0x006033c1; public static final int NV8_CRTC2IND = 0x006033d4; public static final int NV16_CRTC2IND = 0x006033d4; public static final int NV8_CRTC2DAT = 0x006033d5; public static final int NV8_2INSTAT1 = 0x006033da; // verify!!! public static final int NV32_NV10FB2STADD32 = 0x00602800; // verify!!! public static final int NV32_RASTER2 = 0x00602808; // verify!!! public static final int NV32_NV10CUR2ADD32 = 0x0060280c; // verify!!! public static final int NV32_2CURCONF = 0x00602810; // verify!!! public static final int NV32_2FUNCSEL = 0x00602860; /* Nvidia DAC direct registers (standard VGA palette RAM registers) */ /* primary head */ public static final int NV8_PALMASK = 0x006813c6; public static final int NV8_PALINDR = 0x006813c7; public static final int NV8_PALINDW = 0x006813c8; public static final int NV8_PALDATA = 0x006813c9; /* secondary head */ public static final int NV8_PAL2MASK = 0x006833c6; // verify!!! public static final int NV8_PAL2INDR = 0x006833c7; // verify!!! public static final int NV8_PAL2INDW = 0x006833c8; // verify!!! public static final int NV8_PAL2DATA = 0x006833c9; // verify!!! /* Nvidia PCI direct DAC registers (32bit) */ /* primary head */ public static final int NVDAC_CURPOS = 0x00680300; public static final int NVDAC_PIXPLLC = 0x00680508; public static final int NVDAC_PLLSEL = 0x0068050c; public static final int NVDAC_GENCTRL = 0x00680600; /* secondary head */ public static final int NVDAC2_CURPOS = 0x00680b00; public static final int NVDAC2_PIXPLLC = 0x00680d20; // verify!!! public static final int NVDAC2_PLLSEL = 0x00680d0c; // verify!!! public static final int NVDAC2_GENCTRL = 0x00680e00; // verify!!! /* Nvidia CRTC indexed registers */ /* VGA standard registers: */ public static final int NVCRTCX_HTOTAL = 0x00; public static final int NVCRTCX_HDISPE = 0x01; public static final int NVCRTCX_HBLANKS = 0x02; public static final int NVCRTCX_HBLANKE = 0x03; public static final int NVCRTCX_HSYNCS = 0x04; public static final int NVCRTCX_HSYNCE = 0x05; public static final int NVCRTCX_VTOTAL = 0x06; public static final int NVCRTCX_OVERFLOW = 0x07; public static final int NVCRTCX_PRROWSCN = 0x08; public static final int NVCRTCX_MAXSCLIN = 0x09; public static final int NVCRTCX_VGACURCTRL = 0x0a; public static final int NVCRTCX_FBSTADDH = 0x0c; // confirmed public static final int NVCRTCX_FBSTADDL = 0x0d; // confirmed public static final int NVCRTCX_VSYNCS = 0x10; public static final int NVCRTCX_VSYNCE = 0x11; public static final int NVCRTCX_VDISPE = 0x12; public static final int NVCRTCX_PITCHL = 0x13; // confirmed public static final int NVCRTCX_VBLANKS = 0x15; public static final int NVCRTCX_VBLANKE = 0x16; public static final int NVCRTCX_MODECTL = 0x17; public static final int NVCRTCX_LINECOMP = 0x18; /* Nvidia specific registers: */ public static final int NVCRTCX_REPAINT0 = 0x19; public static final int NVCRTCX_REPAINT1 = 0x1a; public static final int NVCRTCX_ARBITRATION0 = 0x1b; public static final int NVCRTCX_LOCK = 0x1f; public static final int NVCRTCX_ARBITRATION1 = 0x20; public static final int NVCRTCX_LSR = 0x25; // Assorted extra bits public static final int NVCRTCX_PIXEL = 0x28; public static final int NVCRTCX_HEB = 0x2d; // Horizontal extended bits public static final int NVCRTCX_CURCTL2 = 0x2f; public static final int NVCRTCX_CURCTL1 = 0x30; public static final int NVCRTCX_CURCTL0 = 0x31; public static final int NVCRTCX_EBR = 0x41; /* Nvidia ATTRIBUTE indexed registers */ /* VGA standard registers: */ public static final int NVATBX_MODECTL = 0x10; public static final int NVATBX_OSCANCOLOR = 0x11; public static final int NVATBX_COLPLANE_EN = 0x12; public static final int NVATBX_HORPIXPAN = 0x13; // confirmed public static final int NVATBX_COLSEL = 0x14; /* Nvidia SEQUENCER indexed registers */ /* VGA standard registers: */ public static final int NVSEQX_RESET = 0x00; public static final int NVSEQX_CLKMODE = 0x01; public static final int NVSEQX_MEMMODE = 0x04; /* Nvidia GRAPHICS indexed registers */ /* VGA standard registers: */ public static final int NVGRPHX_ENSETRESET = 0x01; public static final int NVGRPHX_DATAROTATE = 0x03; public static final int NVGRPHX_READMAPSEL = 0x04; public static final int NVGRPHX_MODE = 0x05; public static final int NVGRPHX_MISC = 0x06; public static final int NVGRPHX_BITMASK = 0x08; /* Nvidia BES (Back End Scaler) registers (>= NV10) */ public static final int NVBES_NV10_BUFSEL = 0x00008700; public static final int NVBES_NV10_GENCTRL = 0x00008704; public static final int NVBES_NV10_COLKEY = 0x00008b00; /* buffer 0 */ public static final int NVBES_NV10_0BUFADR = 0x00008900; public static final int NVBES_NV10_0MEMMASK = 0x00008908; public static final int NVBES_NV10_0BRICON = 0x00008910; public static final int NVBES_NV10_0SAT = 0x00008918; public static final int NVBES_NV10_0WHAT = 0x00008920; public static final int NVBES_NV10_0SRCSIZE = 0x00008928; public static final int NVBES_NV10_0SRCREF = 0x00008930; public static final int NVBES_NV10_0ISCALH = 0x00008938; public static final int NVBES_NV10_0ISCALV = 0x00008940; public static final int NVBES_NV10_0DSTREF = 0x00008948; public static final int NVBES_NV10_0DSTSIZE = 0x00008950; public static final int NVBES_NV10_0SRCPTCH = 0x00008958; /* buffer 1 */ public static final int NVBES_NV10_1BUFADR = 0x00008904; public static final int NVBES_NV10_1MEMMASK = 0x0000890c; public static final int NVBES_NV10_1BRICON = 0x00008914; public static final int NVBES_NV10_1SAT = 0x0000891c; public static final int NVBES_NV10_1WHAT = 0x00008924; public static final int NVBES_NV10_1SRCSIZE = 0x0000892c; public static final int NVBES_NV10_1SRCREF = 0x00008934; public static final int NVBES_NV10_1ISCALH = 0x0000893c; public static final int NVBES_NV10_1ISCALV = 0x00008944; public static final int NVBES_NV10_1DSTREF = 0x0000894c; public static final int NVBES_NV10_1DSTSIZE = 0x00008954; public static final int NVBES_NV10_1SRCPTCH = 0x0000895c; /* Nvidia MPEG2 hardware decoder (GeForce4MX only) */ public static final int NVBES_DEC_GENCTRL = 0x00001588; /* * chip->PMC[= 0x00008140/4] = 0; */ // end new. /* NV 2nd CRTC registers (>= G400) */ public static final int NVCR2_CTL = 0x3C10; public static final int NVCR2_HPARAM = 0x3C14; public static final int NVCR2_HSYNC = 0x3C18; public static final int NVCR2_VPARAM = 0x3C1C; public static final int NVCR2_VSYNC = 0x3C20; public static final int NVCR2_PRELOAD = 0x3C24; public static final int NVCR2_STARTADD0 = 0x3C28; public static final int NVCR2_STARTADD1 = 0x3C2C; public static final int NVCR2_OFFSET = 0x3C40; public static final int NVCR2_MISC = 0x3C44; public static final int NVCR2_VCOUNT = 0x3C48; public static final int NVCR2_DATACTL = 0x3C4C; /* NV ACCeleration registers */ public static final int NVACC_DWGCTL = 0x1C00; public static final int NVACC_MACCESS = 0x1C04; public static final int NVACC_MCTLWTST = 0x1C08; public static final int NVACC_ZORG = 0x1C0C; public static final int NVACC_PLNWT = 0x1C1C; public static final int NVACC_BCOL = 0x1C20; public static final int NVACC_FCOL = 0x1C24; public static final int NVACC_XYSTRT = 0x1C40; public static final int NVACC_XYEND = 0x1C44; public static final int NVACC_SGN = 0x1C58; public static final int NVACC_LEN = 0x1C5C; public static final int NVACC_AR0 = 0x1C60; public static final int NVACC_AR3 = 0x1C6C; public static final int NVACC_AR5 = 0x1C74; public static final int NVACC_CXBNDRY = 0x1C80; public static final int NVACC_FXBNDRY = 0x1C84; public static final int NVACC_YDSTLEN = 0x1C88; public static final int NVACC_PITCH = 0x1C8C; public static final int NVACC_YDST = 0x1C90; public static final int NVACC_YDSTORG = 0x1C94; public static final int NVACC_YTOP = 0x1C98; public static final int NVACC_YBOT = 0x1C9C; public static final int NVACC_CXLEFT = 0x1CA0; public static final int NVACC_CXRIGHT = 0x1CA4; public static final int NVACC_FXLEFT = 0x1CA8; public static final int NVACC_FXRIGHT = 0x1CAC; // public static final int NVACC_STATUS = 0x1E14; public static final int NVACC_ICLEAR = 0x1E18; /* * required for interrupt * stuff */ public static final int NVACC_IEN = 0x1E1C; /* required for interrupt stuff */ public static final int NVACC_RST = 0x1E40; public static final int NVACC_MEMRDBK = 0x1E44; public static final int NVACC_OPMODE = 0x1E54; public static final int NVACC_PRIMADDRESS = 0x1E58; public static final int NVACC_PRIMEND = 0x1E5C; public static final int NVACC_TEXORG = 0x2C24; // >= G100 public static final int NVACC_DWGSYNC = 0x2C4C; // >= G200 public static final int NVACC_TEXORG1 = 0x2CA4; // >= G200 public static final int NVACC_TEXORG2 = 0x2CA8; // >= G200 public static final int NVACC_TEXORG3 = 0x2CAC; // >= G200 public static final int NVACC_TEXORG4 = 0x2CB0; // >= G200 public static final int NVACC_SRCORG = 0x2CB4; // >= G200 public static final int NVACC_DSTORG = 0x2CB8; // >= G200 /* NV ACCeleration registers */ /* engine initialisation registers */ public static final int NVACC_FORMATS = 0x00400618; public static final int NVACC_OFFSET0 = 0x00400640; public static final int NVACC_OFFSET1 = 0x00400644; public static final int NVACC_OFFSET2 = 0x00400648; public static final int NVACC_OFFSET3 = 0x0040064c; public static final int NVACC_OFFSET4 = 0x00400650; public static final int NVACC_OFFSET5 = 0x00400654; public static final int NVACC_BBASE0 = 0x00400658; public static final int NVACC_BBASE1 = 0x0040065c; public static final int NVACC_BBASE2 = 0x00400660; public static final int NVACC_BBASE3 = 0x00400664; public static final int NVACC_NV10_BBASE4 = 0x00400668; public static final int NVACC_NV10_BBASE5 = 0x0040066c; public static final int NVACC_PITCH0 = 0x00400670; public static final int NVACC_PITCH1 = 0x00400674; public static final int NVACC_PITCH2 = 0x00400678; public static final int NVACC_PITCH3 = 0x0040067c; public static final int NVACC_PITCH4 = 0x00400680; public static final int NVACC_BLIMIT0 = 0x00400684; public static final int NVACC_BLIMIT1 = 0x00400688; public static final int NVACC_BLIMIT2 = 0x0040068c; public static final int NVACC_BLIMIT3 = 0x00400690; public static final int NVACC_NV10_BLIMIT4 = 0x00400694; public static final int NVACC_NV10_BLIMIT5 = 0x00400698; public static final int NVACC_BPIXEL = 0x00400724; public static final int NVACC_NV20_OFFSET0 = 0x00400820; public static final int NVACC_NV20_OFFSET1 = 0x00400824; public static final int NVACC_NV20_OFFSET2 = 0x00400828; public static final int NVACC_NV20_OFFSET3 = 0x0040082c; public static final int NVACC_STRD_FMT = 0x00400830; public static final int NVACC_NV20_PITCH0 = 0x00400850; public static final int NVACC_NV20_PITCH1 = 0x00400854; public static final int NVACC_NV20_PITCH2 = 0x00400858; public static final int NVACC_NV20_PITCH3 = 0x0040085c; public static final int NVACC_NV20_BLIMIT6 = 0x00400864; public static final int NVACC_NV20_BLIMIT7 = 0x00400868; public static final int NVACC_NV20_BLIMIT8 = 0x0040086c; public static final int NVACC_NV20_BLIMIT9 = 0x00400870; public static final int NVACC_NV30_WHAT = 0x00400890; /* specials */ public static final int NVACC_DEBUG0 = 0x00400080; public static final int NVACC_DEBUG1 = 0x00400084; public static final int NVACC_DEBUG2 = 0x00400088; public static final int NVACC_DEBUG3 = 0x0040008c; public static final int NVACC_NV10_DEBUG4 = 0x00400090; public static final int NVACC_ACC_INTS = 0x00400100; public static final int NVACC_ACC_INTE = 0x00400140; public static final int NVACC_NV10_CTX_CTRL = 0x00400144; public static final int NVACC_STATUS = 0x00400700; public static final int NVACC_NV04_SURF_TYP = 0x0040070c; public static final int NVACC_NV10_SURF_TYP = 0x00400710; public static final int NVACC_NV04_ACC_STAT = 0x00400710; public static final int NVACC_NV10_ACC_STAT = 0x00400714; public static final int NVACC_FIFO_EN = 0x00400720; public static final int NVACC_PAT_SHP = 0x00400810; public static final int NVACC_NV10_XFMOD0 = 0x00400f40; public static final int NVACC_NV10_XFMOD1 = 0x00400f44; public static final int NVACC_NV10_PIPEADR = 0x00400f50; public static final int NVACC_NV10_PIPEDAT = 0x00400f54; /* PGRAPH cache registers */ public static final int NVACC_CACHE1_1 = 0x00400160; public static final int NVACC_CACHE1_2 = 0x00400180; public static final int NVACC_CACHE1_3 = 0x004001a0; public static final int NVACC_CACHE1_4 = 0x004001c0; public static final int NVACC_CACHE1_5 = 0x004001e0; public static final int NVACC_CACHE2_1 = 0x00400164; public static final int NVACC_CACHE2_2 = 0x00400184; public static final int NVACC_CACHE2_3 = 0x004001a4; public static final int NVACC_CACHE2_4 = 0x004001c4; public static final int NVACC_CACHE2_5 = 0x004001e4; public static final int NVACC_CACHE3_1 = 0x00400168; public static final int NVACC_CACHE3_2 = 0x00400188; public static final int NVACC_CACHE3_3 = 0x004001a8; public static final int NVACC_CACHE3_4 = 0x004001c8; public static final int NVACC_CACHE3_5 = 0x004001e8; public static final int NVACC_CACHE4_1 = 0x0040016c; public static final int NVACC_CACHE4_2 = 0x0040018c; public static final int NVACC_CACHE4_3 = 0x004001ac; public static final int NVACC_CACHE4_4 = 0x004001cc; public static final int NVACC_CACHE4_5 = 0x004001ec; public static final int NVACC_NV10_CACHE5_1 = 0x00400170; public static final int NVACC_NV04_CTX_CTRL = 0x00400170; public static final int NVACC_CACHE5_2 = 0x00400190; public static final int NVACC_CACHE5_3 = 0x004001b0; public static final int NVACC_CACHE5_4 = 0x004001d0; public static final int NVACC_CACHE5_5 = 0x004001f0; public static final int NVACC_NV10_CACHE6_1 = 0x00400174; public static final int NVACC_CACHE6_2 = 0x00400194; public static final int NVACC_CACHE6_3 = 0x004001b4; public static final int NVACC_CACHE6_4 = 0x004001d4; public static final int NVACC_CACHE6_5 = 0x004001f4; public static final int NVACC_NV10_CACHE7_1 = 0x00400178; public static final int NVACC_CACHE7_2 = 0x00400198; public static final int NVACC_CACHE7_3 = 0x004001b8; public static final int NVACC_CACHE7_4 = 0x004001d8; public static final int NVACC_CACHE7_5 = 0x004001f8; public static final int NVACC_NV10_CACHE8_1 = 0x0040017c; public static final int NVACC_CACHE8_2 = 0x0040019c; public static final int NVACC_CACHE8_3 = 0x004001bc; public static final int NVACC_CACHE8_4 = 0x004001dc; public static final int NVACC_CACHE8_5 = 0x004001fc; public static final int NVACC_NV10_CTX_SW1 = 0x0040014c; public static final int NVACC_NV10_CTX_SW2 = 0x00400150; public static final int NVACC_NV10_CTX_SW3 = 0x00400154; public static final int NVACC_NV10_CTX_SW4 = 0x00400158; public static final int NVACC_NV10_CTX_SW5 = 0x0040015c; /* used RAMHT registers (hash-table(?)) */ public static final int NVACC_HT_HANDL_00 = 0x00710000; public static final int NVACC_HT_VALUE_00 = 0x00710004; public static final int NVACC_HT_HANDL_01 = 0x00710008; public static final int NVACC_HT_VALUE_01 = 0x0071000c; public static final int NVACC_HT_HANDL_02 = 0x00710010; public static final int NVACC_HT_VALUE_02 = 0x00710014; public static final int NVACC_HT_HANDL_03 = 0x00710018; public static final int NVACC_HT_VALUE_03 = 0x0071001c; public static final int NVACC_HT_HANDL_04 = 0x00710020; public static final int NVACC_HT_VALUE_04 = 0x00710024; public static final int NVACC_HT_HANDL_05 = 0x00710028; public static final int NVACC_HT_VALUE_05 = 0x0071002c; public static final int NVACC_HT_HANDL_06 = 0x00710030; public static final int NVACC_HT_VALUE_06 = 0x00710034; public static final int NVACC_HT_HANDL_10 = 0x00710080; public static final int NVACC_HT_VALUE_10 = 0x00710084; public static final int NVACC_HT_HANDL_11 = 0x00710088; public static final int NVACC_HT_VALUE_11 = 0x0071008c; public static final int NVACC_HT_HANDL_12 = 0x00710090; public static final int NVACC_HT_VALUE_12 = 0x00710094; public static final int NVACC_HT_HANDL_13 = 0x00710098; public static final int NVACC_HT_VALUE_13 = 0x0071009c; public static final int NVACC_HT_HANDL_14 = 0x007100a0; public static final int NVACC_HT_VALUE_14 = 0x007100a4; public static final int NVACC_HT_HANDL_15 = 0x007100a8; public static final int NVACC_HT_VALUE_15 = 0x007100ac; public static final int NVACC_HT_HANDL_16 = 0x007100b0; public static final int NVACC_HT_VALUE_16 = 0x007100b4; public static final int NVACC_HT_HANDL_17 = 0x007100b8; public static final int NVACC_HT_VALUE_17 = 0x007100bc; /* MAVEN registers ( <= G400) */ public static final int NVMAV_PGM = 0x3E; public static final int NVMAV_PIXPLLM = 0x80; public static final int NVMAV_PIXPLLN = 0x81; public static final int NVMAV_PIXPLLP = 0x82; public static final int NVMAV_GAMMA1 = 0x83; public static final int NVMAV_GAMMA2 = 0x84; public static final int NVMAV_GAMMA3 = 0x85; public static final int NVMAV_GAMMA4 = 0x86; public static final int NVMAV_GAMMA5 = 0x87; public static final int NVMAV_GAMMA6 = 0x88; public static final int NVMAV_GAMMA7 = 0x89; public static final int NVMAV_GAMMA8 = 0x8A; public static final int NVMAV_GAMMA9 = 0x8B; public static final int NVMAV_MONSET = 0x8C; public static final int NVMAV_TEST = 0x8D; public static final int NVMAV_WREG_0X8E_L = 0x8E; public static final int NVMAV_WREG_0X8E_H = 0x8F; public static final int NVMAV_HSCALETV = 0x90; public static final int NVMAV_TSCALETVL = 0x91; public static final int NVMAV_TSCALETVH = 0x92; public static final int NVMAV_FFILTER = 0x93; public static final int NVMAV_MONEN = 0x94; public static final int NVMAV_RESYNC = 0x95; public static final int NVMAV_LASTLINEL = 0x96; public static final int NVMAV_LASTLINEH = 0x97; public static final int NVMAV_WREG_0X98_L = 0x98; public static final int NVMAV_WREG_0X98_H = 0x99; public static final int NVMAV_HSYNCLENL = 0x9A; public static final int NVMAV_HSYNCLENH = 0x9B; public static final int NVMAV_HSYNCSTRL = 0x9C; public static final int NVMAV_HSYNCSTRH = 0x9D; public static final int NVMAV_HDISPLAYL = 0x9E; public static final int NVMAV_HDISPLAYH = 0x9F; public static final int NVMAV_HTOTALL = 0xA0; public static final int NVMAV_HTOTALH = 0xA1; public static final int NVMAV_VSYNCLENL = 0xA2; public static final int NVMAV_VSYNCLENH = 0xA3; public static final int NVMAV_VSYNCSTRL = 0xA4; public static final int NVMAV_VSYNCSTRH = 0xA5; public static final int NVMAV_VDISPLAYL = 0xA6; public static final int NVMAV_VDISPLAYH = 0xA7; public static final int NVMAV_VTOTALL = 0xA8; public static final int NVMAV_VTOTALH = 0xA9; public static final int NVMAV_HVIDRSTL = 0xAA; public static final int NVMAV_HVIDRSTH = 0xAB; public static final int NVMAV_VVIDRSTL = 0xAC; public static final int NVMAV_VVIDRSTH = 0xAD; public static final int NVMAV_VSOMETHINGL = 0xAE; public static final int NVMAV_VSOMETHINGH = 0xAF; public static final int NVMAV_OUTMODE = 0xB0; public static final int NVMAV_LOCK = 0xB3; public static final int NVMAV_LUMA = 0xB9; public static final int NVMAV_VDISPLAYTV = 0xBE; public static final int NVMAV_STABLE = 0xBF; public static final int NVMAV_HDISPLAYTV = 0xC2; public static final int NVMAV_BREG_0XC6 = 0xC6; public static final int NV_PGRAPH_BOFFSET0 = 0x00400640; public static final int NV_PGRAPH_BOFFSET1 = 0x00400644; public static final int NV_PGRAPH_BOFFSET2 = 0x00400648; public static final int NV_PGRAPH_BOFFSET3 = 0x0040064c; public static final int NV_PGRAPH_BPITCH0 = 0x00400670; public static final int NV_PGRAPH_BPITCH1 = 0x00400674; public static final int NV_PGRAPH_BPITCH2 = 0x00400678; public static final int NV_PGRAPH_BPITCH3 = 0x0040067c; /* cache setup registers */ public static final int NVACC_PF_INTSTAT = 0x00002100; public static final int NVACC_PF_INTEN = 0x00002140; public static final int NVACC_PF_RAMHT = 0x00002210; public static final int NVACC_PF_RAMFC = 0x00002214; public static final int NVACC_PF_RAMRO = 0x00002218; public static final int NVACC_PF_CACHES = 0x00002500; public static final int NVACC_PF_SIZE = 0x0000250c; public static final int NVACC_PF_CACH0_PSH0 = 0x00003000; public static final int NVACC_PF_CACH0_PUL0 = 0x00003050; public static final int NVACC_PF_CACH0_PUL1 = 0x00003054; public static final int NVACC_PF_CACH1_PSH0 = 0x00003200; public static final int NVACC_PF_CACH1_PSH1 = 0x00003204; public static final int NVACC_PF_CACH1_DMAI = 0x0000322c; public static final int NVACC_PF_CACH1_PUL0 = 0x00003250; public static final int NVACC_PF_CACH1_PUL1 = 0x00003254; public static final int NVACC_PF_CACH1_HASH = 0x00003258; /* Ptimer registers */ public static final int NVACC_PT_INTSTAT = 0x00009100; public static final int NVACC_PT_INTEN = 0x00009140; public static final int NVACC_PT_NUMERATOR = 0x00009200; public static final int NVACC_PT_DENOMINATR = 0x00009210; /* used PRAMIN registers */ public static final int NVACC_PR_CTX0_R = 0x00711400; public static final int NVACC_PR_CTX1_R = 0x00711404; public static final int NVACC_PR_CTX2_R = 0x00711408; public static final int NVACC_PR_CTX3_R = 0x0071140c; public static final int NVACC_PR_CTX0_0 = 0x00711420; public static final int NVACC_PR_CTX1_0 = 0x00711424; public static final int NVACC_PR_CTX2_0 = 0x00711428; public static final int NVACC_PR_CTX3_0 = 0x0071142c; public static final int NVACC_PR_CTX0_1 = 0x00711430; public static final int NVACC_PR_CTX1_1 = 0x00711434; public static final int NVACC_PR_CTX2_1 = 0x00711438; public static final int NVACC_PR_CTX3_1 = 0x0071143c; public static final int NVACC_PR_CTX0_2 = 0x00711440; public static final int NVACC_PR_CTX1_2 = 0x00711444; public static final int NVACC_PR_CTX2_2 = 0x00711448; public static final int NVACC_PR_CTX3_2 = 0x0071144c; public static final int NVACC_PR_CTX0_3 = 0x00711450; public static final int NVACC_PR_CTX1_3 = 0x00711454; public static final int NVACC_PR_CTX2_3 = 0x00711458; public static final int NVACC_PR_CTX3_3 = 0x0071145c; public static final int NVACC_PR_CTX0_4 = 0x00711460; public static final int NVACC_PR_CTX1_4 = 0x00711464; public static final int NVACC_PR_CTX2_4 = 0x00711468; public static final int NVACC_PR_CTX3_4 = 0x0071146c; public static final int NVACC_PR_CTX0_5 = 0x00711470; public static final int NVACC_PR_CTX1_5 = 0x00711474; public static final int NVACC_PR_CTX2_5 = 0x00711478; public static final int NVACC_PR_CTX3_5 = 0x0071147c; public static final int NVACC_PR_CTX0_6 = 0x00711480; public static final int NVACC_PR_CTX1_6 = 0x00711484; public static final int NVACC_PR_CTX2_6 = 0x00711488; public static final int NVACC_PR_CTX3_6 = 0x0071148c; public static final int NVACC_PR_CTX0_7 = 0x00711490; public static final int NVACC_PR_CTX1_7 = 0x00711494; public static final int NVACC_PR_CTX2_7 = 0x00711498; public static final int NVACC_PR_CTX3_7 = 0x0071149c; public static final int NVACC_PR_CTX0_8 = 0x007114a0; public static final int NVACC_PR_CTX1_8 = 0x007114a4; public static final int NVACC_PR_CTX2_8 = 0x007114a8; public static final int NVACC_PR_CTX3_8 = 0x007114ac; public static final int NVACC_PR_CTX0_9 = 0x007114b0; public static final int NVACC_PR_CTX1_9 = 0x007114b4; public static final int NVACC_PR_CTX2_9 = 0x007114b8; public static final int NVACC_PR_CTX3_9 = 0x007114bc; public static final int NVACC_PR_CTX0_A = 0x007114c0; public static final int NVACC_PR_CTX1_A = 0x007114c4; /* not used */ public static final int NVACC_PR_CTX2_A = 0x007114c8; public static final int NVACC_PR_CTX3_A = 0x007114cc; public static final int NVACC_PR_CTX0_B = 0x007114d0; public static final int NVACC_PR_CTX1_B = 0x007114d4; public static final int NVACC_PR_CTX2_B = 0x007114d8; public static final int NVACC_PR_CTX3_B = 0x007114dc; public static final int NVACC_PR_CTX0_C = 0x007114e0; public static final int NVACC_PR_CTX1_C = 0x007114e4; public static final int NVACC_PR_CTX2_C = 0x007114e8; public static final int NVACC_PR_CTX3_C = 0x007114ec; public static final int NVACC_PR_CTX0_D = 0x007114f0; public static final int NVACC_PR_CTX1_D = 0x007114f4; public static final int NVACC_PR_CTX2_D = 0x007114f8; public static final int NVACC_PR_CTX3_D = 0x007114fc; public static final int NVACC_PR_CTX0_E = 0x00711500; public static final int NVACC_PR_CTX1_E = 0x00711504; public static final int NVACC_PR_CTX2_E = 0x00711508; public static final int NVACC_PR_CTX3_E = 0x0071150c; /* engine tile registers src */ public static final int NVACC_NV20_FBWHAT0 = 0x00100200; public static final int NVACC_NV20_FBWHAT1 = 0x00100204; public static final int NVACC_NV10_FBTIL0AD = 0x00100240; public static final int NVACC_NV10_FBTIL0ED = 0x00100244; public static final int NVACC_NV10_FBTIL0PT = 0x00100248; public static final int NVACC_NV10_FBTIL0ST = 0x0010024c; public static final int NVACC_NV10_FBTIL1AD = 0x00100250; public static final int NVACC_NV10_FBTIL1ED = 0x00100254; public static final int NVACC_NV10_FBTIL1PT = 0x00100258; public static final int NVACC_NV10_FBTIL1ST = 0x0010025c; public static final int NVACC_NV10_FBTIL2AD = 0x00100260; public static final int NVACC_NV10_FBTIL2ED = 0x00100264; public static final int NVACC_NV10_FBTIL2PT = 0x00100268; public static final int NVACC_NV10_FBTIL2ST = 0x0010026c; public static final int NVACC_NV10_FBTIL3AD = 0x00100270; public static final int NVACC_NV10_FBTIL3ED = 0x00100274; public static final int NVACC_NV10_FBTIL3PT = 0x00100278; public static final int NVACC_NV10_FBTIL3ST = 0x0010027c; public static final int NVACC_NV10_FBTIL4AD = 0x00100280; public static final int NVACC_NV10_FBTIL4ED = 0x00100284; public static final int NVACC_NV10_FBTIL4PT = 0x00100288; public static final int NVACC_NV10_FBTIL4ST = 0x0010028c; public static final int NVACC_NV10_FBTIL5AD = 0x00100290; public static final int NVACC_NV10_FBTIL5ED = 0x00100294; public static final int NVACC_NV10_FBTIL5PT = 0x00100298; public static final int NVACC_NV10_FBTIL5ST = 0x0010029c; public static final int NVACC_NV10_FBTIL6AD = 0x001002a0; public static final int NVACC_NV10_FBTIL6ED = 0x001002a4; public static final int NVACC_NV10_FBTIL6PT = 0x001002a8; public static final int NVACC_NV10_FBTIL6ST = 0x001002ac; public static final int NVACC_NV10_FBTIL7AD = 0x001002b0; public static final int NVACC_NV10_FBTIL7ED = 0x001002b4; public static final int NVACC_NV10_FBTIL7PT = 0x001002b8; public static final int NVACC_NV10_FBTIL7ST = 0x001002bc; /* engine tile registers dst */ public static final int NVACC_NV20_WHAT0 = 0x004009a4; public static final int NVACC_NV20_WHAT1 = 0x004009a8; public static final int NVACC_NV10_TIL0AD = 0x00400b00; public static final int NVACC_NV10_TIL0ED = 0x00400b04; public static final int NVACC_NV10_TIL0PT = 0x00400b08; public static final int NVACC_NV10_TIL0ST = 0x00400b0c; public static final int NVACC_NV10_TIL1AD = 0x00400b10; public static final int NVACC_NV10_TIL1ED = 0x00400b14; public static final int NVACC_NV10_TIL1PT = 0x00400b18; public static final int NVACC_NV10_TIL1ST = 0x00400b1c; public static final int NVACC_NV10_TIL2AD = 0x00400b20; public static final int NVACC_NV10_TIL2ED = 0x00400b24; public static final int NVACC_NV10_TIL2PT = 0x00400b28; public static final int NVACC_NV10_TIL2ST = 0x00400b2c; public static final int NVACC_NV10_TIL3AD = 0x00400b30; public static final int NVACC_NV10_TIL3ED = 0x00400b34; public static final int NVACC_NV10_TIL3PT = 0x00400b38; public static final int NVACC_NV10_TIL3ST = 0x00400b3c; public static final int NVACC_NV10_TIL4AD = 0x00400b40; public static final int NVACC_NV10_TIL4ED = 0x00400b44; public static final int NVACC_NV10_TIL4PT = 0x00400b48; public static final int NVACC_NV10_TIL4ST = 0x00400b4c; public static final int NVACC_NV10_TIL5AD = 0x00400b50; public static final int NVACC_NV10_TIL5ED = 0x00400b54; public static final int NVACC_NV10_TIL5PT = 0x00400b58; public static final int NVACC_NV10_TIL5ST = 0x00400b5c; public static final int NVACC_NV10_TIL6AD = 0x00400b60; public static final int NVACC_NV10_TIL6ED = 0x00400b64; public static final int NVACC_NV10_TIL6PT = 0x00400b68; public static final int NVACC_NV10_TIL6ST = 0x00400b6c; public static final int NVACC_NV10_TIL7AD = 0x00400b70; public static final int NVACC_NV10_TIL7ED = 0x00400b74; public static final int NVACC_NV10_TIL7PT = 0x00400b78; public static final int NVACC_NV10_TIL7ST = 0x00400b7c; /* acc engine fifo setup registers (for function_register 'mappings') */ public static final int NVACC_FIFO_00800000 = 0x00800000; public static final int NVACC_FIFO_00802000 = 0x00802000; public static final int NVACC_FIFO_00804000 = 0x00804000; public static final int NVACC_FIFO_00806000 = 0x00806000; public static final int NVACC_FIFO_00808000 = 0x00808000; public static final int NVACC_FIFO_0080a000 = 0x0080a000; public static final int NVACC_FIFO_0080c000 = 0x0080c000; public static final int NVACC_FIFO_0080e000 = 0x0080e000; /* ROP3 registers (Raster OPeration) */ public static final int NV16_ROP_FIFOFREE = 0x00800010; /* little endian */ public static final int NVACC_ROP_ROP3 = 0x00800300; /* * 'mapped' from * 0x00420300 */ /* pattern registers */ public static final int NV16_PAT_FIFOFREE = 0x00804010; /* little endian */ public static final int NVACC_PAT_SHAPE = 0x00804308; /* * 'mapped' from * 0x00460308 */ public static final int NVACC_PAT_COLOR0 = 0x00804310; /* * 'mapped' from * 0x00460310 */ public static final int NVACC_PAT_COLOR1 = 0x00804314; /* * 'mapped' from * 0x00460314 */ public static final int NVACC_PAT_MONO1 = 0x00804318; /* * 'mapped' from * 0x00460318 */ public static final int NVACC_PAT_MONO2 = 0x0080431c; /* * 'mapped' from * 0x0046031c */ /* clip registers */ public static final int NV16_CLP_FIFOFREE = 0x00802010; /* little endian */ public static final int NVACC_CLP_TOPLEFT = 0x00802300; /* * 'mapped' from * 0x00450300 */ public static final int NVACC_CLP_WIDHEIGHT = 0x00802304; /* * 'mapped' from * 0x00450304 */ /* used bitmap registers */ public static final int NV16_BMP_FIFOFREE = 0x0080a010; /* little endian */ public static final int NVACC_BMP_COLOR1A = 0x0080a3fc; /* * 'mapped' from * 0x006b03fc */ public static final int NVACC_BMP_UCRECTL_0 = 0x0080a400; /* * 'mapped' from * 0x006b0400 */ public static final int NVACC_BMP_UCRECSZ_0 = 0x0080a404; /* * 'mapped' from * 0x006b0404 */ /* * DDC1 support only requires DDC_SDA_MASK, DDC2 support requires * DDC_SDA_MASK and DDC_SCL_MASK */ public static final int DDC_SDA_READ_MASK = (1 << 3); public static final int DDC_SCL_READ_MASK = (1 << 2); public static final int DDC_SDA_WRITE_MASK = (1 << 4); public static final int DDC_SCL_WRITE_MASK = (1 << 5); }