History log of /external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
5174eed79343346e7e39cf47d1cb18e6caa76c54 26-Sep-2012 Ian Romanick <ian.d.romanick@intel.com> dri_util: Use calloc to allocate __DRIcontext

The __DRIcontext contains some pointers, and some drivers check for them to be
NULL in some failure paths. Instead of sprinkling NULL assignments across the
various drivers, just zero out the whole thing.

NOTE: This is a candidate for the 9.0 branch.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-and-tested-by: Kenneth Graunke <kenneth@whitecape.org>
Tested-by: Lu Hua <huax.lu@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53618
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54301
(cherry picked from commit f93cb0bebb10e3e3e5df099be51021b211650356)
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
ca2b1fcb30bb1bec2eab520626c58727949f7cd6 17-Aug-2012 Ian Romanick <ian.d.romanick@intel.com> mesa/dri: Allow creation of forward-compatible contexts

This is done by changing the API to API_OPENGL_CORE.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
0c445bb618479adceb9243098fc20bebac4eecc7 07-Aug-2012 Ian Romanick <ian.d.romanick@intel.com> dri_util: Compare against the correct API enums

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
70f47505a2e5d4cf949b7c2650f3d9f6559bacb3 07-Aug-2012 Ian Romanick <ian.d.romanick@intel.com> dri: Pass API_OPENGL_CORE through to the drivers

This forces the drivers to do at least some validation of context API
and version before creating the context. In r100 and r200 drivers, this
means that they don't do any post-hoc validation.

v2: Actually reject compatibility profile 3.2+ contexts. Thanks Ken.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
63adb6b9eaa723f6bf9603f3f567e04451df857e 18-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> dri2: Fix bug in attribute handling for non-desktop OpenGL contexts

Previously an error would be generated if any attributes were specified when
creating a non-desktop OpenGL context. This was a mistake, and it will
prevent old drivers from working with new EGL libraries that add support for
the createContextAttribs interface. Instead, match the behavior of
EGL_KHR_create_context: allow versions that make sense, reject non-zero flags.

NOTE: This is a candidate for the 8.0 branch.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Cc: Kristian Høgsberg <krh@bitplanet.net>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
de9ed5152533c87c21d27b71211a834b4c9767bc 03-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> dri2: Hard-code the DRI2 version

This allows revising the dri_interface.h separately from adding driver
support.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
aec47e7d42ed58a7c63b36cff03c6c8dcfc71538 16-Mar-2012 Brian Paul <brianp@vmware.com> dri_util: add copyright/license blurb
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
596d9f6dd170ec7a4c9ed94dd545b4b3d7c7c07d 02-Jan-2012 Ian Romanick <ian.d.romanick@intel.com> dri_util: Fix order of error and data parameters to dri2CreateContextAttribs

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
e532b6288f01b63d8d8ba8c8dc08292967e65490 01-Dec-2011 Ian Romanick <ian.d.romanick@intel.com> dri2: Add plumbing to get context version requirements and flags to drivers

This adds support for DRI_DRI2 version 3 to all of the DRI2 drivers.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
d9de33c304d875627937cacbfc21f54a406af726 01-Dec-2011 Ian Romanick <ian.d.romanick@intel.com> dri_util: Mostly stub implementation of dri2CreateContextAttribs

This adds the function and modifies dri2CreateNewContextForAPI to call
it. At this point only version 2 of the DRI2 API is advertised to the
loader.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
1ab545494a6750527cb8b945c286f23a6524826a 30-Nov-2011 Ian Romanick <ian.d.romanick@intel.com> dri2: Add createContextAttribs entry point for DRI2 version 3

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
cd86a5d2f862f183f85ef8c7d51f69e028d04447 04-Nov-2011 George Sapountzis <gsapountzis@gmail.com> dri: cosmetic

To smooth minor diff between dri_util & drisw_util
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
2fbba6bb906a4389de64cc6e961b531d8cd5c495 04-Nov-2011 George Sapountzis <gsapountzis@gmail.com> dri_util: move drawable functions
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
2314021d603afa40321fb7b50881bc85d406c921 04-Nov-2011 George Sapountzis <gsapountzis@gmail.com> dri_util: move context functions
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
9292ab7190b7f5805e1670be63022716035d067e 04-Nov-2011 George Sapountzis <gsapountzis@gmail.com> dri_util: move context functions
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c98d15c9f5cf7e8d2a8f8e9e56ed08786b91c86b 04-Nov-2011 George Sapountzis <gsapountzis@gmail.com> dri_util: move screen functions

This is to reorder as screen/context/drawable similar to drisw_util
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
3e80a3431571e0ae9fb1ef13367bba559139c6d2 03-Nov-2011 George Sapountzis <gsapountzis@gmail.com> dri: drop stray includes and typedef
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
875a757ddd103722cfe9a2b21035024aa5a23d32 03-Nov-2011 George Sapountzis <gsapountzis@gmail.com> dri: unify __DRIscreenRec

Also drop DriverAPI field, this is a static symbol and I don't see why it
should be accessed through __DRIscreenRec
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
7192c37294964b3f6e1551469f161593ec8f851d 02-Nov-2011 George Sapountzis <gsapountzis@gmail.com> dri: unify __DriverAPIRec

I dropped the comments because they don't add much.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c467db4cc765965bd347cf5b91aec39b831273ec 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Move driUpdateFramebufferSize to dri_util.c

drirenderbuffer.[ch] is going bye-bye.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
90de3b9d96394809e2574c6c5b459a9cf745d9dd 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Remove unnecessary #defines and #includes
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
e9beaf65fdaf82a7845cbe176f353ddb6b8466c7 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Remove unnecessary timestamp pointer indirection
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
03855bc2accbeb508458f70bdbdcef292672b2b8 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Remove dri2.enabled flag

DRI2 is always enabled now.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
a2ea34d70507ffb6b7277b4612ae3bc1ca582a60 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Remove DRI1 fields from DRI structs
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
d24b81e0e0f4109f3256dc45b0adc5ffd59fb749 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Remove cliprect information from __DRIdrawable
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
24002daf011bf05d7d088602dc32e60da1755f44 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Drop unused driCalculateSwapUsage
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
8e6c22136f416b72fef269939f673aa7e55a5d07 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Remove unused driIntersectArea
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
bfb6f9e690da73cd0bb724728c7cbfc8324dd793 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Drop __driUtilUpdateDrawableInfo and helper macros
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
6260618b29983fd961718fd6e3961bdd32163cb5 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Remove unused driSwapBuffers
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
e78f7b8b44f610a11c3e0f663c855c6325ed63a2 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Drop unused driCreateNewContext
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
f5ba7662bdaf7f8d62cbc1c0c0a59dabb242e78b 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Fold driCreateNewDrawable into dri2CreateNewDrawable
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c786debe98a54bdaaccccb2af6272749a96a9489 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Remove unsused driCreateNewScreen
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
73ec71cb16fbae0effcb4a92da7dc7f17cd6a62a 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Remove driMediaStreamCounterExtension

Also DRI1-only.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
759cbb751b29b1c6608593841c56e0ad08eb33b0 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Remove driSwapControlExtension

DRI1-only as well.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
8e898e83c6934fc9c62730ad82fbf6f9d9180577 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Drop driCopySubBufferExtension

Another DRI1-only extension.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
ad3221587164c10ae16d85db514484b717cabc6f 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Drop driReadDrawableExtension

All DRI2 drivers support setting a separate read drawable.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
32039126007a67a6bcca5973a7406c41ccc8c543 28-Oct-2011 Kristian Høgsberg <krh@bitplanet.net> dri: Drop driLegacyExtension

There are no DRI1 drivers left.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
48510d685655d0003c10fc3a3c2dcb485c3a86d1 14-Sep-2011 Andrew Deason <adeason@dson.org> DRI: Log something if we don't support legacy DRI

If we are called via the legacy DRI interface, and we don't support
legacy DRI (InitScreen is NULL), print a debug message, so it is easy
to see why the driver fails to initialize.

See https://bugs.freedesktop.org/show_bug.cgi?id=40437
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
17d898d5b96809227d940768dc54cfe86070b8d0 22-Aug-2011 Ian Romanick <ian.d.romanick@intel.com> dri_util: Silence several "warning: unused parameter"

The parameters can't be removed because they are part of the DRI ABI.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
1b8ef9416bf3a4d2d47fcf9935063af57da2975d 04-Feb-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> Add dri2::{Allocate,Release}Buffer extension
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
dad914f6b2e5862a5174133f11276e975867be04 13-Jan-2011 Paulo Zanoni <pzanoni@mandriva.com> dri_util: fail driCreateNewScreen if InitScreen is NULL

Without this, X doesn't start with UMS on r300g.

NOTE: This is a candidate for the 7.9 and 7.10 branches.

Signed-off-by: Paulo Zanoni <pzanoni@mandriva.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
d3491e775fb07f891463b2185d74bbad62f3ed24 12-Oct-2010 Kristian Høgsberg <krh@bitplanet.net> Rename GLvisual and __GLcontextModes to struct gl_config
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
705e142dda047f24b563fc2bea0f922173e91d1b 12-Oct-2010 Kristian Høgsberg <krh@bitplanet.net> gl: Remove unused GLcontextModes fields
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
17eace581d25a626a7d75d9d1205d012cbb14a6e 23-Sep-2010 Kristian Høgsberg <krh@bitplanet.net> dri: Pass the __DRIscreen and the __DRIscreen private back to image lookup

We will typically have a current context when we need to lookup the image,
but the lookup implementation don't need it so drop it.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
6561a64a69c0f5005d03ea297f9a309f48449731 07-Sep-2010 nobled <nobled@dreamwidth.org> dri: Make it a little clearer that we're not dereferencing a NULL pointer
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
1b8c9fef1128cfeee5e5ba75ba7d645522cc76c2 07-Sep-2010 nobled <nobled@dreamwidth.org> dri: Use the right type for the API token

Pass mesa_api to CreateContext, and abort early
if the requested API isn't recognized.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
ae6e112c69cf42fb81ef4ed5bdeb3b280647f141 27-Aug-2010 Eric Anholt <eric@anholt.net> dri: Get prototype for _mesa_destroy_compiler().

Bug #29665.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
b83846475bac76268d75f53632faf8aad8cad02c 19-Aug-2010 Eric Anholt <eric@anholt.net> glsl2: Free the shader compiler at dri screen destruction.

Hooray, we can valgrind again without adding suppressions. This also
adds an interface for use by an implementation of
glReleaseShaderCompiler().
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
a482e033082bb0794fdf56c47dd76d949afde6fa 19-Aug-2010 Eric Anholt <eric@anholt.net> dri2: Clean up the common dri2 options at screen destroy.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
22266c391fbe17603b15a83d4ccf5fa9455ccf8d 19-Jul-2010 Kristian Høgsberg <krh@bitplanet.net> glx: Remove support for MESA_swap_frame_usage

The extension never worked, the implementation returns GLX_BAD_CONTEXT
when enabling the frame tracking.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
47de9adece49f78c6e4065bedc69ce13272bc120 31-May-2010 Dave Airlie <airlied@redhat.com> gallium: fix TFP on gallium

This fixes an uninitialised value use in the dri2 st when doing TFP.

It uses the driContextPriv which isn't initialised at alloc time.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
db2993faa0211b60efd46016de5d07110cb9777a 11-May-2010 Kristian Høgsberg <krh@bitplanet.net> intel: Drop viewport hack when we can
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
0870e4a2022cff79805613ae7cd4b9237a2f564c 02-May-2010 Kristian Høgsberg <krh@bitplanet.net> Merge branch 'gles2-2'

Conflicts:
src/mesa/drivers/dri/common/dri_util.h
a7a9a91d7b28e5b5faed509d00f0f951e3136b1b 27-Apr-2010 Kristian Høgsberg <krh@bitplanet.net> dri: Add DRI entrypoints to create a context for a given API
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
64fa717b18272bda2551a6dc2e1a40725b031097 26-Apr-2010 Jakob Bornecrantz <jakob@vmware.com> dri_util: Assume error checking is done properly in glXMakeCurrent

In short what the code did before:

__DRIscreen *psp = NULL;
if (pcp)
psp = pcp->psb;

assert(psp);
if (psp->stuff)
other_stuff();

return psb->even_more(pcp);

Remove all that stupid checking which still segfaults/asserts later on and
just do what we do in driUnbindContext. Also limited testing show libGL never
call driUnbindContext or driBindContext with cPriv == NULL.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
9bc54ca991e15d3a8200f4d64e778bba19338ef5 25-Apr-2010 Vinson Lee <vlee@vmware.com> dri: Remove unnecessary header.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
45e2b51c853471b79004a954ce3092a253b20b77 22-Apr-2010 Jesse Barnes <jbarnes@virtuousgeek.org> DRI2/GLX: check for vblank_mode in DRI2 GLX code

Re-add support for the vblank_mode environment and configuration
variable. Useful for benchmarking and app control.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
234286c0f8b7d30ed49223c648d4c73c1a517ab3 22-Apr-2010 Jesse Barnes <jbarnes@virtuousgeek.org> DRI2: add config query extension

Add a new DRI2 configuration query extension. Allows for DRI2 client
code to query for common DRI2 configuration options.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
42510765907014aabdee39a38ffe0283f7e32654 30-Mar-2010 Kristian Høgsberg <krh@bitplanet.net> dri: Drop the unused dummyContext
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
631a1a9ac8b97dec172205e13e33ef51f28bb1c0 14-Mar-2010 George Sapountzis <gsapountzis@gmail.com> dri/common: mv __driUtilMessage to utils.c

allows to link with xmlconfig without dri_util, and has nothing drm-specific.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
fab1f07d6ad01463897ae792f4b33738afb07369 13-Jun-2008 Jeff Smith <whydoubt@yahoo.com> Grammar and spelling fixes

Signed-off-by: Jeff Smith <whydoubt@yahoo.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
cab77711b3e8d398393677bcefcd413f50503a64 28-Feb-2010 Vinson Lee <vlee@vmware.com> dri: Add assert to check for null pointer dereference.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
e63f532d26d82c06281840a84c73e2e36d7b3e1e 27-Feb-2010 Vinson Lee <vlee@vmware.com> dri: Assert pointer is not null before dereferencing.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c26247100bfd453a7ec013f630abe366c12fbd8b 12-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> intel: Implement DRI image extension
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
32f2fd1c5d6088692551c80352b7d6fa35b0cd09 19-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> Replace _mesa_malloc, _mesa_calloc and _mesa_free with plain libc versions
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
d449627829e1a4a3250a1a723af2f4e3cd5fd194 18-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> intel: Implement the DRI2 invalidate function properly

This uses a stamp mechanisms to mark the DRI drawable as invalid.
Instead of immediately updating the buffers we just bump the drawable
stamp and call out to DRI2GetBuffers "later".

"Later" used to be at LOCK_HARDWARE time, and this patch brings back
callouts at the points where we used to call LOCK_HARDWARE. A new function,
intel_prepare_render(), is called where we used to call LOCK_HARDWARE,
and if the buffers are invalid, we call out to DRI2GetBuffers there.

This lets us invalidate buffers only when notified instead of on
every glViewport() call. If the loader calls the DRI invalidate
entrypoint, we disable viewport triggered buffer invalidation.

Additionally, we can clean up the old viewport mechanism a bit,
since we can just invalidate the buffers and not worry about
reentrancy and whatnot.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
61d26bc82e7c4100acfb551cbb0ba9d84bbc4ba5 08-Feb-2010 Francisco Jerez <currojerez@riseup.net> dri2: Event driven buffer validation.

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 <krh@bitplanet.net>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
925b901ba313a3ddd7567eca088951be39414430 15-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> dri2: Allocate cliprect as part of the __DRIdrawableRec
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
93931d9e684cd5a5659c3f28f8da7294ac174542 11-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> dri: Store the loader private passed in at dri context creation

We just threw it away before, but we haven't had a use for it yet.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c6ef705e414c8e93ee471f50d15ada3492a9b067 11-Jan-2010 Jesse Barnes <jbarnes@virtuousgeek.org> Merge branch 'master' of ssh://people.freedesktop.org/~jbarnes/mesa

Conflicts due to DRI1 removal:
src/mesa/drivers/dri/intel/intel_context.c
src/mesa/drivers/dri/intel/intel_screen.c
a35f6bb207efe3c959bbd16a37f2049e5aceeea9 17-Jul-2009 Jesse Barnes <jbarnes@virtuousgeek.org> DRI2: add SwapBuffers support

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 <jbarnes@virtuousgeek.org>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
39a0e4e7de379a182c1544fa24d5cb2a7687ec72 01-Jan-2010 Kristian Høgsberg <krh@bitplanet.net> Push __driDriverExtensions out of dri_util.c and into the drivers

This lets the individual drivers select which extensions to advertise.
Specifically, most drivers (tdfx, sis, savage etc) don't support DRI2
but the shared extension list in dri_util.c does list the DRI2 extension.

Pushing the list into the drivers, lets us avoid listing the DRI2
extension for drivers that don't support it.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
d61f07318c8678901b948fdaa8ccdf37aa3203e9 01-Jan-2010 Kristian Høgsberg <krh@bitplanet.net> Remove leftover __DRI{screen,drawable,context}Private references

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.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
7430c3ac35ed47227c47f8f5ed184e6e754ea5e7 15-Dec-2009 Vinson Lee <vlee@vmware.com> dri: Initialize variable in driBindContext.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c994f08eb1ec2a4bbaa44fbd6d35e7ff033d5c3c 29-Nov-2009 Vinson Lee <vlee@vmware.com> dri: Fix potential null pointer dereference in driBindContext.
(cherry picked from commit 919898e92fa23ff71a59d86a46ff0886a6f34e4d)
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
f622b649fb0c55b1640997f9d32ea327743519a1 24-Nov-2009 Vinson Lee <vlee@vmware.com> dri: Fix potential null pointer deference in dri_put_drawable.
(cherry picked from commit 364070b1f2b08d43fb205ec198894a35bec6b2f3)
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
418cdc66ec10c1f3005320ab46404b907c30e37d 25-Aug-2009 Pauli Nieminen <suokkos@gmail.com> Revert "glx: Make drawables persistent untill they are changed by glXMakeCurrent"

This commit was not mean to end in to master yet. It is still queston if this
right design to fix the problem.

This reverts commit 45e3be3c07f543f3f2869ba7750ba4695cd25122.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
45e3be3c07f543f3f2869ba7750ba4695cd25122 04-Aug-2009 Pauli Nieminen <suokkos@gmail.com> glx: Make drawables persistent untill they are changed by glXMakeCurrent

This fixes bug that xdemos/manywin would segfault if it was run with command
./manywin 2. Demo is tring to call glXSwapBuffers while another context was
bind using glXMakeCurrent.

Fix is simple makes drawable and readable persistent untill they change or
context is destroyed.

I found a logic error when same dri context is used for multiple drawables
which caused readable and drawable to fall out of sync in special case. Fix
is simple just updating drawables more often than in original patch.

Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
0d7fafa0ed706a2053944e9b25068dfed6339a0c 07-Aug-2009 Pauli Nieminen <suokkos@gmail.com> dri: Fix problems with unitialized values in dri screen object.

This fixes crash in r200 KMS driver when pSAREA was set to 1 randomly because of memory wasn't cleared.

Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
bf71ece171305f80972f6e401442372618265fcb 05-Jul-2009 RALOVICH, Kristóf <tade60@freemail.hu> glx: death to RCS tag
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
77506dac8e81e9548a7e9680ce367175fe5747af 11-Jun-2009 Dave Airlie <airlied@redhat.com> GLX: attempt to fix glean makeCurrent test cases.

Two parts to this:

One we don't keep pointers to possibly freed memory anymore once we unbind the
drawables from the context. Brian I need to figure out what the comment
you made there, can we get a glean/piglit test so we can fix it properly?

If the new gc is the same as the oldGC, we call the unbind even though
we just bound it in that function. doh.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
466c78c93538f2853449124c06274d538830cd5a 22-Apr-2009 Dave Airlie <airlied@linux.ie> Merge remote branch 'origin/master' into radeon-rewrite
e1a8852aa49b535a4fcec4eefda3fb7f8e57a5cc 17-Apr-2009 Brian Paul <brianp@vmware.com> dri: __driUtilMessage(): not all messages are errors
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
3264352c577ce1d6681e70abd76624ede906df71 16-Apr-2009 Dave Airlie <airlied@redhat.com> dri: attempt to actually refcount the __DRIDrawable

valgrind was showing a race between the drawable getting destroyed
by the X resource freeing code, and the context getting destroyed
later and freeing the drawable.

However I've no idea if some other combination of things could cause
this code to leak.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
43c7ffaea635f949fd4803c4f594cf53e4b98f24 14-Apr-2009 Younes Manton <younes.m@gmail.com> dri glx: Swap before checking for cliprects.

We don't update drawables anymore unless they are completely
uninitialized, so we need to swap even if we don't have
cliprects yet, otherwise we never end up calling the driver's
SwapBuffers(). The driver should update the drawable in its
SwapBuffers() anyway.

See 8e753d04045a82062ac34d3b2622eb9dba8af374,
"dri glx: Fix dri_util::driBindContext" for the change that
exposed it.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
8e753d04045a82062ac34d3b2622eb9dba8af374 02-Apr-2009 Thomas Hellstrom <thellstrom-at-vmware-dot-com> dri glx: Fix dri_util::driBindContext

1) Don't error-check here. It's done in glx makeCurrent.
2) Allow ctx and the dri drawables to be NULL for future use. This is
currently blocked in glx makeCurrent.
3) Avoid updating dri drawables unless they are completely uninitialized.
Since the updating was done outside of the lock, the driver need to
verify and redo it anyway.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c952b3e907ab31cd5f95157c18ce2f81626aafe4 02-Apr-2009 Thomas Hellstrom <thellstrom-at-vmware-dot-com> dri glx: Propagate driver MakeCurrent errors.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
7627c7f5dfa3b1bc7be9d1670668a81a70d9f64a 06-Jan-2009 Xiang, Haihao <haihao.xiang@intel.com> dri: correct the damage.

Fixes bug #17234
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
6186e7a20676c5df30b1b4bffeec87afa1550e25 10-Nov-2008 Brian Paul <brian.paul@tungstengraphics.com> dri: alloc __DRIscreen object with calloc()
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
ecadb51bbcb972a79f3ed79e65a7986b9396e757 18-Sep-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: added "main/" prefix to includes, remove some -I paths from Makefile.template
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
f56b569e9af356c11869ee49a4669bb01b75397e 13-Aug-2008 Kristian Høgsberg <krh@redhat.com> DRI2: Drop sarea, implement swap buffers in the X server.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
3a94b25538c647df965a93cd7734b841257ef203 21-Aug-2008 Peter Hutterer <peter@cs.unisa.edu.au> Report damage before modifying the area, not after.

If we copy the area before reporting the damage in this area, the server may
restore buffered data over the new data, leading to artefacts on the screen.
Reproducable with two cursors (second of which is SW rendered) and moving
windows around in compiz.

Fixes http://bugs.freedesktop.org/show_bug.cgi?id=16384 .
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
3b132b297febf99d7f3989d82f09578471880321 26-Jun-2008 Alan Hourihane <alanh@tungstengraphics.com> Check in SwapBuffers for any new pending dri2 events
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
3f3e4f645d389672e6d72215e60b812a887cc66d 12-Jun-2008 Brian Paul <brian.paul@tungstengraphics.com> remove obsoleted doxygen \param comments

Someone changed the function parameters but didn't bother to update the
comments.

Also, whitespace changes, clean-ups.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
5cf69fe511a67a7bcf6787974becf6a143abb507 09-Jun-2008 Alan Hourihane <alanh@tungstengraphics.com> Check for NULL pointer
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
0b734bd7cf921592eee441f759687e10f48a2cbc 28-May-2008 Dave Airlie <airlied@redhat.com> mesa/drm/ttm: allow build against non-TTM aware libdrm

I'll release a libdrm 2.3.1 without TTM apis included from a special
drm branch that should allow mesa 7.1 to build against it.

I've had to turn off DRI2 stuff.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
377016d728ace47c9eeb3ac2f01191608ab060f6 29-May-2008 Dennis Kasprzyk <onestone@opencompositing.org> Report correct damage rectangle in CopySubBuffer.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c95e66120be049ee51ff84868b1da3379b312fab 11-May-2008 George Sapountzis <gsap7@yahoo.gr> Make utils.h self-contained.

Move stuff with drm dependencies to dri_util.h, and move a couple of
types without drm dependencies to utils.h.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
dc836edf49a08a7fd77fc1f127818b0550558581 03-Apr-2008 Kristian Høgsberg <krh@redhat.com> Initialize GLX_EXT_texture_from_pixmap attributes correctly.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
e82dd8c6e1fa2fff5b960de26961080ba5e9651d 27-Mar-2008 Kristian Høgsberg <krh@redhat.com> DRI interface changes and DRI2 direct rendering support.

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.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
180b41594c669574355b54ceb2c2ff96889bf336 10-Mar-2008 Kristian Høgsberg <krh@sasori.boston.redhat.com> DRI2: Drop DriverAPI.UpdateBuffer.

__dri2ParseEvents() would determine the kind of event, but then call
UpdateBuffer() in either case, and UpdateBuffer() would then have to
figure that out again to dispatch to HandleBufferAttach() or
HandleDrawableConfig(). Pretty pointless.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
2d5ea175f7fcd65de71b7589435b9a908f998d51 10-Mar-2008 Kristian Høgsberg <krh@sasori.boston.redhat.com> DRI2: Pass the context instead of the screen to __dri2ParseEvents().

Makes a lot more sense, since the screen is always implicit in the
DRI drawable, but it may not be possible to track down a context from
just a drawable.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
0bba0e5be7a4a7275dad1edc34bdcc134ea1f424 10-Mar-2008 Kristian Høgsberg <krh@sasori.boston.redhat.com> DRI2: Add event buffer head as an argument to driCreateNewDrawable().

The DRI driver needs to know where in the buffer to start reading.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
3d608c7a2d451b862ae19b1e01d7299b2c46fe78 04-Mar-2008 Kristian Høgsberg <krh@redhat.com> [dri2] Add tail pointer to reemitDrawableInfo callback.

When the DRI doesn't parse the event buffer for a while, the X server
may overwrite data that the driver didn't get a chance to look at. The
reemitDrawableInfo callback requests that the X server reemit all info
for the specified drawable. To make use of this, the drive needs to know
the new tail pointer so it know where to start reading from.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
4f7a75cc8a6cee7763b2d92e3d34858c3de7bd4f 04-Mar-2008 Kristian Høgsberg <krh@redhat.com> [dri2] Optimize event parsing to skip obsolete events.

This also fixes the problem where the X server does multiple resizes before
the DRI driver gets the events. The obsolete buffer attach events then
reference already destroyed buffer objects.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
6cb3f5c4d8618a14bb7ad1d9df10ed7e648a7b2b 28-Feb-2008 Kristian Høgsberg <krh@redhat.com> Use __DRIextension mechanism providing loader functionality to the driver.

Instead of passing in a fixed struct, the loader now passes in a list
of __DRIextension structs, to advertise the functionality it can provide
to the driver. Each extension is individually versioned and can be
extended or phased out as the interface develops.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
16242a8007f41ab63f9a28bb9a750857c8cdb8af 26-Feb-2008 Kristian Høgsberg <krh@redhat.com> Reduce the versioning madness required to create a DRI2 screen.

Right now the DRI2 screen constructor takes 3 different versions:
DRI, DDX and DRM. This is mostly useless, though:

DRI: The DRI driver doesn't actually care about the DRI protocol,
it only talks to the loader, which in turn speaks DRI protocol. Thus,
the DRI protocol version is of not interest to the DRI driver, but it
needs to know what functionality the loader provides. At this point
that's reflected in the __DRIinterfaceMethods struct and the
internal_version integer.

DDX: The DDX version number is essentially used to track extensions
to the SAREA. With DRI2 the SAREA consists of a number of versioned,
self-describing blocks, so the DDX version is no longer interesting.

DRM: We have the fd, lets just ask the kernel ourselves.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
f1c82bf9a4d248389ea5a558575e566d17dbd9d8 26-Feb-2008 Kristian Høgsberg <krh@redhat.com> A few more fixes to the dlsym() fix.

Argh, seriously, I did test that, I just forgot to amend the commit
before pushing.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
0a64ffb308bbe17fb67aad2829ff36044c9eab47 25-Feb-2008 Dave Airlie <airlied@linux.ie> dri2: dlsym requires some quotes..
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
129b9ad16f95421d12f77c1bd3eca915d8768b78 26-Feb-2008 Kristian Høgsberg <krh@redhat.com> Use dlsym() to avoid referencing __dri2DriverInitScreen.

Sort-of a stop-gap workaround. There are a couple of nicer ways to
do this that doesn't require dlfcn.h, but they're more invasive.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
6e8d21d72f35767e07081a8bee4323aaaf5e2aae 25-Feb-2008 Kristian Høgsberg <krh@redhat.com> Remove GetMSC DriverAPI function.

The DriverAPI is internal to the DRI drivers and GetDrawableMSC
obsoletes GetMSC. Also, since the DRI driver interface has not yet
been released, just drop the getMSC function from the DRI interface
instead using the ABI preserving version mechanism.

Finally, using void pointer privates in the DRI interface is not allowed,
always pass the actual types around (__DRIdrawable in this case) to
enhance type safety and readability of the code.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
7da5705b090d9c97a9b765d786c5e89afe9d1f25 15-Jan-2008 Kristian Høgsberg <krh@temari.boston.redhat.com> Add new DRI2 infrastructure.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
f1139e4c662c47357ee054c2e004b13c9f74ffe1 09-Jan-2008 Kristian Høgsberg <krh@temari.boston.redhat.com> Fold DoBindContext() helper function into driBindContext().
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
2407e48f2805e27e76e2e1d7083926c4077d9032 05-Dec-2007 Xiang, Haihao <haihao.xiang@intel.com> Don't Swap buffer if a DRIDrawable is entirely obscured
by another window.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
38fdb47d26055e19d50cd407266b56ed4317ae0a 29-Oct-2007 Jesse Barnes <jesse.barnes@intel.com> Refactor and fix core vblank support

Consolidate support for synchronizing to and retrieving vblank counters. Also
fix the core vblank code to return monotonic MSC counters, which are required
by some GLX extensions. Adding support for multiple pipes to a low level
driver is fairly easy, the Intel 965 driver provides simple example code (see
intel_buffers.c:intelWindowMoved()).

The new code bumps the media stream counter extension version to 2 and adds a
new getDrawableMSC callback. This callback takes a drawablePrivate pointer,
which is used to calculate the MSC value seen by clients based on the actual
vblank counter(s) returned from the kernel. The new drawable private fields
are as follows:
- vblSeq - used for tracking vblank counts for buffer swapping
- vblFlags - flags (e.g. current pipe), updated by low level driver
- msc_base - MSC counter from the last time the current pipe changed
- vblank_base - kernel DRM vblank counter from the last time the pipe changed

Using the above variables, the core vblank code (in vblank.c) can calculate a
monotonic MSC value. The low level DRI drivers are responsible for updating
the current pipe (by setting VBLANK_FLAG_SECONDARY for example in vblFlags)
along with msc_base and vblank_base whenever the pipe associated with a given
drawable changes (again, see intelWindowMoved for an example of this).

Drivers should fill in the GetDrawableMSC DriverAPIRec field to point to
driDrawableGetMSC32 and add code for pipe switching as outlined above to fully
support the new scheme.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
ccff0cb26378ce370fc8697a2a2ada138d2e119e 08-Jun-2007 Kristian Høgsberg <krh@redhat.com> Add a version field to __DRIextension.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
f29f0ae8383888a6493b615edc3bab254cf6df39 22-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Move new texOffset extension to the new extension mechanism.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
ecdb45cb29e3209287cc297081596126e955ff2b 17-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Convert a left-over private void * to __DRIcontext *.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
f968f67e6214416f04b8875ce59a94a02f464c81 17-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Add a DRI_ReadDrawable marker extension to signal read drawable capability.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
106a6f29bbdc71982afd629bdf89369cefd1459e 17-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Move media stream counter entry points to new extension.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
a7a0a2beb54dcb78d7e0ab64cf2f5a6ede8191a4 16-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Move GLX_MESA_swap_frame_usage DRI entry points to the new mechanism.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
efaf90b03e8b69e04909bce071f8ef6b65cc0e9d 15-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Move swap_interval to new extension mechanism.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
ac3e838fa748c8c8a6ffc04d1ab13da71f75f103 15-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Move the copySubBuffer extension over to the new mechanism.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
f616a263a25eda135800bea7d3a863c569b93e30 15-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Implement new screen extension API.

This new API lets the loader examine DRI level extensions provided by the
driver in a forward compatible manner.

Much of the churn in the DRI interface is adding support for new
extensions or removing old, unused extensions. This new extension
mechanism lets the loader query the extensions provided by the driver
and implement the extensions it knows about. Deprecating extensions
is done by not exporting that extension in the list, which doesn't
require keeping old function pointers around to preserve ABI.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
295dc2d225ccac1951c0fcc2c08119f31d1b575c 14-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Stop passing in unused fbconfigs to createNewScreen.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
64106d0d9aeefa6974317042b6bc3e5eaabac5a2 14-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Pull createNewScreen entry point into dri_util.c.

This pulls the top level createNewScreen entry point out of the drivers
and rewrites __driUtilCreateNewScreen in dri_util.c to be the new entry point.

The change moves more logic into the common/ layer and changes the
createNewScreen entry point to only be defined in one place.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
efd03a278ae55b454509e9659c42899133983ebd 14-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Replace open-coded major, minor, and patch version fields with __DRIversionRec.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
5987a03f994af2bb413d1cf984ab01aa095c0943 11-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Convert all DRI entrypoints to take pointers to __DRI* types.

The entrypoints take a mix of __DRIscreen * and void * (screen private)
arguments (similarly for contexts and drawables). This patch does away
with passing the private void pointer and always only passes the fully
typed __DRIscreen pointer and always as the first argument.

This makes the interface more consistent and increases type safety, and
catches a bug where we would pass a screen private to DRIdrawable::getSBC.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
8ed5c7ca0572a09375bdfd411c3804456dac78d6 11-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Drop createContext and destroyContext from DRIinterfaceMethods.

As for createDrawable and destroyDrawable, these functions immediately
upon entry to driCreateNewContext and immediately before exit from
driDestroyContext. Instead of passing function pointers back and forth
just obtain the drm_context_t prior to calling DRIscreen::createNewContext
and pass it as a parameter.

This change also lets us keep the DRI context XID in the libGL loader only.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
4ff95e78e19e5902352ea3759d32d9f013255f42 10-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Drop createDrawable and destroyDrawable fron DRIinterfaceMethods.

All the DRI driver did was call the createDrawable callback immediately
upon entry to DRIscreen::createNewDrawable to get the drm_drawable_t.
We can just call that before calling into the DRI driver and pass the
returned drm_drawable_t as an argument to the DRI entry point.

Likewise for destroyDrawable.

Also, DRIdrawablePrivate::draw isn't used anywhere, and since the
driver no longer needs the XID of the drawable we can now drop that.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
aceccda56b08338e217991e54607f1c9f18fc3e6 10-May-2007 Kristian Høgsberg <krh@hinata.boston.redhat.com> Drop __DRInativeDisplay and pass in __DRIscreen pointers instead.

Many DRI entry points took a __DRInativeDisplay pointer and a screen
index as arguments. The only use for the native display pointer was to
pass it back to the loader when looking up the __DRIscreen for the given
screen index.

Instead, let's just pass in the __DRIscreen pointer directly, which
let's drop the __DRInativeDisplay type and the getScreen function.

The assumption is now that the loader will be able to retrieve context
from the __DRIscreen pointer when necessary.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
4a22ae8d446855d839cc199df8eb1b057045cb88 07-Jan-2007 Kristian Høgsberg <krh@redhat.com> Remove XIDs from DRI interface (see #5714).
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
a903749b246fce26038c66d06fe7eb77daf815ab 10-Jul-2007 Michel Dänzer <michel@tungstengraphics.com> Clear pointers to freed cliprects.

Not doing this could lead to double frees under rare circumstances.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
043d219b6da0636886f739613380cf44e334f268 22-May-2007 Michel Dänzer <michel@tungstengraphics.com> Add interfaces for overriding texture images with driver specific 'offsets'.

To be used by AIGLX for GLX_EXT_texture_from_pixmap without several
additional data copies.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
1a72c8ed3ff6ffc4a301f3c4a107d2693719edb8 26-Feb-2007 Panagiotis Papadakos <papadako@csd.uoc.gr> s/pdp/prp/ in DoBindContext()
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
3528d61820e9ae1aafb12fb90849155f3cab6d2c 26-Feb-2007 Panagiotis Papadakos <papadako@csd.uoc.gr> add missing param to _mesa_warning()
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c2b185cff82a6cdb723cda4e05ffe1a213a9de3e 06-Jan-2007 Eric Anholt <eric@anholt.net> Add reporting of damage by DRI drivers when the extension support is available.

With this, tools like ximagesrc in gstreamer correctly see updates from GL
rendering. Support requires that the Xdamage library be current (but will be
disabled if not present) plus a new X Server with support for the new
XDamagePost request. libGL now has a new interface version, and also links
against libXdamage and libXfixes to support it, but backwards compatibility
is retained.

Currently, all drivers report damage at SwapBuffers time through common code --
front buffer rendering doesn't result in damage being reported. Also, the
damage is against the root window, as our drivers don't yet render to backing
store when they should (composited environments).
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
682393944c72ecfabe8df674af0b48975e90b98c 01-Dec-2006 Thomas Hellström <thomas@tungstengraphics.com> Fix an infinite loop error that may occur when many contexts are bound
to the same drawable in a multithreading environment. This one slipped out
of the texman merge.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
5ac93f86210eb5c2a8dee74ec19b0ecd54376863 01-Nov-2006 Keith Whitwell <keith@tungstengraphics.com> Merge texmem-0-3-branch.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
7b1ff326071658d5bd6e7feb2ad78d0e0209211d 16-Oct-2006 Ian Romanick <idr@us.ibm.com> Track the currently bound read drawable and make sure its info is up
to date.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
e5c28321b2047418ba960c5f9c3aa86cf2514bbb 12-Jul-2006 Tilman Sauerbeck <tilman@freedesktop.org> fix another memleak
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
f2ad1b60c0da11283b399008f491792790cea294 31-Mar-2006 Brian Paul <brian.paul@tungstengraphics.com> Dave Reveman's patch for GLX_MESA_copy_sub_buffer support
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
1155f64cc094fcc865f55f22d07ce8b5e1fa2f34 28-Mar-2006 Keith Whitwell <keith@tungstengraphics.com> Revert merge of new/experimental code from texmem branch.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
ea4fe661d7f3a95d9db17e1475076f1badf8e1a6 26-Mar-2006 Brian Paul <brian.paul@tungstengraphics.com> merge from texman branch
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
eab896cc213157758d74a2f39b5e3b1e748c071f 23-Mar-2006 Dave Airlie <airliedfreedesktop.org> fix coverity 926: use before NULL check
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
96f216565e09032021bafa7a805aa7707777fda1 30-Nov-2005 Brian Paul <brian.paul@tungstengraphics.com> assorted fixes for server-side direct rendering (bug 5199)
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
b4b040f7d83f5f4917c48bf5833394d550e30421 05-Sep-2005 Brian Paul <brian.paul@tungstengraphics.com> just formatting clean-ups
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
6965f2cb0a481e88fb87f34f82d775bc2080a460 06-Aug-2005 Ian Romanick <idr@us.ibm.com> Fixes bugzillla #812.

The weak version of _glapi_DispatchTSD was removed from dri_util.c. As
stated in the bug report, this was only needed to support versions of libGL
that did not have this symbol. Versions of libGL without this symbol are no
longer supported at all, so it is totally irrelevant.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
82e3ecf413704440ea64b3b582d68f82f7b83704 29-Jul-2005 Ian Romanick <idr@us.ibm.com> Use the routines supplied in the __DRIinterfaceMethods structure to create a
destroy __GLcontextModes structures. This eliminates the need for DRI
drivers to ever link with glcontextmodes.c.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
5f1ba3e21b62cee1a4f900a2e6964728f3eeea9b 26-Jul-2005 Ian Romanick <idr@us.ibm.com> Fixes the glXGetProcAddress portion of the interface. Most of the functions
that are currently obtained via glXGetProcAddress and all of the XF86DRI
functions are replaced with a funciton table. This table will be passed to
__driCreateNewScreen.

One of the functions in the table is getProcAddress. This allows some
loaders to expose functionality not in all loaders. This will be immediatly
used for glxEnableExtension (formerly known to drivers as
__glXScrEnableExtension). libGL (and in the future libglx) expose this
function so that drivers can enable GLX extensions. libEGL should exposed
eglEnableExtension to enable EGL extensions. The same function cannot be
used for both because the extensions have different names and (possibly)
different semantics. Drivers can optionally use one, both, or neither.

The key parts are in the __DRIinterfaceMethodsRec structure in
dri_interface.h. A pointer to one of these structures is passed into
__driCreateNewScreen. Because of this, the version of the API is bumped to
20050725. Since the previous version(s) were never in a release, their
existance is erased.

I was actually a little surprised by how much code this cuts from the
drivers. A lot of glXGetProcAddress calls disappear, and a lot of
version checks go with them. Nice.

The one thing I'm not sure of is removing __glXInitialize. For some
reason that function was in the glXGetProcAddress table, but *nothing*
in the Mesa tree used it. Did something with DRI conf. use this
function? It seems odd...
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c39bf5e273a4995a279ae2af59fc29e06ab47e29 24-Jul-2005 Ian Romanick <idr@us.ibm.com> All elements of pre-DRI_NEW_INTERFACE_ONLY are removed. This allows
1,402 lines of code to be removed from Mesa (drivers and libGL). The
big winner is dri_util.c.

Primary changes are:

1. Remove all "deprecated" entry-points from the various structures in
dri_interface.h.

2. Rename the remaining fields to removed "version numbers." So,
bindContext3 becomes bindContext. Functions with "New" in the name
(e.g., CreateNewContext) were *not* changed, but that is an option.
Having "New" in the name is less annoying to me than having "3" in the name.

3. Remove all compatibility code that handles cases where the driver or
the loader is too old to support the latest interfaces.

4. Append the API version to the __driCreateNewScreen function name.
This is currently done by hand. In the future (i.e., the next time we
make an incompatible change to the interface) we'll want to come up with
a better way to do this. This prevents old loaders from being able to load
new (incompatible) drivers.

5. Bump the API version to 20050722. All drivers (by way of dri_util.c)
require this version.

6. All drivers are *required* to expose GLX_SGIX_fbconfig and
GLX_OML_swap_method (or the moral equivalents). Support for these
functions in implicit in the use of the "new" interface.

7. Some cases still exist that need to be compiled differently in a loader
or core Mesa versus in a driver. These are identified by the define
IN_DRI_DRIVER.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
13c8f985d96fa7dda0fd71dc4f656ce01dcdbe85 02-Jun-2005 Brian Paul <brian.paul@tungstengraphics.com> oops, undo previous change
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
1516f559bc1d8af1ca3a12c78b23937e9208b5c6 02-Jun-2005 Brian Paul <brian.paul@tungstengraphics.com> start removing old (pre-renderbuffer) span code
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
fd4f7064e24654c89248be6d76f39c7baf22fce4 05-May-2005 Jon Smirl <jonsmirl@gmail.com> Fix up origin in dri/fb driver
Calculated fbBPP
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c604e457d1ebe9a884b0a1fb08af38a0ce486699 13-Apr-2005 Ian Romanick <idr@us.ibm.com> Revert revision 1.13. This allows server-side libGLcore (in X.org) to build
with Mesa CVS. This change was wrong in the first place, and the issue that
necessitated it has been resolved. For more background on the problem see:

http://marc.theaimsgroup.com/?l=mesa3d-dev&m=111333880529935&w=2
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
8d12a6d537ca346291bc3e3bc90cc73509f4b419 14-Feb-2005 Dave Airlie <airliedfreedesktop.org> fix some signed vs unsigned warnings
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
886280763c8dfa7202bdacdeacf84ced69609b98 01-Feb-2005 Adam Jackson <ajax@freedesktop.org> Bug #2428: #ifdef GLX_DIRECT_RENDERING in DRI drivers is pointless.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
8e5281fbe1a7b9beea77b93a9cdd1e842a3edfa0 12-Jan-2005 Keith Whitwell <keith@tungstengraphics.com> Simplify usage of drmHash functions and fix bug in
__driGarbageCollectDrawables which would get confused while walking
the hash values.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
38b317d508a2a3a4cc6d700ebca80c3b06c913e2 14-Dec-2004 Alan Hourihane <alanh@tungstengraphics.com> uint*t -> u_int*t changes
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c69d60fbe458bec800583bc57d5b3bad61fa72e4 08-Dec-2004 Alan Hourihane <alanh@tungstengraphics.com> Use union type to avoid strict aliasing problems.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
3291de6d06ea4d51f3aeef2936c726064b9648ab 27-Oct-2004 Adam Jackson <ajax@freedesktop.org> Bug #1713: Some rare libGL's have __glXFindDRIScreen defined but do not
export it via glXGetProcAddress. These are not supported anymore, so print
an error message to that effect.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
b292642de04af01a0e6050bb144de3244ffdbfe3 12-Aug-2004 Eric Anholt <anholt@FreeBSD.org> Fix dri_util.c build with new headers.

Submitted by: John Lightsey <john@nixnuts.net>
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
8e77da1cd7d63af5e7ffcf7ea220cdaf1bdc8162 29-Jun-2004 Ian Romanick <idr@us.ibm.com> First phase of TLS work. At this point SPARC assembly dispatch is
broken, but it will be fixed "shortly." This is pretty much the same
as the patch I sent to the dri-devel list on 22-Jun-2004.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
7c46033130b1b4d6098647d85c2710367572e079 07-Jun-2004 Ian Romanick <idr@us.ibm.com> Fix up some remaining include issues. Replace Xmalloc / Xfree with
_mesa_malloc / _mesa_free. Replace Bool with GLboolean.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
ffb36d57a5f6359b5b91b73af60482a0016dd431 03-Jun-2004 Jon Smirl <jonsmirl@gmail.com> Removed need for sarea.h, various touch ups to get rid of type mismatches.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
1960182ece3f1eca06d2e439f64dd61be8a03ff5 03-Jun-2004 Ian Romanick <idr@us.ibm.com> Require libGL API version 20040602, which actually exports
__glXGetDrawableInfo. Make sure driCreateNewDrawable sets
pdraw->private to NULL for all failure paths.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
318aa8409983f3292b4919196df2ca42f4de6a16 02-Jun-2004 Ian Romanick <idr@us.ibm.com> XF86DRIDestroyContext, XF86DRICreateDrawable, and
XF86DRIDestroyDrawable are all called directly from DRI drivers using
the new interface. Therefore, prototypes, using available datatypes,
must be available in dri_interface.h. Since the prototypes are
available there, xf86dri.h is no longer needed for
DRI_NEW_INTERFACE_ONLY builds.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
c06b25594e5effe34a90c067e1a3da0f61cf2b13 02-Jun-2004 Ian Romanick <idr@us.ibm.com> Replace drmHandle, drmContext, drmDrawable, drmMagic and related types with
drm_handle_t, drm_context_t, drm_drawable_t, drm_magic_t.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
60b0e12830310e7c05b4043857ed277b28b1c781 01-Jun-2004 Ian Romanick <idr@us.ibm.com> Convert 'Display *' to '__DRInativeDisplay *'. Only portions of the
interface that are not *strictly* part of the old interface were
changed. Replace GetDrawableInfo type (dri_util.h) with
PFNGLXGETDRAWABLEINFOPROC (dri_interface.h). Wrap __driCreateScreen
(in drivers that use the new interface) with '#ifndef
DRI_NEW_INTERFACE_ONLY'.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
ec032cb17b2ffb7b9401604258234998612b445f 01-Jun-2004 Ian Romanick <idr@us.ibm.com> Fix a couple issues related to GetDrawableInfo. In the new DRI
interface, it must be available from libGL, and the the typedef in
dri_util.h was wrong.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
0521ab46c1340d785ecfe64f4041c86912bc86af 01-Jun-2004 Ian Romanick <idr@us.ibm.com> Replace occurances of GLXDrawable and Drawable with __DRIid.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
a249ad756f72835c5894e389150207b98532e114 01-Jun-2004 Ian Romanick <idr@us.ibm.com> Fix a couple typos that prevent building with DRI_NEW_INTERFACE_ONLY.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
8cdccc82d7948daee256e092a5253d49e277ef75 28-May-2004 Ian Romanick <idr@us.ibm.com> Define PFNGLXGETMSCRATEOMLPROC so that DRI will build without including
glxext.h.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c
b3981ab6e6762b4205ca5302d93be129f648a9cf 28-May-2004 Ian Romanick <idr@us.ibm.com> Move dri_util.[ch] and glcontextmodes.[ch] from dri_client to common.
/external/mesa3d/src/mesa/drivers/dri/common/dri_util.c