summaryrefslogtreecommitdiff
path: root/src/mesa/drivers
AgeCommit message (Collapse)Author
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-09Fold DoBindContext() helper function into driBindContext().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[965] Allow more than one draw_prims per batchbuffer.Eric Anholt
The comment about (vbo)_exec_api.c appeared to be stale, as the VBO code seems to only use non-named VBOs (not actual VBOs) or freshly-allocated VBO data. This brings a 2x speedup to openarena, because we can submit nearly-full batchbuffers instead of many 450-byte ones.
2008-01-09[965] Replace the always_update dirty flag with BRW_NEW_BATCH.Eric Anholt
This allows us to avoid re-emitting some state when validate_state happens multiple times per batchbuffer. Even though we flush batch per primitive currently, that may still happen already if the primitive changed (this should probably be fixed as well).
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[965] Remove drawing rect upload, which is handled (better) by the kernel.Eric Anholt
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.
2008-01-09[intel] Remove the dead intel->need_flush member.Eric Anholt
2008-01-09[965] Clarify a bit of index buffer upload code.Eric Anholt
2008-01-08[intel] Add TTM bufmgr debug for type or offset migration of buffers.Eric Anholt
2008-01-07i915: Keith Whitwell's swizzling TEX patch. fix #8283Xiang, Haihao
2008-01-06Replace gl_framebuffer's _ColorDrawBufferMask with _ColorDrawBufferIndexesBrian
Each array element is now a BUFFER_x token rather than a BUFFER_BIT_x bitmask. The number of active color buffers is specified by _NumColorDrawBuffers. This builds on the previous DrawBuffer changes and will help with drivers implementing GL_ARB_draw_buffers.
2008-01-06Simplify ctx->_NumColorDrawBuffers, _ColorDrawBuffers and fix bug 13835.Brian
These fields are no longer indexed by shader output. Now, we just have a simple array of renderbuffer pointers. If the shader writes to gl_FragData[i], send those colors to the N _ColorDrawBuffers. Otherwise, replicate the single gl_FragColor (or the fixed-function color) to the N _ColorDrawBuffers. A few more changes and simplifications can follow from this...
2008-01-04i915: don't validate PS program when falling back to softwareXiang, Haihao
rendering. fix #12786
2008-01-04intel: some initialization for dri_bufmgr_ttmXiang, Haihao
2008-01-03[intel] Add a single-entry relocation buffer cache.Eric Anholt
By avoiding the repeated relocation buffer creation/map/unmap/destroy for each new batch buffer, this improves OpenArena framerates by 30%. Caching batch buffers themselves doesn't appear to be a significant performance win over this change.
2008-01-03[intel] Convert relocations to not be cleared out on buffer submit.Eric Anholt
We have two consumers of relocations. One is static state buffers, which want the same relocation every time. The other is the batchbuffer, which gets thrown out immediately after submit. This lets us reduce repeated computation for static state buffers, and clean up the code by moving relocations nearer to where the state buffer is computed.
2008-01-03[965] Fix some missing initialization in WM keys.Eric Anholt
2008-01-03 fix fd.o bug #13761Zou Nan hai
MRD computation is now changed in mesa core
2008-01-02[965] Convert WM unit to use a cache key instead of brw_cache_data.Eric Anholt
2008-01-02[965] Convert VS unit to use a cache key instead of brw_cache_data.Eric Anholt
2008-01-02[965] Convert SF unit to use a cache key instead of brw_cache_data.Eric Anholt
2008-01-02[965] Convert GS unit to use a cache key instead of brw_cache_data.Eric Anholt
2008-01-02[965] Convert clip unit to use a cache key instead of brw_cache_data.Eric Anholt
2008-01-02[965] Convert CC unit to use a cache key instead of brw_cache_data.Eric Anholt
2008-01-02[965] Convert surface state to use a cache key instead of brw_cache_data.Eric Anholt
2008-01-02[965] Convert sampler state to use a cache key instead of brw_cache_data.Eric Anholt
2008-01-02Revert "[intel] Use the memory type mask containing the caching flags."Eric Anholt
This reverts commit 8bb9ae3693362a302206255c61f512d942df9bbf. Validating our kernel buffers with the caching off in flags but on in mask means that the kernel migrates the buffer to be uncached, which is undesired.
2008-01-02[intel] Use the memory type mask containing the caching flags.Eric Anholt
2008-01-02Set correct flags mask when validating buffers.Keith Packard
The 'mask' value used in the validation operation specifies which of the 'flags' bits are being modified. Buffer validation wants to pass the memory type and access mode (rwx) to the kernel so that the buffer will be placed correctly, and so that the right kind of fence will be created (read vs write). That means we actually want a constant mask for these operations, and not something computed from the bits coming in. The constant we want is DRM_BO_MASK_MEM | DRM_BO_FLAG_READ | DRM_BO_FLAG_WRITE | DRM_BO_FLAG_EXE.
2008-01-02[965] Improve performance by including reloc target buffer pointers in keys.Eric Anholt
Without this, the WM binding tables would all collide, for example. Improves openarena performance by around 2%.
2008-01-02additional stub functionsBrian
2008-01-02i915: Needn't adjust pixel centers. fix #12944Xiang, Haihao
2008-01-02Revert "r300: fix bug with maniadrive rendering"Dave Airlie
this is correct, there is another issue with sw fallbacks This reverts commit cc50edbca2fd3111f9987d4117fa6656599d79dc.
2008-01-02rx00: fix off by one error in tempreg checkHans de Goede
2008-01-02r300: fix bug with maniadrive renderingDave Airlie
I've no idea why I added this so I'll have to spend time tracking it down
2007-12-29fix fd.o bug #13847Zou Nan hai
2007-12-28Bug #13839: Fix 3D texture offset miscalculation with pixels versus bytes.Roland Scheidegger
2007-12-27i915: reset swrast state after calling swrast DrawPixels.Xiang, Haihao
In order to optimize DrawPixels, the i915 texenv program isn't applied to swrast DrawPixels in the i915 driver. This causes this program isn't applied to any following swrast functions. Resetting the swrast state fixes this issue. Fix #13614
2007-12-25i915: apply commit a0a5e8cfc04c14873441b50f7d594ef11806b9a8 from 965.Xiang, Haihao
fix #11925
2007-12-24__driConfigOptions must be PUBLIC.Adam Jackson
2007-12-24R300: RV410 SE chips have half the pipes of regular RV410Alex Deucher
This fixes 3D rendering on x700 SE chips. Reported by Kano.
2007-12-22fix GL_LINE_LOOP with drivers using own render pipeline stage (#12410, #13527)Roland Scheidegger
primitive needs to include the begin/end flags (broken since vbo-0.2). Should fix missing first/last line segment on gamma, i810, i915, mga, r200, radeon, s3v, savage, unichrome (r300 already correct). Tested on r200, fixes #13527.
2007-12-21Silence compiler warnings from XML error macros.Kristian Høgsberg
2007-12-21[965] Fix and enable separate stencil.Eric Anholt
Note that this does not enable GL_EXT_stencil_two_side, because Mesa's computed _TestTwoSide ends up respecting only STENCIL_TEST_TWO_SIDE_EXT (defaults to GL_FALSE), even if the application uses only GL 2.0 / ATI entrypoints.
2007-12-21[intel] Move some pixel path support from drivers to shared.Eric Anholt
2007-12-21intel: cast a pointer to unsigned long, avoid potential error.Xiang, Haihao
2007-12-20[965] Enable EXT_framebuffer_object.Eric Anholt
To do so, merge the remainnig necessary code from the buffers, blit, span, and screen code to shared, and replace it with those.