Eric Anholt
f0ae335cd7
GEM: Avoid leaking refs on target objects on presumed offset success.
2008-05-09 15:02:50 -07:00
Hong Liu
dce3442194
fixup i915 workqueue handling when modeset=1
...
Fixup workqueue creation error handling and make sure we destroy the queue on
unload.
2008-05-09 14:29:10 -07:00
Jesse Barnes
6ee0c09b0e
i915: use BDB TV flag for TV detection
...
Even if the TV encoder hasn't been fused off, we may not have a TV connector on
the platform. The BDB in the BIOS should give us this info in some cases.
2008-05-09 14:19:39 -07:00
Jesse Barnes
12725a37af
i915: add basic VBT support
...
Map the VBIOS (and therefore VBT) at init time for use by various output
initialization routines.
2008-05-09 14:19:00 -07:00
Keith Packard
1e26ca44c9
[gem] API cleanup. allocate->create unreference->close name->flink
...
Make the API names a bit more consistent.
2008-05-09 12:18:09 -07:00
Alan Hourihane
eeff906aa0
Fix build problems
2008-05-09 16:36:28 +01:00
Alan Hourihane
7317e774b5
Fix test applications for recent DRM changes
2008-05-09 09:26:17 +01:00
Keith Packard
ec75369b40
[i915] clean up whinging from checkpatch.pl
2008-05-08 13:09:17 -07:00
Keith Packard
07ad5ce1e1
Clean up whinging from checkpatch.pl in drm_gem.c
...
Whitespace changes, a few too-long-lines and some extra braces.
2008-05-08 13:08:22 -07:00
Eric Anholt
2f573e6df4
GEM: Fix oops on NULL dereference when we try clflushing when we don't need to.
2008-05-08 12:46:02 -07:00
Jakob Bornecrantz
7bcbc443f4
i915: Changed intel_fb to use the new drm_crtc_set_config interface
2008-05-08 20:10:18 +02:00
Keith Packard
9af4c49743
[intel-gem] Move domains to relocation records. add set_domain ioctl.
...
Domain information is about buffer relationships, not buffer contents. That
means a relocation contains the domain information as it knows how the
source buffer references the target buffer.
This also adds the set_domain ioctl so that user space can move buffers to
the cpu domain.
2008-05-08 10:44:02 -07:00
Jakob Bornecrantz
9d9104ad5f
i915: Fixed indent in intel_fb.c
2008-05-08 15:25:37 +02:00
Jakob Bornecrantz
ba36d54ad4
drm: Made set_config use drm_mode_set as a argument
2008-05-08 15:03:57 +02:00
Dave Airlie
4466fea7ba
Revert "i915: fix vbl swap for multi-master"
...
This reverts commit 2a78ad2264
.
2008-05-08 17:12:16 +10:00
Dave Airlie
2a78ad2264
i915: fix vbl swap for multi-master
...
patch from F9 tree
2008-05-08 16:14:33 +10:00
Dave Airlie
442e124123
drm: check for NULL fb here, shouldn't happen but avoid oops for now
2008-05-08 16:11:25 +10:00
Dave Airlie
19abd5c1ac
drm: set crtc->fb to NULL
2008-05-08 16:10:26 +10:00
Dave Airlie
74a49aea61
intel: set correct limits on screen width/height from DDX
2008-05-08 16:10:06 +10:00
Dave Airlie
576cba86b7
drm: fix replacefb to change fb properties
2008-05-08 16:09:45 +10:00
Dave Airlie
ed072ed075
drm_mode: initial replacefb implemenation
2008-05-08 14:02:05 +10:00
Dave Airlie
df46e0691b
drm: fix typo from previous merge
2008-05-08 10:45:18 +10:00
Dave Airlie
9d1db4ced1
cursor: pass handle not BO.
2008-05-08 10:26:37 +10:00
Dave Airlie
ef204fb5c2
Merge remote branch 'origin/master' into modesetting-101
...
Conflicts:
linux-core/Makefile.kernel
shared-core/i915_drv.h
2008-05-08 10:25:01 +10:00
Eric Anholt
effc6d998f
GEM: fix testcases for new ioctl args.
2008-05-07 16:00:58 -07:00
Arjan van de Ven
aa0621a19f
Apply a few stylistic cleanups to match kernel code.
2008-05-07 15:54:53 -07:00
Eric Anholt
06e9761f94
GEM: Wait for existing rendering to complete before writing relocation data.
...
This should already have been generally safe since we don't change contents
and put in new relocations between execbufs, so if we were writing in a new
relocation then we'd already waited rendering to complete when we moved
the target of the relocation. However, doing the right thing will be required
if we do buffer reuse.
2008-05-07 14:10:04 -07:00
Eric Anholt
5f5f01ed91
GEM: Extend cache domain stuff for 965.
...
One of our MI_FLUSH bits is reserved on 965, being always implied, and there's
a vertex cache that was forgotten.
2008-05-07 12:46:06 -07:00
Dave Airlie
b44f2da380
drm: nopage compat fixup for drm_vm
...
The kernel has removed nopage so move the old nopage codepaths into a compat vm file and switch to using the fault paths.
nopfn is on its way out in the future also, so we should switch to using fault
for that path as well soon
2008-05-07 15:10:23 +10:00
Keith Packard
6a6c37af9e
[intel-GEM] ref count objects in gtt-lru.
...
If objects on the lru aren't ref counted, they'll get pulled from the gtt as
soon as they are freed. This change does cause objects to get stuck in the
gtt until they're forced out by new requests. The lru should get cleaned
when the irq occurs.
2008-05-06 21:59:06 -07:00
Keith Packard
61253f4f67
[intel-GEM] Add memory domain support.
...
Memory domains allow the kernel to track which caches to flush and how to
move objects before buffer execution.
2008-05-06 20:00:23 -07:00
Keith Packard
2b9ef32669
Merge commit 'anholt/drm-gem' into drm-gem
2008-05-06 14:43:56 -07:00
Keith Packard
631e86c5c4
Start coding up memory domains
2008-05-06 14:43:49 -07:00
Eric Anholt
d2373b2a34
GEM: Use irq-based fencing rather than syncing and evicting every exec.
2008-05-06 13:28:26 -07:00
Eric Anholt
dd6976c56f
GEM: Skip relocation if presumed offset matches.
2008-05-06 11:25:53 -07:00
Eric Anholt
8551bfc6db
GEM: Save the last ioremapped page for relocations in case we need it again.
2008-05-06 11:18:57 -07:00
Keith Packard
91cba3ae17
Dump last batch buffer when hardware lockup is detected.
2008-05-05 22:10:02 -07:00
Keith Packard
ed6657fa8e
Monitor ACTHD register while polling for idle ring.
...
When batch buffers are executing, the ring may be stuck for a long time.
Monitor the ACTHD pointer which will show if the execution engine is
actually hung.
2008-05-05 22:09:34 -07:00
Keith Packard
2c8f970baa
Unlock pages right after getting them.
...
pages come back from find_or_create_page locked, but must not stay locked
for long. Unlock them immediately instead of waiting until we're done with
them to avoid deadlock when applications try to touch them.
2008-05-05 17:17:19 -07:00
Keith Packard
5b0d0fa7f8
Merge commit 'anholt/drm-gem' into drm-gem
...
Conflicts:
linux-core/i915_gem.c
2008-05-05 14:40:20 -07:00
Eric Anholt
dafe48e623
GEM: Replace drm_memrange_for_each with just evicting what we brought in.
...
I was wrong about how the data structure worked, and didn't care to fix it
to support debugging code.
2008-05-05 14:38:26 -07:00
Keith Packard
d59a9300ec
Remove some debug messages.
2008-05-05 14:32:01 -07:00
Keith Packard
f0bc796a02
Add object base to relocation store address.
...
The relocated value was being written to the wrong location, missing
the object base address.
2008-05-05 14:22:42 -07:00
Keith Packard
4867780bd6
Emit clflush and chipset flush when mapping objects to gtt
2008-05-05 13:32:28 -07:00
Keith Packard
4511e6cd80
Correct execbuffer offset. Add memory barrier and chipset flush.
2008-05-05 11:27:06 -07:00
Keith Packard
b6f173c430
Add i915_dispatch_gem_execbuffer (broken).
...
This function submits a gem-based execbuffer to the ring.
It doesn't work yet.
2008-05-05 10:51:49 -07:00
Dave Airlie
d015219bd0
r500: add allowed range for us config/pixsize
2008-05-05 17:03:27 +10:00
Eric Anholt
166ff364fb
Don't forget to set the memrange private, and reset ring on kernel entry.
2008-05-02 17:50:46 -07:00
Eric Anholt
afe574f328
Don't include the tail guard memrange in foreach callbacking.
2008-05-02 17:49:52 -07:00
Keith Packard
5f0614b86f
Check for do_mmap errors
2008-05-02 17:13:11 -07:00