aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/gamma
Commit message (Collapse)AuthorAgeFilesLines
* DRI interface changes and DRI2 direct rendering support.Kristian Høgsberg2008-03-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add DRI2 direct rendering support to libGL and add DRI2 client side protocol code. Extend the GLX 1.3 create drawable functions in glx_pbuffer.c to call into the DRI driver when possible. Introduce __DRIconfig, opaque struct that represents a DRI driver configuration. Get's rid of the open coded __GLcontextModes in the DRI driver interface and the context modes create and destroy functions that the loader was requires to provide. glcore.h is no longer part of the DRI driver interface. The DRI config is GL binding agnostic, that is, not specific to GLX, EGL or other bindings. The core API is now also an extension, and the driver exports a list of extensions as the symbol __driDriverExtensions, which the loader must dlsym() for. The list of extension will always include the DRI core extension, which allows creating and manipulating DRI screens, drawables and contexts. The DRI legacy extension, when available, provides alternative entry points for creating the DRI objects that work with the XF86DRI infrastructure. Change DRI2 client code to not use drm drawables or contexts. We never used drm_drawable_t's and the only use for drm_context_t was as a unique identifier when taking the lock. We now just allocate a unique lock ID out of the DRILock sarea block. Once we get rid of the lock entirely, we can drop this hack. Change the interface between dri_util.c and the drivers, so that the drivers now export the DriverAPI struct as driDriverAPI instead of the InitScreen entry point. This lets us avoid dlsym()'ing for the DRI2 init screen function to see if DRI2 is supported by the driver.
* fix GL_LINE_LOOP with drivers using own render pipeline stage (#12410, #13527)Roland Scheidegger2007-12-221-1/+1
| | | | | | 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.
* Fix/improve framebuffer object reference counting.Brian2007-03-061-1/+1
| | | | | | | Use _mesa_reference_framebuffer() and _mesa_unreference_framebuffer() functions to be sure reference counting is done correctly. Additional assertions are done too. Note _mesa_dereference_framebuffer() renamed to "unreference" as that's more accurate.
* merge current trunk into vbo branchAlan Hourihane2006-11-021-3/+2
|
* switch remaining drivers over to vboKeith Whitwell2006-10-313-6/+6
|
* Remove a bunch of "ctx->Driver.function = _swrast_Function" lines sinceBrian Paul2006-10-151-19/+2
| | | | | default/fallback functions are already plugged in by the call to _mesa_init_driver_functions().
* Remove Driver.ResizeBuffers = _mesa_resize_framebuffer lines.Brian Paul2006-10-151-2/+0
| | | | | This is already done by the preceeding call to _mesa_init_driver_functions() which plugs in default functions like that.
* Remove the many aliases for 'struct mem_block' in mm.hKeith Whitwell2005-11-281-2/+2
|
* Instead of calling _mesa_ResizeBuffersMESA() in the Viewport function,Brian Paul2005-09-142-2/+2
| | | | call driUpdateFramebufferSize() when window size/position changes.
* Replace ctx->Driver.StencilOp/Func/Mask() functions withBrian Paul2005-09-131-4/+0
| | | | ctx->Driver.Stencil*Separate() functions.
* replace GET_SRC_PTR, GET_DST_PTR with GET_PTRBrian Paul2005-09-041-7/+3
|
* Add Egberts fixes for 64bit architecturesAlan Hourihane2005-08-151-0/+5
| | | | | | Add additional checks for the *DRIRec info structure passed in from the device driver. This ensures that things fallback to indirect rendering if the DDX driver has had modifications (i.e. removal of the drmAddress field).
* Fix bug 1858 - array subscript out of range in gamma driver.Brian Paul2005-07-263-3/+2
| | | | | | Set ctx->Const.MaxTextureLevels = GAMMA_TEX_MAXLEVELS = 12 Remove bogus WRITE(level 12). Max gamma texture size is 2kx2k (note: 2k = 1 << (MaxLevels - 1))
* remove common macros used in the span functions of most drivers from the ↵Roland Scheidegger2005-07-011-31/+0
| | | | individual drivers and put them in common code. It is still possible for a driver to define its own macros if it has special needs. This affects CLIPPIXEL, CLIPSPAN, HW_CLIPLOOP, HW_ENDCLIPLOOP, and for drivers using the spantmp2 template also GET_SRC_PTR and GET_DST_PTR.
* Refactor COMMON_SOURCES up to Makefile.templateAdam Jackson2005-05-051-10/+0
|
* Add drirenderbuffer.c to COMMON_SOURCESAdam Jackson2005-05-041-0/+1
|
* Major check-in of changes for GL_EXT_framebuffer_object extension.Brian Paul2005-05-042-6/+6
| | | | | | | Main driver impacts: - new code for creating the Mesa GLframebuffer - new span/pixel read/write code Some drivers not yet updated/tested.
* First pass at updating these drivers with pipeline_stage struct changes.Keith Whitwell2005-04-221-23/+4
|
* Bug #2428: #ifdef GLX_DIRECT_RENDERING in DRI drivers is pointless.Adam Jackson2005-01-312-8/+0
|
* Enclose passed macro values in brackets to ensure correct read/write spanAlan Hourihane2005-01-201-7/+7
| | | | values.
* uint*t -> u_int*t changesAlan Hourihane2004-12-146-55/+59
|
* Remove _mesa_ResizeBuffersMESA() call from _mesa_set_viewport().Brian Paul2004-11-272-5/+3
| | | | | | | | Now, the driver's Viewport routine should call _mesa_ResizeBuffersMESA() if necessary. Cleaned up code related to GLframebuffer width/height initialization. Set initial viewport/scissor params in _mesa_make_current2(), instead of in the drivers' MakeCurrent functions.
* Patch removes _SOLO definition needed for mesa-solo. mesa-soloJon Smirl2004-07-041-10/+0
| | | | | uses the NEW_INTERFACE now so _SOLO isn't necessary anymore. Tested with the hardware that I own.
* Rename the various function types in t_context.h to include a tnl_ prefix.Keith Whitwell2004-07-013-7/+7
|
* Open/Close FullScreen die. unichrome and savage implemented, code is ifdef'd outJon Smirl2004-06-031-16/+1
|
* Replace drmHandle, drmContext, drmDrawable, drmMagic and related types withIan Romanick2004-06-022-2/+2
| | | | drm_handle_t, drm_context_t, drm_drawable_t, drm_magic_t.
* Move dri_util.[ch] and glcontextmodes.[ch] from dri_client to common.Ian Romanick2004-05-271-1/+3
|
* obsolete in favor of regular MakefilesBrian Paul2004-05-121-124/+0
|
* Allow *_dri.so to build in Mesa tree with the 'linux-dri' target.Keith Whitwell2004-04-291-81/+2
|
* Add DRM_SOURCE_PATH to make system.Jon Smirl2004-04-131-1/+1
| | | | Needed for linux-solo to build
* lots of Makefile updates for new build systemBrian Paul2004-04-081-58/+62
|
* build fixesAlan Hourihane2004-04-081-0/+2
|
* New Makefile systemBrian Paul2004-03-261-0/+117
|
* Implemented support for software-based AUX color buffers.Brian Paul2004-03-211-2/+4
| | | | | | Only available with Xlib driver for now. Assorted clean-ups related to Draw/ReadBuffer(). Renamed FRONT_LEFT_BIT -> DD_FRONT_LEFT_BIT, etc.
* Convert int(8|32)_t to uint(8|32)_t, like should have been done the first time.Ian Romanick2004-03-186-55/+55
|
* Convert all uses of CARD32 and CARD8 to int32_t and int8_t.Ian Romanick2004-03-176-55/+55
|
* Adjust includes to help DRI buildJon Smirl2004-03-121-0/+2
|
* Adjustments to make everything use IOCTL/sarea defines in DRM insteadJon Smirl2004-03-114-6/+6
| | | | of glx/mini. removes glx/mini/drm.h glx/mini/sarea.h
* added _tnl_allow_vertex/pixel_fog() callsBrian Paul2004-02-261-1/+3
|
* Added support for EXT_blend_equation_separate / ATI_blend_equation_separate.Ian Romanick2004-01-271-2/+4
| | | | | The internal driver interface was also changed to use BlendEquationSeparate instead of BlendEquation.
* Consolidate texObj->Pos/Neg/X/Y/Z and texObj->Image into a singleKeith Whitwell2004-01-272-10/+10
| | | | array, texObj->Image[face][level].
* Remove dd_function_table::BlendFunc. All drivers now useIan Romanick2004-01-211-10/+0
| | | | | | dd_function_table:BlendFuncSeparate. If a driver does not actually support EXT_blend_func_separate, it can assume that the RGB and alpha blend functions are the same.
* Undo some bits from last check-in related to the ctx->Driver.NewTextureObjectBrian Paul2004-01-203-65/+8
| | | | | functions. Don't allocate the driver-specific data during texture object creation but do it later as needed (as code originally was).
* Before calling _mesa_create_context(), initialize a dd_function_table structBrian Paul2004-01-204-30/+102
| | | | | | | | | | by calling _mesa_init_driver_functions() and then plugging in the driver- specific functions. In particular, make sure ctx->Driver.NewTextureObject points to the appropriate driver function so that _all_ texture objects are augmented with the driver-specific data. Put in a bunch of assertions in the texture-related driver functions that texObj->DriverData is valid. Remove old dead code in near future.
* include texobj.h to silence warningsBrian Paul2004-01-181-0/+1
|
* call _mesa_delete_texture_object() from in the driver's DeleteTexture functionBrian Paul2004-01-111-0/+2
|
* Re-commit t_vertex.[ch] changes to fd.o server.Keith Whitwell2004-01-051-17/+1
|
* new MakefilesBrian Paul2003-12-121-3/+3
|
* set MaxTextureImageUnits, MaxTextureCoordUnitsKeith Whitwell2003-12-121-0/+2
|
* Updates to tnl_dd_dmatmp.hKeith Whitwell2003-12-114-47/+13
| | | | | | | | | | | | | | - Allocate vertices explicitly, rather than trying to talk about dma buffers. - Clean up the various Flush() operations. - Don't allow fallbacks any longer. Provide a support function to detect them ahead o ftime Updates to tnl_dd_vbtmp.h - Get rid of power-of-two vertex strides. Pack all vertices tightly. - Get texunit 2,3 emit working coorrectly. Other stuff: - Get rid of lingering Ubyte color support. - Fix a few compiler warnings.