glsdk/libdrm.git
9 years agoFix compilation with -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast
Jeremy Huddleston [Tue, 1 Nov 2011 21:42:13 +0000 (14:42 -0700)]
Fix compilation with -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
9 years agoconfigure: version bump for 2.4.27 release.
Eric Anholt [Fri, 28 Oct 2011 20:14:44 +0000 (13:14 -0700)]
configure: version bump for 2.4.27 release.

Push the new Intel API for use by mesa.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
9 years agointel: Share the implementation of BO unmap between CPU and GTT mappings.
Eric Anholt [Fri, 28 Oct 2011 20:13:08 +0000 (13:13 -0700)]
intel: Share the implementation of BO unmap between CPU and GTT mappings.

Before this, consumers of the libdrm API that might map a buffer
either way had to track which way was chosen at map time to call the
appropriate unmap.  This relaxes that requirement by making
drm_intel_bo_unmap() always appropriate.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
9 years agointel: Don't call the SW_FINISH ioctl unless a CPU-mapped write was done.
Eric Anholt [Fri, 28 Oct 2011 20:12:16 +0000 (13:12 -0700)]
intel: Don't call the SW_FINISH ioctl unless a CPU-mapped write was done.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
9 years agointel: Remove stale comment.
Eric Anholt [Fri, 28 Oct 2011 20:02:53 +0000 (13:02 -0700)]
intel: Remove stale comment.

This used to be next to some map refcounting code, but that is long dead.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
9 years agointel: Add an interface for removing relocs after they're added.
Eric Anholt [Sat, 22 Oct 2011 01:48:20 +0000 (18:48 -0700)]
intel: Add an interface for removing relocs after they're added.

This lets us replace the current inner drawing loop of mesa:

for each prim {
compute bo list
if (check_aperture_space(bo list)) {
batch_flush()
compute bo list
if (check_aperture_space(bo list)) {
whine_about_batch_size()
fall back;
}
}
upload state to BOs
}

with this inner loop:

for each prim {
 retry:
upload state to BOs
if (check_aperture_space(batch)) {
if (!retried) {
reset_to_last_prim()
batch_flush()
} else {
if (batch_flush())
whine_about_batch_size()
goto retry;
}
}
}

This avoids having to implement code to walk over certain sets of GL
state twice (the "compute bo list" step).  While it's not a
performance improvement, it's a significant win in code complexity:
about -200 lines, and one place to make mistakes related to aperture
space instead of N places to forget some BO we should have included.

Note how if we do a reset in the new loop , we immediately flush.  We
don't need to check aperture space -- the kernel will tell us if we
actually ran out of aperture or not.  And if we did run out of
aperture, it's because either the single prim was too big, or because
check_aperture was wrong at the point of setting up the last
primitive.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
9 years agointel: Use stdbool.h for dealing with boolean values.
Eric Anholt [Fri, 21 Oct 2011 23:53:16 +0000 (16:53 -0700)]
intel: Use stdbool.h for dealing with boolean values.

A few of the bitfield-based booleans are left in place.  Changing them
to "bool" results in the same code size, so I'm erring on the side of
not changing things.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agonouveau: free in error path if drmAvailable fails.
Dave Airlie [Wed, 19 Oct 2011 16:39:54 +0000 (17:39 +0100)]
nouveau: free in error path if drmAvailable fails.

This was reported in coverity.

Signed-off-by: Dave Airlie <airlied@redhat.com>
10 years agomodetest: Call dirty fb on modeset
Jakob Bornecrantz [Wed, 19 Oct 2011 11:32:43 +0000 (13:32 +0200)]
modetest: Call dirty fb on modeset

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
10 years agomodetest: Print extra info if we fail to create a framebuffer
Jakob Bornecrantz [Wed, 19 Oct 2011 11:32:26 +0000 (13:32 +0200)]
modetest: Print extra info if we fail to create a framebuffer

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
10 years agomodetest: Check error message from pageflip ioctl
Jakob Bornecrantz [Wed, 28 Sep 2011 21:34:09 +0000 (23:34 +0200)]
modetest: Check error message from pageflip ioctl

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
10 years agovbltest: Check error codes returned from libdrm
Jakob Bornecrantz [Wed, 28 Sep 2011 15:27:07 +0000 (17:27 +0200)]
vbltest: Check error codes returned from libdrm

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
10 years agotests: Add vmwgfx driver to probed drivers in tests
Jakob Bornecrantz [Fri, 16 Sep 2011 18:50:39 +0000 (20:50 +0200)]
tests: Add vmwgfx driver to probed drivers in tests

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
10 years agomodetest: use 24 bit depth on the framebuffer
Jesse Barnes [Tue, 11 Oct 2011 18:09:44 +0000 (11:09 -0700)]
modetest: use 24 bit depth on the framebuffer

It's more compatible; at least the Intel driver now rejects 32 bit
depths since it generally can't support real 32 bit framebuffers
(supports 30, 36, and 64 bit, but not 32).

10 years agodrmtest: make check should fail so hard on unable to open device
Dave Airlie [Mon, 26 Sep 2011 15:03:20 +0000 (16:03 +0100)]
drmtest: make check should fail so hard on unable to open device

10 years agodrm/test: handle usub being empty
Dave Airlie [Mon, 26 Sep 2011 14:54:13 +0000 (15:54 +0100)]
drm/test: handle usub being empty

fixes a segfault on make check seen in tinderbox

10 years agoxf86drm.h : wrap C code for C++ compilation/linking
Tapani Pälli [Fri, 23 Sep 2011 11:17:42 +0000 (14:17 +0300)]
xf86drm.h : wrap C code for C++ compilation/linking

To enable usage of xf86drm.h from C++ programs/frameworks.

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
[ickle: also wrap xf86drmMode.h]
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agodrm/i915: y tiling on i915G/i915GM is different
Daniel Vetter [Thu, 22 Sep 2011 20:20:53 +0000 (22:20 +0200)]
drm/i915: y tiling on i915G/i915GM is different

Luckily the kernel has become extremely paranoid about such matters.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agodrm/intel: don't clobber bufmgr->pci_device
Daniel Vetter [Thu, 22 Sep 2011 20:20:09 +0000 (22:20 +0200)]
drm/intel: don't clobber bufmgr->pci_device

Otherwise it's pretty hard to differentiate the different chipset
variants.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agomodeprint.c: use PRIu64 for printing uint64_t
Matt Turner [Fri, 4 Mar 2011 02:02:06 +0000 (21:02 -0500)]
modeprint.c: use PRIu64 for printing uint64_t

Signed-off-by: Matt Turner <mattst88@gmail.com>
10 years agonouveau: assert argument cannot have side effects
Marcin Slusarz [Sun, 12 Jun 2011 14:40:40 +0000 (16:40 +0200)]
nouveau: assert argument cannot have side effects

... because argument is evaluated only if NDEBUG is not defined

10 years agodrm mode: fix drmIoctl wrapper
Marcin Slusarz [Sun, 5 Jun 2011 16:53:16 +0000 (18:53 +0200)]
drm mode: fix drmIoctl wrapper

Both drmIoctl and ioctl define second argument as unigned long.

Debugging/tracing tools (like strace or valgrind) on 64-bit machines see
different request value for ioctls with 32nd bit set, because casting
signed int to unsigned long extends 32nd bit to upper word, so 0x80000000
becomes 0xFFFFFFFF80000000)

Nobody noticed because higher 32 bits are chopped off on their way to kernel.

10 years agointel: shared header for shader debugging
Ben Widawsky [Fri, 24 Jun 2011 17:52:57 +0000 (10:52 -0700)]
intel: shared header for shader debugging

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
10 years agointel: fix the wrong method check for bo_get_subdata
Yuanhan Liu [Wed, 20 Jul 2011 08:08:51 +0000 (16:08 +0800)]
intel: fix the wrong method check for bo_get_subdata

It's going to call bo_get_subdata method, but not bo_subdata

Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
10 years agoSpecify the return type explicitly.
Chih-Wei Huang [Tue, 12 Jul 2011 08:35:28 +0000 (16:35 +0800)]
Specify the return type explicitly.

10 years agoconfigure: version bump for 2.4.26 release
Chris Wilson [Sat, 4 Jun 2011 12:01:50 +0000 (13:01 +0100)]
configure: version bump for 2.4.26 release

Push the new Intel API for use by mesa.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agointel: Add interface to query aperture sizes.
Chris Wilson [Sat, 4 Jun 2011 11:47:19 +0000 (12:47 +0100)]
intel: Add interface to query aperture sizes.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agolibkms: All current BO_TYPE are 32bpp
Chris Wilson [Sat, 14 May 2011 10:15:06 +0000 (11:15 +0100)]
libkms: All current BO_TYPE are 32bpp

... so request a 32bpp dumb buffer rather than a 16bpp.

Fixes modetest and friends.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agoconfigure: version bump for 2.4.25 release
Chris Wilson [Mon, 11 Apr 2011 07:25:42 +0000 (08:25 +0100)]
configure: version bump for 2.4.25 release

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agolibdrm: (revised) vblank wait on crtc > 1
Ilija Hadzic [Thu, 24 Mar 2011 17:24:28 +0000 (13:24 -0400)]
libdrm: (revised) vblank wait on crtc > 1

Hi Alex,

Enclosed is a revised version of the patch sent on Mar 18, against
the master branch of the drm userspace (i.e. libdrm). Details
summarised in this thread:
http://lists.freedesktop.org/archives/dri-devel/2011-March/009499.html

This patch reconciles libdrm with the the kernel change that Dave
pushed this morning. It *supersedes* the previously sent patch (i.e.
apply it to the master branch as it exists at the time of this writing,
not as an incremental patch to the one sent previously).

Regards,

Ilija

Signed-off-by: Ilija Hadzic <ihadzic@research.bell-labs.com>
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
10 years agointel: Also handle mrb_exec fallback with ring == I915_EXEC_RENDER
Chris Wilson [Mon, 4 Apr 2011 07:57:42 +0000 (08:57 +0100)]
intel: Also handle mrb_exec fallback with ring == I915_EXEC_RENDER

Reported-by: Oliver McFadden <oliver.mcfadden@nokia.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agodrm_mode: fix types on recently added ioctls
Dave Airlie [Tue, 29 Mar 2011 20:11:21 +0000 (06:11 +1000)]
drm_mode: fix types on recently added ioctls

10 years agoCleanup gen2 tiling confusion
Daniel Vetter [Sat, 26 Mar 2011 14:04:04 +0000 (15:04 +0100)]
Cleanup gen2 tiling confusion

A tile on gen2 has a size of 2kb, stride of 128 bytes and 16 rows.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agobuild: Update autotools configuration
Javier Jardón [Wed, 9 Feb 2011 13:28:20 +0000 (13:28 +0000)]
build: Update autotools configuration

Replace some deprecated autoconf macros and use the new libtool
syntax

10 years agolibdrm: oops fix get cap return value.
Dave Airlie [Fri, 4 Mar 2011 05:48:31 +0000 (15:48 +1000)]
libdrm: oops fix get cap return value.

10 years agolibkms: add dumb support
Dave Airlie [Wed, 9 Feb 2011 03:41:49 +0000 (13:41 +1000)]
libkms: add dumb support

this uses the drm cap interface to check if the dumb ioctl
is supported.

10 years agoImplement drmGetCap() to query device/driver capabilities
Ben Skeggs [Mon, 21 Feb 2011 01:27:19 +0000 (11:27 +1000)]
Implement drmGetCap() to query device/driver capabilities

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
10 years agodrm: add dumb interface
Dave Airlie [Wed, 9 Feb 2011 03:41:28 +0000 (13:41 +1000)]
drm: add dumb interface

10 years agoBuild modetest for all chipsets, always build modeprint
Kristian Høgsberg [Fri, 4 Mar 2011 02:35:28 +0000 (21:35 -0500)]
Build modetest for all chipsets, always build modeprint

10 years agodon't try to build modetest without libkms
Matt Turner [Fri, 4 Mar 2011 02:20:52 +0000 (21:20 -0500)]
don't try to build modetest without libkms

Signed-off-by: Matt Turner <mattst88@gmail.com>
10 years agoconfigure: Bump version to 2.4.24
Chris Wilson [Tue, 1 Mar 2011 18:24:14 +0000 (18:24 +0000)]
configure: Bump version to 2.4.24

New kernel headers.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agointel: Add I915_PARAM_HAS_RELAXED_DELTA
Chris Wilson [Tue, 1 Mar 2011 16:01:53 +0000 (16:01 +0000)]
intel: Add I915_PARAM_HAS_RELAXED_DELTA

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agointel: Fixup for the fix for relaxed tiling on gen2
Daniel Vetter [Tue, 22 Feb 2011 18:11:07 +0000 (19:11 +0100)]
intel: Fixup for the fix for relaxed tiling on gen2

This is Fail.

First patch to libdrm, and I've borked it up.

Noticed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agointel: fix relaxed tiling on gen2
Daniel Vetter [Tue, 22 Feb 2011 17:53:56 +0000 (18:53 +0100)]
intel: fix relaxed tiling on gen2

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
10 years agomodetest: Do no flip twice to a current front buffer
Benjamin Franzke [Thu, 17 Feb 2011 19:36:42 +0000 (20:36 +0100)]
modetest: Do no flip twice to a current front buffer

The incorrect order was:
fb, other_fb, other_fb, fb_id, other_fb, ..

10 years agotests/modeprint: Output masks as hex numbers
Benjamin Franzke [Thu, 17 Feb 2011 13:09:12 +0000 (14:09 +0100)]
tests/modeprint: Output masks as hex numbers

10 years agotests/modeprint: Remove needless dependency on drm_intel
Benjamin Franzke [Thu, 17 Feb 2011 13:07:58 +0000 (14:07 +0100)]
tests/modeprint: Remove needless dependency on drm_intel

10 years agomodetest: Create buffers using libkms
Benjamin Franzke [Thu, 17 Feb 2011 09:47:47 +0000 (10:47 +0100)]
modetest: Create buffers using libkms

10 years agoconfigure.ac: ac_define HAVE_RADEON
Benjamin Franzke [Thu, 17 Feb 2011 09:46:35 +0000 (10:46 +0100)]
configure.ac: ac_define HAVE_RADEON

10 years agolibkms/radeon: Add backend
nobled [Thu, 9 Sep 2010 09:07:21 +0000 (10:07 +0100)]
libkms/radeon: Add backend

Todo: What tiling should be set on scanout buffers?

Haven't tested besides compiling it.

10 years agointel: Remember named bo
Chris Wilson [Mon, 14 Feb 2011 09:39:06 +0000 (09:39 +0000)]
intel: Remember named bo

... and if asked to open a bo by the same global name, return a fresh
reference to the previously allocated buffer.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agointel: Set the public handle after opening by name
Chris Wilson [Mon, 14 Feb 2011 09:27:05 +0000 (09:27 +0000)]
intel: Set the public handle after opening by name

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agointel: compile fix for previous commit after rebasing
Chris Wilson [Wed, 12 Jan 2011 15:06:25 +0000 (15:06 +0000)]
intel: compile fix for previous commit after rebasing

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agointel: Fallback to old exec if no mrb_exec is available
Chris Wilson [Wed, 12 Jan 2011 10:57:46 +0000 (10:57 +0000)]
intel: Fallback to old exec if no mrb_exec is available

Reported-by: Torsten Hilbrich <torsten.hilbrich@secunet.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=33016
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agonouveau: fix up reloc_emit() to accept NULL target buffer
Ben Skeggs [Mon, 20 Dec 2010 06:02:42 +0000 (16:02 +1000)]
nouveau: fix up reloc_emit() to accept NULL target buffer

The nvc0 gallium drivers passes NULL here to indicate to the memory manager
that a buffer is being used, but without creating an actual reloc.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
10 years agonouveau: split pushbuf macros specific to nv04-nv50 out, and add nvc0
Ben Skeggs [Mon, 20 Dec 2010 00:53:44 +0000 (10:53 +1000)]
nouveau: split pushbuf macros specific to nv04-nv50 out, and add nvc0

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
10 years agonouveau: nvc0 drm has no concept of "notifier block"
Ben Skeggs [Wed, 8 Dec 2010 23:18:35 +0000 (09:18 +1000)]
nouveau: nvc0 drm has no concept of "notifier block"

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
10 years agointel: Export CONSTANT_BUFFER addressing mode
Chris Wilson [Sun, 19 Dec 2010 13:01:15 +0000 (13:01 +0000)]
intel: Export CONSTANT_BUFFER addressing mode

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agoconfigure: Bump version to 2.4.23
Chris Wilson [Fri, 10 Dec 2010 12:10:46 +0000 (12:10 +0000)]
configure: Bump version to 2.4.23

To export new kernel API for Intel's 2010Q4 release.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agotests: Update for ENOENT returns from unknown handles
Chris Wilson [Fri, 10 Dec 2010 12:10:13 +0000 (12:10 +0000)]
tests: Update for ENOENT returns from unknown handles

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agointel: Reorder need_fence vs fenced_command to avoid fences on gen4
Chris Wilson [Tue, 7 Dec 2010 20:34:22 +0000 (20:34 +0000)]
intel: Reorder need_fence vs fenced_command to avoid fences on gen4

gen4+ hardware doesn't use fences for GPU access and the older kernel
doesn't expect userspace to make such a mistake. So don't.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=32190
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agodrm: don't do the create the node ourselves if we have udev.
Dave Airlie [Tue, 7 Dec 2010 04:26:09 +0000 (14:26 +1000)]
drm: don't do the create the node ourselves if we have udev.

this can remove nodes it shouldn't, let udev run the show.

this is needed for reliably GPU switch.

Signed-off-by: Dave Airlie <airlied@redhat.com>
10 years agointel: If the command is fenced inform the kernel
Chris Wilson [Fri, 3 Dec 2010 10:48:12 +0000 (10:48 +0000)]
intel: If the command is fenced inform the kernel

... but only account for a fenced used if the object is tiled.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agoradeon: silence valgrind warnings by zeroing memory
Marek Olšák [Thu, 2 Dec 2010 03:12:16 +0000 (04:12 +0100)]
radeon: silence valgrind warnings by zeroing memory

10 years agointel: Add a forward declaration of struct drm_clip_rect
Chris Wilson [Thu, 25 Nov 2010 16:59:20 +0000 (16:59 +0000)]
intel: Add a forward declaration of struct drm_clip_rect

... so that intel_bufmgr.h can be compiled standalone.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agointel: Compute in-aperture size for relaxed fenced objects
Chris Wilson [Mon, 22 Nov 2010 09:50:06 +0000 (09:50 +0000)]
intel: Compute in-aperture size for relaxed fenced objects

For relaxed fencing the object may only consume the small set of active
pages, but still requires a fence region once bound into the aperture.
This is the size we need to use when computing the maximum possible
aperture space that could be used by a single batchbuffer and so avoid
hitting ENOSPC.

Reported-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agonouveau: Add implicit pushbuf flush before gpuobj destruction.
Francisco Jerez [Sat, 20 Nov 2010 13:32:45 +0000 (14:32 +0100)]
nouveau: Add implicit pushbuf flush before gpuobj destruction.

It makes sure that GPU object destruction is executed in order with
respect to the previous FIFO commands.

Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Acked-by: Ben Skeggs <bskeggs@redhat.com>
10 years agointel: Fix drm_intel_gem_bo_wait_rendering to wait for read-only usage too.
Eric Anholt [Tue, 9 Nov 2010 21:51:45 +0000 (13:51 -0800)]
intel: Fix drm_intel_gem_bo_wait_rendering to wait for read-only usage too.

Both the consumers of this API (sync objects and client throttling)
were expecting this behavior.  The kernel used to actually behave the
desired (but incorrect) way for us anyway, but that got fixed a while
back.

10 years agointel: initialize bufmgr.bo_mrb_exec unconditionally
Albert Damen [Sun, 7 Nov 2010 14:54:32 +0000 (15:54 +0100)]
intel: initialize bufmgr.bo_mrb_exec unconditionally

If bufmgr.bo_mrb_exec is not set, drm_intel_bo_mrb_exec returns ENODEV
even though drm_intel_gem_bo_mrb_exec2 will work fine for the RENDER ring.
Fixes xf86-video-intel after commit 'add BLT ring support' (5bed685f76)
with kernels without BSD or BLT ring support (2.6.34 and before).

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=31443
Signed-off-by: Albert Damen <albrt@gmx.net>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agointel: Drop silly asserts on mappings present at unmap time.
Eric Anholt [Tue, 2 Nov 2010 18:21:56 +0000 (11:21 -0700)]
intel: Drop silly asserts on mappings present at unmap time.

The intent of these was to catch mismatched map/unmap.  What it
actually did was check whether there was ever a mapping of that type
(including in a previous life of the buffer through the userland BO
cache), not whether they were mismatched.  We don't even actually want
to catch mismatched map/unmap, unless we also do refcounting, since at
one point Mesa would do map/map/use/unmap/unmap.  Just remove this
code instead.

10 years agointel: Remove gratuitous assert on bo_reference.
Eric Anholt [Tue, 2 Nov 2010 18:19:21 +0000 (11:19 -0700)]
intel: Remove gratuitous assert on bo_reference.

This couldn't be triggered except by overflow, since there's an assert
in unreference to catch the usual failure of over-unreferencing.

10 years agointel: Shove the fake bufmgr subdata implementation into the fake bufmgr.
Eric Anholt [Mon, 1 Nov 2010 13:54:58 +0000 (06:54 -0700)]
intel: Shove the fake bufmgr subdata implementation into the fake bufmgr.

10 years agointel: Remove stale comment.
Eric Anholt [Mon, 20 Sep 2010 21:14:14 +0000 (14:14 -0700)]
intel: Remove stale comment.

10 years agonouveau: Avoid unnecessary call to CPU_FINI.
Francisco Jerez [Sun, 31 Oct 2010 00:22:29 +0000 (02:22 +0200)]
nouveau: Avoid unnecessary call to CPU_FINI.

nouveau_bo_unmap called the CPU_FINI IOCTL even if it was a NOSYNC
mapping. It caused no harmful effects (actually CPU_FINI is a no-op on
recent enough kernels) besides the precious CPU cycles being wasted.

Signed-off-by: Francisco Jerez <currojerez@riseup.net>
10 years agointel: enable relaxed fence allocation for i915
Chris Wilson [Fri, 29 Oct 2010 09:49:54 +0000 (10:49 +0100)]
intel: enable relaxed fence allocation for i915

The kernel has always allowed userspace to underallocate objects
supplied for fencing. However, the kernel only allocated the object size
for the fence in the GTT and so caused tiling corruption. More recently
the kernel does allocate the full fence region in the GTT for an
under-sized object and so advertises that clients may finally make use
of this feature. The biggest benefit is for texture-heavy GL games on
i945 such as World of Padman which go from needing over 1GiB of RAM to
play to fitting in the GTT!

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
10 years agos/drmStrdup/strdup/
Adam Jackson [Wed, 27 Oct 2010 22:44:53 +0000 (18:44 -0400)]
s/drmStrdup/strdup/

_DRM_MALLOC hasn't been a relevant concern since we split libdrm out
from xserver.

Signed-off-by: Adam Jackson <ajax@redhat.com>
11 years agointel: Prepare for BLT ring split.
Chris Wilson [Tue, 26 Oct 2010 10:35:11 +0000 (11:35 +0100)]
intel: Prepare for BLT ring split.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
11 years agonouveau: Define the HAS_PAGEFLIP getparam.
Francisco Jerez [Thu, 21 Oct 2010 21:02:43 +0000 (23:02 +0200)]
nouveau: Define the HAS_PAGEFLIP getparam.

Signed-off-by: Francisco Jerez <currojerez@riseup.net>
11 years agonouveau: Let the user choose the push buffer size.
Francisco Jerez [Tue, 28 Sep 2010 20:45:27 +0000 (22:45 +0200)]
nouveau: Let the user choose the push buffer size.

Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Acked-by: Ben Skeggs <bskeggs@redhat.com>
11 years agonouveau: Define buffer object usage flags.
Francisco Jerez [Tue, 28 Sep 2010 20:47:11 +0000 (22:47 +0200)]
nouveau: Define buffer object usage flags.

Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Acked-by: Ben Skeggs <bskeggs@redhat.com>
11 years agointel: Downgrade error warnings to debug
Chris Wilson [Fri, 1 Oct 2010 15:50:09 +0000 (16:50 +0100)]
intel: Downgrade error warnings to debug

As the higher layers check the error return from libdrm-intel and
are supposed to handle the error (and print their own warning in
extremis) the voluminous output on stderr is just noise and a hazard in
its own right.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
11 years agoIncrement version to 2.4.22
Carl Worth [Wed, 29 Sep 2010 03:40:37 +0000 (20:40 -0700)]
Increment version to 2.4.22

For the upcoming 2.4.22 release.

11 years agointel: Replace open-coded drmIoctl with calls to drmIoctl()
Chris Wilson [Sat, 25 Sep 2010 20:32:59 +0000 (21:32 +0100)]
intel: Replace open-coded drmIoctl with calls to drmIoctl()

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
11 years agonouveau: fix drm version check some more
Ben Skeggs [Tue, 21 Sep 2010 03:02:07 +0000 (13:02 +1000)]
nouveau: fix drm version check some more

... and make a mental note to not push commits before having coffee

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
11 years agonouveau: fix thinko in drm version check
Ben Skeggs [Sun, 19 Sep 2010 22:07:28 +0000 (08:07 +1000)]
nouveau: fix thinko in drm version check

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
11 years agomodetest: Fix drawing routines to use stride.
Chris Wilson [Thu, 9 Sep 2010 17:52:28 +0000 (18:52 +0100)]
modetest: Fix drawing routines to use stride.

11 years agomodetest: align fb pitch to 64 bytes
Jesse Barnes [Thu, 9 Sep 2010 17:27:22 +0000 (10:27 -0700)]
modetest: align fb pitch to 64 bytes

Docs say this is necessary, and the kernel now enforces this.

11 years agomodetest: add edp and TV connector names to the connector name array
Jesse Barnes [Tue, 7 Sep 2010 20:10:15 +0000 (13:10 -0700)]
modetest: add edp and TV connector names to the connector name array

11 years agoAvoid use of c++ reserved keyword "virtual" when using a C++ compiler.
Eric Anholt [Thu, 26 Aug 2010 22:39:28 +0000 (15:39 -0700)]
Avoid use of c++ reserved keyword "virtual" when using a C++ compiler.

Avoids requiring nasty hacks around libdrm headers in the new C++
parts of Mesa drivers.

11 years agoFree the property blob along the error path.
Chris Wilson [Tue, 24 Aug 2010 20:29:31 +0000 (21:29 +0100)]
Free the property blob along the error path.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
11 years agonouveau: accept both 0.0.16 and 1.x.x
Ben Skeggs [Wed, 18 Aug 2010 02:06:48 +0000 (12:06 +1000)]
nouveau: accept both 0.0.16 and 1.x.x

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
11 years agolibdrm: Fix PCI domain domain support
Benjamin Herrenschmidt [Fri, 6 Aug 2010 03:55:11 +0000 (13:55 +1000)]
libdrm: Fix PCI domain domain support

This works in conjunction with newer kernels. If we succeed in requesting
interface 1.4, the we know the kernel provides proper domain numbers. If
not, ignore the domain number as it's bogus (except on Alpha).

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
11 years agoCopy headers from kernel drm-core-next
Dave Airlie [Tue, 3 Aug 2010 22:41:23 +0000 (08:41 +1000)]
Copy headers from kernel drm-core-next

11 years agodrm mode: Return -errno on drmIoctl() failure
Chris Wilson [Thu, 1 Jul 2010 21:38:54 +0000 (22:38 +0100)]
drm mode: Return -errno on drmIoctl() failure

The high layers expect to receive a status code on error (on the
pessimistic assumption that the errno value will have been overwritten
by the time the failure is propagated all the way up), so convert
xf86drmMode.c to return -errno on an ioctl error and be consistent with
the rest of the libdrm API.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
11 years agoPurge macro NEED_REPLIES
Fernando Carrijo [Thu, 1 Jul 2010 16:28:29 +0000 (09:28 -0700)]
Purge macro NEED_REPLIES

Signed-off-by: Fernando Carrijo <fcarrijo@yahoo.com.br>
Signed-off-by: Brian Paul <brianp@vmware.com>
11 years agointel: Suppress the error return from setting domains after mapping.
Chris Wilson [Tue, 29 Jun 2010 19:12:44 +0000 (20:12 +0100)]
intel: Suppress the error return from setting domains after mapping.

If the mapping succeeds we have a valid pointer. If setting the domain
failures we may incur cache corruption. However the usual failure mode
is because of a hung GPU, in which case it is preferable to ignore the
minor error from setting the domain and continue on oblivious. If
these errors persist, we should rate limit the warning [or even just
remove it].

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
11 years agointel: Limit tiled pitches to 8192 on pre-i965.
Chris Wilson [Thu, 24 Jun 2010 10:38:00 +0000 (11:38 +0100)]
intel: Limit tiled pitches to 8192 on pre-i965.

Fixes:

  Bug 28515 - Failed to allocate framebuffer when exceed 2048 width
  https://bugs.freedesktop.org/show_bug.cgi?id=28515

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
11 years agointel: Only adjust the local stride used for SET_TILING in tiled alloc
Chris Wilson [Tue, 22 Jun 2010 12:03:52 +0000 (13:03 +0100)]
intel: Only adjust the local stride used for SET_TILING in tiled alloc

Mesa uses the returned pitch from alloc_tiled, so make sure that we set
it correctly before modifying the stride used for the SET_TILING call.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
11 years agointel: Restore SET_TILING for non-flinked bo.
Chris Wilson [Tue, 22 Jun 2010 12:00:22 +0000 (13:00 +0100)]
intel: Restore SET_TILING for non-flinked bo.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
11 years agointel: '===' != '=='
Chris Wilson [Tue, 22 Jun 2010 10:15:56 +0000 (11:15 +0100)]
intel: '===' != '=='

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>