summaryrefslogtreecommitdiffstats
path: root/src/glx
Commit message (Collapse)AuthorAgeFilesLines
* glx: Fix some typos in pointer checking for OML_sync_control entry points.kleinerm2010-02-231-3/+3
| | | | | Signed-off-by: Mario Kleiner <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* Replace _mesa_malloc, _mesa_calloc and _mesa_free with plain libc versionsKristian Høgsberg2010-02-192-33/+4
|
* Remove _mesa_memset in favor of plain memset.Kenneth Graunke2010-02-191-5/+2
| | | | This may break the SUNOS4 build, but it's no longer relevant.
* Merge commit '381d5e209815235911c4aab516037c868c8f695f'Ian Romanick2010-02-171-137/+143
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This merges the patches from the series "[PATCH 00/14] More client-side GLX house cleaning" that were posted to the mesa3d-dev mailing list. See http://marc.info/?l=mesa3d-dev&m=126582985214612&w=2 Patches 01 through 04 eliminate a bunch of annoying warnings that I get when building Mesa. Patch 05 fixes an inconsistency between the implementation of glXSwapIntervalMESA and the spec. I chose to favor the code over the spec in this case. This also eliminated a warning. Patches 06 through 12 clean up the way that context creation is performed on the client. When support for GLX_SGIX_fbconfig and the related GLX 1.3 functions was added, I refactored a bunch nuts-and-bolts of context creation to CreateContext. The refactor was a good idea, I just didn't do it right. Patches 13 and 14 update glxgears_fbconfig to use GLX 1.3 interfaces.
| * glx: Pass fbconfig ID or visual ID to CreateContextIan Romanick2010-02-111-10/+10
| | | | | | | | | | | | Pass either the fbconfig ID or the visual ID, as appropriate, to CreateContext. Now CreateContext does not derefernce fbconfig or vis (which no longer exists as a parameter).
| * glx: Use the screen parameter everywhere instead of vis->screen, etc.Ian Romanick2010-02-111-5/+3
| |
| * glx: Move work of converting a visual to an fbconfigIan Romanick2010-02-111-31/+29
| | | | | | | | | | | | | | For the direct rendering case, the DRI createContext function wants an fbconfig. When glXCreateContext is called, we have to convert the visual to an fbconfig. This work was done in CreateContext, but it makes more sense for it to be done in glXCreateContext.
| * glx: Re-indent CreateContext after the previous commitIan Romanick2010-02-111-96/+95
| |
| * glx: Handle imported contexts outside of CreateContextIan Romanick2010-02-111-16/+10
| | | | | | | | | | | | | | | | A long time ago I was a bit over-agressive in refactoring context creation into a single function. The creation code for glXImportContextEXT does not belong in CreateContext because it does not use any GLX protocol. The big if-statement for the import case routed around almost the entire function anyway.
| * glx: Pass screen number as parameter to CreateContextIan Romanick2010-02-111-7/+16
| | | | | | | | | | Passing the screen parameter to CreateContext will simplify a couple of changes that are coming.
| * glx: Pass opcode to CreateContext instead of use_glx_1_3 parameterIan Romanick2010-02-111-8/+23
| | | | | | | | | | | | Passing the opcode directly instead of having CreateContext infer it from the value of fbconfig and the use_glx_1_3 flag will simplify some changes that are coming.
| * glx: Fix interval test in glXSwapIntervalMESAIan Romanick2010-02-111-4/+0
| | | | | | | | | | | | | | | | It appears that, in spite of what the spec says, the interval parameter to glXSwapIntervalMESA has been an unsigned int since day-1. This made the 'if (interval < 0)' test useless. The test is removed and the spec is updated to note that the interval is an unsigned value.
| * glx: Change type to eliminate 'comparison between signed and unsigned' warningIan Romanick2010-02-111-1/+2
| |
| * glx: Add casts to eliminate 'comparison between signed and unsigned' warningsIan Romanick2010-02-111-7/+8
| |
| * glx: Eliminate several 'unused variable' warnings in glxcmds.c.Ian Romanick2010-02-111-0/+11
| |
| * glx: Use wrapper macro to detect direct renderingIan Romanick2010-02-111-24/+8
| | | | | | | | | | | | | | The wrapper macro GC_IS_DIRECT is used in CreateContext and a couple other places to eliminate the need for some of the '#ifdef GLX_DIRECT_RENDERING' madness. There appear to be a *LOT* of places in glxcmds.c where '#ifdef GLX_DIRECT_RENDERING' is missing.
* | glx: Fix a couple of warningsKristian Høgsberg2010-02-161-2/+0
| |
* | glx: Only register wire handlers for the events the server supportsKristian Høgsberg2010-02-161-1/+20
| |
* | dri2: Event driven buffer validation.Francisco Jerez2010-02-163-15/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a buffer invalidation event is received from the X server, the "invalidate" hook of the DRI2 flush extension is executed: A generic implementation (dri2InvalidateDrawable) is provided that just bumps the "pStamp" sequence number in __DRIdrawableRec. For old servers not supporting buffer invalidation events, the invalidate hook will be called before flushing the fake front/back buffer (that's typically once per frame -- not a lot worse than the situation we were in before). No effort has been made on preserving backwards compatibility with version 2 of the flush extension, but I think it's acceptable because AFAIK no released stack is making use of it. Signed-off-by: Kristian Høgsberg <[email protected]>
* | glx: Move GetGLXDRIDrawable() prototype to glxclient.hKristian Høgsberg2010-02-163-8/+4
| |
* | glx: Silence uninitialized variable warning.Vinson Lee2010-02-141-0/+1
|/
* glx: Fix TOP setting in src/glx MakefileKristian Høgsberg2010-02-091-1/+1
| | | | Argh, forgot to commit this fix before pushing.
* Retire miniglx and move the actual glx code up to src/glxKristian Høgsberg2010-02-0958-4342/+90
|
* glx: Fix SwapBuffers regression introduced by 01923fb72d.Francisco Jerez2010-02-082-0/+2
| | | | | | After that commit, some dri2 protocol symbols were being checked from places that weren't including dri2proto.h, effectively disabling some valuable SwapBuffers codepaths.
* glx: permit building with older protocol headersKeith Whitwell2010-02-083-6/+41
| | | | | | | | | | | | | I'd like to be able to build mesa on current distro releases without having to upgrade from the standard dri2proto and glproto headers. With this change I'm able to build on ancient releases such as Ubuntu 9-10... In general, it would be nice to be able to build-test mesa to check for unintended breakages without having to follow the external dependencies of every group working on the codebase. Seems to introduce no changes to the build of libglapi.a when tested against new versions of the headers.
* glx: Don't mark the XF86DRI functions PUBLICKristian Høgsberg2010-02-051-16/+16
|
* glx: Remove unnecessary headers.Vinson Lee2010-02-018-12/+0
|
* glx: fix possible memory leaks in dri2CreateScreen()Rodolfo Ribeiro Gomes2010-01-291-5/+8
| | | | Original patch fixed up by Brian Paul.
* glx: Build GLX normally.Chia-I Wu2010-01-261-12/+9
| | | | | | | | | | GLX was built specially and before Mesa core because libglapi.a could not be built with IN_DRI_DRIVER defined. This is no longer the case since 6e99e6ddbf488f6955e34ef0bc438fdcb4d90f74. It works fine in my (limited) testing with both direct and indirect rendering. I also compare the outputs after preprocessing (gcc -E) with or without this commit, and they are identical.
* mesa: misc GLX_INTEL_swap_event fixesRobert Bragg2010-01-253-10/+22
| | | | | | | | Fixup a few issues found through testing: - update GLX names to match glproto - register DRI2WireToEvent so it actually gets called Signed-off-by: Robert Bragg <[email protected]>
* Merge branch 'arb_half_float_vertex'Dave Airlie2010-01-231-0/+1
|\
| * glapi: add GL_HALF_FLOAT enum support.Dave Airlie2010-01-231-0/+1
| | | | | | | | | | | | Regenerate enums files and GLX indirect. Signed-off-by: Dave Airlie <[email protected]>
* | Merge branch 'mesa_7_7_branch'Brian Paul2010-01-221-0/+1
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/draw/draw_context.c src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c src/gallium/auxiliary/pipebuffer/Makefile src/gallium/auxiliary/pipebuffer/SConscript src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c src/gallium/auxiliary/tgsi/tgsi_scan.c src/gallium/drivers/i915/i915_surface.c src/gallium/drivers/i915/i915_texture.c src/gallium/drivers/llvmpipe/lp_setup.c src/gallium/drivers/llvmpipe/lp_tex_sample_c.c src/gallium/drivers/llvmpipe/lp_texture.c src/gallium/drivers/softpipe/sp_prim_vbuf.c src/gallium/state_trackers/xorg/xorg_dri2.c src/gallium/winsys/drm/intel/gem/intel_drm_api.c src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c src/gallium/winsys/drm/radeon/core/radeon_drm.c src/gallium/winsys/drm/vmware/core/vmw_screen_dri.c src/mesa/state_tracker/st_cb_clear.c
| * glx: Set GL context to null in __glXSetCurrentContextNullLuca Barbieri2010-01-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | __glXSetCurrentContextNull currently does not set the GL context to null in the direct rendering case. This can result in a segfault trying to flush an invalid old context in glXMakeCurrent. This fixes a crash starting the Unigine demos (they still don't work due to missing extensions though). Signed-off-by: Brian Paul <[email protected]>
* | Do not include glapi/dispatch.h outside Mesa core.Chia-I Wu2010-01-213-3/+6
| | | | | | | | | | Include the glapi*.h directly instead. glapi/dispatch.h became a Mesa core header since 22884db174b9fb0736cec1c6a192f8b9a97500c1.
* | Sun compilers now support some gcc __attribute__ valuesAlan Coopersmith2010-01-194-7/+7
| | | | | | | | | | | | | | | | | | | | | | Sun cc 5.9 and later (__SUNPRO_C >= 0x590) support __attribute__ calls for aligned, always_inline, noinline, pure, const, and malloc. This commit includes updates to files that were regenerated by gl_XML.py after adding the __SUNPRO_C checks to it Signed-off-by: Alan Coopersmith <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* | DRI2: don't send DRI2 requests the server doesn't know aboutJesse Barnes2010-01-131-5/+13
| | | | | | | | | | | | At init time, NULL out the hooks that send the server new requests. DRI2 never supported these extensions, so this preserves old behavior on old servers with new Mesa.
* | GLX/DRI2: pass X drawable ID insteadJesse Barnes2010-01-131-4/+4
| | | | | | | | | | | | These happened to be the same in my testing since I was using apps that depend on the GLX 1.2 behavior where X and GLX drawables are interchangeable.
* | Merge branch 'master' of ssh://people.freedesktop.org/~jbarnes/mesaJesse Barnes2010-01-1112-188/+704
|\ \ | | | | | | | | | | | | | | | Conflicts due to DRI1 removal: src/mesa/drivers/dri/intel/intel_context.c src/mesa/drivers/dri/intel/intel_screen.c
| * | DRI2/GLX: add INTEL_swap_event supportJesse Barnes2010-01-085-5/+163
| | | | | | | | | | | | | | | | | | | | | Add event support for the GLX swap buffers event, along with DRI2 protocol support for generating GLX swap buffers events in the direct rendered case. Signed-off-by: Jesse Barnes <[email protected]>
| * | DRI2: add SwapInterval supportJesse Barnes2010-01-086-9/+80
| | | | | | | | | | | | | | | | | | | | | | | | Add support for the DRI2SwapInterval protocol request. This allows direct rendered clients to control their swap interval per the SGI_swap_control extension. Signed-off-by: Jesse Barnes <[email protected]>
| * | DRI2: add OML_sync_control supportJesse Barnes2010-01-089-185/+423
| | | | | | | | | | | | | | | | | | | | | | | | Add OML_sync_control support, along with a simple program for testing it. This means adding support for the DRI2GetMSC, DRI2WaitMSC and DRI2WaitSBC requests. Signed-off-by: Jesse Barnes <[email protected]>
| * | DRI2: add SwapBuffers supportJesse Barnes2010-01-083-1/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support the new DRI2 protocol request, DRI2SwapBuffers, in both direct and indirect rendering context. This request allows the display server to optimize back->front swaps (e.g. through page flipping) and allows us to more easily support other GLX features like swap interval and the OML sync extension in DRI2. Signed-off-by: Jesse Barnes <[email protected]>
* | | Merge branch 'remove-intel-dri1'Kristian Høgsberg2010-01-052-7/+7
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * remove-intel-dri1: intel: intelScreenContext() is no longer used intel: Remove remaining dri2.enabled tests intel: Drop more cliprect bookkeeping intel: Remove struct intel_framebuffer intel: Remove client-side vblank code intel: Drop intelWindowMoved() intel: Drop batchbuffer cliprect_mode tracking intel: Drop DRI1 static regions intel: Use depth buffer from ctx.DrawBuffer in copypix_src_region() intel: Drop LOCK/UNLOCK_HARDWARE() intel: Drop DRI1 SwapBuffer implementation intel: Drop DRI1 CopySubBuffer implementation intel: Drop DRI1 support Push __driDriverExtensions out of dri_util.c and into the drivers Remove leftover __DRI{screen,drawable,context}Private references Check for libdrm_$chipset.pc when needed
| * | Remove leftover __DRI{screen,drawable,context}Private referencesKristian Høgsberg2010-01-042-7/+7
| |/ | | | | | | | | | | | | | | | | As part of the DRI driver interface rewrite I merged __DRIscreenPrivate and __DRIscreen, and likewise for __DRIdrawablePrivate and __DRIcontextPrivate. I left typedefs in place though, to avoid renaming all the *Private use internal to the driver. That was probably a mistake, and it turns out a one-line find+sed combo can do the mass rename. Better late than never.
* | apple: Purge existing (not working) GLX_USE_APPLEGL from dated libGL on OSXJeremy Huddleston2010-01-032-20/+0
| | | | | | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* | glxcmds: Fix comment about __DRI_ALLOCATEJeremy Huddleston2010-01-031-2/+2
|/ | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* Merge branch 'mesa_7_6_branch' into mesa_7_7_branchBrian Paul2009-12-273-2/+11
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/util/u_network.c src/gallium/auxiliary/util/u_network.h src/gallium/drivers/i915/i915_state.c src/gallium/drivers/trace/tr_rbug.c src/gallium/state_trackers/vega/bezier.c src/gallium/state_trackers/vega/vg_context.c src/gallium/state_trackers/xorg/xorg_crtc.c src/gallium/state_trackers/xorg/xorg_driver.c src/gallium/winsys/xlib/xlib_brw_context.c src/mesa/main/mtypes.h
| * glx: Add XF86DRI[Open|Close]FullScreen prototypes to xf86dri.h.Vinson Lee2009-12-231-0/+4
| |
| * glx: Move declaration outside for loop.Vinson Lee2009-12-231-2/+3
| |