[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

libdrm: Changes to 'debian-experimental'



 ChangeLog                                |  471 +
 Makefile.am                              |    1 
 configure.ac                             |   51 
 debian/changelog                         |   15 
 debian/libdrm-intel1.symbols             |    2 
 debian/libdrm-radeon1.symbols            |   20 
 debian/patches/03_revert_abi_change.diff | 9100 ++++++++++++++++++++++++++++++-
 debian/rules                             |    5 
 include/drm/Makefile.am                  |    2 
 include/drm/i915_drm.h                   |   56 
 include/drm/radeon_drm.h                 |    1 
 include/drm/vmwgfx_drm.h                 |   63 
 intel/Makefile.am                        |    3 
 intel/intel_atomic.h                     |   93 
 intel/intel_bufmgr.c                     |   12 
 intel/intel_bufmgr.h                     |    5 
 intel/intel_bufmgr_gem.c                 |  348 +
 intel/intel_bufmgr_priv.h                |    5 
 intel/intel_chipset.h                    |   90 
 intel/libdrm_intel.pc.in                 |    2 
 libdrm.pc.in                             |    2 
 libkms/Makefile.am                       |    5 
 libkms/intel.c                           |    2 
 libkms/internal.h                        |    2 
 libkms/libkms.pc.in                      |    2 
 libkms/linux.c                           |    4 
 libkms/nouveau.c                         |  220 
 nouveau/Makefile.am                      |    3 
 nouveau/libdrm_nouveau.pc.in             |    3 
 nouveau/nouveau_bo.c                     |    2 
 nouveau/nouveau_channel.c                |    2 
 nouveau/nouveau_class.h                  | 9041 ------------------------------
 nouveau/nouveau_private.h                |    1 
 nouveau/nouveau_reloc.c                  |    6 
 radeon/Makefile.am                       |    5 
 radeon/bof.c                             |  477 +
 radeon/bof.h                             |   90 
 radeon/libdrm_radeon.pc.in               |    2 
 radeon/radeon_bo.h                       |    1 
 radeon/radeon_bo_gem.c                   |    9 
 radeon/radeon_bo_gem.h                   |    1 
 radeon/radeon_cs.c                       |    6 
 radeon/radeon_cs.h                       |    2 
 radeon/radeon_cs_gem.c                   |  231 
 radeon/radeon_cs_int.h                   |    1 
 tests/kmstest/main.c                     |    1 
 tests/modeprint/modeprint.c              |    4 
 tests/modetest/modetest.c                |   29 
 xf86atomic.h                             |   99 
 xf86drmMode.h                            |    2 
 50 files changed, 11251 insertions(+), 9349 deletions(-)

New commits:
commit 227cebf8981fab5c24dde6af0b76a92d506ef596
Author: Brice Goglin <bgoglin@debian.org>
Date:   Wed Apr 14 14:46:30 2010 +0200

    Disable libkms for now

diff --git a/debian/changelog b/debian/changelog
index 604bb71..6c6a399 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,7 @@ libdrm (2.4.20-1) UNRELEASED; urgency=low
   * New upstream release.
   * Pull upstream master up to commit 3506173b for bug fixes.
   * Update libdrm-intel1.symbols, libdrm-radeon1.symbols and shlibs.
+  * Disable libkms for now.
 
  -- Brice Goglin <bgoglin@debian.org>  Wed, 14 Apr 2010 14:35:23 +0200
 
diff --git a/debian/rules b/debian/rules
index 711da00..41b99db 100755
--- a/debian/rules
+++ b/debian/rules
@@ -17,6 +17,7 @@ DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 DEB_HOST_ARCH_OS    ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
 
+confflags += --disable-libkms
 ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
 	confflags += --build=$(DEB_HOST_GNU_TYPE)
 else

commit bbb086ba6afe95a258e56b39d25158e9db97ff60
Author: Brice Goglin <bgoglin@debian.org>
Date:   Wed Apr 14 14:45:46 2010 +0200

    Update libdrm-radeon1.symbols and shlibs.

diff --git a/debian/changelog b/debian/changelog
index e42fad5..604bb71 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,7 +2,7 @@ libdrm (2.4.20-1) UNRELEASED; urgency=low
 
   * New upstream release.
   * Pull upstream master up to commit 3506173b for bug fixes.
-  * Update libdrm-intel1.symbols and shlibs.
+  * Update libdrm-intel1.symbols, libdrm-radeon1.symbols and shlibs.
 
  -- Brice Goglin <bgoglin@debian.org>  Wed, 14 Apr 2010 14:35:23 +0200
 
diff --git a/debian/libdrm-radeon1.symbols b/debian/libdrm-radeon1.symbols
index 12b1231..11012d0 100644
--- a/debian/libdrm-radeon1.symbols
+++ b/debian/libdrm-radeon1.symbols
@@ -1,4 +1,22 @@
 libdrm_radeon.so.1 libdrm-radeon1 #MINVER#
+ bof_array@Base 2.4.20-1
+ bof_array_append@Base 2.4.20-1
+ bof_array_get@Base 2.4.20-1
+ bof_array_size@Base 2.4.20-1
+ bof_blob@Base 2.4.20-1
+ bof_blob_size@Base 2.4.20-1
+ bof_blob_value@Base 2.4.20-1
+ bof_decref@Base 2.4.20-1
+ bof_dump_file@Base 2.4.20-1
+ bof_incref@Base 2.4.20-1
+ bof_int32@Base 2.4.20-1
+ bof_int32_value@Base 2.4.20-1
+ bof_load_file@Base 2.4.20-1
+ bof_object@Base 2.4.20-1
+ bof_object_get@Base 2.4.20-1
+ bof_object_set@Base 2.4.20-1
+ bof_print@Base 2.4.20-1
+ bof_string@Base 2.4.20-1
  radeon_bo_debug@Base 2.4.17
  radeon_bo_get_handle@Base 2.4.17
  radeon_bo_get_src_domain@Base 2.4.17
@@ -21,6 +39,7 @@ libdrm_radeon.so.1 libdrm-radeon1 #MINVER#
  radeon_cs_emit@Base 2.4.17
  radeon_cs_end@Base 2.4.17
  radeon_cs_erase@Base 2.4.17
+ radeon_cs_get_id@Base 2.4.20
  radeon_cs_manager_gem_ctor@Base 2.4.17
  radeon_cs_manager_gem_dtor@Base 2.4.17
  radeon_cs_need_flush@Base 2.4.17
@@ -33,5 +52,6 @@ libdrm_radeon.so.1 libdrm-radeon1 #MINVER#
  radeon_cs_space_set_flush@Base 2.4.17
  radeon_cs_write_reloc@Base 2.4.17
  radeon_gem_get_kernel_name@Base 2.4.17
+ radeon_gem_get_reloc_in_cs@Base 2.4.20
  radeon_gem_name_bo@Base 2.4.17
  radeon_gem_set_domain@Base 2.4.17
diff --git a/debian/rules b/debian/rules
index b4c58e3..711da00 100755
--- a/debian/rules
+++ b/debian/rules
@@ -142,7 +142,7 @@ ifeq ($(NOUVEAU), yes)
 	dh_makeshlibs -plibdrm-nouveau1 -V'libdrm-nouveau1 (>= 2.4.16)' -- -c4
 endif
 ifeq ($(RADEON), yes)
-	dh_makeshlibs -plibdrm-radeon1 -V'libdrm-radeon1 (>= 2.4.17)' -- -c4
+	dh_makeshlibs -plibdrm-radeon1 -V'libdrm-radeon1 (>= 2.4.20)' -- -c4
 endif
 	dh_installdeb -s
 	dh_shlibdeps -s

commit a700a5c555db159a30580fe994457e335d4fa261
Author: Brice Goglin <bgoglin@debian.org>
Date:   Wed Apr 14 14:42:23 2010 +0200

    Update libdrm-intel1.symbols and shlibs.

diff --git a/debian/changelog b/debian/changelog
index 743cf1e..e42fad5 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,7 @@ libdrm (2.4.20-1) UNRELEASED; urgency=low
 
   * New upstream release.
   * Pull upstream master up to commit 3506173b for bug fixes.
+  * Update libdrm-intel1.symbols and shlibs.
 
  -- Brice Goglin <bgoglin@debian.org>  Wed, 14 Apr 2010 14:35:23 +0200
 
diff --git a/debian/libdrm-intel1.symbols b/debian/libdrm-intel1.symbols
index 71e8f02..68b9c37 100644
--- a/debian/libdrm-intel1.symbols
+++ b/debian/libdrm-intel1.symbols
@@ -5,6 +5,7 @@ libdrm_intel.so.1 libdrm-intel1 #MINVER#
  drm_intel_bo_busy@Base 2.4.13
  drm_intel_bo_disable_reuse@Base 2.4.10
  drm_intel_bo_emit_reloc@Base 2.4.1
+ drm_intel_bo_emit_reloc_fence@Base 2.4.20
  drm_intel_bo_exec@Base 2.4.1
  drm_intel_bo_fake_alloc_static@Base 2.4.1
  drm_intel_bo_fake_disable_backing_store@Base 2.4.1
@@ -31,6 +32,7 @@ libdrm_intel.so.1 libdrm-intel1 #MINVER#
  drm_intel_bufmgr_fake_set_exec_callback@Base 2.4.1
  drm_intel_bufmgr_fake_set_fence_callback@Base 2.4.1
  drm_intel_bufmgr_fake_set_last_dispatch@Base 2.4.1
+ drm_intel_bufmgr_gem_enable_fenced_relocs@Base 2.4.20
  drm_intel_bufmgr_gem_enable_reuse@Base 2.4.1
  drm_intel_bufmgr_gem_init@Base 2.4.1
  drm_intel_bufmgr_set_debug@Base 2.4.1
diff --git a/debian/rules b/debian/rules
index 471ea74..b4c58e3 100755
--- a/debian/rules
+++ b/debian/rules
@@ -136,7 +136,7 @@ endif
 	dh_fixperms -s
 	dh_makeshlibs -plibdrm2 -V'libdrm2 (>= 2.4.17)' -- -c4
 ifeq ($(INTEL), yes)
-	dh_makeshlibs -plibdrm-intel1 -V'libdrm-intel1 (>= 2.4.16)' -- -c4
+	dh_makeshlibs -plibdrm-intel1 -V'libdrm-intel1 (>= 2.4.20)' -- -c4
 endif
 ifeq ($(NOUVEAU), yes)
 	dh_makeshlibs -plibdrm-nouveau1 -V'libdrm-nouveau1 (>= 2.4.16)' -- -c4

commit d55c5de576dd9776debc8db9c7e1ccc978b2bd06
Author: Brice Goglin <bgoglin@debian.org>
Date:   Tue Apr 6 21:48:37 2010 +0200

    Update 03_revert_abi_change.diff

diff --git a/debian/patches/03_revert_abi_change.diff b/debian/patches/03_revert_abi_change.diff
index 12dd8f6..3128660 100644
--- a/debian/patches/03_revert_abi_change.diff
+++ b/debian/patches/03_revert_abi_change.diff
@@ -1,6 +1,9 @@
 Revert nouveau ABI change to match what is in 2.6.33.
 
 This reverts commits after b496c63143e9a4ca02011582329bce2df99d9b7c
+except those that only touch the build system:
+  e73af7f560c95ba9c665bead7fc8eb1471db9975
+  976e779f9cd0571dd2c218580485b39d37bd18a0
 
 diff --git a/include/drm/nouveau_drm.h b/include/drm/nouveau_drm.h
 index a6a9f4a..f745948 100644
@@ -160,7 +163,7 @@ index a6a9f4a..f745948 100644
  
  #endif /* __NOUVEAU_DRM_H__ */
 diff --git a/nouveau/Makefile.am b/nouveau/Makefile.am
-index 5d759c5..70bbbb2 100644
+index de3f4df..217b7ef 100644
 --- a/nouveau/Makefile.am
 +++ b/nouveau/Makefile.am
 @@ -18,8 +18,7 @@ libdrm_nouveau_la_SOURCES = \
@@ -173,22 +176,25 @@ index 5d759c5..70bbbb2 100644
  
  libdrm_nouveaucommonincludedir = ${includedir}/nouveau
  libdrm_nouveaucommoninclude_HEADERS = \
-@@ -30,8 +29,7 @@ libdrm_nouveaucommoninclude_HEADERS = \
+@@ -30,7 +29,7 @@ libdrm_nouveaucommoninclude_HEADERS = \
  				nouveau_pushbuf.h \
  				nouveau_bo.h \
  				nouveau_resource.h \
--				nouveau_class.h \
 -				nouveau_reloc.h
 +				nouveau_class.h
  
  
- libdrm_nouveauincludedir = ${includedir}/drm
+ libdrm_nouveauincludedir = ${includedir}/libdrm
 diff --git a/nouveau/nouveau_bo.c b/nouveau/nouveau_bo.c
-index 4973636..10cc8a6 100644
+index 32b23b6..10cc8a6 100644
 --- a/nouveau/nouveau_bo.c
 +++ b/nouveau/nouveau_bo.c
-@@ -201,6 +201,14 @@ nouveau_bo_new_tile(struct nouveau_device *dev, uint32_t flags, int align,
- 			nouveau_bo_ref(NULL, (void *)nvbo);
+@@ -198,9 +198,17 @@ nouveau_bo_new_tile(struct nouveau_device *dev, uint32_t flags, int align,
+ 	if (flags & (NOUVEAU_BO_VRAM | NOUVEAU_BO_GART)) {
+ 		ret = nouveau_bo_kalloc(nvbo, NULL);
+ 		if (ret) {
+-			nouveau_bo_ref(NULL, (void *)&nvbo);
++			nouveau_bo_ref(NULL, (void *)nvbo);
  			return ret;
  		}
 +
@@ -346,6 +352,19 @@ index 1e77ab0..fdad63e 100644
  nouveau_bo_busy(struct nouveau_bo *, uint32_t access);
  
  uint32_t
+diff --git a/nouveau/nouveau_channel.c b/nouveau/nouveau_channel.c
+index 40a0b34..5622c1d 100644
+--- a/nouveau/nouveau_channel.c
++++ b/nouveau/nouveau_channel.c
+@@ -106,7 +106,7 @@ nouveau_channel_free(struct nouveau_channel **chan)
+ 	struct nouveau_channel_priv *nvchan;
+ 	struct nouveau_device_priv *nvdev;
+ 	struct drm_nouveau_channel_free cf;
+-	unsigned i;
++	int i;
+ 
+ 	if (!chan || !*chan)
+ 		return;
 diff --git a/nouveau/nouveau_channel.h b/nouveau/nouveau_channel.h
 index ddcf8e4..294f749 100644
 --- a/nouveau/nouveau_channel.h
@@ -365,6 +384,9053 @@ index ddcf8e4..294f749 100644
  	struct nouveau_grobj *nullobj;
  	struct nouveau_grobj *vram;
  	struct nouveau_grobj *gart;
+diff --git a/nouveau/nouveau_class.h b/nouveau/nouveau_class.h
+new file mode 100644
+index 0000000..8e7d0ff
+--- /dev/null
++++ b/nouveau/nouveau_class.h
+@@ -0,0 +1,9041 @@
++/*************************************************************************
++
++   Autogenerated file, do not edit !
++
++   This file was generated by renouveau-gen from renouveau.xml, the
++   XML database of nvidia objects and methods. renouveau-gen and
++   renouveau.xml can be found in CVS module renouveau of sourceforge.net
++   project nouveau:
++
++cvs -z3 -d:pserver:anonymous@nouveau.cvs.sourceforge.net:/cvsroot/nouveau co -P renouveau
++
++**************************************************************************
++
++   Copyright (C) 2006-2008 :
++   Dmitry Baryshkov,
++   Laurent Carlier,
++   Matthieu Castet,
++   Dawid Gajownik,
++   Jeremy Kolb,
++   Stephane Loeuillet,
++   Patrice Mandin,
++   Stephane Marchesin,
++   Serge Martin,
++   Sylvain Munaut,
++   Simon Raffeiner,
++   Ben Skeggs,
++   Erik Waling,
++   koala_br,
++
++All Rights Reserved.
++
++Permission is hereby granted, free of charge, to any person obtaining
++a copy of this software and associated documentation files (the
++"Software"), to deal in the Software without restriction, including
++without limitation the rights to use, copy, modify, merge, publish,
++distribute, sublicense, and/or sell copies of the Software, and to
++permit persons to whom the Software is furnished to do so, subject to
++the following conditions:
++
++The above copyright notice and this permission notice (including the
++next paragraph) shall be included in all copies or substantial
++portions of the Software.
++
++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
++IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
++LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
++OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
++WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++
++*************************************************************************/
++
++
++#ifndef NOUVEAU_REG_H
++#define NOUVEAU_REG_H 1
++
++
++#define NV01_ROOT									0x00000001
++
++
++
++#define NV01_CONTEXT_DMA								0x00000002
++
++
++
++#define NV01_DEVICE									0x00000003
++
++
++
++#define NV01_TIMER									0x00000004
++
++#define  NV01_TIMER_SYNCHRONIZE								0x00000100
++#define  NV01_TIMER_STOP_ALARM								0x00000104
++#define  NV01_TIMER_DMA_NOTIFY								0x00000180
++#define  NV01_TIMER_TIME(x)								(0x00000300+((x)*4))
++#define  NV01_TIMER_TIME__SIZE								0x00000002
++#define  NV01_TIMER_ALARM_NOTIFY							0x00000308
++
++
++#define NV01_CONTEXT_BETA1								0x00000012
++
++#define  NV01_CONTEXT_BETA1_NOP								0x00000100
++#define  NV01_CONTEXT_BETA1_NOTIFY							0x00000104
++#define  NV01_CONTEXT_BETA1_DMA_NOTIFY							0x00000180
++#define  NV01_CONTEXT_BETA1_BETA_1D31							0x00000300
++
++
++#define NV01_CONTEXT_COLOR_KEY								0x00000017
++
++#define  NV01_CONTEXT_COLOR_KEY_NOP							0x00000100
++#define  NV01_CONTEXT_COLOR_KEY_NOTIFY							0x00000104
++#define  NV01_CONTEXT_COLOR_KEY_DMA_NOTIFY						0x00000180
++#define  NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT						0x00000300
++#define   NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_X16A8Y8					0x00000001
++#define   NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_X24Y8					0x00000002
++#define   NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_X16A1R5G5B5				0x00000003
++#define   NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_X17R5G5B5					0x00000004
++#define   NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_A8R8G8B8					0x00000005
++#define   NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_X8R8G8B8					0x00000006
++#define   NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_A16Y16					0x00000007
++#define   NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_X16Y16					0x00000008
++#define  NV01_CONTEXT_COLOR_KEY_COLOR							0x00000304
++
++
++#define NV04_CONTEXT_COLOR_KEY								0x00000057
++
++
++
++#define NV01_CONTEXT_PATTERN								0x00000018
++
++#define  NV01_CONTEXT_PATTERN_NOP							0x00000100
++#define  NV01_CONTEXT_PATTERN_NOTIFY							0x00000104
++#define  NV01_CONTEXT_PATTERN_DMA_NOTIFY						0x00000180
++#define  NV01_CONTEXT_PATTERN_COLOR_FORMAT						0x00000300
++#define  NV01_CONTEXT_PATTERN_MONOCHROME_FORMAT						0x00000304
++#define  NV01_CONTEXT_PATTERN_SHAPE							0x00000308
++#define  NV01_CONTEXT_PATTERN_COLOR(x)							(0x00000310+((x)*4))
++#define  NV01_CONTEXT_PATTERN_COLOR__SIZE						0x00000002
++#define  NV01_CONTEXT_PATTERN_PATTERN(x)						(0x00000318+((x)*4))
++#define  NV01_CONTEXT_PATTERN_PATTERN__SIZE						0x00000002
++
++
++#define NV01_CONTEXT_CLIP_RECTANGLE							0x00000019
++
++#define  NV01_CONTEXT_CLIP_RECTANGLE_NOP						0x00000100
++#define  NV01_CONTEXT_CLIP_RECTANGLE_NOTIFY						0x00000104
++#define  NV01_CONTEXT_CLIP_RECTANGLE_DMA_NOTIFY						0x00000180
++#define  NV01_CONTEXT_CLIP_RECTANGLE_POINT						0x00000300
++#define   NV01_CONTEXT_CLIP_RECTANGLE_POINT_X_SHIFT					0
++#define   NV01_CONTEXT_CLIP_RECTANGLE_POINT_X_MASK					0x0000ffff
++#define   NV01_CONTEXT_CLIP_RECTANGLE_POINT_Y_SHIFT					16
++#define   NV01_CONTEXT_CLIP_RECTANGLE_POINT_Y_MASK					0xffff0000
++#define  NV01_CONTEXT_CLIP_RECTANGLE_SIZE						0x00000304
++#define   NV01_CONTEXT_CLIP_RECTANGLE_SIZE_W_SHIFT					0
++#define   NV01_CONTEXT_CLIP_RECTANGLE_SIZE_W_MASK					0x0000ffff
++#define   NV01_CONTEXT_CLIP_RECTANGLE_SIZE_H_SHIFT					16
++#define   NV01_CONTEXT_CLIP_RECTANGLE_SIZE_H_MASK					0xffff0000
++
++
++#define NV01_RENDER_SOLID_LINE								0x0000001c
++
++#define  NV01_RENDER_SOLID_LINE_NOP							0x00000100
++#define  NV01_RENDER_SOLID_LINE_NOTIFY							0x00000104
++#define  NV01_RENDER_SOLID_LINE_PATCH							0x0000010c
++#define  NV01_RENDER_SOLID_LINE_DMA_NOTIFY						0x00000180
++#define  NV01_RENDER_SOLID_LINE_CLIP_RECTANGLE						0x00000184
++#define  NV01_RENDER_SOLID_LINE_PATTERN							0x00000188
++#define  NV01_RENDER_SOLID_LINE_ROP							0x0000018c
++#define  NV01_RENDER_SOLID_LINE_BETA1							0x00000190
++#define  NV01_RENDER_SOLID_LINE_SURFACE							0x00000194
++#define  NV01_RENDER_SOLID_LINE_OPERATION						0x000002fc
++#define   NV01_RENDER_SOLID_LINE_OPERATION_SRCCOPY_AND					0x00000000
++#define   NV01_RENDER_SOLID_LINE_OPERATION_ROP_AND					0x00000001
++#define   NV01_RENDER_SOLID_LINE_OPERATION_BLEND_AND					0x00000002
++#define   NV01_RENDER_SOLID_LINE_OPERATION_SRCCOPY					0x00000003
++#define   NV01_RENDER_SOLID_LINE_OPERATION_SRCCOPY_PREMULT				0x00000004
++#define   NV01_RENDER_SOLID_LINE_OPERATION_BLEND_PREMULT				0x00000005
++#define  NV01_RENDER_SOLID_LINE_COLOR_FORMAT						0x00000300
++#define   NV01_RENDER_SOLID_LINE_COLOR_FORMAT_X16A8Y8					0x00000001
++#define   NV01_RENDER_SOLID_LINE_COLOR_FORMAT_X24Y8					0x00000002
++#define   NV01_RENDER_SOLID_LINE_COLOR_FORMAT_X16A1R5G5B5				0x00000003
++#define   NV01_RENDER_SOLID_LINE_COLOR_FORMAT_X17R5G5B5					0x00000004
++#define   NV01_RENDER_SOLID_LINE_COLOR_FORMAT_A8R8G8B8					0x00000005
++#define   NV01_RENDER_SOLID_LINE_COLOR_FORMAT_X8R8G8B8					0x00000006
++#define   NV01_RENDER_SOLID_LINE_COLOR_FORMAT_A16Y16					0x00000007
++#define   NV01_RENDER_SOLID_LINE_COLOR_FORMAT_X16Y16					0x00000008
++#define  NV01_RENDER_SOLID_LINE_COLOR							0x00000304
++#define  NV01_RENDER_SOLID_LINE_LINE_POINT0(x)						(0x00000400+((x)*8))
++#define  NV01_RENDER_SOLID_LINE_LINE_POINT0__SIZE					0x00000010
++#define   NV01_RENDER_SOLID_LINE_LINE_POINT0_X_SHIFT					0
++#define   NV01_RENDER_SOLID_LINE_LINE_POINT0_X_MASK					0x0000ffff
++#define   NV01_RENDER_SOLID_LINE_LINE_POINT0_Y_SHIFT					16
++#define   NV01_RENDER_SOLID_LINE_LINE_POINT0_Y_MASK					0xffff0000
++#define  NV01_RENDER_SOLID_LINE_LINE_POINT1(x)						(0x00000404+((x)*8))
++#define  NV01_RENDER_SOLID_LINE_LINE_POINT1__SIZE					0x00000010
++#define   NV01_RENDER_SOLID_LINE_LINE_POINT1_X_SHIFT					0
++#define   NV01_RENDER_SOLID_LINE_LINE_POINT1_X_MASK					0x0000ffff
++#define   NV01_RENDER_SOLID_LINE_LINE_POINT1_Y_SHIFT					16
++#define   NV01_RENDER_SOLID_LINE_LINE_POINT1_Y_MASK					0xffff0000
++#define  NV01_RENDER_SOLID_LINE_LINE32_POINT0_X(x)					(0x00000480+((x)*16))
++#define  NV01_RENDER_SOLID_LINE_LINE32_POINT0_X__SIZE					0x00000010
++#define  NV01_RENDER_SOLID_LINE_LINE32_POINT0_Y(x)					(0x00000484+((x)*16))
++#define  NV01_RENDER_SOLID_LINE_LINE32_POINT0_Y__SIZE					0x00000010
++#define  NV01_RENDER_SOLID_LINE_LINE32_POINT1_X(x)					(0x00000488+((x)*16))
++#define  NV01_RENDER_SOLID_LINE_LINE32_POINT1_X__SIZE					0x00000010
++#define  NV01_RENDER_SOLID_LINE_LINE32_POINT1_Y(x)					(0x0000048c+((x)*16))
++#define  NV01_RENDER_SOLID_LINE_LINE32_POINT1_Y__SIZE					0x00000010
++#define  NV01_RENDER_SOLID_LINE_POLYLINE(x)						(0x00000500+((x)*4))
++#define  NV01_RENDER_SOLID_LINE_POLYLINE__SIZE						0x00000020
++#define   NV01_RENDER_SOLID_LINE_POLYLINE_X_SHIFT					0
++#define   NV01_RENDER_SOLID_LINE_POLYLINE_X_MASK					0x0000ffff
++#define   NV01_RENDER_SOLID_LINE_POLYLINE_Y_SHIFT					16
++#define   NV01_RENDER_SOLID_LINE_POLYLINE_Y_MASK					0xffff0000
++#define  NV01_RENDER_SOLID_LINE_POLYLINE32_POINT_X(x)					(0x00000580+((x)*8))
++#define  NV01_RENDER_SOLID_LINE_POLYLINE32_POINT_X__SIZE				0x00000010
++#define  NV01_RENDER_SOLID_LINE_POLYLINE32_POINT_Y(x)					(0x00000584+((x)*8))
++#define  NV01_RENDER_SOLID_LINE_POLYLINE32_POINT_Y__SIZE				0x00000010
++#define  NV01_RENDER_SOLID_LINE_CPOLYLINE_COLOR(x)					(0x00000600+((x)*8))
++#define  NV01_RENDER_SOLID_LINE_CPOLYLINE_COLOR__SIZE					0x00000010
++#define  NV01_RENDER_SOLID_LINE_CPOLYLINE_POINT(x)					(0x00000604+((x)*8))
++#define  NV01_RENDER_SOLID_LINE_CPOLYLINE_POINT__SIZE					0x00000010
++#define   NV01_RENDER_SOLID_LINE_CPOLYLINE_POINT_X_SHIFT				0
++#define   NV01_RENDER_SOLID_LINE_CPOLYLINE_POINT_X_MASK					0x0000ffff
++#define   NV01_RENDER_SOLID_LINE_CPOLYLINE_POINT_Y_SHIFT				16
++#define   NV01_RENDER_SOLID_LINE_CPOLYLINE_POINT_Y_MASK					0xffff0000
++
++
++#define NV04_RENDER_SOLID_LINE								0x0000005c
++
++#define  NV04_RENDER_SOLID_LINE_BETA4							0x00000194
++#define  NV04_RENDER_SOLID_LINE_SURFACE							0x00000198
++
++
++#define NV01_RENDER_SOLID_TRIANGLE							0x0000001d
++
++#define  NV01_RENDER_SOLID_TRIANGLE_NOP							0x00000100
++#define  NV01_RENDER_SOLID_TRIANGLE_NOTIFY						0x00000104
++#define  NV01_RENDER_SOLID_TRIANGLE_PATCH						0x0000010c
++#define  NV01_RENDER_SOLID_TRIANGLE_DMA_NOTIFY						0x00000180
++#define  NV01_RENDER_SOLID_TRIANGLE_CLIP_RECTANGLE					0x00000184
++#define  NV01_RENDER_SOLID_TRIANGLE_PATTERN						0x00000188
++#define  NV01_RENDER_SOLID_TRIANGLE_ROP							0x0000018c
++#define  NV01_RENDER_SOLID_TRIANGLE_BETA1						0x00000190
++#define  NV01_RENDER_SOLID_TRIANGLE_SURFACE						0x00000194
++#define  NV01_RENDER_SOLID_TRIANGLE_OPERATION						0x000002fc
++#define   NV01_RENDER_SOLID_TRIANGLE_OPERATION_SRCCOPY_AND				0x00000000
++#define   NV01_RENDER_SOLID_TRIANGLE_OPERATION_ROP_AND					0x00000001
++#define   NV01_RENDER_SOLID_TRIANGLE_OPERATION_BLEND_AND				0x00000002
++#define   NV01_RENDER_SOLID_TRIANGLE_OPERATION_SRCCOPY					0x00000003
++#define   NV01_RENDER_SOLID_TRIANGLE_OPERATION_SRCCOPY_PREMULT				0x00000004
++#define   NV01_RENDER_SOLID_TRIANGLE_OPERATION_BLEND_PREMULT				0x00000005
++#define  NV01_RENDER_SOLID_TRIANGLE_COLOR_FORMAT					0x00000300
++#define  NV01_RENDER_SOLID_TRIANGLE_COLOR						0x00000304
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT0					0x00000310
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT0_X_SHIFT				0
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT0_X_MASK				0x0000ffff
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT0_Y_SHIFT				16
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT0_Y_MASK				0xffff0000
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT1					0x00000314
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT1_X_SHIFT				0
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT1_X_MASK				0x0000ffff
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT1_Y_SHIFT				16
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT1_Y_MASK				0xffff0000
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT2					0x00000318
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT2_X_SHIFT				0
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT2_X_MASK				0x0000ffff
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT2_Y_SHIFT				16
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT2_Y_MASK				0xffff0000
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIANGLE32_POINT0_X					0x00000320
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIANGLE32_POINT0_Y					0x00000324
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIANGLE32_POINT1_X					0x00000328
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIANGLE32_POINT1_Y					0x0000032c
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIANGLE32_POINT2_X					0x00000330
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIANGLE32_POINT2_Y					0x00000334
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIMESH(x)						(0x00000400+((x)*4))
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIMESH__SIZE					0x00000020
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIMESH_X_SHIFT					0
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIMESH_X_MASK					0x0000ffff
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIMESH_Y_SHIFT					16
++#define   NV01_RENDER_SOLID_TRIANGLE_TRIMESH_Y_MASK					0xffff0000
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIMESH32_POINT_X(x)				(0x00000480+((x)*8))
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIMESH32_POINT_X__SIZE				0x00000010
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIMESH32_POINT_Y(x)				(0x00000484+((x)*8))
++#define  NV01_RENDER_SOLID_TRIANGLE_TRIMESH32_POINT_Y__SIZE				0x00000010
++#define  NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_COLOR(x)					(0x00000500+((x)*16))
++#define  NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_COLOR__SIZE				0x00000008
++#define  NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT0(x)					(0x00000504+((x)*16))
++#define  NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT0__SIZE				0x00000008
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT0_X_SHIFT				0
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT0_X_MASK				0x0000ffff
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT0_Y_SHIFT				16
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT0_Y_MASK				0xffff0000
++#define  NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT1(x)					(0x00000508+((x)*16))
++#define  NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT1__SIZE				0x00000008
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT1_X_SHIFT				0
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT1_X_MASK				0x0000ffff
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT1_Y_SHIFT				16
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT1_Y_MASK				0xffff0000
++#define  NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT2(x)					(0x0000050c+((x)*16))
++#define  NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT2__SIZE				0x00000008
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT2_X_SHIFT				0
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT2_X_MASK				0x0000ffff
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT2_Y_SHIFT				16
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT2_Y_MASK				0xffff0000
++#define  NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_COLOR(x)					(0x00000580+((x)*8))
++#define  NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_COLOR__SIZE				0x00000010
++#define  NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_POINT(x)					(0x00000584+((x)*8))
++#define  NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_POINT__SIZE				0x00000010
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_POINT_X_SHIFT				0
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_POINT_X_MASK				0x0000ffff
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_POINT_Y_SHIFT				16
++#define   NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_POINT_Y_MASK				0xffff0000
++
++
++#define NV04_RENDER_SOLID_TRIANGLE							0x0000005d
++
++#define  NV04_RENDER_SOLID_TRIANGLE_BETA4						0x00000194
++#define  NV04_RENDER_SOLID_TRIANGLE_SURFACE						0x00000198
++
++
++#define NV01_RENDER_SOLID_RECTANGLE							0x0000001e
++
++#define  NV01_RENDER_SOLID_RECTANGLE_NOP						0x00000100
++#define  NV01_RENDER_SOLID_RECTANGLE_NOTIFY						0x00000104
++#define  NV01_RENDER_SOLID_RECTANGLE_PATCH						0x0000010c
++#define  NV01_RENDER_SOLID_RECTANGLE_DMA_NOTIFY						0x00000180
++#define  NV01_RENDER_SOLID_RECTANGLE_CLIP_RECTANGLE					0x00000184
++#define  NV01_RENDER_SOLID_RECTANGLE_PATTERN						0x00000188
++#define  NV01_RENDER_SOLID_RECTANGLE_ROP						0x0000018c
++#define  NV01_RENDER_SOLID_RECTANGLE_BETA1						0x00000190
++#define  NV01_RENDER_SOLID_RECTANGLE_SURFACE						0x00000194
++#define  NV01_RENDER_SOLID_RECTANGLE_OPERATION						0x000002fc
++#define   NV01_RENDER_SOLID_RECTANGLE_OPERATION_SRCCOPY_AND				0x00000000
++#define   NV01_RENDER_SOLID_RECTANGLE_OPERATION_ROP_AND					0x00000001
++#define   NV01_RENDER_SOLID_RECTANGLE_OPERATION_BLEND_AND				0x00000002
++#define   NV01_RENDER_SOLID_RECTANGLE_OPERATION_SRCCOPY					0x00000003
++#define   NV01_RENDER_SOLID_RECTANGLE_OPERATION_SRCCOPY_PREMULT				0x00000004
++#define   NV01_RENDER_SOLID_RECTANGLE_OPERATION_BLEND_PREMULT				0x00000005
++#define  NV01_RENDER_SOLID_RECTANGLE_COLOR_FORMAT					0x00000300
++#define  NV01_RENDER_SOLID_RECTANGLE_COLOR						0x00000304
++#define  NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_POINT(x)					(0x00000400+((x)*8))
++#define  NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_POINT__SIZE				0x00000010
++#define   NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_POINT_X_SHIFT				0
++#define   NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_POINT_X_MASK				0x0000ffff
++#define   NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_POINT_Y_SHIFT				16
++#define   NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_POINT_Y_MASK				0xffff0000
++#define  NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_SIZE(x)					(0x00000404+((x)*8))
++#define  NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_SIZE__SIZE				0x00000010
++#define   NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_SIZE_W_SHIFT				0
++#define   NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_SIZE_W_MASK				0x0000ffff
++#define   NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_SIZE_H_SHIFT				16
++#define   NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_SIZE_H_MASK				0xffff0000
++
++
++#define NV04_RENDER_SOLID_RECTANGLE							0x0000005e
++
++#define  NV04_RENDER_SOLID_RECTANGLE_BETA4						0x00000194
++#define  NV04_RENDER_SOLID_RECTANGLE_SURFACE						0x00000198
++
++
++#define NV01_IMAGE_BLIT									0x0000001f
++
++#define  NV01_IMAGE_BLIT_NOP								0x00000100
++#define  NV01_IMAGE_BLIT_NOTIFY								0x00000104
++#define  NV01_IMAGE_BLIT_PATCH								0x0000010c
++#define  NV01_IMAGE_BLIT_DMA_NOTIFY							0x00000180
++#define  NV01_IMAGE_BLIT_COLOR_KEY							0x00000184
++#define  NV01_IMAGE_BLIT_CLIP_RECTANGLE							0x00000188
++#define  NV01_IMAGE_BLIT_PATTERN							0x0000018c
++#define  NV01_IMAGE_BLIT_ROP								0x00000190
++#define  NV01_IMAGE_BLIT_BETA1								0x00000194
++#define  NV01_IMAGE_BLIT_SURFACE							0x0000019c
++#define  NV01_IMAGE_BLIT_OPERATION							0x000002fc
++#define   NV01_IMAGE_BLIT_OPERATION_SRCCOPY_AND						0x00000000
++#define   NV01_IMAGE_BLIT_OPERATION_ROP_AND						0x00000001
++#define   NV01_IMAGE_BLIT_OPERATION_BLEND_AND						0x00000002
++#define   NV01_IMAGE_BLIT_OPERATION_SRCCOPY						0x00000003
++#define   NV01_IMAGE_BLIT_OPERATION_SRCCOPY_PREMULT					0x00000004
++#define   NV01_IMAGE_BLIT_OPERATION_BLEND_PREMULT					0x00000005
++#define  NV01_IMAGE_BLIT_IMAGE_INPUT							0x00000204
++#define  NV01_IMAGE_BLIT_POINT_IN							0x00000300
++#define   NV01_IMAGE_BLIT_POINT_IN_X_SHIFT						0
++#define   NV01_IMAGE_BLIT_POINT_IN_X_MASK						0x0000ffff
++#define   NV01_IMAGE_BLIT_POINT_IN_Y_SHIFT						16
++#define   NV01_IMAGE_BLIT_POINT_IN_Y_MASK						0xffff0000
++#define  NV01_IMAGE_BLIT_POINT_OUT							0x00000304
++#define   NV01_IMAGE_BLIT_POINT_OUT_X_SHIFT						0
++#define   NV01_IMAGE_BLIT_POINT_OUT_X_MASK						0x0000ffff
++#define   NV01_IMAGE_BLIT_POINT_OUT_Y_SHIFT						16
++#define   NV01_IMAGE_BLIT_POINT_OUT_Y_MASK						0xffff0000
++#define  NV01_IMAGE_BLIT_SIZE								0x00000308
++#define   NV01_IMAGE_BLIT_SIZE_W_SHIFT							0
++#define   NV01_IMAGE_BLIT_SIZE_W_MASK							0x0000ffff
++#define   NV01_IMAGE_BLIT_SIZE_H_SHIFT							16
++#define   NV01_IMAGE_BLIT_SIZE_H_MASK							0xffff0000
++
++
++#define NV04_IMAGE_BLIT									0x0000005f
++
++#define  NV04_IMAGE_BLIT_ROP								0x00000190
++#define  NV04_IMAGE_BLIT_BETA4								0x00000198
++#define  NV04_IMAGE_BLIT_SURFACE							0x0000019c
++
++
++#define NV12_IMAGE_BLIT									0x0000009f
++
++#define  NV12_IMAGE_BLIT_WAIT_FOR_IDLE							0x00000108
++
++
++#define NV01_IMAGE_FROM_CPU								0x00000021
++
++#define  NV01_IMAGE_FROM_CPU_NOP							0x00000100
++#define  NV01_IMAGE_FROM_CPU_NOTIFY							0x00000104
++#define  NV01_IMAGE_FROM_CPU_PATCH							0x0000010c
++#define  NV01_IMAGE_FROM_CPU_DMA_NOTIFY							0x00000180
++#define  NV01_IMAGE_FROM_CPU_COLOR_KEY							0x00000184
++#define  NV01_IMAGE_FROM_CPU_CLIP_RECTANGLE						0x00000188
++#define  NV01_IMAGE_FROM_CPU_PATTERN							0x0000018c
++#define  NV01_IMAGE_FROM_CPU_ROP							0x00000190
++#define  NV01_IMAGE_FROM_CPU_BETA1							0x00000194
++#define  NV01_IMAGE_FROM_CPU_SURFACE							0x00000198
++#define  NV01_IMAGE_FROM_CPU_OPERATION							0x000002fc
++#define   NV01_IMAGE_FROM_CPU_OPERATION_SRCCOPY_AND					0x00000000
++#define   NV01_IMAGE_FROM_CPU_OPERATION_ROP_AND						0x00000001
++#define   NV01_IMAGE_FROM_CPU_OPERATION_BLEND_AND					0x00000002
++#define   NV01_IMAGE_FROM_CPU_OPERATION_SRCCOPY						0x00000003
++#define   NV01_IMAGE_FROM_CPU_OPERATION_SRCCOPY_PREMULT					0x00000004
++#define   NV01_IMAGE_FROM_CPU_OPERATION_BLEND_PREMULT					0x00000005
++#define  NV01_IMAGE_FROM_CPU_COLOR_FORMAT						0x00000300
++#define   NV01_IMAGE_FROM_CPU_COLOR_FORMAT_Y8						0x00000001
++#define   NV01_IMAGE_FROM_CPU_COLOR_FORMAT_A1R5G5B5					0x00000002
++#define   NV01_IMAGE_FROM_CPU_COLOR_FORMAT_X1R5G5B5					0x00000003
++#define   NV01_IMAGE_FROM_CPU_COLOR_FORMAT_A8R8G8B8					0x00000004
++#define   NV01_IMAGE_FROM_CPU_COLOR_FORMAT_X8R8G8B8					0x00000005
++#define  NV01_IMAGE_FROM_CPU_POINT							0x00000304
++#define   NV01_IMAGE_FROM_CPU_POINT_X_SHIFT						0
++#define   NV01_IMAGE_FROM_CPU_POINT_X_MASK						0x0000ffff
++#define   NV01_IMAGE_FROM_CPU_POINT_Y_SHIFT						16
++#define   NV01_IMAGE_FROM_CPU_POINT_Y_MASK						0xffff0000
++#define  NV01_IMAGE_FROM_CPU_SIZE_OUT							0x00000308
++#define   NV01_IMAGE_FROM_CPU_SIZE_OUT_W_SHIFT						0
++#define   NV01_IMAGE_FROM_CPU_SIZE_OUT_W_MASK						0x0000ffff
++#define   NV01_IMAGE_FROM_CPU_SIZE_OUT_H_SHIFT						16
++#define   NV01_IMAGE_FROM_CPU_SIZE_OUT_H_MASK						0xffff0000
++#define  NV01_IMAGE_FROM_CPU_SIZE_IN							0x0000030c
++#define   NV01_IMAGE_FROM_CPU_SIZE_IN_W_SHIFT						0
++#define   NV01_IMAGE_FROM_CPU_SIZE_IN_W_MASK						0x0000ffff
++#define   NV01_IMAGE_FROM_CPU_SIZE_IN_H_SHIFT						16
++#define   NV01_IMAGE_FROM_CPU_SIZE_IN_H_MASK						0xffff0000
++#define  NV01_IMAGE_FROM_CPU_COLOR(x)							(0x00000400+((x)*4))
++#define  NV01_IMAGE_FROM_CPU_COLOR__SIZE						0x00000020
++
++
++#define NV04_IMAGE_FROM_CPU								0x00000061
++
++#define  NV04_IMAGE_FROM_CPU_BETA4							0x00000198
++#define  NV04_IMAGE_FROM_CPU_SURFACE							0x0000019c
++
++
++#define NV05_IMAGE_FROM_CPU								0x00000065
++
++#define  NV05_IMAGE_FROM_CPU_COLOR_CONVERSION						0x000002f8
++
++
++#define NV10_IMAGE_FROM_CPU								0x0000008a
++
++#define  NV10_IMAGE_FROM_CPU_WAIT_FOR_IDLE						0x00000108
++
++
++#define NV30_IMAGE_FROM_CPU								0x0000038a
++
++
++
++#define NV40_IMAGE_FROM_CPU								0x0000308a
++
++
++
++#define NV01_NULL									0x00000030
++
++
++
++#define NV03_STRETCHED_IMAGE_FROM_CPU							0x00000036
++
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_NOP						0x00000100
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_NOTIFY						0x00000104
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_PATCH						0x0000010c
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_DMA_NOTIFY					0x00000180
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_COLOR_KEY					0x00000184
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_PATTERN						0x00000188
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_ROP						0x0000018c
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_BETA1						0x00000190
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_SURFACE						0x00000194
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_OPERATION					0x000002fc
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_COLOR_FORMAT					0x00000300
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_SIZE_IN						0x00000304
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_SIZE_IN_W_SHIFT					0
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_SIZE_IN_W_MASK					0x0000ffff
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_SIZE_IN_H_SHIFT					16
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_SIZE_IN_H_MASK					0xffff0000
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_DX_DU						0x00000308
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_DY_DV						0x0000030c
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_POINT					0x00000310
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_POINT_X_SHIFT				0
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_POINT_X_MASK				0x0000ffff
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_POINT_Y_SHIFT				16
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_POINT_Y_MASK				0xffff0000
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_SIZE					0x00000314
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_SIZE_W_SHIFT				0
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_SIZE_W_MASK				0x0000ffff
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_SIZE_H_SHIFT				16
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_SIZE_H_MASK				0xffff0000
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_POINT12D4					0x00000318
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_POINT12D4_X_SHIFT				0
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_POINT12D4_X_MASK				0x0000ffff
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_POINT12D4_Y_SHIFT				16
++#define   NV03_STRETCHED_IMAGE_FROM_CPU_POINT12D4_Y_MASK				0xffff0000
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_COLOR(x)						(0x00000400+((x)*4))
++#define  NV03_STRETCHED_IMAGE_FROM_CPU_COLOR__SIZE					0x00000020
++
++
++#define NV04_STRETCHED_IMAGE_FROM_CPU							0x00000076
++
++#define  NV04_STRETCHED_IMAGE_FROM_CPU_BETA4						0x00000194
++#define  NV04_STRETCHED_IMAGE_FROM_CPU_SURFACE						0x00000198
++
++
++#define NV05_STRETCHED_IMAGE_FROM_CPU							0x00000066
++
++#define  NV05_STRETCHED_IMAGE_FROM_CPU_COLOR_CONVERSION					0x000002f8
++
++
++#define NV30_STRETCHED_IMAGE_FROM_CPU							0x00000366
++
++
++
++#define NV40_STRETCHED_IMAGE_FROM_CPU							0x00003066
++
++
++
++#define NV03_SCALED_IMAGE_FROM_MEMORY							0x00000037
++
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_NOP						0x00000100
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_NOTIFY						0x00000104
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_DMA_NOTIFY					0x00000180
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_DMA_IMAGE					0x00000184
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_PATTERN						0x00000188
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_ROP						0x0000018c
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_BETA1						0x00000190
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_SURFACE						0x00000194
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT					0x00000300
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_A1R5G5B5				0x00000001
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_X1R5G5B5				0x00000002
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_A8R8G8B8				0x00000003
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_X8R8G8B8				0x00000004
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_V8YB8U8YA8				0x00000005
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_YB8V8YA8U8				0x00000006
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_R5G6B5				0x00000007
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_Y8					0x00000008
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_AY8				0x00000009
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION					0x00000304
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION_SRCCOPY_AND				0x00000000
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION_ROP_AND				0x00000001
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION_BLEND_AND				0x00000002
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION_SRCCOPY				0x00000003
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION_SRCCOPY_PREMULT			0x00000004
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION_BLEND_PREMULT				0x00000005
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT					0x00000308
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT_X_SHIFT				0
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT_X_MASK				0x0000ffff
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT_Y_SHIFT				16
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT_Y_MASK				0xffff0000
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE					0x0000030c
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE_W_SHIFT				0
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE_W_MASK				0x0000ffff
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE_H_SHIFT				16
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE_H_MASK				0xffff0000
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_OUT_POINT					0x00000310
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OUT_POINT_X_SHIFT				0
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OUT_POINT_X_MASK				0x0000ffff
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OUT_POINT_Y_SHIFT				16
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OUT_POINT_Y_MASK				0xffff0000
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE						0x00000314
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE_W_SHIFT				0
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE_W_MASK					0x0000ffff
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE_H_SHIFT				16
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE_H_MASK					0xffff0000
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_DU_DX						0x00000318
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_DV_DY						0x0000031c
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_SIZE						0x00000400
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_SIZE_W_SHIFT					0
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_SIZE_W_MASK					0x0000ffff
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_SIZE_H_SHIFT					16
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_SIZE_H_MASK					0xffff0000
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_FORMAT						0x00000404
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_FORMAT_PITCH_SHIFT				0
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_FORMAT_PITCH_MASK				0x0000ffff
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_FORMAT_ORIGIN_SHIFT				16
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_FORMAT_ORIGIN_MASK				0x00ff0000
++#define    NV03_SCALED_IMAGE_FROM_MEMORY_FORMAT_ORIGIN_CENTER				0x00010000
++#define    NV03_SCALED_IMAGE_FROM_MEMORY_FORMAT_ORIGIN_CORNER				0x00020000
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_FORMAT_FILTER_SHIFT				24
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_FORMAT_FILTER_MASK				0xff000000
++#define    NV03_SCALED_IMAGE_FROM_MEMORY_FORMAT_FILTER_POINT_SAMPLE			0x00000000
++#define    NV03_SCALED_IMAGE_FROM_MEMORY_FORMAT_FILTER_BILINEAR				0x01000000
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_OFFSET						0x00000408
++#define  NV03_SCALED_IMAGE_FROM_MEMORY_POINT						0x0000040c
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_POINT_U_SHIFT					0
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_POINT_U_MASK					0x0000ffff
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_POINT_V_SHIFT					16
++#define   NV03_SCALED_IMAGE_FROM_MEMORY_POINT_V_MASK					0xffff0000
++
++
++#define NV04_SCALED_IMAGE_FROM_MEMORY							0x00000077
++
++#define  NV04_SCALED_IMAGE_FROM_MEMORY_BETA4						0x00000194
++#define  NV04_SCALED_IMAGE_FROM_MEMORY_SURFACE						0x00000198
++
++
++#define NV05_SCALED_IMAGE_FROM_MEMORY							0x00000063
++
++#define  NV05_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION					0x000002fc
++#define   NV05_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION_DITHER				0x00000000
++#define   NV05_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION_TRUNCATE			0x00000001
++#define   NV05_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION_SUBTR_TRUNCATE			0x00000002
++
++
++#define NV10_SCALED_IMAGE_FROM_MEMORY							0x00000089
++
++#define  NV10_SCALED_IMAGE_FROM_MEMORY_WAIT_FOR_IDLE					0x00000108
++
++
++#define NV30_SCALED_IMAGE_FROM_MEMORY							0x00000389
++
++
++
++#define NV40_SCALED_IMAGE_FROM_MEMORY							0x00003089
++
++
++
++#define NV04_DVD_SUBPICTURE								0x00000038
++
++#define  NV04_DVD_SUBPICTURE_NOP							0x00000100
++#define  NV04_DVD_SUBPICTURE_NOTIFY							0x00000104
++#define  NV04_DVD_SUBPICTURE_DMA_NOTIFY							0x00000180
++#define  NV04_DVD_SUBPICTURE_DMA_OVERLAY						0x00000184
++#define  NV04_DVD_SUBPICTURE_DMA_IMAGEIN						0x00000188
++#define  NV04_DVD_SUBPICTURE_DMA_IMAGEOUT						0x0000018c
++#define  NV04_DVD_SUBPICTURE_IMAGEOUT_POINT						0x00000300
++#define   NV04_DVD_SUBPICTURE_IMAGEOUT_POINT_X_SHIFT					0
++#define   NV04_DVD_SUBPICTURE_IMAGEOUT_POINT_X_MASK					0x0000ffff
++#define   NV04_DVD_SUBPICTURE_IMAGEOUT_POINT_Y_SHIFT					16
++#define   NV04_DVD_SUBPICTURE_IMAGEOUT_POINT_Y_MASK					0xffff0000
++#define  NV04_DVD_SUBPICTURE_IMAGEOUT_SIZE						0x00000304
++#define   NV04_DVD_SUBPICTURE_IMAGEOUT_SIZE_W_SHIFT					0
++#define   NV04_DVD_SUBPICTURE_IMAGEOUT_SIZE_W_MASK					0x0000ffff
++#define   NV04_DVD_SUBPICTURE_IMAGEOUT_SIZE_H_SHIFT					16
++#define   NV04_DVD_SUBPICTURE_IMAGEOUT_SIZE_H_MASK					0xffff0000
++#define  NV04_DVD_SUBPICTURE_IMAGEOUT_FORMAT						0x00000308
++#define   NV04_DVD_SUBPICTURE_IMAGEOUT_FORMAT_PITCH_SHIFT				0
++#define   NV04_DVD_SUBPICTURE_IMAGEOUT_FORMAT_PITCH_MASK				0x0000ffff
++#define   NV04_DVD_SUBPICTURE_IMAGEOUT_FORMAT_COLOR_SHIFT				16
++#define   NV04_DVD_SUBPICTURE_IMAGEOUT_FORMAT_COLOR_MASK				0xffff0000
++#define  NV04_DVD_SUBPICTURE_IMAGEOUT_OFFSET						0x0000030c
++#define  NV04_DVD_SUBPICTURE_IMAGEIN_DELTA_DU_DX					0x00000310
++#define  NV04_DVD_SUBPICTURE_IMAGEIN_DELTA_DV_DY					0x00000314
++#define  NV04_DVD_SUBPICTURE_IMAGEIN_SIZE						0x00000318
++#define   NV04_DVD_SUBPICTURE_IMAGEIN_SIZE_W_SHIFT					0
++#define   NV04_DVD_SUBPICTURE_IMAGEIN_SIZE_W_MASK					0x0000ffff
++#define   NV04_DVD_SUBPICTURE_IMAGEIN_SIZE_H_SHIFT					16
++#define   NV04_DVD_SUBPICTURE_IMAGEIN_SIZE_H_MASK					0xffff0000
++#define  NV04_DVD_SUBPICTURE_IMAGEIN_FORMAT						0x0000031c
++#define   NV04_DVD_SUBPICTURE_IMAGEIN_FORMAT_PITCH_SHIFT				0
++#define   NV04_DVD_SUBPICTURE_IMAGEIN_FORMAT_PITCH_MASK					0x0000ffff
++#define   NV04_DVD_SUBPICTURE_IMAGEIN_FORMAT_COLOR_SHIFT				16
++#define   NV04_DVD_SUBPICTURE_IMAGEIN_FORMAT_COLOR_MASK					0xffff0000
++#define  NV04_DVD_SUBPICTURE_IMAGEIN_OFFSET						0x00000320
++#define  NV04_DVD_SUBPICTURE_IMAGEIN_POINT						0x00000324
++#define   NV04_DVD_SUBPICTURE_IMAGEIN_POINT_U_SHIFT					0
++#define   NV04_DVD_SUBPICTURE_IMAGEIN_POINT_U_MASK					0x0000ffff
++#define   NV04_DVD_SUBPICTURE_IMAGEIN_POINT_V_SHIFT					16
++#define   NV04_DVD_SUBPICTURE_IMAGEIN_POINT_V_MASK					0xffff0000
++#define  NV04_DVD_SUBPICTURE_OVERLAY_DELTA_DU_DX					0x00000328
++#define  NV04_DVD_SUBPICTURE_OVERLAY_DELTA_DV_DY					0x0000032c
++#define  NV04_DVD_SUBPICTURE_OVERLAY_SIZE						0x00000330
++#define   NV04_DVD_SUBPICTURE_OVERLAY_SIZE_W_SHIFT					0
++#define   NV04_DVD_SUBPICTURE_OVERLAY_SIZE_W_MASK					0x0000ffff
++#define   NV04_DVD_SUBPICTURE_OVERLAY_SIZE_H_SHIFT					16
++#define   NV04_DVD_SUBPICTURE_OVERLAY_SIZE_H_MASK					0xffff0000
++#define  NV04_DVD_SUBPICTURE_OVERLAY_FORMAT						0x00000334
++#define   NV04_DVD_SUBPICTURE_OVERLAY_FORMAT_PITCH_SHIFT				0
++#define   NV04_DVD_SUBPICTURE_OVERLAY_FORMAT_PITCH_MASK					0x0000ffff
++#define   NV04_DVD_SUBPICTURE_OVERLAY_FORMAT_COLOR_SHIFT				16
++#define   NV04_DVD_SUBPICTURE_OVERLAY_FORMAT_COLOR_MASK					0xffff0000
++#define  NV04_DVD_SUBPICTURE_OVERLAY_OFFSET						0x00000338
++#define  NV04_DVD_SUBPICTURE_OVERLAY_POINT						0x0000033c
++#define   NV04_DVD_SUBPICTURE_OVERLAY_POINT_U_SHIFT					0
++#define   NV04_DVD_SUBPICTURE_OVERLAY_POINT_U_MASK					0x0000ffff
++#define   NV04_DVD_SUBPICTURE_OVERLAY_POINT_V_SHIFT					16
++#define   NV04_DVD_SUBPICTURE_OVERLAY_POINT_V_MASK					0xffff0000
++
++
++#define NV10_DVD_SUBPICTURE								0x00000088
++
++#define  NV10_DVD_SUBPICTURE_WAIT_FOR_IDLE						0x00000108
++
++
++#define NV04_MEMORY_TO_MEMORY_FORMAT							0x00000039
++
++#define  NV04_MEMORY_TO_MEMORY_FORMAT_NOP						0x00000100
++#define  NV04_MEMORY_TO_MEMORY_FORMAT_NOTIFY						0x00000104
++#define  NV04_MEMORY_TO_MEMORY_FORMAT_DMA_NOTIFY					0x00000180
++#define  NV04_MEMORY_TO_MEMORY_FORMAT_DMA_BUFFER_IN					0x00000184
++#define  NV04_MEMORY_TO_MEMORY_FORMAT_DMA_BUFFER_OUT					0x00000188
++#define  NV04_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN						0x0000030c
++#define  NV04_MEMORY_TO_MEMORY_FORMAT_OFFSET_OUT					0x00000310
++#define  NV04_MEMORY_TO_MEMORY_FORMAT_PITCH_IN						0x00000314
++#define  NV04_MEMORY_TO_MEMORY_FORMAT_PITCH_OUT						0x00000318


Reply to: