summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2007-10-10Move swap_interval to new extension mechanism.Kristian Høgsberg
2007-10-10Move the copySubBuffer extension over to the new mechanism.Kristian Høgsberg
2007-10-10Implement new screen extension API.Kristian Høgsberg
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.
2007-10-10Stop passing in unused fbconfigs to createNewScreen.Kristian Høgsberg
2007-10-10Pull createNewScreen entry point into dri_util.c.Kristian Høgsberg
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.
2007-10-10Replace open-coded major, minor, and patch version fields with __DRIversionRec.Kristian Høgsberg
2007-10-10Convert all DRI entrypoints to take pointers to __DRI* types.Kristian Høgsberg
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.
2007-10-10Remove screenConfigs from __DRIscreen.Kristian Høgsberg
The screenConfigs field of __DRIscreen points back to the containing __GLXscreenConfigs struct. This is a serious abstraction violation; it assumes that the loader is libGL and that there *is* a __GLXscreenConfigs type in the loader. Using the containerOf macro, we can get from the __DRIscreen pointer to the containing __GLXscreenConfigs struct, at a place in the stack where the above is a valid assumption. Besides, the __DRI* structs shouldn't hold state other than the private pointer.
2007-10-10Drop mostly unused __DRIid typedef.Kristian Høgsberg
2007-10-10Avoid deadlock in GarbageCollectDRIDrawables.Kristian Høgsberg
__glXinitialize() can't be called with the GLX lock held. Just pass in the __GLXscreenConfigs pointer so we don't have to look it up in __GLXdisplayPrivate.
2007-10-10Drop createContext and destroyContext from DRIinterfaceMethods.Kristian Høgsberg
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.
2007-10-10Drop createDrawable and destroyDrawable fron DRIinterfaceMethods.Kristian Høgsberg
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.
2007-10-10Key drm_i915_flip_t typedef off of the ioctl #define instead.Kristian Høgsberg
2007-10-10Drop __DRInativeDisplay and pass in __DRIscreen pointers instead.Kristian Høgsberg
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.
2007-10-05Add macros to generate CreateNewScreen entrypoint.Kristian Høgsberg
2007-10-05Remove XIDs from DRI interface (see #5714).Kristian Høgsberg
2007-10-05Pull in the drm hash.Kristian Høgsberg
2007-10-04[965] Replace various alignment code with a shared ALIGN() macro.Eric Anholt
In the process, fix some alignment issues: - Scratch space allocation was aligned into units of 1KB, while the allocation wanted units of bytes, so we never allocated enough space for scratch. - GRF register count was programmed as ALIGN(val - 1, 16) / 16 instead of ALIGN(val, 16) / 16 - 1, which overcounted for val != 16n+1.
2007-10-04Replace bmBufferOffset usage in batchbuffer setup with OUT_RELOC.Eric Anholt
This is in preparation for 965 TTM.
2007-10-04Replace duplicated intel_reg.h with a shared header.Eric Anholt
2007-10-04Replace some structure-based batch preparation with plain OUT_BATCH.Eric Anholt
OUT_BATCH is far more amenable to the upcoming relocations being done for TTM support.
2007-10-04FreeBSD: more /usr/X11R6->/usr/localEric Anholt
2007-10-04nouveau: Replace removed device classes with their proper labels.Maarten Maathuis
2007-10-03minor fog calc cleanupRoland Scheidegger
2007-10-03i915: Only align texture pitch to 64 bytes when textures can be render targets.Michel Dänzer
2007-10-03i915: Work around texture pitch related performance drops on i915 at least.Michel Dänzer
2007-10-01updated glext.h license info (Khronos), plus other clean-upsBrian
2007-09-29fix VBO-split infinite loop (bug 12164)Brian
2007-09-29r200: Implement SetTexOffset hook.Chris Rankin
Implementation guidance by Michel Dänzer, final testing by Timo Aaltonen.
2007-09-28add support for LDFLAGS env varDan Nicholson
2007-09-28update the DRM/DRI instructionsBrian
2007-09-28Remove test for EXT_blend_logic_op in glGetString when determining GL version.Brian
EXT_blend_logic_op is slightly different from GL 1.1's RGBA logicop mode and does not have to be supported. Per conversation with Roland.
2007-09-28Go back to using old drm_i915_flip_t field nameJesse Barnes
This field shouldn't have been renamed in the first place. Go back to using the old name so that the tree is backward and forward compatible again.
2007-09-27[965] Add batchbuffer dumping under INTEL_DEBUG=bat, like 915.Eric Anholt
2007-09-27FreeBSD: Chase /usr/X11R6 death (replaced by everything in one prefix).Eric Anholt
2007-09-27Revert "WIP 965 conversion to dri_bufmgr."Eric Anholt
This reverts commit b2f1aa2389473ed09170713301b042661d70a48e. Somehow I ended up with my branch's save-this-while-I-work-on-master commit actually on master.
2007-09-27WIP 965 conversion to dri_bufmgr.Eric Anholt
2007-09-27[965] Remove AUB file support.Eric Anholt
This code existed to dump logs of hardware access to be replayed in simulation. Since we have real hardware now, it's not really needed.
2007-09-27for Miniglx, use git sourcesBrian
2007-09-27Restore old _TriangleCaps code to fix Blender problem (bug 12164)Brian
2007-09-27tweak point rast to fix conform failureBrian
2007-09-27i965: handle all unfilled mode in clip stage. fix bug #12453Xiang, Haihao
2007-09-27mesa: make sure the gotten value isn't greater than theXiang, Haihao
max depth buffer value on 64bit system. fix bug #12095
2007-09-27 fix ppracer and bzflag issue with clip optimizationZou Nan hai
2007-09-27i915/i965 merge serer directories along lines for radeon/r200Dave Airlie
2007-09-26i965: The cube map texture coordinates must be devided by theXiang, Haihao
component with the largest absolute value before they are delivered. fix bug #12421
2007-09-26 fix a bug in 965 ARB_occlusion_query,Zou Nan hai
fd.o bug #12132
2007-09-25drm: update bufmgr code to reflect changes in drm interfaceDave Airlie
2007-09-24[i965] Bug #11812: Fix fwrite return value checks in AUB file code.Roland Bär
2007-09-24Remove leftover code for i915_texprog.c noticed in crossbar review.Eric Anholt