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

xserver-xorg-video-nouveau: Changes to 'debian-experimental'



 configure.ac          |    9 
 debian/changelog      |  260 ++++
 debian/control        |    4 
 src/Makefile.am       |    5 
 src/drmmode_display.c |  925 +++++++++------
 src/drmmode_display.h |   67 -
 src/nouveau_bios.h    |   76 -
 src/nouveau_calc.c    |  612 ++++++++++
 src/nouveau_crtc.h    |    1 
 src/nouveau_dri2.c    |  213 +++
 src/nouveau_exa.c     |  326 ++++-
 src/nouveau_hw.c      |  970 ++++++++++++++++
 src/nouveau_hw.h      |  335 +++++
 src/nouveau_local.h   |   26 
 src/nouveau_xv.c      |  212 ---
 src/nv04_exa.c        |   20 
 src/nv04_xv_blit.c    |    6 
 src/nv10_exa.c        |   10 
 src/nv10_xv_ovl.c     |    6 
 src/nv30_exa.c        |    8 
 src/nv30_xv_tex.c     |   15 
 src/nv40_exa.c        |   22 
 src/nv40_xv_tex.c     |    4 
 src/nv50_connector.c  |   20 
 src/nv50_crtc.c       |   23 
 src/nv50_dac.c        |    4 
 src/nv50_display.c    |    1 
 src/nv50_exa.c        |   32 
 src/nv50_output.c     |  153 +-
 src/nv50_randr.c      |   70 -
 src/nv50_sor.c        |   97 -
 src/nv50_xv.c         |   21 
 src/nv50reg.h         |   13 
 src/nv_bios.c         | 3004 +++++++++++++++++++++++---------------------------
 src/nv_const.h        |    6 
 src/nv_crtc.c         | 1093 ++++--------------
 src/nv_cursor.c       |  473 +------
 src/nv_dac.c          |   17 
 src/nv_dma.c          |   11 
 src/nv_dri.c          |  141 --
 src/nv_driver.c       |  492 ++++----
 src/nv_hw.c           |  947 ---------------
 src/nv_i2c.c          |   37 
 src/nv_include.h      |    4 
 src/nv_output.c       |  815 +++++++++----
 src/nv_proto.h        |   80 -
 src/nv_setup.c        |   92 -
 src/nv_shadow.c       |   50 
 src/nv_type.h         |  181 +--
 src/nvreg.h           |  539 ++++----
 50 files changed, 6786 insertions(+), 5762 deletions(-)

New commits:
commit 36317b29353fbb6b2d6c2533cae52409654e8a51
Author: Chris Lamb <lamby@debian.org>
Date:   Wed May 20 10:18:00 2009 +0100

    releasing version 1:0.0.10~git+20090519+9656762-1

diff --git a/debian/changelog b/debian/changelog
index 4d2205c..bfe275f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xserver-xorg-video-nouveau (1:0.0.10~git+20090519+9656762-1) UNRELEASED; urgency=low
+xserver-xorg-video-nouveau (1:0.0.10~git+20090519+9656762-1) experimental; urgency=low
 
   * New upstream snapshot (Closes: #526144, #524456)
     - 9656762... nv50: fix multiple-display hangs when encoders swap crtcs
@@ -256,7 +256,7 @@ xserver-xorg-video-nouveau (1:0.0.10~git+20090519+9656762-1) UNRELEASED; urgency
   * Bump Standards-Version to 3.8.1.
   * Bump build dependency on libdrm-dev to 2.4.11.
 
- -- Chris Lamb <lamby@debian.org>  Tue, 19 May 2009 23:16:52 +0100
+ -- Chris Lamb <lamby@debian.org>  Wed, 20 May 2009 10:17:53 +0100
 
 xserver-xorg-video-nouveau (1:0.0.10~git+20090205+4dfd0b1-1) experimental; urgency=low
 

commit 763d5bea2cdb4e0ff92739b5ece5ece67a83c8fe
Author: Chris Lamb <lamby@debian.org>
Date:   Tue May 19 23:36:20 2009 +0100

    Add bug #524456 which is fixed by rebuilding.
    
    Signed-off-by: Chris Lamb <lamby@debian.org>

diff --git a/debian/changelog b/debian/changelog
index af63c5a..4d2205c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,6 @@
 xserver-xorg-video-nouveau (1:0.0.10~git+20090519+9656762-1) UNRELEASED; urgency=low
 
-  * New upstream snapshot (Closes: #526144)
+  * New upstream snapshot (Closes: #526144, #524456)
     - 9656762... nv50: fix multiple-display hangs when encoders swap crtcs
     - d70eed9... randr12: fix digital dpms regression
     - 1072103... exa: use exaDriverAlloc() to prevent issues across exa 

commit e6459c3c5cbab59baa552f7d9bcf0ac386391140
Author: Chris Lamb <lamby@debian.org>
Date:   Tue May 19 23:21:29 2009 +0100

    Bump build dependency on libdrm-dev to 2.4.11.

diff --git a/debian/changelog b/debian/changelog
index 6cec485..af63c5a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -254,6 +254,7 @@ xserver-xorg-video-nouveau (1:0.0.10~git+20090519+9656762-1) UNRELEASED; urgency
     - ba1f897... keep resources around after leavevt, far too problematic 
       currently
   * Bump Standards-Version to 3.8.1.
+  * Bump build dependency on libdrm-dev to 2.4.11.
 
  -- Chris Lamb <lamby@debian.org>  Tue, 19 May 2009 23:16:52 +0100
 
diff --git a/debian/control b/debian/control
index 29ff51b..d8361dd 100644
--- a/debian/control
+++ b/debian/control
@@ -3,7 +3,7 @@ Section: x11
 Priority: optional
 Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
 Uploaders: Chris Lamb <lamby@debian.org>, Matthew Johnson <mjj29@debian.org>
-Build-Depends: debhelper (>= 7), pkg-config, xserver-xorg-dev (>= 2:1.2.99.902), x11proto-video-dev, x11proto-core-dev, x11proto-fonts-dev, x11proto-randr-dev (>= 1.2), x11proto-render-dev, x11proto-xext-dev, libdrm-dev (>= 2.4.4+git+20090105+a8c5480), x11proto-xf86dri-dev, x11proto-gl-dev, mesa-common-dev, automake, libtool, xutils-dev, xserver-xorg-dev
+Build-Depends: debhelper (>= 7), pkg-config, xserver-xorg-dev (>= 2:1.2.99.902), x11proto-video-dev, x11proto-core-dev, x11proto-fonts-dev, x11proto-randr-dev (>= 1.2), x11proto-render-dev, x11proto-xext-dev, libdrm-dev (>= 2.4.11), x11proto-xf86dri-dev, x11proto-gl-dev, mesa-common-dev, automake, libtool, xutils-dev, xserver-xorg-dev
 Standards-Version: 3.8.1
 Homepage: http://nouveau.freedesktop.org/wiki/
 Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-video-nouveau

commit c3c2eda0049dbea37e7bb6c4cdf2311c5a7f4761
Author: Chris Lamb <lamby@debian.org>
Date:   Tue May 19 23:19:43 2009 +0100

    Bump Standards-Version to 3.8.1.

diff --git a/debian/changelog b/debian/changelog
index 2f9c024..6cec485 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -253,6 +253,7 @@ xserver-xorg-video-nouveau (1:0.0.10~git+20090519+9656762-1) UNRELEASED; urgency
     - 945f0cb... kms: update drmmode_display
     - ba1f897... keep resources around after leavevt, far too problematic 
       currently
+  * Bump Standards-Version to 3.8.1.
 
  -- Chris Lamb <lamby@debian.org>  Tue, 19 May 2009 23:16:52 +0100
 
diff --git a/debian/control b/debian/control
index 47bd8c5..29ff51b 100644
--- a/debian/control
+++ b/debian/control
@@ -4,7 +4,7 @@ Priority: optional
 Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
 Uploaders: Chris Lamb <lamby@debian.org>, Matthew Johnson <mjj29@debian.org>
 Build-Depends: debhelper (>= 7), pkg-config, xserver-xorg-dev (>= 2:1.2.99.902), x11proto-video-dev, x11proto-core-dev, x11proto-fonts-dev, x11proto-randr-dev (>= 1.2), x11proto-render-dev, x11proto-xext-dev, libdrm-dev (>= 2.4.4+git+20090105+a8c5480), x11proto-xf86dri-dev, x11proto-gl-dev, mesa-common-dev, automake, libtool, xutils-dev, xserver-xorg-dev
-Standards-Version: 3.8.0
+Standards-Version: 3.8.1
 Homepage: http://nouveau.freedesktop.org/wiki/
 Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-video-nouveau
 Vcs-Browser: http://git.debian.org/?=pkg-xorg/driver/xserver-xorg-video-nouveau.git

commit 962a7575c84df7f1086b74b1ba511efb0b6b57aa
Author: Chris Lamb <lamby@debian.org>
Date:   Tue May 19 23:19:15 2009 +0100

    New upstream snapshot (Closes: #526144)
    
    * New upstream snapshot (Closes: #526144)
      - 9656762... nv50: fix multiple-display hangs when encoders swap crtcs
      - d70eed9... randr12: fix digital dpms regression
      - 1072103... exa: use exaDriverAlloc() to prevent issues across exa
        changes
      - 8502a80... Fix server regeneration again
      - 7a796a9... randr12: off-chip lvds for nv28 (rh#487456)
      - 5959512... 'drmCheckModesettingSupported' implicit function declaration
        fix
      - f62719e... Unused variable warning fixes
      - c8260ef... Fix crash with Xinerama enabled
      - 1a478ed... randr12: de-magic ramdac general control values
      - 6c209a8... randr12: pre-nv17 load detection
      - 3971dda... randr12: fix fp_control again again again
      - 0ef1603... randr12: solve off-chip encoder crtc exclusion in prepare,
        rather than dpms
      - 0447ce0... randr12: simplify nv11 digital encoder-crtc binding
      - f69b34a... nv50: return immediately in GetDDCModes if no DDC on
        connector...
      - 45e1618... bios: use NV_ARCH_50 to match G8x chips
      - 3d61697... nv50: remove reading back vbios-programmed lvds native mode
      - bade249... nv50: group encoders into connectors by i2c port
      - 9ee2ac1... bios: remove dodgy mode-table search for g80
      - 6282574... bios: modify get_fp_strap() for g80
      - 09b832e... nv50: merge NV50SorSetClockMode and NV50SorSetClockModeLVDS
      - ed2c185... bios/nv50: initial parsing of display script tables, not
        quite complete
      - 3fccc9e... bios: some nv50 init scripts have flags in reg values, deal
        with (1<<30)
      - 2b4b3da... bios: dcb location is only 2 bits
      - 7b5bfff... bios: parse BIT U table
      - e4260ec... randr12: more use of logging abstraction in modesetting code
      - 4d0fdba... randr12: fix for off-chip dual link digital (enable extra
        wide interface?)
      - bb246d7... Partial fix for nv28 lvds bios parsing (part of rh#487456)
      - 2915926... plls: max_log2p_bias is likely actually max_log2p
      - 47bb00f... nv50: missed a WAIT_RING
      - 523ccec... nv50: use vbios-programmed lvds mode as native mode if no ddc
      - fa2f111... Remove pNv->GART conditional for selecting CB_LOCATION in
        AGP/PCI
      - 7100c06... kms: fix displayWidth in resize
      - ef2de25... do e-edid for legacy modesetting path
      - d8545e6... bios: logic typo from earlier commit
      - 960a5c8... nv50: modify ddc<->nvreg assignments again..
      - 3a6c709... kms: fix setting the randr edid property
      - a1194b3... bios: fix typo
      - 11451ca... bios: some G8x don't have PBUS at 0x1800, us 0x88000
        unconditionally there
      - 62d69bd... bios: add exception for chipset 0x73 for lack of fp table
      - 620d519... consistent connector naming across <nv50, nv50 and kms
      - a5d45c8... randr12: set 1 on cr59 for off-chip digital, 0 otherwise
        (#21023, rh#492399)
      - d63c924... randr12: unlock CR21 *after* turning off digital output
      - 11be9a9... nv50: fix i2c port addresses
      - e2aa037... randr12: fall back to standard timings when finding native
        mode (rh#492819)
      - 6965663... randr12: fix hw cursor for fully transparent pixels
      - d12f70c... randr12: pre-nv17 digital fixes
      - ea567db... randr12: fix restore for cards where CR21 is not left
        unlocked at POST
      - bd263d8... randr12: make nv11 dvi work for both crtcs
      - 52c287d... Every card since nv5 can do panels
      - 3d371a7... randr12: enable tmds reg access on pre-nv17
      - 1bb85c8... randr12: reorder ramdac reg access
      - 4465fdd... randr12: remove nv30 special case
      - 72eced5... randr12: fix/improve a load of version/feature tests
      - 37c6916... bios: fix chips with pll limits table version 0
      - 76c5a05... bios: xf86DrvMsg->NV_ERROR
      - b1b9bcb... bios: support for pll limits table v3.0
      - 8c85b4b... kms: CONNECTORn -> CONNECTOR-n
      - 4e1c323... Restore call to NVDRIGetVersion, to ensure the dri module is
        loaded
      - c973f75... Abstract logging in nv_bios.c
      - b17bebd... nForce DIMM check is now in DRM
      - 9c991d3... randr12: FP_TG_CONTROL 2: dpms improvements
      - 5fb2888... randr12: FP_TG_CONTROL 1: turn off digital path when using
        VGA encoder
      - 8023dc3... Split DCB 1.5 parsing from 2.0+, get closer to 80 cols
      - ea027b3... The dcb prior to v1.5 is pretty hopeless, just add a crt.
      - 921fbcc... randr12: avoid nv11 chip lockup when saving palette regs
      - 9d46930... xv: oops
      - 9213c39... xv: post damage after we draw (rh#492239)
      - d68a052... kms: small cleanup
      - c9cb6a6... rh#492511 has a CRTC_OWNER of 0x7 for some reason
      - 95bff61... randr12: fix LVDS legitimately disconnected case
      - f86e395... randr12: permit vga outputs to be force enabled in xorg.conf
      - 8427b39... randr12: move a load of hw mode programming into nouveau_hw.c
      - 163bdce... Turn the smaller mmio wrappers into static inline
      - 21ee927... Put arbitration and mnp calcs in separate file
      - 83dc890... nv50: use E-EDID when available + apply edid quirks
      - 2c130cf... nv50: fix xf86GetDefaultModes() call for older servers
      - f1907dc... nv50: add default modes to mode pool for LVDS panel
      - 7da6fdb... kms: fix bug which prevented getting edid from the kernel
      - f431e20... randr: fix crash when rotation requested
      - 36dedd0... kms: check for mm_enabled as an additional test for kms
        presence
      - a923bc1... nv50/xv: correct rendering to partically obscured windows
      - 01cee29... nv50: call NVSync() in CloseScreen() before restoring video
        mode
      - aa7c037... kms: implement AdjustFrame, should fix crash in fdo#24236
      - 61879b8... kms: drm_mode_modeinfo struct changed names at some point
      - 79306fc... dri: fail harder
      - da1ba93... device close doesn't belong in DRI close, can have DRM
        without DRI
      - 56b11c7... Fix mouse cursor disappearing when near top/left edge of
        screen.
      - 4067ab4... another ppc fix
      - 862dba8... more ppc..
      - 3063486... fix ppc build
      - d80fe78... Fix nouveau_hw_decode_pll on NV30/35.
      - 62aa81d... Some laptop mode finding fixes resulting from rh#487456
      - aa6edfa... randr12: name VGA CRTC fields
      - 7b7c44c... randr12: rename reg state members to follow reg names
      - 4ae6c22... randr12: name some FP flags, move some unrelated stuff out
        from nvreg.h
      - b50b49f... pre-nv50: use nvidia's names for PRAMDAC regs where known
      - a9df304... pre-nv50: use nvidia's names for PCRTC regs where known
      - 2c0710d... Separate maximum limits for encoder devices and i2c records,
        DCB_ prefixes
      - 0db27a6... Add DCB 1.5 entry from a GeForce2 Go reported by Martin
        Ketzer on the ML
      - 3e7fa97... dri: pass object handle instead of offset if using real mm
      - 88efe40... dri2: initial implementation, only with driver pixmaps
      - 675126e... kms: support framebuffer resize if driver pixmaps enabled
      - 8b354b9... kms: copy old fb to new fb on modeset
      - 6658403... Call NVEnterVT from NVScreenInit rather than duplicating it.
      - f59fef1... exa: fix multiple prepare/finish_access on a pixmap
      - 75a1c41... Wrap bios endian casting
      - 3666d73... Switch to using pll_vals struct for passing pll stuff around
      - a3dbc06... randr12: cull old unused pll code
      - 71c821b... Don't pointlessly overallocate cursor storage
      - 7284c07... randr12: nv10 hw cursor fixes/changes
      - bcc3a14... randr12: use nv0x cursor colour expansion funcs on later
        cards, unify argb paths
      - b21c807... randr12: store nv0x hw cursor image in VRAM
      - 3ea4b19... Kill pre-randr12 hwcursor code, and tidy randr12 hwcursor
        code
      - b988160... Remove calls to load ddc and i2c modules -- they're built-in
        since server 1.3
      - d5893ec... Hack around missing display table in rdivacky's GeForce 7050
        PV/nForce 630a
      - 369e1ef... Fix xserver shutdown for randr12 off
      - 8343d6b... Remove bios lvds parsing pxclk test; ddc_permitted is a
        sufficient condition
      - 8b56c69... Name some regs/values and reduce crtc reg struct size
      - 79d23d8... improve drm/dri initialisation code
      - bd14482... kms: cleanup set_property
      - 7a45592... kms: get current values for output properties on startup
      - 7095e89... kms: work around some xserver stupidity with DPMS
      - 8f9a580... Another DCB 1.5 entry (seen in rh#455194)
      - 9a71990... randr12: add output properties for digital vibrance and
        image sharpening
      - 678ddc2... randr12: functionate output properties creation
      - ed9bd88... kms: remove early-exit from gamma_set, the kernel side works
        now
      - 98c9e4e... kms: work around some bong hits with dpms
      - 88ae2c9... kms: implement dpms
      - 5269cc8... randr12: make props code slightly less awful to behold
      - 0b87c49... More robust PLL upclocking for old cards
      - cb237a3... bios/randr12: mode validation fixes (includes fix for #20298)
      - 9cfccd7... Handle failure to calculate pll values better
      - 1e99440... xv: return BadAlloc if destination pixmap is not put into
        EXA offscreen (#15792)
      - 77347da... Remove duplicated DCB parsing
      - 1b6cabe... Remove VBIOS access in parse_dcb_entry
      - 72fd0ae... randr12: no need to re-detect edid for lvds, it's not going
        away
      - ae981a8... nv50: some minor modesetting changes
      - 42f99e6... nv30/xv: restore original viewport/clipping after putimage
      - 56bb8f8... Allow parse_fp_mode_table for x86 cards that find themselves
        on ppc
      - 1c2f33e... Don't rely on the bios mobile feature bit for BMP biosen
        (#19986)
      - e436c7e... randr12: make treatment of CR4B more closely resemble blob's
        behaviour
      - c61102b... Parse bios fp mode during modesetting, removing extra alloc
      - 631e15a... Get dual_link and dithering bios info through lvds table
        parsing function
      - 2d43771... Call parse_lvds_manufacturer_table during modesetting only
        (#19986 partial fix)
      - ce8f5d7... Variety of LVDS script changes
      - 071d537... Read embedded bios edid only on demand
      - f04689c... move memset of fb after NVSave(), hopefully fix lost VGA
        fonts
      - 6961efb... kms: fix check for xf86drmMode.h
      - 76fa656... Detypedef bios_t, rename bios io functions, group various
        helper functions
      - 39c9d02... Move parsed DCB to bios structs, split into public and
        private parts
      - 275daaf... Split bios struct into struct for nv_bios.c, and exported
        public info struct
      - 8b3e966... Remove never updated bios opcodes 0x31, 0x5A and 0x73
      - ce9eb05... Trivial bios convenience variable changes
      - cfeef11... exa: forgot to check if EXA_SUPPORTS_PREPARE_AUX was defined
      - 37a85dc... exa: we support PREPARE_AUX
      - 1249fd2... Revert "exa: support major version 3"
      - 1c4a284... Rework PLL decoding in terms of pll_vals, save/restore
        pll_vals on vt switch
      - 81b4732... New common struct for pll values
      - adf2e35... Check whether NV_RAMDAC_580 has changed when setting PLLs
      - b7f99ae... exa: support major version 3
      - d91fc78... kms: fix resize func
      - 535498b... clear the scanout buffer on statup to avoid seeing garbage
        on-screen
      - 0227673... nv50/exa: properly align offset for mem_tile ioctl
      - e09f50e... bios/randr12: fix dual link TMDS (#20006)
      - b968db7... Return of "bios: fix create_i2c_device for g80"
      - 0a439ba... Parse DCB before running init
      - 870b6f0... Split parsing and init into separate functions
      - 0280a0c... Attempt to remove pNv and bios_t use in parsing the DCB
      - 9179c66... Variety of DCB enhancements
      - 317ca47... Revert "bios: fix create_i2c_device for g80"
      - 7b25a30... nv04: unbreak copy
      - 60c8bb1... default to autodetecting whether to enable the driver's kms
        paths
      - a31b1d0... exa: reimplement driver-controlled pixmaps
      - d97e993... exa: preparation for reintroducing driver-controlled pixmaps
      - 1e00c7d... shadowfb: clip copied regions to frontbuffer size.
      - efe2796... nv50: correct a poorly written comment
      - 2573c06... exa: remove exaWaitSync() call in nouveau_exa_pixmap_map()
      - 5000535... exa: don't need exaMarkSync on DFS, the operation will be
        done already
      - a7e7c55... xv: remove notifier usage
      - 8ecb8d5... exa: remove notifier waits in UTS/DFS
      - cfb884b... bios: add some more valid regs
      - ca72ca2... bios: fix create_i2c_device for g80
      - bbd7041... bios: implement opcode 0x76 (INIT_IO_CONDITION).
      - 5dd2cbe... exa: add nouveau_exa_pixmap_is_tiled
      - 15ccf72... randr12: anti-crash measures for #19854
      - 17e9d4b... randr12: use bios PLL setting routines for modesetting
      - e444e0e... Readability improvements for nv_hw.c and nvreg.h
      - f5ea66c... Pull in extras from CRTC PLL code to bios routines
      - 4166365... Pull out ramdac580 setting and powerctrl_1 shift code to
        separate functions
      - 8b70418... Miscellaneous fixes to bios PLL code
      - 01bb4c1... Make PROM score badly, out of available bios images, if
        checksum bad
      - 30848dd... randr12: bodge-in continuous timings when the scaler is in
        use (#19203)
      - 0387ac3... Allow reading of PROM and PCI rom on PPC (for people using
        x86 cards)
      - 6ad66c0... bios/randr12: be strict about when to use modes from bios vs
        modes from ddc
      - b5391eb... Simplify FP strapping semantics and trust bios parsing of
        use_straps_for_mode
      - 34c2b15... bios/randr12: misc (mainly lvds related) clarifications and
        cleanups
      - 98b8cad... Always allocate 2 hw cursors.
      - f109981... Fix a few warnings.
      - 691589d... Fix some cursor fallout, mostly in legacy code.
      - 945f0cb... kms: update drmmode_display
      - ba1f897... keep resources around after leavevt, far too problematic
        currently

diff --git a/debian/changelog b/debian/changelog
index 5265fd8..2f9c024 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,261 @@
+xserver-xorg-video-nouveau (1:0.0.10~git+20090519+9656762-1) UNRELEASED; urgency=low
+
+  * New upstream snapshot (Closes: #526144)
+    - 9656762... nv50: fix multiple-display hangs when encoders swap crtcs
+    - d70eed9... randr12: fix digital dpms regression
+    - 1072103... exa: use exaDriverAlloc() to prevent issues across exa 
+      changes
+    - 8502a80... Fix server regeneration again
+    - 7a796a9... randr12: off-chip lvds for nv28 (rh#487456)
+    - 5959512... 'drmCheckModesettingSupported' implicit function declaration 
+      fix
+    - f62719e... Unused variable warning fixes
+    - c8260ef... Fix crash with Xinerama enabled
+    - 1a478ed... randr12: de-magic ramdac general control values
+    - 6c209a8... randr12: pre-nv17 load detection
+    - 3971dda... randr12: fix fp_control again again again
+    - 0ef1603... randr12: solve off-chip encoder crtc exclusion in prepare, 
+      rather than dpms
+    - 0447ce0... randr12: simplify nv11 digital encoder-crtc binding
+    - f69b34a... nv50: return immediately in GetDDCModes if no DDC on 
+      connector...
+    - 45e1618... bios: use NV_ARCH_50 to match G8x chips
+    - 3d61697... nv50: remove reading back vbios-programmed lvds native mode
+    - bade249... nv50: group encoders into connectors by i2c port
+    - 9ee2ac1... bios: remove dodgy mode-table search for g80
+    - 6282574... bios: modify get_fp_strap() for g80
+    - 09b832e... nv50: merge NV50SorSetClockMode and NV50SorSetClockModeLVDS
+    - ed2c185... bios/nv50: initial parsing of display script tables, not 
+      quite complete
+    - 3fccc9e... bios: some nv50 init scripts have flags in reg values, deal 
+      with (1<<30)
+    - 2b4b3da... bios: dcb location is only 2 bits
+    - 7b5bfff... bios: parse BIT U table
+    - e4260ec... randr12: more use of logging abstraction in modesetting code
+    - 4d0fdba... randr12: fix for off-chip dual link digital (enable extra 
+      wide interface?)
+    - bb246d7... Partial fix for nv28 lvds bios parsing (part of rh#487456)
+    - 2915926... plls: max_log2p_bias is likely actually max_log2p
+    - 47bb00f... nv50: missed a WAIT_RING
+    - 523ccec... nv50: use vbios-programmed lvds mode as native mode if no ddc
+    - fa2f111... Remove pNv->GART conditional for selecting CB_LOCATION in 
+      AGP/PCI
+    - 7100c06... kms: fix displayWidth in resize
+    - ef2de25... do e-edid for legacy modesetting path
+    - d8545e6... bios: logic typo from earlier commit
+    - 960a5c8... nv50: modify ddc<->nvreg assignments again..
+    - 3a6c709... kms: fix setting the randr edid property
+    - a1194b3... bios: fix typo
+    - 11451ca... bios: some G8x don't have PBUS at 0x1800, us 0x88000 
+      unconditionally there
+    - 62d69bd... bios: add exception for chipset 0x73 for lack of fp table
+    - 620d519... consistent connector naming across <nv50, nv50 and kms
+    - a5d45c8... randr12: set 1 on cr59 for off-chip digital, 0 otherwise 
+      (#21023, rh#492399)
+    - d63c924... randr12: unlock CR21 *after* turning off digital output
+    - 11be9a9... nv50: fix i2c port addresses
+    - e2aa037... randr12: fall back to standard timings when finding native 
+      mode (rh#492819)
+    - 6965663... randr12: fix hw cursor for fully transparent pixels
+    - d12f70c... randr12: pre-nv17 digital fixes
+    - ea567db... randr12: fix restore for cards where CR21 is not left 
+      unlocked at POST
+    - bd263d8... randr12: make nv11 dvi work for both crtcs
+    - 52c287d... Every card since nv5 can do panels
+    - 3d371a7... randr12: enable tmds reg access on pre-nv17
+    - 1bb85c8... randr12: reorder ramdac reg access
+    - 4465fdd... randr12: remove nv30 special case
+    - 72eced5... randr12: fix/improve a load of version/feature tests
+    - 37c6916... bios: fix chips with pll limits table version 0
+    - 76c5a05... bios: xf86DrvMsg->NV_ERROR
+    - b1b9bcb... bios: support for pll limits table v3.0
+    - 8c85b4b... kms: CONNECTORn -> CONNECTOR-n
+    - 4e1c323... Restore call to NVDRIGetVersion, to ensure the dri module is 
+      loaded
+    - c973f75... Abstract logging in nv_bios.c
+    - b17bebd... nForce DIMM check is now in DRM
+    - 9c991d3... randr12: FP_TG_CONTROL 2: dpms improvements
+    - 5fb2888... randr12: FP_TG_CONTROL 1: turn off digital path when using 
+      VGA encoder
+    - 8023dc3... Split DCB 1.5 parsing from 2.0+, get closer to 80 cols
+    - ea027b3... The dcb prior to v1.5 is pretty hopeless, just add a crt.
+    - 921fbcc... randr12: avoid nv11 chip lockup when saving palette regs
+    - 9d46930... xv: oops
+    - 9213c39... xv: post damage after we draw (rh#492239)
+    - d68a052... kms: small cleanup
+    - c9cb6a6... rh#492511 has a CRTC_OWNER of 0x7 for some reason
+    - 95bff61... randr12: fix LVDS legitimately disconnected case
+    - f86e395... randr12: permit vga outputs to be force enabled in xorg.conf
+    - 8427b39... randr12: move a load of hw mode programming into nouveau_hw.c
+    - 163bdce... Turn the smaller mmio wrappers into static inline
+    - 21ee927... Put arbitration and mnp calcs in separate file
+    - 83dc890... nv50: use E-EDID when available + apply edid quirks
+    - 2c130cf... nv50: fix xf86GetDefaultModes() call for older servers
+    - f1907dc... nv50: add default modes to mode pool for LVDS panel
+    - 7da6fdb... kms: fix bug which prevented getting edid from the kernel
+    - f431e20... randr: fix crash when rotation requested
+    - 36dedd0... kms: check for mm_enabled as an additional test for kms 
+      presence
+    - a923bc1... nv50/xv: correct rendering to partically obscured windows
+    - 01cee29... nv50: call NVSync() in CloseScreen() before restoring video 
+      mode
+    - aa7c037... kms: implement AdjustFrame, should fix crash in fdo#24236
+    - 61879b8... kms: drm_mode_modeinfo struct changed names at some point
+    - 79306fc... dri: fail harder
+    - da1ba93... device close doesn't belong in DRI close, can have DRM 
+      without DRI
+    - 56b11c7... Fix mouse cursor disappearing when near top/left edge of 
+      screen.
+    - 4067ab4... another ppc fix
+    - 862dba8... more ppc..
+    - 3063486... fix ppc build
+    - d80fe78... Fix nouveau_hw_decode_pll on NV30/35.
+    - 62aa81d... Some laptop mode finding fixes resulting from rh#487456
+    - aa6edfa... randr12: name VGA CRTC fields
+    - 7b7c44c... randr12: rename reg state members to follow reg names
+    - 4ae6c22... randr12: name some FP flags, move some unrelated stuff out 
+      from nvreg.h
+    - b50b49f... pre-nv50: use nvidia's names for PRAMDAC regs where known
+    - a9df304... pre-nv50: use nvidia's names for PCRTC regs where known
+    - 2c0710d... Separate maximum limits for encoder devices and i2c records, 
+      DCB_ prefixes
+    - 0db27a6... Add DCB 1.5 entry from a GeForce2 Go reported by Martin 
+      Ketzer on the ML
+    - 3e7fa97... dri: pass object handle instead of offset if using real mm
+    - 88efe40... dri2: initial implementation, only with driver pixmaps
+    - 675126e... kms: support framebuffer resize if driver pixmaps enabled
+    - 8b354b9... kms: copy old fb to new fb on modeset
+    - 6658403... Call NVEnterVT from NVScreenInit rather than duplicating it.
+    - f59fef1... exa: fix multiple prepare/finish_access on a pixmap
+    - 75a1c41... Wrap bios endian casting
+    - 3666d73... Switch to using pll_vals struct for passing pll stuff around
+    - a3dbc06... randr12: cull old unused pll code
+    - 71c821b... Don't pointlessly overallocate cursor storage
+    - 7284c07... randr12: nv10 hw cursor fixes/changes
+    - bcc3a14... randr12: use nv0x cursor colour expansion funcs on later 
+      cards, unify argb paths
+    - b21c807... randr12: store nv0x hw cursor image in VRAM
+    - 3ea4b19... Kill pre-randr12 hwcursor code, and tidy randr12 hwcursor 
+      code
+    - b988160... Remove calls to load ddc and i2c modules -- they're built-in 
+      since server 1.3
+    - d5893ec... Hack around missing display table in rdivacky's GeForce 7050 
+      PV/nForce 630a
+    - 369e1ef... Fix xserver shutdown for randr12 off
+    - 8343d6b... Remove bios lvds parsing pxclk test; ddc_permitted is a 
+      sufficient condition
+    - 8b56c69... Name some regs/values and reduce crtc reg struct size
+    - 79d23d8... improve drm/dri initialisation code
+    - bd14482... kms: cleanup set_property
+    - 7a45592... kms: get current values for output properties on startup
+    - 7095e89... kms: work around some xserver stupidity with DPMS
+    - 8f9a580... Another DCB 1.5 entry (seen in rh#455194)
+    - 9a71990... randr12: add output properties for digital vibrance and 
+      image sharpening
+    - 678ddc2... randr12: functionate output properties creation
+    - ed9bd88... kms: remove early-exit from gamma_set, the kernel side works 
+      now
+    - 98c9e4e... kms: work around some bong hits with dpms
+    - 88ae2c9... kms: implement dpms
+    - 5269cc8... randr12: make props code slightly less awful to behold
+    - 0b87c49... More robust PLL upclocking for old cards
+    - cb237a3... bios/randr12: mode validation fixes (includes fix for #20298)
+    - 9cfccd7... Handle failure to calculate pll values better
+    - 1e99440... xv: return BadAlloc if destination pixmap is not put into 
+      EXA offscreen (#15792)
+    - 77347da... Remove duplicated DCB parsing
+    - 1b6cabe... Remove VBIOS access in parse_dcb_entry
+    - 72fd0ae... randr12: no need to re-detect edid for lvds, it's not going 
+      away
+    - ae981a8... nv50: some minor modesetting changes
+    - 42f99e6... nv30/xv: restore original viewport/clipping after putimage
+    - 56bb8f8... Allow parse_fp_mode_table for x86 cards that find themselves 
+      on ppc
+    - 1c2f33e... Don't rely on the bios mobile feature bit for BMP biosen 
+      (#19986)
+    - e436c7e... randr12: make treatment of CR4B more closely resemble blob's 
+      behaviour
+    - c61102b... Parse bios fp mode during modesetting, removing extra alloc
+    - 631e15a... Get dual_link and dithering bios info through lvds table 
+      parsing function
+    - 2d43771... Call parse_lvds_manufacturer_table during modesetting only 
+      (#19986 partial fix)
+    - ce8f5d7... Variety of LVDS script changes
+    - 071d537... Read embedded bios edid only on demand
+    - f04689c... move memset of fb after NVSave(), hopefully fix lost VGA 
+      fonts
+    - 6961efb... kms: fix check for xf86drmMode.h
+    - 76fa656... Detypedef bios_t, rename bios io functions, group various 
+      helper functions
+    - 39c9d02... Move parsed DCB to bios structs, split into public and 
+      private parts
+    - 275daaf... Split bios struct into struct for nv_bios.c, and exported 
+      public info struct
+    - 8b3e966... Remove never updated bios opcodes 0x31, 0x5A and 0x73
+    - ce9eb05... Trivial bios convenience variable changes
+    - cfeef11... exa: forgot to check if EXA_SUPPORTS_PREPARE_AUX was defined
+    - 37a85dc... exa: we support PREPARE_AUX
+    - 1249fd2... Revert "exa: support major version 3"
+    - 1c4a284... Rework PLL decoding in terms of pll_vals, save/restore 
+      pll_vals on vt switch
+    - 81b4732... New common struct for pll values
+    - adf2e35... Check whether NV_RAMDAC_580 has changed when setting PLLs
+    - b7f99ae... exa: support major version 3
+    - d91fc78... kms: fix resize func
+    - 535498b... clear the scanout buffer on statup to avoid seeing garbage 
+      on-screen
+    - 0227673... nv50/exa: properly align offset for mem_tile ioctl
+    - e09f50e... bios/randr12: fix dual link TMDS (#20006)
+    - b968db7... Return of "bios: fix create_i2c_device for g80"
+    - 0a439ba... Parse DCB before running init
+    - 870b6f0... Split parsing and init into separate functions
+    - 0280a0c... Attempt to remove pNv and bios_t use in parsing the DCB
+    - 9179c66... Variety of DCB enhancements
+    - 317ca47... Revert "bios: fix create_i2c_device for g80"
+    - 7b25a30... nv04: unbreak copy
+    - 60c8bb1... default to autodetecting whether to enable the driver's kms 
+      paths
+    - a31b1d0... exa: reimplement driver-controlled pixmaps
+    - d97e993... exa: preparation for reintroducing driver-controlled pixmaps
+    - 1e00c7d... shadowfb: clip copied regions to frontbuffer size.
+    - efe2796... nv50: correct a poorly written comment
+    - 2573c06... exa: remove exaWaitSync() call in nouveau_exa_pixmap_map()
+    - 5000535... exa: don't need exaMarkSync on DFS, the operation will be 
+      done already
+    - a7e7c55... xv: remove notifier usage
+    - 8ecb8d5... exa: remove notifier waits in UTS/DFS
+    - cfb884b... bios: add some more valid regs
+    - ca72ca2... bios: fix create_i2c_device for g80
+    - bbd7041... bios: implement opcode 0x76 (INIT_IO_CONDITION).
+    - 5dd2cbe... exa: add nouveau_exa_pixmap_is_tiled
+    - 15ccf72... randr12: anti-crash measures for #19854
+    - 17e9d4b... randr12: use bios PLL setting routines for modesetting
+    - e444e0e... Readability improvements for nv_hw.c and nvreg.h
+    - f5ea66c... Pull in extras from CRTC PLL code to bios routines
+    - 4166365... Pull out ramdac580 setting and powerctrl_1 shift code to 
+      separate functions
+    - 8b70418... Miscellaneous fixes to bios PLL code
+    - 01bb4c1... Make PROM score badly, out of available bios images, if 
+      checksum bad
+    - 30848dd... randr12: bodge-in continuous timings when the scaler is in 
+      use (#19203)
+    - 0387ac3... Allow reading of PROM and PCI rom on PPC (for people using 
+      x86 cards)
+    - 6ad66c0... bios/randr12: be strict about when to use modes from bios vs 
+      modes from ddc
+    - b5391eb... Simplify FP strapping semantics and trust bios parsing of 
+      use_straps_for_mode
+    - 34c2b15... bios/randr12: misc (mainly lvds related) clarifications and 
+      cleanups
+    - 98b8cad... Always allocate 2 hw cursors.
+    - f109981... Fix a few warnings.
+    - 691589d... Fix some cursor fallout, mostly in legacy code.
+    - 945f0cb... kms: update drmmode_display
+    - ba1f897... keep resources around after leavevt, far too problematic 
+      currently
+
+ -- Chris Lamb <lamby@debian.org>  Tue, 19 May 2009 23:16:52 +0100
+
 xserver-xorg-video-nouveau (1:0.0.10~git+20090205+4dfd0b1-1) experimental; urgency=low
 
   * New upstream snapshot (Closes: #514080)

commit 9656762ba186e91dd2b3b7f3f9427ba520982f9d
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Thu May 14 10:26:44 2009 +1000

    nv50: fix multiple-display hangs when encoders swap crtcs

diff --git a/src/nouveau_crtc.h b/src/nouveau_crtc.h
index d86dc90..45d0eee 100644
--- a/src/nouveau_crtc.h
+++ b/src/nouveau_crtc.h
@@ -32,6 +32,7 @@ typedef struct nouveauCrtc {
 	char *name;
 	uint8_t index;
 	Bool active;
+	Bool blanked;
 
 	/* Scanout area. */
 	struct nouveau_bo * front_buffer;
diff --git a/src/nv50_crtc.c b/src/nv50_crtc.c
index 64dc85f..3502dd7 100644
--- a/src/nv50_crtc.c
+++ b/src/nv50_crtc.c
@@ -308,6 +308,8 @@ NV50CrtcBlank(nouveauCrtcPtr crtc, Bool blanked)
 			NV50CrtcCommand(crtc, NV84_CRTC0_BLANK_UNK1, NV84_CRTC0_BLANK_UNK1_UNBLANK);
 		NV50CrtcCommand(crtc, NV50_CRTC0_BLANK_CTRL, NV50_CRTC0_BLANK_CTRL_UNBLANK);
 	}
+
+	crtc->blanked = blanked;
 }
 
 static void
diff --git a/src/nv50_randr.c b/src/nv50_randr.c
index 3459f05..a261a3b 100644
--- a/src/nv50_randr.c
+++ b/src/nv50_randr.c
@@ -67,17 +67,35 @@ nv50_crtc_mode_fixup(xf86CrtcPtr crtc, DisplayModePtr mode,
 static void
 nv50_crtc_prepare(xf86CrtcPtr crtc)
 {
-	ScrnInfoPtr pScrn = crtc->scrn;
 	NV50CrtcPrivatePtr nv_crtc = crtc->driver_private;
-	xf86DrvMsg(pScrn->scrnIndex, X_INFO, "nv50_crtc_prepare is called for %s.\n", nv_crtc->crtc->index ? "CRTC1" : "CRTC0");
-
+	ScrnInfoPtr pScrn = crtc->scrn;
 	NVPtr pNv = NVPTR(pScrn);
+	xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn);
+	nouveauOutputPtr output;
+	int i;
+
+	/* Rewire internal stucts to match randr-1.2... yet again.. */
+	for (i = 0; i < xf86_config->num_output; i++) {
+		xf86OutputPtr output = xf86_config->output[i];
+		NV50OutputPrivatePtr nv50_output = output->driver_private;
+		nouveauOutputPtr nv_output = nv50_output->output;
+
+		if (output->crtc) {
+			NV50CrtcPrivatePtr nv50_crtc =
+				output->crtc->driver_private;
+			nv_output->crtc = nv50_crtc->crtc;
+		} else {
+			nv_output->crtc = NULL;
+		}
+	}
+
+	xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+		   "nv50_crtc_prepare is called for %s.\n",
+		   nv_crtc->crtc->index ? "CRTC1" : "CRTC0");
 
 	nv_crtc->crtc->active = TRUE;
 	nv_crtc->crtc->modeset_lock = TRUE;
 
-	nouveauOutputPtr output;
-
 	/* Detach any unused outputs. */
 	for (output = pNv->output; output != NULL; output = output->next) {
 		if (!output->crtc)
@@ -171,7 +189,8 @@ nv50_crtc_show_cursor(xf86CrtcPtr crtc)
 	NV50CrtcPrivatePtr nv_crtc = crtc->driver_private;
 	//xf86DrvMsg(pScrn->scrnIndex, X_INFO, "nv50_crtc_show_cursor is called for %s.\n", nv_crtc->crtc->index ? "CRTC1" : "CRTC0");
 
-	nv_crtc->crtc->ShowCursor(nv_crtc->crtc, FALSE);
+	if (!nv_crtc->crtc->blanked)
+		nv_crtc->crtc->ShowCursor(nv_crtc->crtc, FALSE);
 }
 
 static void

commit d70eed91b2909ba0b20415ab1d5a099fb6b39b08
Author: Stuart Bennett <stuart@freedesktop.org>
Date:   Tue May 12 16:54:33 2009 +0100

    randr12: fix digital dpms regression
    
    introduced in 3971dda57004894d5d4fc9420aa00da400815af9
    
    setting two different "blank" DPMS modes (say Suspend, followed by Off)
    consecutively would lead to the saved fp control value getting overwritten
    with FP_TG_CONTROL_OFF flavoured state, so DPMS on would then never work
    
    also, an improvement to LVDS DPMS state caching

diff --git a/src/nv_crtc.c b/src/nv_crtc.c
index 4ccac45..83d5e40 100644
--- a/src/nv_crtc.c
+++ b/src/nv_crtc.c
@@ -182,7 +182,7 @@ nv_crtc_dpms(xf86CrtcPtr crtc, int mode)
 	/* nv4ref indicates these two RPC1 bits inhibit h/v sync */
 	crtc1A = NVReadVgaCrtc(pNv, nv_crtc->head, NV_CIO_CRE_RPC1_INDEX) & ~0xC0;
 	switch(mode) {
-		case DPMSModeStandby:
+	case DPMSModeStandby:
 		/* Screen: Off; HSync: Off, VSync: On -- Not Supported */
 		seq1 = 0x20;
 		crtc17 = 0x80;
diff --git a/src/nv_output.c b/src/nv_output.c
index dd0cede..e04b743 100644
--- a/src/nv_output.c
+++ b/src/nv_output.c
@@ -831,6 +831,12 @@ static void nv_digital_output_prepare_sel_clk(NVPtr pNv, struct nouveau_encoder
 			   NV_PRAMDAC_FP_TG_CONTROL_HSYNC_DISABLE |	\
 			   NV_PRAMDAC_FP_TG_CONTROL_VSYNC_DISABLE)
 
+static bool is_fpc_off(uint32_t fpc)
+{
+	return ((fpc & (FP_TG_CONTROL_ON | FP_TG_CONTROL_OFF)) ==
+							FP_TG_CONTROL_OFF);
+}
+
 static void
 nv_output_prepare(xf86OutputPtr output)
 {
@@ -963,8 +969,7 @@ static void dpms_update_fp_control(ScrnInfoPtr pScrn, struct nouveau_encoder *nv
 		nv_crtc = to_nouveau_crtc(crtc);
 		fpc = &pNv->ModeReg.crtc_reg[nv_crtc->head].fp_control;
 
-		if ((*fpc & (FP_TG_CONTROL_ON | FP_TG_CONTROL_OFF)) ==
-							FP_TG_CONTROL_OFF)
+		if (is_fpc_off(*fpc))
 			/* using saved value is ok, as (is_digital && dpms_on &&
 			 * fp_control==OFF) is (at present) *only* true when
 			 * fpc's most recent change was by below "off" code
@@ -979,7 +984,7 @@ static void dpms_update_fp_control(ScrnInfoPtr pScrn, struct nouveau_encoder *nv
 			fpc = &pNv->ModeReg.crtc_reg[nv_crtc->head].fp_control;
 
 			nv_crtc->fp_users &= ~(1 << nv_encoder->dcb->index);
-			if (!nv_crtc->fp_users) {
+			if (!is_fpc_off(*fpc) && !nv_crtc->fp_users) {
 				nv_crtc->dpms_saved_fp_control = *fpc;
 				/* cut the FP output */
 				*fpc &= ~FP_TG_CONTROL_ON;
@@ -990,10 +995,17 @@ static void dpms_update_fp_control(ScrnInfoPtr pScrn, struct nouveau_encoder *nv
 		}
 }
 
+static bool is_powersaving_dpms(int mode)
+{
+	return (mode == DPMSModeStandby || mode == DPMSModeSuspend ||
+							mode == DPMSModeOff);
+}
+
 static void
 lvds_encoder_dpms(ScrnInfoPtr pScrn, struct nouveau_encoder *nv_encoder, xf86CrtcPtr crtc, int mode)
 {
 	NVPtr pNv = NVPTR(pScrn);
+	bool was_powersaving = is_powersaving_dpms(nv_encoder->last_dpms);
 
 	if (nv_encoder->last_dpms == mode)
 		return;
@@ -1002,6 +1014,9 @@ lvds_encoder_dpms(ScrnInfoPtr pScrn, struct nouveau_encoder *nv_encoder, xf86Crt
 	NV_TRACE(pScrn, "Setting dpms mode %d on lvds encoder (output %d)\n",
 		 mode, nv_encoder->dcb->index);
 
+	if (was_powersaving && is_powersaving_dpms(mode))
+		return;
+
 	if (nv_encoder->dcb->lvdsconf.use_power_scripts) {
 		/* when removing an output, crtc may not be set, but PANEL_OFF
 		 * must still be run

commit 10721038b854d9945ae551c6aa382b90f5d743e1
Author: Ben Skeggs <skeggsb@gmail.com>
Date:   Thu May 7 21:39:41 2009 +1000

    exa: use exaDriverAlloc() to prevent issues across exa changes

diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
index b7bcc87..949f747 100644
--- a/src/nouveau_exa.c
+++ b/src/nouveau_exa.c
@@ -546,7 +546,8 @@ nouveau_exa_init(ScreenPtr pScreen)
 	NVPtr pNv = NVPTR(pScrn);
 	ExaDriverPtr exa;
 
-	if(!(exa = (ExaDriverPtr)xnfcalloc(sizeof(ExaDriverRec), 1))) {
+	exa = exaDriverAlloc();
+	if (!exa) {
 		pNv->NoAccel = TRUE;
 		return FALSE;
 	}

commit 8502a8024354b88a4f19c7ad355268bb20772356
Author: Stuart Bennett <stuart@freedesktop.org>
Date:   Wed May 6 18:01:54 2009 +0100

    Fix server regeneration again
    
    The DRM is now opened in PreInit, so it must not be closed in CloseScreen,
    as the DRM wouldn't then be open in the subsequent ScreenInit

diff --git a/src/nv_driver.c b/src/nv_driver.c
index b8598a2..2b3a596 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -786,8 +786,6 @@ NVCloseScreen(int scrnIndex, ScreenPtr pScreen)
 		nouveau_dri2_fini(pScreen);
 #endif
 
-	NVCloseDRM(pScrn);
-
 	if (pNv->randr12_enable)
 		xf86_cursors_fini(pScreen);
 	if (pNv->ShadowPtr) {
@@ -842,6 +840,8 @@ NVFreeScreen(int scrnIndex, int flags)
 	if (!pNv)
 		return;
 
+	NVCloseDRM(pScrn);
+
 	if (pNv->Architecture == NV_ARCH_50 && !pNv->kms_enable) {
 		NV50ConnectorDestroy(pScrn);
 		NV50OutputDestroy(pScrn);

commit 7a796a94d0c0e18a77c5c50a0f9ca9c218d7201f
Author: Stuart Bennett <stuart@freedesktop.org>
Date:   Thu Apr 30 16:04:59 2009 +0100

    randr12: off-chip lvds for nv28 (rh#487456)
    
    Quite how this possibly works with the off-chip DVI connector the laptop
    in question also claims to have is unclear: I suspect that (at least in
    nouveau's implementation) it doesn't.  Sadly we've no dvi-in-use reg dump
    to see what should be done.

diff --git a/src/nv_output.c b/src/nv_output.c
index 68776e6..dd0cede 100644
--- a/src/nv_output.c
+++ b/src/nv_output.c
@@ -877,6 +877,8 @@ nv_output_prepare(xf86OutputPtr output)
 				*cr_lcd |= head ? 0x0 : 0x8;
 			else {
 				*cr_lcd |= (nv_encoder->dcb->or << 4) & 0x30;
+				if (nv_encoder->dcb->type == OUTPUT_LVDS)
+					*cr_lcd |= 0x30;
 				if ((*cr_lcd & 0x30) == (*cr_lcd_oth & 0x30)) {
 					/* avoid being connected to both crtcs */
 					*cr_lcd_oth &= ~0x30;

commit 5959512ef5ce20aa52bbd41d5d987392f27b9e65
Author: Stuart Bennett <stuart@freedesktop.org>
Date:   Wed May 6 14:44:40 2009 +0100

    'drmCheckModesettingSupported' implicit function declaration fix

diff --git a/src/nv_driver.c b/src/nv_driver.c
index 74855ce..b8598a2 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -27,6 +27,9 @@
 #include "xorg-server.h"
 #include "xf86int10.h"
 #include "xf86drm.h"
+#ifdef XF86DRM_MODE
+#include "xf86drmMode.h"
+#endif
 
 /*
  * Forward definitions for the functions that make up the driver.

commit f62719e2ac8b04d4496dc56d5fa181934bcea9f7
Author: Peter Hjalmarsson <xake@rymdraket.net>
Date:   Wed May 6 14:43:22 2009 +0100

    Unused variable warning fixes

diff --git a/src/nv50_sor.c b/src/nv50_sor.c
index 1e271a8..ea18e77 100644
--- a/src/nv50_sor.c
+++ b/src/nv50_sor.c
@@ -110,7 +110,6 @@ NV50SorSetClockMode(nouveauOutputPtr output, int clock)
 	ScrnInfoPtr pScrn = output->scrn;
 	NVPtr pNv = NVPTR(pScrn);
 	const int limit = output->dcb->type == OUTPUT_LVDS ? 112000 : 165000;
-	int ret;
 
 	xf86DrvMsg(pScrn->scrnIndex, X_INFO,
 		   "NV50SorSetClockMode is called.\n");
diff --git a/src/nv_i2c.c b/src/nv_i2c.c
index 2725370..e8b2e29 100644
--- a/src/nv_i2c.c
+++ b/src/nv_i2c.c
@@ -85,7 +85,6 @@ NVI2CPutBits(I2CBusPtr b, int clock, int data)
 static uint32_t NV50_GetI2CPort(ScrnInfoPtr pScrn, int index)
 {
 	NVPtr pNv = NVPTR(pScrn);
-	uint32_t reg;
 
 	if (index <= 3)
 		return 0xe138 + (index * 24);


Reply to: