aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri
Commit message (Collapse)AuthorAgeFilesLines
* remove vtxfmt code, switch over to vboKeith Whitwell2006-10-3126-6923/+21
|
* cleanup code, compiles with vbo changesKeith Whitwell2006-10-3115-612/+98
|
* switch several dri drivers overKeith Whitwell2006-10-306-16/+16
|
* checkpoint - remove dead files, otherwise untestedKeith Whitwell2006-10-3020-4114/+42
|
* remove code for inserting mvp transform into position-invariant vertex progs ↵Roland Scheidegger2006-10-261-96/+7
| | | | and instead use _mesa_insert_mvp_code().
* change some bogus comments regarding the base e exponential function used ↵Roland Scheidegger2006-10-252-7/+6
| | | | for fog in vertex programs.
* fix (per-vertex) fog when using ARB_vp by incorporating fog factor ↵Roland Scheidegger2006-10-246-67/+153
| | | | computation into the vertex program (not yet fixed for swtnl). Simplify (and correct) the VTX_TCL_OUTPUT_VTXFMT handling when using vertex programs, turns out it's solely driven by the needs of the past-vertex stage of the pipeline, this should fix lockups with ill-specified applications using vertex programs (for instance applications enabling fog but not writing to fog coord output will now get (conformant) undefined results instead of lockups).
* Emit cliprects in the userspace driver as required, rather thanKeith Whitwell2006-10-2310-66/+81
| | | | | | | | passing them to the kernel. This works because all drawing commands in the 965 driver are emitted with the lock held and the batchbuffer is always flushed prior to releasing the lock. This allows multiple cliprects to be dealt with, without replaying entire batchbuffers and redundantly re-emitting state.
* Enable GLX_SGI_make_current_read for radeon.Ian Romanick2006-10-185-34/+57
| | | | | | | | | | | | | | Added code to track the drawable bound to the context for reading. In addition, when a drawable is initially bound (for reading or drawing) or when the size of the drawable changes, update the size of the framebuffer object that back the drawable (for software fallbacks). Deprecate the old GetBufferSize interface. Bump the driver date. These changes were tested with wincopy on both direct rendering and accelerated indirect rendering (AIGLX).
* Want to stop passing x/y/width/height to Clear() function.Brian Paul2006-10-1815-122/+168
| | | | | | | The coordinates need to be computed after we've got the hw lock. Code updated to: 1. Ignore all/x/y/width/height/ params passed to Clear func. 2. Pass 0,0,0,0,0 to _swrast_Clear() until they're totally removed.
* remove obsolete intelBufferSize(), bump driver dateBrian Paul2006-10-171-23/+2
|
* Init _UseTexEnvProgram to fix failed assertion in i915_render_start() - this ↵Brian Paul2006-10-161-0/+1
| | | | may be temporary
* Updates to intelWindowMoved():Brian Paul2006-10-161-6/+8
| | | | | | | Only need to call _mesa_resize_framebuffer() when we've detected a window size change. Set the drawFb->Initalized flag to GL_TRUE to avoid obsolete Driver.GetBufferSize/ResizeBuffer calls in the Mesa code.
* Track the currently bound read drawable and make sure its info is upIan Romanick2006-10-162-2/+15
| | | | to date.
* allow >10 mipmap levels (patch by Benno Schulenberg) (bug 3130)Brian Paul2006-10-154-19/+25
|
* regenerated to get DRI_CONF_EXCESS_MIPMAP()Brian Paul2006-10-151-0/+5
|
* fix handling of textures with a base internal format that does not have all ↵Roland Scheidegger2006-10-152-11/+30
| | | | four rgba values set for radeon and r200 (discovered with a modified glean pixelFormats test, noone ever noticed in over 2 years). For radeon, use hw format I8 as previously, and change tex env to make the correct default values appear for both GL_ALPHA and GL_LUMINANCE textures. For r200, which supports GL_LUMINANCE just fine, use the AL88 hw format for GL_ALPHA textures, since it seems like it's probably not worth the effort to fix up the texture environment (certainly complicated in case of ATI_fragment_shader programs).
* minor clean-up: s/intel->driDrawable/dPriv/Brian Paul2006-10-151-1/+1
|
* Remove a bunch of "ctx->Driver.function = _swrast_Function" lines sinceBrian Paul2006-10-1520-252/+15
| | | | | default/fallback functions are already plugged in by the call to _mesa_init_driver_functions().
* Use endianness test function provided by mesa.Jerome Glisse2006-10-152-9/+6
| | | | | | | Use the _mesa_little_endian helper function insted of the MESA_BIG_ENDIAN flag. There is still place using this flag but we need to find how to submit 16bits elements on big endian computer.
* Remove Driver.ResizeBuffers = _mesa_resize_framebuffer lines.Brian Paul2006-10-1518-19/+0
| | | | | This is already done by the preceeding call to _mesa_init_driver_functions() which plugs in default functions like that.
* increate MaxTextureLevels to 11 (bug 3130)Brian Paul2006-10-152-2/+9
|
* build fix: s/Table/TableUB/Brian Paul2006-10-141-1/+1
|
* implement ARB_point_parameters and ARB_point_sprite on r200. The code is ↵Roland Scheidegger2006-10-1310-18/+238
| | | | nearly the same as outlined in bug #4707, except it disables perspective correction for point sprites to make them actually work. And, separate the state atom into two as the tcl parameters would overwrite vertex program parameters when active. Also implement the GL_VERTEX_PROGRAM_POINT_SIZE_ARB option to make vertex programs outputting a point size work correctly (untested). Smooth points will still always be size 1. While here, enable gouraud shading for fog when using fog coord.
* Upload of interleaved arrays currently assumes that position is theKeith Whitwell2006-10-131-0/+1
| | | | | | first element in the interleaved group. Add a test to catch cases where this isn't true and use per-array uploads instead. Fixes compiz glitches on x64.
* Make sure instructions are zero'd out before use.Keith Whitwell2006-10-131-0/+1
|
* Use unsigned long batchbuffer offset, fixes x64 warnings.Keith Whitwell2006-10-131-1/+1
|
* Fix printf warning.Keith Whitwell2006-10-131-1/+1
|
* Use unsigned long cast for checking pointer alignment, fixes x64 warnings.Keith Whitwell2006-10-131-2/+2
|
* Use mesa function to get opcode name rather than an internal table.Keith Whitwell2006-10-131-61/+1
|
* Revamp color table code.Brian Paul2006-10-132-7/+5
| | | | Always store all color tables as both float and ubyte.
* Fix bug #4681.Ian Romanick2006-10-111-142/+158
| | | | | | | | | | | | | | | | | glDeleteTextures and glDeleteTexturesEXT were erroneously listed as aliases of each other. For anything /except/ GLX protocol they are aliases. This set of changes allows functions that are functionally identical but have different GLX protocol to be listed as aliases. When building with GLX_INDIRECT_RENDERING set, different static functions are used. These functions determine whether the current context is direct rendering or not. If the context is direct rendering, the aliased function (e.g., glDeleteTextures in the case of glDeleteTexturesEXT) is called. If the context is not direct rendering, the correct GLX protocol is sent. For a deeper explanation of what is changed, please see: http://dri.freedesktop.org/wiki/PartiallyAliasedFunctions
* Use the mesa-provided texenv program rather than rolling our own.Keith Whitwell2006-10-104-1/+21
| | | | Turn on texture crossbar support.
* missing fileKeith Whitwell2006-10-051-0/+132
|
* Accelerate glBitmap with a color expand blit. Nice speedup for demosKeith Whitwell2006-10-057-5/+477
| | | | like 'fire' that display a help message or fps number this way.
* Quieten debug message.Keith Whitwell2006-10-051-1/+1
|
* eliminate rhw divide under some circumstancesKeith Whitwell2006-10-053-18/+32
|
* Quieten debug message.Keith Whitwell2006-10-051-0/+2
|
* Bugzilla 6242: [mach64] Use private DMA buffers (only)Felix Kuehling2006-10-024-23/+27
| | | | | | | | | | https://bugs.freedesktop.org/show_bug.cgi?id=6242 Patch by George Sapountzis: https://bugs.freedesktop.org/attachment.cgi?id=6271 Update to new mach64 DRM 2.0.0 with private DMA buffers. Handle EAGAIN in mach64FireBlitLocked: call drmCommandWrite up to MACH64_TIMEOUT times when EAGAIN is returned. Also handle EAGAIN in mach64FlushVerticesLocked.
* i915: Fix wait for scheduled swap on secondary display.Michel Dänzer2006-09-291-0/+5
|
* Move mipmap generation functions, texture scaling functions into newBrian Paul2006-09-292-0/+2
| | | | mipmap.c file.
* Synchronize drawable to the pipe where the bigger part can be visible.Michel Dänzer2006-09-281-0/+30
| | | | | This requires the DDX driver to set the corresponding fields in the SAREA, so check its minor version.
* Add new I830 SAREA fields.Michel Dänzer2006-09-281-0/+15
|
* Add helper function that returns the current vblank sequence of a drawable.Michel Dänzer2006-09-282-0/+23
|
* Add helper function to calculate the area of the intersection of two rectangles.Michel Dänzer2006-09-282-0/+15
|
* i915: Handle DRM_VBLANK_SECONDARY when scheduling buffer swaps.Michel Dänzer2006-09-281-0/+4
|
* i915: Attempt to schedule buffer swap on target vertical blank when possible.Michel Dänzer2006-09-282-79/+122
| | | | | | | | | | | This has some advantages over the traditional way of first waiting for the target vertical blank and then emitting the buffer swap, e.g. * glXSwapBuffers returns immediately, only the next time the driver needs the hardware lock will it block until the target vertical blank. This should allow applications that don't intermix rendering and other processing to start processing for the next frame right away. * It's less likely to produce tearing.
* Add driGetVBlankInterval() helper function.Michel Dänzer2006-09-282-14/+27
| | | | | This can be used by drivers to determine the current swap interval of a drawable.
* driWaitForVBlank: Add support for secondary vertical blank.Michel Dänzer2006-09-282-2/+10
|
* Some restructuring of the driWaitForVBlank() code.Michel Dänzer2006-09-281-23/+27
| | | | | Also some minor fixes for detecting when the deadline is met or missed, in particular wrt wraparounds of the sequence number.