Commit graph

2194 commits

Author SHA1 Message Date
Michel Dänzer
9c3c981134 i915: Fixup handling of total number of bin cliprects. 2007-05-11 09:43:52 +02:00
Michel Dänzer
c05ff1302c i915: Handle cliprects for HWZ.
In the alloc sub-ioctl, use the cliprects to calculate the binning rectangles
and per-bin cliprects. Then in the render sub-ioctl repeat each bin batchbuffer
for each bin cliprect.
2007-05-10 19:36:06 +02:00
Michel Dänzer
68faf74371 Export drm_realloc to make it usable by drivers. 2007-05-10 19:33:50 +02:00
Michel Dänzer
a09c68e274 i915: Track HWZ state per file handle.
This allows several contexts to use HWZ concurrently. The global BMP state is
still kept in the device struct.
2007-05-10 16:10:43 +02:00
Michel Dänzer
6120026907 i915: Fix modifications of Cache_Mode_0 register. 2007-05-09 15:19:09 +02:00
Michel Dänzer
a8b8d7cece i915: Fix potential issue related to BPL layout.
Only round up the number of BPL rows for calculating the BPL size, or we may
end up firing incorrectly initialized bin batchbuffers.
2007-05-03 19:41:13 +02:00
Michel Dänzer
e6aba21ac9 i915: Clean up HWZ debugging.
Disable most debugging output by default.

Also require valid static indirect state to be passed in for rendering.
2007-05-03 12:55:15 +02:00
Michel Dänzer
f9f3e60aea i915: HWZ resource cleanup improvements.
Free the BMP on X server shutdown, BPLs and bins on client exit.
2007-05-03 12:25:25 +02:00
Michel Dänzer
e266adcd1b i915: Use HW status page DWORD 16 instead of 5 for fence sequence.
The first 16 DWORDs are reserved, number 5 for ring buffer 1 head in particular.
2007-05-03 12:21:57 +02:00
Michel Dänzer
b04896ca96 i915: Absolute HW offset for static state instead of relative to batch_start.
With the corresponding Mesa change, I can see rendering from the HWB, if not
quite correct yet...
2007-05-02 16:42:01 +02:00
Michel Dänzer
0db4b34424 i915: HWZ improvements.
* Fix stupid error in BPL initialization. The HWB no longer hangs, and we can
  see bin batchbuffers fully initialized by it. No actual rendering occurs
  though.
* Set physical address space for LOAD_INDIRECT of static indirect state.
* Free and re-allocate BPLs when necessary.
* Use TTM buffer object in the virtual address BPL path.
* Some more debugging output.
2007-05-02 12:13:13 +02:00
Michel Dänzer
05b88db738 Make some more buffer object functions usable by drivers. 2007-05-02 12:03:11 +02:00
Michel Dänzer
c250b2e96d i915: Use maptype _DRM_TTM for PRIV1.
Makes sure the userspace mappings are uncached.
2007-05-02 12:02:40 +02:00
Michel Dänzer
3786b8c921 i915: Initialize PRIV1 regardless of HWZ.
Might be useful for indirect state on older hardware.
2007-05-01 19:51:17 +02:00
Michel Dänzer
0eb514b084 Merge remote branch 'upstream/master' into i915-zone-rendering 2007-05-01 17:26:31 +02:00
Michel Dänzer
f06ad82ecd Fix userspace ABI breakage from 3c384a9ad5. 2007-05-01 17:03:55 +02:00
Michel Dänzer
570d404686 i915: Fix build warnings. 2007-05-01 13:29:11 +02:00
Michel Dänzer
476c5daed0 Merge remote branch 'upstream/master' into i915-zone-rendering
Conflicts:

	shared-core/i915_irq.c
2007-05-01 13:27:54 +02:00
Michel Dänzer
579f9c09eb i915: Add PRIV1 memory type.
This is backed by physically contiguous memory and can be referenced by
userspace by its physical address.
2007-05-01 13:24:22 +02:00
Michel Dänzer
ca1cd3257c radeon: Don't mess up page flipping when a file descriptor is closed.
There can still be other contexts that may use page flipping later on, so don't
just unilaterally 'clean it up', which could lead to the wrong page being
displayed, e.g. when running 3D apps with a GLX compositing manager such as
compiz using page flipping.
2007-04-29 12:37:51 +02:00
Dave Airlie
feb6803778 move i915 to new drm_wait_on function 2007-04-28 15:07:43 +10:00
Dave Airlie
6e860d08d0 drm: add new drm_wait_on function to replace macro 2007-04-28 15:07:43 +10:00
Dave Airlie
e9b3acd257 remove register usage 2007-04-28 15:07:43 +10:00
Dave Airlie
9f9c19065c remove DRM_GETSAREA and replace with drm_getsarea function 2007-04-28 15:07:43 +10:00
Michel Dänzer
021ccee6c3 i915: More HWZ fixes and extended debugging output.
Also initialize invariant state at the beginning of the rendering stream, and
start an alternative code path for using GTT relative BPL addresses (currently
always hangs the HWB during the first frame).
2007-04-26 13:52:15 +02:00
Michel Dänzer
772c981460 i915: Use I915_READ/WRITE for interrupt registers with more than 16 valid bits. 2007-04-26 13:47:46 +02:00
George Sapountzis
e88934274a Revert "bug 7092 : add pci ids for mach64 in Dell poweredge 4200"
This reverts commit 255f3e6f76.

Rage IIc does not have a vertex setup engine.
2007-04-26 14:16:51 +03:00
George Sapountzis
3a2c9f4621 linux: minor indent. 2007-04-26 14:16:28 +03:00
George Sapountzis
942d9be296 freebsd: remove stray apperance of IN_MODULE.
The xserver no longer uses the libc-wrapper.
2007-04-26 14:16:13 +03:00
George Sapountzis
b69b426346 libdrm: remove HAVE_XORG_CONFIG_H and XFree86LOADER ifdef's.
We no longer import libdrm in the xserver.
2007-04-26 14:15:55 +03:00
Dave Airlie
2a6f555053 update create_lk_drm.sh script 2007-04-26 17:54:06 +10:00
Dave Airlie
afc029e935 whitespace cleanup 2007-04-26 16:25:43 +10:00
Dave Airlie
e5c1f1caa2 remove some whitespace violation 2007-04-26 16:22:28 +10:00
Dave Airlie
4b72759b30 drm: nopfn warning on 64-bit 2007-04-26 16:22:11 +10:00
Jesse Barnes
71d44cda52 drm/ttm: allow drm_buffer_object_create to be used in-kernel 2007-04-26 16:09:24 +10:00
Jesse Barnes
3c384a9ad5 Add new buffer object type for kernel allocations that don't initially have a user mapping.
(cherry picked from commit 2e21779992)
2007-04-26 16:04:09 +10:00
Brian
5c8561aae2 More detailed instructions, tips. 2007-04-25 14:52:29 -06:00
Michel Dänzer
a09bf2337d i915: HWZ reorganization.
* Feed the HWB synchronously, and print out any batchbuffer commands it
  generates.
* Put the rendering commands into the normal ring buffer.
* Emit static state in the rendering stream, the HWB doesn't support it.

Various other minor changes.
2007-04-24 19:10:48 +02:00
Stephane Marchesin
61477d60c4 nouveau: fix wacky pci id 2007-04-23 22:37:36 +02:00
Michel Dänzer
f7554ec36c i915: Some minor HWZ cleanup and additional debugging output.
Mostly to clarify where the HWB is hanging.
2007-04-23 10:07:57 +02:00
Kristian Høgsberg
af3ffcd822 Initialize rwlock using rwlock_init to appease lockdep validator. 2007-04-20 18:06:31 -04:00
Thomas Hellstrom
a8a8108e45 Avoid a fence timeout problem when a signal is pending. 2007-04-20 15:57:41 +02:00
Thomas Hellstrom
1ce9c09231 Fix via compile error
(Reported by Benno Schulenberg.)
2007-04-20 15:49:31 +02:00
Michel Dänzer
b65ddb2f88 i915: Various HWZ fixes.
Still doesn't work quite correctly, but at least it no longer locks up or hangs
with simple apps.
2007-04-19 20:27:51 +02:00
Michel Dänzer
ad172d79d1 i915: Don't always read/write LP_RING register in generalized ring functions. 2007-04-18 19:35:58 +02:00
Thomas Hellstrom
2df2c70e20 Simplify the ttm backend interface and the agp ttm backend. 2007-04-18 16:33:28 +02:00
Thomas Hellstrom
5a96d59ce9 Don't always free up memory space when we unpin buffers. 2007-04-17 14:15:37 +02:00
Thomas Hellstrom
5432cc4abf Fix buffer object reference problems.
(Reported by Dave Airlie).
2007-04-17 10:53:19 +02:00
Thomas Hellstrom
e805ca959d via: Make sure we flush write-combining using a follow-up read. 2007-04-17 08:58:23 +02:00
Thomas Hellstrom
e91ceff6c9 Add a code comment. 2007-04-17 08:46:45 +02:00