summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/intel
AgeCommit message (Collapse)Author
2008-02-25intel: Only enable GL_ARB_occlusion_query on i965.Kristian Høgsberg
2008-02-25 [intel] fix random ut2004 crash on some machine, for cubemap textures,Zou Nan hai
image offset is already considered when map, add it again in StoreImage may lead to wrong result and crash.
2008-02-22intel: Merge intel_context.c from i915 and i965.Kristian Høgsberg
2008-02-22Merge {i915,i965}/intel_context.h as intel/intel_context.hKristian Høgsberg
2008-02-22Use drm_i915_sarea instead of drmI830Sarea and remove i830_common.hAlan Hourihane
2008-02-15[intel] Allow attIndex to be negative to avoid defeating the >= 0 check.Eric Anholt
Otherwise, we would go wildly out of bounds if passed -1 (no renderbuffer), such as while doing LOCK_HARDWARE with glDrawBuffer(GL_NONE).
2008-02-15[915] Don't attempt our accelerated drawpixels if no color buffer is attached.Eric Anholt
Otherwise, glDrawBuffer(GL_NONE); glDrawPixels() results in a segfault when we try to emit the color buffer state during setup.
2008-02-15[915] Revert broken context creation change from IS_915 commit.Eric Anholt
The IS_945 case was left to fall through to the 830 case, along with the not-recognized-at-all case, making that dead code.
2008-02-15Fix build on ia64.Adam Jackson
2008-02-15Add IS_915(), simplify IS_9XX() a bit.Adam Jackson
2008-02-15[intel] Bug #13636: Allow recursive buffer mapping in bufmgr_ttm.Eric Anholt
2008-02-15Add E7221 variant to i915.Adam Jackson
2008-02-14Add TTM buffer object based texture from pixmap implementation.Kristian Høgsberg
Currently only implemented for intel hw.
2008-02-14Hook up i915 driver to new DRI2 infrastructure.Kristian Høgsberg
2008-02-13[965] Fix ARB_occlusion_query from intel_screen.c merge.Eric Anholt
It wasn't being initialized at screen setup, so we were getting stub entrypoints even though it was exposed as enabled. Fixes arbocclude mesa demo.
2008-02-13[intel] Fix 965 rendering with non-TTM by merging intel_ioctl between 915/965.Eric Anholt
The 965 path wasn't setting pClipRects for batch submission since it didn't want kernel cliprect handling before. The 915 path also grew the INTEL_NO_HW=1 option for testing just driver overhead.
2008-02-12[intel] Remove cached reloc data buffer now that it's not a BO.Eric Anholt
It's not worth the extra effort to avoid a free/malloc, and we'd rather auto-size the reloc data buffer at some point so we don't need to have max_relocs.
2008-02-12[intel] Fix type of some more flags variables for uint64_t flags.Eric Anholt
Harmless since we don't yet have any bits above 31 for flags.
2008-02-12[intel] Note when BO map/unmap fail with TTM.Eric Anholt
2008-02-12[intel] Fix INTEL_DEBUG=bufmgr after relocation interface fixups.Eric Anholt
2008-02-05[965] Bug 14314: assertion failure with with !AIGLX and depth=24 visual.Eric Anholt
2008-02-05[965] Fix TTM relocation caching overzealousness.Eric Anholt
The failure mode that was a available was: reloc 1 -> target_buf exec: PRESUMED_OFFSET wrong, buffer migrates, r1 entry updated. reloc 2 -> target_buf exec: suppose buffer migrates again. PRESUMED_OFFSET wrong. r2 entry updated. reloc 1 -> target_buf exec: suppose buffer doesn't migrate. PRESUMED_OFFSET right. no relocations performed. r1 has stale pointer at original location. Failures were reported with OGLconform's VBO test and SPECviewperf90, though I haven't confirmed that this fixes it.
2008-02-04Replace usage of DRM_BO_FLAG_MEM_TT in intel_regions.c with local/cached.Eric Anholt
In addition to potentially binding when it was about to be mapped anyway, failure to use CACHED_MAPPED means eating a full wbinvd on validate. Thanks to airlied for catching this.
2008-02-01Revert "intel: don't apply the relocation optimization if a target"Eric Anholt
This reverts commit e2cb905bc6e23eaafaeeb2abdc9480e70959ee3f. It was a reversion of an optimization hidden as otherwise. pre_target_buf_handle was always NULL, so the optimization was never enabled, rather than fixing the important optimization (resulting in 25-50% performance loss).
2008-02-01 [intel] fix for previous fixZou Nan hai
2008-02-01 [intel] use _mesa_copy_rect for upload compressed texture,Zou Nan hai
this fix bad texture issue in some games(UT and quake).
2008-01-31intel: don't apply the relocation optimization if a targetXiang, Haihao
buffer is used for a relocatee in the former relocation process then another target buffer is used for this relocatee at the same offset in the current relocation process.
2008-01-29i965: new integrated graphics chipset supportXiang, Haihao
2008-01-24Bufmgr cleanup from intel-batchbuffer branch of 2d driver.Eric Anholt
2008-01-24Clean up comments/dead code from relocation buffer change.Eric Anholt
2008-01-24i915: move to using copy from user for relocationsDave Airlie
2008-01-22[intel] Clean up references to screen buffer metrics.Kristian Høgsberg
The screen wide info such as pitch and cpp are obsoleted by the FBO changes, so clean up the last few references to those, except for setting up the legacy screen regions.
2008-01-18[intel] Use a static array for the validation list instead of a linked list.Eric Anholt
Around 10% of a CPU was being wasted to create the linked list which we threw out immediately after passing it to the kernel.
2008-01-17[intel] Make the no_rast option be standard driconf instead of INTEL_NO_RAST.Eric Anholt
2008-01-17[i915] Fix driver from cliprects changes, and clean up state emission.Eric Anholt
The fix for pageflipping with cliprects ended up causing a batch flush at an inopportune time, which is fixed by moving it up. Additionally, the recovery code for handling batch wraps at bad times is replaced by just checking for the space up front, and using a no_batch_wrap assert like on 965 to make sure that we weren't wrong about how much space that was.
2008-01-15[965] Increase max relocation count, fixing assertions by blender.Eric Anholt
2008-01-15[i915] Prevent recursive batchbuffer flushing.Kristian Høgsberg
Workaround for recursive batchbuffer flushing: If the window is moved, we can get into a case where we try to flush during a flush. What happens is that when we try to grab the lock for the first flush, we detect that the window moved which then causes another flush (from the intel_draw_buffer() call in intelUpdatePageFlipping()). To work around this we reset the batchbuffer tail pointer before trying to get the lock. This prevent the nested buffer flush, but a better fix would be to avoid that in the first place.
2008-01-14[intel] Delay unmapping of driver-private buffers to reduce map/unmap thrashing.Eric Anholt
Good for a 10-15% improvement to OA.
2008-01-10[intel] Remove gratuitous (batchbuffer) flush before doing buffer clears.Eric Anholt
Increases OA performance by about 3%.
2008-01-10[intel] Report buffer size when allocating with INTEL_DEBUG=bufmgr and TTM.Eric Anholt
2008-01-10[intel] Remove a gratuitous flush at the end of ClearWithTris.Eric Anholt
2008-01-10[intel] Only flush batch when changing draw buffers, not every cliprect update.Eric Anholt
The previous code would reference freed memory on window moves.
2008-01-10[intel] Add more cliprect modes to cover other meanings for batch emits.Eric Anholt
The previous change gave us only two modes, one which looped over the batch per cliprect (3d drawing) and one that didn't (state updeast). However, we really want 4: - Batch doesn't care about cliprects (state updates) - Batch needs DRAWING_RECTANGLE looping per cliprect (3d drawing) - Batch needs to be executed just once (region fills, copies, etc.) - Batch already includes cliprect handling, and must be flushed by unlock time (copybuffers, clears). All callers should now be fixed to use one of these states for any batchbuffer emits. Thanks to Keith Whitwell for pointing out the failure.
2008-01-10i965: fix segfault caused by commit e131c46b20241737ceba4856dbe01dcca6dd2c03.Xiang, Haihao
2008-01-09[intel] Simplify intelCreateBuffer() a bit.Kristian Høgsberg
Drop a bunch of unused arguments from intel_create_renderbuffer() and introduce intel_renderbuffer_set_region() to set the region for a renderbuffer.
2008-01-09[intel] Prepare intelCopyBuffer() for private back buffers.Kristian Høgsberg
2008-01-09Factor out code to do the DRM_I830_GETPARAM ioctl.Kristian Høgsberg
2008-01-09[intel] Re-allocate backing buffer objects on BufferData.Eric Anholt
This may allow better concurrency (noop in openarena performance now), but is also important for the previous commit -- otherwise, we may end up with BufferData, draw_prims, BufferData and the draw_prims would use the new VBO data instead of old. This could still occur with user-supplied VBOs and poor use of MapBuffer without BufferData.
2008-01-09[intel] Rename lost_hardware vtbl entry to new_batch.Eric Anholt
Both drivers have ended up relying on lost_hardware being called after each batch buffer, so update the name. This removes one of the calls on 965 whic h was outside of the batchbuffer handling code and just duplicating what had already happened through batchbuffer handling.
2008-01-09[intel] Clean up cliprect handling in intel drivers.Eric Anholt
In particular, batch buffers are no longer flushed when switching from CLIPRECTS to NO_CLIPRECTS or vice versa, and 965 just uses DRM cliprect handling for primitives instead of trying to sneak in its own to avoid the DRM stuff. The disadvantage is that we will re-execute state updates per cliprect, but the advantage is that we will be able to accumulate larger batch buffers, which were proving to be a major overhead.