commit b71de83b7fae0abeb311251e6144294d319062cf
Author: Lyude <lyude@redhat.com>
Date:   Tue Mar 7 18:44:43 2017 -0500

    Bump version to 1.0.14
    
    Signed-off-by: Lyude <lyude@redhat.com>

commit 924083938c8f209d8f6ff472caf8692a644f7e78
Author: Lyude <lyude@redhat.com>
Date:   Fri Mar 3 18:27:42 2017 -0500

    Consider CRTCs disabled when DPMS is off
    
    It turns out there's a difference in X between a CRTC being "disabled"
    and simply having it's DPMS turned off. This is problematic though,
    because if DPMS is turned off you can't really use the CRTC as a normal
    CRTC anyway since page flipping and vblanks will be non-functional. As a
    result, we've been considering DPMS-on CRTCs as enabled and attempt to
    perform pageflips, vblank waits, etc. on them which inevitably fails. and
    usually breaks the display the first time any of the CRTCs have their
    DPMS turned on.
    
    This was a problem that didn't really show itself until kernel 4.10 when
    atomic modesetting was added which caused nouveau to stop trying to
    fulfill pageflips and vblank waits on disabled CRTCs. I'm not sure how
    pageflipping disabled CRTCs ever worked in the first place, but since
    not doing so is the proper behavior anyway I haven't investigated any
    further.
    
    So, copy the ms_crtc_on() function from the modesetting driver and add
    it here as drmmode_crtc_on(), then use that in all of the places where
    we should be checking for both DPMS off and disabled CRTCs.
    
    This fixes issues with the X ceasing to function (usually) after the
    first time a CRTC has it's DPMS turned on. Reproduction recipe:
    
    - Load up gnome-shell on a machine
    - Wait for the display to timeout from inactivity and turn itself off
    - Shake the cursor or press something on the keyboard. Chances are the
      monitor will come back on, but the display remains black until the
      next time the X server is restarted.
    
    Signed-off-by: Lyude <lyude@redhat.com>
    Reviewed-by: Adam Jackson <ajax@redhat.com>

commit 1516d35b06c9cda399bef01d992805d6e63dcbae
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sun Oct 16 15:10:10 2016 -0400

    recognize and accelerate GM20x
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>

commit b00b73c3aa0da1d4cee5c9f580ca65a7bd344e0f
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Mon Oct 17 23:23:41 2016 -0400

    copy: add maxwell/pascal copy engine classes
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>

commit 5a3ada3b0ff3d89441faf35d331bb8b6cf5e51c0
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sun Oct 16 15:03:35 2016 -0400

    nvc0: refactor TIC uploads to allow different specifics per generation
    
    This flips GM10x to using the updated format, which is what I tested
    with. However GM20x and GP10x also use this TIC format.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>

commit 514441f32c5b948ce87668234ab9f01e8ec28dac
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sun Oct 16 12:42:18 2016 -0400

    nvc0: rename BEGIN_IMC0 to IMMED_NVC0
    
    For consistency with mesa. It wasn't used anywhere previously.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>

commit 4459c04a6bc208924fac8082920f6786538bc5cd
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sun Oct 16 12:38:38 2016 -0400

    nvc0: make use of the new hwdefs for TEX_CB_INDEX
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>

commit ea6fd12ea059c6af832bd2180b26d75e00d4ea71
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sun Oct 16 12:38:02 2016 -0400

    hwdefs: update nvc0_3d, add gm107_texture for new TIC format
    
    These are copied directly from the mesa repository.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>

commit a24ded627e42d453546c553d609edc073f59cd57
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Thu Sep 25 20:15:51 2014 -0400

    exa: add GM10x acceleration support
    
    rendercheck -f a8r8g8b8 passes as much as on a GK208, and xv appears to
    work. Very lightly tested.
    
    Instead of sticking coordinates into pushbufs, the vertex shader is
    modified to read them from a constbuf, indexed by vertex id. This
    approach could be used for all nvc0 generations, but I didn't want to
    rock the boat.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>

commit e6479845ec0db20dc733c621b7967b751840a552
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Tue Sep 20 00:31:06 2016 -0400

    Bump version to 1.0.13
    
     - Fixes for reverse prime offload
     - ABI 23 support for Xorg 1.19
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu

commit 6473b68762b0dca2dfccfdfc74100398b7459296
Author: Keith Packard <keithp@keithp.com>
Date:   Tue Jul 19 08:29:40 2016 -0700

    Use NotifyFd for drm and udev fds
    
    NotifyFd is available after API 22, and must be used after API 23.
    
    Signed-off-by: Keith Packard <keithp@keithp.com>

commit a964931e8dc4e06c27749edb4993a656dc261d75
Author: Adam Jackson <ajax@redhat.com>
Date:   Tue Jul 19 10:03:56 2016 -0400

    Adapt Block/WakeupHandler signature for ABI 23
    
    Signed-off-by: Adam Jackson <ajax@redhat.com>

commit 12f77348e7a9579b167b41228dec9e6f97b74de8
Author: Hans de Goede <hdegoede@redhat.com>
Date:   Fri Jun 3 14:46:10 2016 +0200

    Properly cleanup fb for reverse-prime-offload
    
    drmmode_set_scanout_pixmap(pix) adds drmmod->fb_id through a call
    to drmmode_xf86crtc_resize(), but on a subsequent
    drmmode_set_scanout_pixmap(NULL) it would not remove the fb.
    
    This keeps the crtc marked as busy, which causes the dgpu to not
    being able to runtime suspend, after an output attached to the dgpu
    has been used once. Which causes burning through an additional 10W
    of power and the laptop to run quite hot.
    
    This commit adds the missing remove fb call, allowing the dgpu to runtime
    suspend after an external monitor has been plugged into the laptop.
    
    Signed-off-by: Hans de Goede <hdegoede@redhat.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 1da8a937be19e41c51a3d516bd98cee988bca44b
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Thu Jun 2 11:23:53 2016 +1000

    exa/nv50-: fix some potential incomplete pushes
    
    I don't think these should actually be able to happen, given that we
    already reject the unknown formats in the Check() functions.  But,
    just in case...
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit bb57f9af9d179af0962456dca369953521ea8c2c
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Thu Jun 2 10:17:58 2016 +1000

    fix use of out-of-scope data
    
    Reported by Coverity.
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit b824d36c28124955eda4aced5e637aa75eea4d6c
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Wed Jan 13 11:55:06 2016 -0500

    HAS_DIRTYTRACKING_ROTATION also supports multiple CRTCs
    
    A port of commit ff9a6b6f from xf86-video-ati.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93670
    Reported-by: Thomas D. <thfrdue@gmx.de>
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit b18bc036bf9997ea65f5cbd824fd057931e604fe
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Tue Dec 8 15:52:25 2015 +1000

    Bump version to 1.0.12
    
    Various random fixes have been pending for a long while now...
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 6e6d8ac1c7b4ee047a7b40b95dea1e65a7c3211a
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Sun Jun 28 02:33:49 2015 +0200

    Take shift in crtc positions for ZaphodHeads configs into account.
    
    In multi-x-screen ZaphodHeads configurations, there isn't a
    one-to-one mapping of kernel provided drmmode crtc index
    to the index of the corresponding xf86Crtc inside the
    xf86CrtcConfig crtc array anymore, ie. for kernel provided
    drmmode->mode_res->crtcs[i], the i'th crtc won't correspond
    to the xf86Crtc in the i'th slot of the x-screens xf86CrtcConfig
    anymore, once ZaphodHeads has only selected a subset of all crtcs
    of a graphics card for a given x-screen, instead of all crtcs.
    
    This breaks the mapping of bit positions in the bit masks returned
    in kencoder->possible_crtcs and kencoder->possible_clones. A 1 bit
    in position i of those masks allows use of the kernels i'th crtc for
    the given kencoder. The X-Servers dix code checks those bit masks
    for valid xf86Output -> xf86Crtc assignments, assuming that the i'th
    slot xf86CrtcConfigPtr config->crtc[i] corresponds to bit i in the
    xf86Output->possibe_crtcs bitmask, and bails if the bitmask doesn't
    allow the specified assignment of crtc to output. If ZaphodHeads
    breaks the assumption of bit i <-> crtc slot i this ends in failure.
    
    Take this shift of crtc index positions wrt. encoder bitmask bit
    positions into account by bit-shifting positions accordingly when
    assigning encoder->possible_crtcs to output->possible_crtcs, so
    the proper indices match up again for validation by the dix.
    
    This problem wasn't apparent last year when testing the ZaphodHeads
    support on some Kepler cards, as apparently the encoder->possible_crtcs
    bitmasks returned for those cards by the kernel just had all 4
    lsb bits set for all tested encoders/output, so each of the cards 4
    crtcs could go with each output and things worked by chance.
    
    The current code breaks, e.g., on 2010 MacBookPro with nv50, where
    one crtc is hardwired to the internal lvds panel, and one crtc
    is hardwired to the external DP connector, resulting in a failure
    where dual-display on single-x-screen works fine, but assigning
    each output to a separate x-screen via ZaphodHeads fails due to
    the mismatched encoder->possible_crtcs bitmasks.
    
    This patch fixes the problem.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 1ff13a922535924681b91452235b017e43a4c6f6
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sun Sep 13 15:29:15 2015 -0400

    fix build after glamor removal
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit 3bb943b33bbe8e593afc00d13fe867dd7a708c3c
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Thu Aug 21 20:36:41 2014 -0400

    xv: use correct max width/height settings
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70931
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit 3e2e0faa2ee1cce9c1bb5c7ad80d0592460f3edc
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sat Jul 11 17:16:27 2015 -0400

    remove maxwell GM10x support for now
    
    There is no EXA acceleration, and now no GLAMOR either.
    User is better off with modesetting until EXA makes an appearance.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit 1f8b2b348526d94e9bde4a285f331a4934c11078
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sat Jul 11 17:08:52 2015 -0400

    glamor: remove
    
    If you want glamor, just use modesetting instead. It's hooked up
    incorrectly in nouveau, and there doesn't seem to be any point in fixing
    it when the modesetting driver does it all properly.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit 6296145654b78518f3299bb5887f224f0d3810fd
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Wed Jul 29 14:39:02 2015 +0200

    Add Option "DRI" to allow selection of maximum DRI level. (v2)
    
    Allow user to select the maximum level of DRI implementation
    to use, DRI2 or DRI3.
    
    exa accel supports both DRI2 and, if the kernel supports
    rendernodes, also DRI3. However, DRI3 still seems to have
    some bugs on current implementations, and additionally it
    doesn't work well at all for X-Servers older than 1.16.3
    due to X-Server bugs. Therefore we default to DRI2 on exa,
    but allow the user to enable DRI3 with this new option.
    
    nouveau's glamor accel backend currently doesn't work under
    DRI2 at all, so we continue to use DRI3 whenever it is
    supported and ignore this new option for now.
    
    Also add a bit more output about status of Present and
    DRI3 to aid debugging.
    
    Note: This was originally meant to be a boolean parameter,
          to just select between DRI3 on and off, but changed
          here to a DRI level to make it consistent with the
          same option in the released Intel-ddx.
    
    v2: Use fixed up Bool return type of nouveau_present_init().
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Cc: Ilia Mirkin <imirkin@alum.mit.edu>
    Cc: Emil Velikov <emil.l.velikov@gmail.com>
    Cc: Martin Peres <martin.peres@free.fr>
    Cc: Ben Skeggs <bskeggs@redhat.com>
    Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit 0deb1fcc6d1099db698ff8c512a4884708a458ec
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Wed Jul 29 14:39:01 2015 +0200

    present: Fixup return type of nouveau_present_init()
    
    Make it a Bool consistently, as declared in header.
    
    Reported-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit 5212dbd7e5eba35fdd6578b30f5b0c8c8543081b
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Tue Jul 14 19:23:01 2015 -0400

    Avoid build fail without COMPOSITE
    
    Reviewed-by: Dave Airlie <airlied@redhat.com>

commit fdc528306e4018b314f2efcb2be4e37672bddd75
Author: Vadim Rutkovsky <vrutkovs@redhat.com>
Date:   Thu Jul 9 23:23:37 2015 +0200

    Adapt to new dirty tracking api
    
    Mirrors commit b6d871bf2 (radeon: adopt for new X server dirty tracking
    APIs.) in xf86-video-ati.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91284

commit dfd827cefb940f46b18dc77c129f0a603c7c95fa
Author: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Date:   Wed May 20 17:08:58 2015 +0200

    fix a wrong use of a logical operator in drmmode_output_dpms()
    
    This is probably a typo error which has been introduced in 2009...
    This fixes the following warning detected by Clang :
    
    drmmode_display.c:907:30: warning: use of logical '&&' with constant operand [-Wconstant-logical-operand]
        if (props && (props->flags && DRM_MODE_PROP_ENUM)) {
    
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Reviewed-by: Dave Airlie <airlied@redhat.com>

commit 27234dbe00caf6dfd4efb24fc7bbc026fa0134fc
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Wed May 27 20:26:42 2015 -0400

    nv50/exa: add comments showing the code that makes up the programs
    
    As decoded by envydis. Perhaps these should move into separate files
    similar to nvc0, but this seems like a simple intermediate solution.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit 08ef36dc6766080f173ae2b7e660b3182cab9f2d
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Wed May 20 18:36:17 2015 -0400

    older hardware prefers copy to clear, so use that
    
    Doing a solid copy of 0, or a clear, has the same effect. This is a
    partial revert of commit 5439a9905eab8c. Pre-nv50 hardware succeeds with
    copies more often.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit 278ad73475bd137eac8a49ec7a22406bfc2867e7
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Tue May 19 16:26:16 2015 -0400

    nv04-nv40: don't attempt to do 32-bit shifts
    
    A 32-bit shift is a no-op, which will also make the new planemask get
    or'd with ~0, thus negating the usefulness of the subsequent
    planemask != ~0 check. Only do this if it's a less-than-32-bit per pixel
    format, in which case it will have the desired effect of setting the
    high bits.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Reviewed-by: Martin Peres <martin.peres@free.fr>

commit 7583471e1fe181dc7c26b7d0a0d16f70eb10dd21
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Tue May 19 16:11:17 2015 -0400

    Check before trying a solid fill
    
    Pre-nv50 has all sorts of funny requirements for non-copy alu
    operations, and will bail out of solid fills left and right. Account for
    that case and fall back to the memset.
    
    Reported-by: Andrew Randrianasulu <randrianasulu@gmail.com>
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Reviewed-by: Martin Peres <martin.peres@free.fr>

commit 212fc5354ed60ba282d5eabf468c0e2dd0d0afe6
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Mon Mar 23 20:05:23 2015 -0400

    nv50: explicitly disable ZETA buffer
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit 734b8404c0a1fa9ce8ee62a0d4cc5baae7c8fcdf
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sat Mar 21 11:46:35 2015 -0400

    use defined method names where available
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit 5439a9905eab8c8d0f86e9963df6c893633bdbfd
Author: Maarten Lankhorst <dev@mblankhorst.nl>
Date:   Mon Mar 23 19:41:38 2015 +0100

    Actually do a clear instead of doing a bogus copy.
    
    Oops!

commit f0fdc156039eaa79fb1ad82fcc6437f2432306c6
Author: Maarten Lankhorst <dev@mblankhorst.nl>
Date:   Sat Mar 21 22:30:10 2015 +0100

    Try using EXA ops harder in drmmode_fbcon_copy fallback
    
    The memcpy in the fallback path fails with SIGBUS on GK20A because
    this memory is not coherent, try to use a solid fill instead.

commit 7319b54291d59e1cd3cbe4f39ea8cc6dc8bf45bc
Author: Maarten Lankhorst <dev@mblankhorst.nl>
Date:   Fri Mar 20 23:24:50 2015 +0100

    Simplify nouveau_allocate_surface's pitch calculation.
    
    Judging from previous commits all linear buffers should have a 256 byte alignment.

commit 91e51a7571e6e8cb9338fc168f817f56438b1901
Author: Maarten Lankhorst <dev@mblankhorst.nl>
Date:   Fri Mar 20 23:17:13 2015 +0100

    Use drmGetRenderDeviceNameFromFd to obtain the dri3 node.

commit d29d8baad4d845ec9d3d1d1bc8d1c1e1f6f6f086
Author: Maarten Lankhorst <dev@mblankhorst.nl>
Date:   Sat Mar 14 18:00:00 2015 +0100

    Use the correct class and shader ops for GK20A.
    
    Signed-off-by: Maarten Lankhorst <dev@mblankhorst.nl>

commit 6829d4c672fc05f4d3d993ac1bfde21d4b6c1200
Author: Maarten Lankhorst <dev@mblankhorst.nl>
Date:   Sat Mar 14 11:58:12 2015 +0100

    Make the ddx load with platform devices
    
    Signed-off-by: Maarten Lankhorst <dev@mblankhorst.nl>

commit 3fb97d78202213c1221a1d3ad8a5cebda78fdf44
Author: Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
Date:   Thu Oct 23 09:29:14 2014 +0200

    fix null pointer deref

commit 90ba0bb6a371a5beebdf6d363bcd73659b7c9f1f
Author: Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
Date:   Thu Oct 23 08:25:01 2014 +0200

    check memory allocation in nouveau_glamor_set_shared_pixmap_backing
    
    As reported by Roy Spliet.

commit 4dfa13c77a1f6cee1affea05b5f3a0b26827d366
Author: Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
Date:   Thu Oct 23 08:21:55 2014 +0200

    rework initialization to prevent some crashes

commit 485902e61b18aff864226db62ba10399aab40128
Author: Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
Date:   Wed Oct 22 15:52:22 2014 +0200

    fix !DRI3 case

commit 79d438ec4d23280a242d36c2d81f2f43f6e90ada
Author: Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
Date:   Wed Oct 22 15:42:55 2014 +0200

    fix crash in nouveau_glamor_set_shared_pixmap_backing

commit 217f6577afe44b10f7f8e066eaf55419fb0f5ee1
Author: Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
Date:   Wed Oct 22 13:16:33 2014 +0200

    move down call to nouveau_present_init until after fb init.

commit 241e7289f25a342a457952b9b0e539c2f0b81d99
Author: Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
Date:   Wed Oct 22 11:04:16 2014 +0200

    enable dri3 support without glamor

commit 762b22f5a2b9deed1c6b18d7098f8fddf2f4b759
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Tue Sep 23 21:44:12 2014 -0400

    kepler: remove unnecessary texbars, add live-only tex for nvf0
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit ce9d6e165cd810f06d158e3cfbb4b9f14b060ded
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Tue Sep 23 21:37:46 2014 -0400

    allow path to envyas binary to be specified
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit 02c1aee91ae22b58e777716ffd38397f9df0a087
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Thu Sep 4 15:27:53 2014 -0400

    copy: don't bother trying to create copy on pre-nva3
    
    Only the NVA3/5/8/F tesla chips have a copy engine. Don't bother trying
    to create one on earlier tesla chips (and thus printing an error on
    failure).
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

commit 3cd4c8494c296c7583dfa7f0823a272c9e932e03
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Thu Aug 28 03:57:48 2014 +0200

    Bump version to 1.0.11 for release.
    
    Highlights:
    
    - Support for server managed fd's.
    - Glamor support.
    - Maxwell support.
    - DRI3 and initial Present support.
    - vsync'ed kms pageflip performance fixes when running on Linux 3.13+
    - Multi-display vsync, vblank, swap scheduling, timestamping fixes.
    - Multi x-screen support fixes.
    - ZaphodHead support on for multiple outputs per x-screen.
    - EXA nv-10 fixes.
    - Enable sync of swaps to vblank by default (Option GLXVblank "on").
    - Disable pseudo-triplebuffering by default (Option SwapLimit "1").
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 6d49f3f7aaaec872b6f9841f744a0bf09cc98492
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Thu Aug 28 03:49:55 2014 +0200

    dri2: Set default SwapLimit to 1 for double-buffering.
    
    This used to be 2 for pseudo-triplebuffering on XOrg 1.12+.
    
    However, it caused problems like unthrottled swapping
    at up to twice the video refresh rate for redirected
    windows under desktop composition, which can't be easily
    fixed under dri2.
    
    Default to double-buffering. Users can override this, but
    dri3 provides better solutions for this.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 10729a442be3cf018c5806c95ec4218977917ef3
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Mon Aug 18 09:53:27 2014 +0200

    xv/dri2/dri3: Switch to optimized crtc selection for drawables.
    
    Make crtc selection consistent with ati and intel ddx.
    
    Pick the crtc to use for vblank events, swap scheduling and
    kms-pageflip completion events as the one with maximum pixel area
    intersection between its viewport and the drawable. If multiple
    crtc's viewports display the same amount of area of a drawable,
    select the crtc whose output is the designated "primary output"
    for the x-screen. The latter allows, e.g., in a clone display
    setup, to select the important output on which tearing should be
    minimized. The former makes sure to minimize or avoid tearing on
    the display which shows the largest part of the drawable.
    
    This method is transplanted from the ati ddx.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit be96a5a62df5e1f286690311a6bc4df4f2a99e57
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Sun Aug 17 02:30:36 2014 +0200

    Add file "compile" to .gitignore
    
    Some auto-generated file by new make systems to deal with some
    old compilers.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 16c885ce9c7bebcfa1252a5d500956dd5f551043
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Tue Aug 12 11:08:24 2014 +0200

    Fix event handling on multi-x-screen configs.
    
    Only register the wakeup handler and event socket
    once per card fd and server generation, as the fd
    and device file is shared between all x-screens for
    a given card during a given server generation.
    
    Without this fix, vblank and kms-pageflip completion
    event processing don't work properly, as the server
    doesn't kick the wakeup handler for gpu events, and
    therefore the desktop will freeze, unless the user
    manually kicks the wakeup handler by moving the mouse
    or hitting the keyboard.
    
    Add proper reference counting and checks to make it so.
    This fix is derived from a similar and proven fix in
    the ati ddx for the same problem.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 7eab6806927ea8938b9bd143d1702e87fde2f2cc
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Wed Aug 13 06:48:10 2014 +0200

    Make new ZaphodHeads work across server regenerations.
    
    Reset the mask of already assigned crtc's at start
    of each new server generation.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 6ad053788e804f3a8bd36ee3653ec95e7df62623
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Wed Aug 6 07:37:32 2014 +0200

    dri2 and xv: Fix NVxxSyncToVBlank() for multi-x-screen's.
    
    Use helper function drmmode_head() to choose proper hw-crtc
    to sync to. Fixes xv blits, and dri2 Copy-Swaps.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 17de663a71bcad6f69414eb6bc6bf9b76a6bf5f4
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Mon Aug 11 09:48:42 2014 +1000

    fix glamor header check
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 64ca88570b71289a019a2d130b1a30dc474ef52d
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Mon Aug 11 08:59:30 2014 +1000

    present: use drmmode_head() where it's appropriate
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 6e71bdf5a9da15c60694fa8543243e37a32c5faf
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Mon Jun 23 11:25:41 2014 +0200

    Allow/Fix use of multiple ZaphodHead outputs per x-screen.
    
    Defining multiple ZaphodHead outputs per x-screen in a
    multiple x-screen's per gpu configuration caused all
    outputs except one per x-screen to go dark, because
    there was a fixed mapping x-screen number -> crtc number,
    limiting the number of crtc's per x-screen to one.
    
    On a ZaphodHead's setup, be more clever and assign
    as many crtc's to a given x-screen as there are
    ZaphodHeads defined for that screen, assuming
    there are enough unused crtc's available.
    
    Tested on a triple display setup with different combos
    of one, two or three ZaphodHeads per one, two or three
    x-screens.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit fcf91a275e96f14e49a93dc3f8dd6798cf7d98f3
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Mon Jun 23 11:13:57 2014 +0200

    dri2: Fix drmWaitVblank on multi-x-screen configs.
    
    Old mapping of xf86Crtc -> display head index was
    too simple and only worked on a single x-screen config.
    
    Introduce a new helper function drmmode_hw_head_index()
    which returns proper mapping also for multi x-screens per
    gpu and ZaphodHeads setups and other non-standard multi-
    display configurations.
    
    Tested on triple-head setup with various ZaphodHead and
    server layout combos.
    
    This helper will be also needed for dri3/present code.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>

commit 29572e44c24613be9dec0c98ff2731e46ce6203b
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sun Aug 10 02:25:15 2014 -0400

    exa/nv10: src ops should use the SF macro
    
    Doesn't actually end up mattering.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 35e17905e1c54558059f6b72b8594a3377f1a57c
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sun Aug 10 02:25:14 2014 -0400

    exa/nv10: fix blend function setup to check the correct mask
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit dfac18c67a17782a0263daf8cb4ee487374abd2c
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sun Aug 10 02:25:13 2014 -0400

    exa/nv10: use color 0 when the pict format has no RGB component
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit ff7010e06b6da0fe27143b47b8a4ffd2f12894b7
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Sun Aug 10 02:25:12 2014 -0400

    exa/nv10: use same clip settings as mesa driver
    
    The higher 0x800 was getting overwritten by the 0x7ff anyways, so it
    wasn't doing any good. The mesa driver just uses 0x800 for the low
    portion and doesn't set the 8 bit in the higher portion, so do the same
    thing here.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit edd1608c397ebcf487b84948031f7807178e5e4d
Author: Emil Velikov <emil.l.velikov@gmail.com>
Date:   Tue Jul 1 22:31:47 2014 +0100

    xorg_list: define the xorg_list* symbols
    
    ...when building against pre 1.12 x.
    The build will fail as earlier versions of X were missing the xorg_
    prefix of the symbols - struct and util functions.
    
    Reported-by: Pali Rohár <pali.rohar@gmail.com>
    Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit f6c1c755d8230494c8115e2c7899a85663f5c176
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Tue Jul 1 12:56:49 2014 +1000

    fix a harmless typo
    
    fdo#80738
    
    Reported-by: Paulo Sérgio Travaglia <pstglia@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 096fb1ebc10b14ba1b747832efe378369bcf44e6
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Mon May 26 05:39:50 2014 +0200

    dri2: Add support for handling more than 2 crtc's
    
    Need to use the DRM_VBLANK_HIGH_CRTC bits to allow
    selecting crtc's with id > 1 on latest gpu's with
    up to four display engines.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 4771ff5c668047a2dc56e4c6131175eed837e757
Author: Marcin Slusarz <marcin.slusarz@gmail.com>
Date:   Sun Jun 22 01:32:42 2014 +0200

    present: build only when glamor is enabled
    
    nouveau_present_flip_exec references glamor_fd_from_pixmap,
    which do not exist when glamor is disabled
    
    Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 41c1c4ee867753422d6486f13bf20b45905a5dd5
Author: Marcin Slusarz <marcin.slusarz@gmail.com>
Date:   Sun Jun 22 01:31:46 2014 +0200

    glamor: fix build without glamor.h
    
    xorg-server can be built without glamor, which leads to:
    
      CC       nouveau_xv.lo
    In file included from nouveau_xv.c:41:0:
    nouveau_glamor.h:12:20: fatal error: glamor.h: No such file or directory
    compilation terminated.
    
    Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit f0fa8313714c2a5b16e784b257b5ff79da3a443b
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Thu Jun 19 17:11:34 2014 +0200

    dri2: Enable sync of bufferswaps to Vblank by default.
    
    Make this consistent with other drivers default behaviour.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 02d7e647ce3a4a5d48c4ee94c94bebcac2d4827d
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Sat Jun 21 01:26:16 2014 +0200

    dri2: Fix kms pageflip completion timestamping.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 4d92001ebe6bec8c5eaab8156421e62a7e4dedc8
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Fri Mar 14 18:27:53 2014 +0100

    Add kernel async_flip cap detection. Part II of double-sync fix.
    
    Query if kernel supports the async_flip cap, thereby needs the
    new sync behavior. Linux 3.13+ nouveau-kms have this cap and
    need this fix.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 54dfbb2fed393b65d846e6ed9672acb47e0f19de
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Fri Mar 14 18:23:04 2014 +0100

    dri2: Fix double-sync of pageflips on Linux 3.13+ - Part I
    
    Linux 3.13 and later sync kms pageflips to vblank in the kms
    driver, so we must not emit a sync to vblank pushbuf in the ddx
    on such kernels, or maximum framerate will be cut into half!
    
    A sync-to-vblank-pushbuf is emitted for copyswaps as in the past,
    also for older kernels which don't support async_pageflip's and
    don't sync by themselves.
    
    This adds the implementation, but not the detection logic for
    async_pageflip support in the kernel.
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 303402e00d55b5296311738184cd61f4aadab74d
Author: Mario Kleiner <mario.kleiner.de@gmail.com>
Date:   Sat Jun 21 00:09:39 2014 +0200

    Fix nouveau_copy_init()
    
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 65a70c4edd1f0df808a3a4dea6e8c9846cc7c920
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Fri Jun 20 16:57:18 2014 +1000

    another build fix...

commit 882ebb4000803f6025e1bb3213a31b19f6d1a2c6
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Mon Nov 18 14:42:02 2013 +1000

    present: initial support
    
    Until glamor grows its own implementation.
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 0d94f32fce2759c4b0f4d22b99f3ced09c2aa5a0
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Fri Jun 20 09:47:39 2014 +1000

    kms: implement a more generic event mechanism
    
    Present wants to use this too.
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 97feb3b2104287eb385ffba8329f304e2808d808
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Fri Jun 20 09:29:08 2014 +1000

    dri2: move page flip handling out of drmmode
    
    Nothing to see here... This is to (hopefully) avoid busting DRI2 while
    implementing Present support.
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 60b876eab3708f1c277027addb5514974452644c
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Fri Jun 20 09:20:37 2014 +1000

    dri2: move away from directly touching drmmode on page flips
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 36dda1341008dd87a6b5459f0616776097d11d9f
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Fri Jun 20 09:04:30 2014 +1000

    dri2: shuffle some functions around
    
    Nothing to see here...
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 8bdec8ebd68ba5eaa696d8a666e18774bff3b2ad
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Fri Jun 20 12:37:33 2014 +1000

    glamor: fix randr resize
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

commit 3c45b590a31157abca140096b141aa83fecb671f
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Fri Jun 20 08:28:30 2014 +1000
