Commit Graph

8355 Commits

Author SHA1 Message Date
Thomas Hellström
9b87fafc91 Use the BATCH_SZ macro where appropriate.
Bump driver date.
texmem_0_3_20060929
2006-09-29 13:15:43 +00:00
Michel Dänzer
7d553984e2 Merge vsync changes from trunk. 2006-09-29 11:00:50 +00:00
Alan Hourihane
d431dd49cb Do some extra checking to avoid segfaults when incorrect AGP is in use. 2006-09-28 15:56:00 +00:00
Keith Whitwell
b25c826e59 Add 'GL_RGBA8' as a supported internalFormat for
get_teximage_source().  Fixes subtexrate demo.
2006-09-28 14:33:04 +00:00
Thomas Hellström
814cae6a45 Update drm expected version. texmem_0_3_20060923 2006-09-28 09:34:33 +00:00
Thomas Hellström
410673f64c Driver date. 2006-09-28 09:18:45 +00:00
Keith Whitwell
a83a3cfa1c remove duplicate 2006-09-27 20:23:34 +00:00
Keith Whitwell
da89238b13 pull npot mipmap test from trunk 2006-09-27 20:18:36 +00:00
Keith Whitwell
984387b89c Fix mipmap posititioning for 2d ARB_npot textures.
Fix typo in 3D image layout for i915.
2006-09-27 19:01:12 +00:00
Thomas Hellström
93bc5e8402 Fix another single-drawable-multiple-contexts error, that shows up now that the
drm_lock_tranfer() function has been removed from drm.
The error can cause the wrong context number to be used in the lock, but
otherwise should've done no serious harm.
We can probably throw away the i915 lock_mutex now.
2006-09-27 17:17:35 +00:00
Thomas Hellström
43722cae42 Valgrind error fix. 2006-09-26 14:15:08 +00:00
Keith Whitwell
f397a2a1e5 Move get_dirty() call to after reserving space in the batchbuffer as
this may trigger a batchbuffer flush and raise new dirty state.

Add assert_not_dirty() callback required by recent changes.
2006-09-26 11:36:32 +00:00
Keith Whitwell
87a0312068 Add asserts to catch primitives being emitted with state still dirty,
or extended when there is no primitive to extend.

Turn lock/unlock macros into proper functions and add a debug flag to
print out their activity.
2006-09-26 10:44:52 +00:00
Keith Whitwell
ee525436cc Move get_dirty() call to after reserving space in the batchbuffer as
this may trigger a batchbuffer flush and raise new dirty state.
2006-09-26 10:39:42 +00:00
Keith Whitwell
520ba25dc3 Ensure that we don't wrap batchbuffers right at the beginning of a
primitive, otherwise vertices can be emitted without the full-state
preamble.  Fixes gears + texobj lockup.
2006-09-26 09:27:54 +00:00
Thomas Hellström
6f9dc91045 Small COW break on destruction optimization.
Fix a comment.
2006-09-26 09:25:47 +00:00
Thomas Hellström
d17637d47f Fix up buffer object and region refcounting
Sinlence some compilation warnings.
2006-09-26 09:00:03 +00:00
Thomas Hellström
980a25cd92 Make regions screen-based instead of context based. 2006-09-25 18:22:21 +00:00
Keith Whitwell
607c474f2d Import Brian's FBO bugfix from trunk. 2006-09-25 16:11:14 +00:00
Thomas Hellström
2f54146c1f Add some more buffer usage refcounting.
Otherwise these texture buffers will disappear under us.
2006-09-22 18:09:46 +00:00
Keith Whitwell
72aeeef7c3 Remove redundant 3d-state validation prior to blit copypixels. These
were causing some issues.
2006-09-22 16:45:52 +00:00
Keith Whitwell
dadc8e2a50 Fix a longstanding memory leak - intelObj->mt refcount was not deleted
when the texture was deleted.
2006-09-22 16:33:10 +00:00
Keith Whitwell
02d401b475 Turn some printfs into DBG's.
Fix a little mess left by indent.
2006-09-22 16:32:24 +00:00
Keith Whitwell
9d695abcac rationalize debugging flags 2006-09-22 16:05:09 +00:00
Keith Whitwell
e070007d16 Silence warning 2006-09-22 16:03:36 +00:00
Keith Whitwell
39c4c8d54b intel_batch_ioctl() lost its return type somehow 2006-09-22 16:03:06 +00:00
Keith Whitwell
4fa3cf225f Fix initialization of pfPitch - measured in pixels, not bytes. 2006-09-22 15:22:32 +00:00
Thomas Hellström
1c2c1c4560 Another obscure bug causing an infinite loop when multiple contexts are
bound to a drawable.
2006-09-22 14:52:31 +00:00
Keith Whitwell
e3904516bb bring in recent texture swizzle changes from trunk 2006-09-22 14:18:56 +00:00
Keith Whitwell
ceb222798b - Make point_smooth, polygon_smooth fallbacks per-primitive rather than total.
- Also - disable those fallbacks unless INTEL_STRICT_CONFORMANCE is set.
- Gate some FBO debugging on INTEL_DEBUG=fbo
2006-09-22 14:16:33 +00:00
Keith Whitwell
6abcf6a3d3 Fix bug detecting overlapping regions in texture copypixels.
Import code from trunk to allow blit copypixels when scissor is active.
2006-09-22 14:10:39 +00:00
Keith Whitwell
db0ed8942f Check for FragmentProgram._Enabled rather than _Active. _Active is
set when a driver is using an internally generated fragment program to
emulate fixed function behaviour.  For the software rasterizer, we're
better off using the fixed function code directly.
2006-09-22 11:43:19 +00:00
Keith Whitwell
bd9f38ccaa Flush driver, not just tnl module. 2006-09-22 11:39:31 +00:00
Keith Whitwell
b15421c22b resize buffers in MakeCurrent 2006-09-22 11:37:39 +00:00
Thomas Hellström
5db0e131ef Fix intel texture image buffer leak. 2006-09-22 10:55:05 +00:00
Michel Dänzer
b249ff8a86 Fix INTEL_DEBUG=fall. 2006-09-20 16:07:39 +00:00
Michel Dänzer
9d6e0f5d64 Revert INTEL_FIREVERTICES to flush primitives instead of asserting none pending.
The assertion was triggered in some cases, e.g. by the xscreensaver hack
stonerview.
2006-09-20 15:29:36 +00:00
Thomas Hellström
4f8549634e Fix a fencing bug. 2006-09-18 18:55:29 +00:00
Keith Whitwell
3345ab8ccf fix bzflag crashes 2006-09-18 18:11:42 +00:00
Thomas Hellström
cd3c9febda Check for NULL in intelSwapBuffers() 2006-09-18 14:18:14 +00:00
Thomas Hellström
8c58a32360 Fix fencing when submitting empty batchbuffers.
Add a proper buffer waitidle method.
2006-09-18 14:11:00 +00:00
Thomas Hellström
0d646ea3a8 Relax the requirement in pool_takedown in the intel batch buffer pool,
that all allocated buffes should've been handed back before releasing the
pool.
This is to account for the case where whe app calls DestroyScreen() without
first destroying all contexts.
2006-09-18 08:41:22 +00:00
Thomas Hellström
6a33e6d221 Wait for buffer idle unlocked before mapping in some cases.
Greatly improves responsiveness.
Add an MI_FLUSH after each batchbuffer and tell the kernel we're doing so with
the new DRM_I915_FENCE_FLAG_FLUSHED (Requires drm update).
This can be done on a per-batchbuffer basis.
The DRM handles all fence accounting and signals earlier fences that also needs
a flush.
2006-09-15 14:52:31 +00:00
Thomas Hellström
fc4bc6fc97 Adapt to updated libdrm. 2006-09-15 09:22:08 +00:00
Keith Whitwell
4239cfd534 Turn back on zcopy uploads - my timings were incorrect. 2006-09-14 14:48:34 +00:00
Keith Whitwell
b0902a4158 Silence debug, cope with calling intel_region_cow() with lock already held. 2006-09-14 14:48:09 +00:00
Keith Whitwell
269219dc05 Disable zero-copy texturing for now as it isn't such a win with the
newest memory manager code.
2006-09-14 12:11:46 +00:00
Thomas Hellström
5dbadd418c Fix a FBO render offset bug.
The current code failed if the dri drawable was updated before the call to
intelFlush(), and typically rendered into an FBO using the back buffer
cliprects.
2006-09-13 15:10:09 +00:00
Keith Whitwell
71bce51324 update driver date and branch debug 2006-09-13 12:45:42 +00:00
Keith Whitwell
308d377ca8 Bring in writemask + TEX fix from trunk 2006-09-13 12:45:21 +00:00