Kristian Høgsberg [Tue, 22 May 2007 16:26:02 +0000 (12:26 -0400)]
Move new texOffset extension to the new extension mechanism.
Kristian Høgsberg [Thu, 17 May 2007 20:11:19 +0000 (16:11 -0400)]
Convert a left-over private void * to __DRIcontext *.
Kristian Høgsberg [Thu, 17 May 2007 19:47:47 +0000 (15:47 -0400)]
Move enabling of DRI extensions into glxextensions.c
Kristian Høgsberg [Thu, 17 May 2007 19:33:14 +0000 (15:33 -0400)]
Remove now unused getProcAddress from DRIinterfaceMethods.
Kristian Høgsberg [Thu, 17 May 2007 18:39:06 +0000 (14:39 -0400)]
Add a DRI_ReadDrawable marker extension to signal read drawable capability.
Kristian Høgsberg [Wed, 16 May 2007 22:13:41 +0000 (18:13 -0400)]
Move media stream counter entry points to new extension.
Kristian Høgsberg [Wed, 16 May 2007 19:50:40 +0000 (15:50 -0400)]
Move GLX_MESA_swap_frame_usage DRI entry points to the new mechanism.
Kristian Høgsberg [Wed, 16 May 2007 18:10:29 +0000 (14:10 -0400)]
Move GLX_MESA_allocate_memory related functions to new extension mechanism.
Kristian Høgsberg [Tue, 15 May 2007 20:09:44 +0000 (16:09 -0400)]
Move swap_interval to new extension mechanism.
Kristian Høgsberg [Tue, 15 May 2007 19:17:30 +0000 (15:17 -0400)]
Move the copySubBuffer extension over to the new mechanism.
Kristian Høgsberg [Tue, 15 May 2007 16:31:31 +0000 (12:31 -0400)]
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.
Kristian Høgsberg [Mon, 14 May 2007 21:07:16 +0000 (17:07 -0400)]
Stop passing in unused fbconfigs to createNewScreen.
Kristian Høgsberg [Mon, 14 May 2007 20:58:37 +0000 (16:58 -0400)]
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.
Kristian Høgsberg [Mon, 14 May 2007 20:37:19 +0000 (16:37 -0400)]
Replace open-coded major, minor, and patch version fields with __DRIversionRec.
Kristian Høgsberg [Fri, 11 May 2007 20:43:20 +0000 (16:43 -0400)]
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.
Kristian Høgsberg [Fri, 11 May 2007 20:11:23 +0000 (16:11 -0400)]
Remove screenConfigs from __DRIscreen.
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.
Kristian Høgsberg [Fri, 11 May 2007 17:54:44 +0000 (13:54 -0400)]
Drop mostly unused __DRIid typedef.
Kristian Høgsberg [Fri, 11 May 2007 17:24:34 +0000 (13:24 -0400)]
Avoid deadlock in GarbageCollectDRIDrawables.
__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.
Kristian Høgsberg [Thu, 10 May 2007 22:38:49 +0000 (18:38 -0400)]
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.
Kristian Høgsberg [Thu, 10 May 2007 21:14:38 +0000 (17:14 -0400)]
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.
Kristian Høgsberg [Wed, 10 Oct 2007 21:07:01 +0000 (17:07 -0400)]
Key drm_i915_flip_t typedef off of the ioctl #define instead.
Kristian Høgsberg [Thu, 10 May 2007 19:52:22 +0000 (15:52 -0400)]
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.
Kristian Høgsberg [Tue, 1 May 2007 01:05:10 +0000 (21:05 -0400)]
Add macros to generate CreateNewScreen entrypoint.
Kristian Høgsberg [Sun, 7 Jan 2007 13:12:01 +0000 (08:12 -0500)]
Remove XIDs from DRI interface (see #5714).
Kristian Høgsberg [Sun, 29 Apr 2007 19:05:02 +0000 (15:05 -0400)]
Pull in the drm hash.
Eric Anholt [Thu, 4 Oct 2007 19:07:25 +0000 (12:07 -0700)]
[965] Replace various alignment code with a shared ALIGN() macro.
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.
Eric Anholt [Thu, 4 Oct 2007 18:16:50 +0000 (11:16 -0700)]
Replace bmBufferOffset usage in batchbuffer setup with OUT_RELOC.
This is in preparation for 965 TTM.
Eric Anholt [Wed, 3 Oct 2007 23:59:01 +0000 (16:59 -0700)]
Replace duplicated intel_reg.h with a shared header.
Eric Anholt [Wed, 3 Oct 2007 23:30:42 +0000 (16:30 -0700)]
Replace some structure-based batch preparation with plain OUT_BATCH.
OUT_BATCH is far more amenable to the upcoming relocations being done for TTM
support.
Eric Anholt [Fri, 28 Sep 2007 20:51:13 +0000 (13:51 -0700)]
FreeBSD: more /usr/X11R6->/usr/local
Maarten Maathuis [Thu, 4 Oct 2007 17:08:37 +0000 (19:08 +0200)]
nouveau: Replace removed device classes with their proper labels.
Roland Scheidegger [Wed, 3 Oct 2007 20:20:44 +0000 (22:20 +0200)]
minor fog calc cleanup
Michel Dänzer [Wed, 3 Oct 2007 09:25:59 +0000 (11:25 +0200)]
i915: Only align texture pitch to 64 bytes when textures can be render targets.
Michel Dänzer [Wed, 3 Oct 2007 08:48:56 +0000 (10:48 +0200)]
i915: Work around texture pitch related performance drops on i915 at least.
Brian [Mon, 1 Oct 2007 23:55:33 +0000 (17:55 -0600)]
updated glext.h license info (Khronos), plus other clean-ups
Brian [Sat, 29 Sep 2007 18:01:34 +0000 (12:01 -0600)]
fix VBO-split infinite loop (bug 12164)
Chris Rankin [Sat, 29 Sep 2007 16:14:06 +0000 (18:14 +0200)]
r200: Implement SetTexOffset hook.
Implementation guidance by Michel Dänzer, final testing by Timo Aaltonen.
Dan Nicholson [Sat, 29 Sep 2007 00:42:21 +0000 (18:42 -0600)]
add support for LDFLAGS env var
Brian [Sat, 29 Sep 2007 00:39:41 +0000 (18:39 -0600)]
update the DRM/DRI instructions
Brian [Fri, 28 Sep 2007 22:06:01 +0000 (16:06 -0600)]
Remove test for EXT_blend_logic_op in glGetString when determining GL version.
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.
Jesse Barnes [Fri, 28 Sep 2007 17:11:52 +0000 (10:11 -0700)]
Go back to using old drm_i915_flip_t field name
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.
Eric Anholt [Thu, 27 Sep 2007 22:06:06 +0000 (15:06 -0700)]
[965] Add batchbuffer dumping under INTEL_DEBUG=bat, like 915.
Eric Anholt [Thu, 27 Sep 2007 18:29:11 +0000 (11:29 -0700)]
FreeBSD: Chase /usr/X11R6 death (replaced by everything in one prefix).
Eric Anholt [Thu, 27 Sep 2007 22:11:39 +0000 (15:11 -0700)]
Revert "WIP 965 conversion to dri_bufmgr."
This reverts commit
b2f1aa2389473ed09170713301b042661d70a48e.
Somehow I ended up with my branch's save-this-while-I-work-on-master commit
actually on master.
Eric Anholt [Thu, 27 Sep 2007 17:16:04 +0000 (10:16 -0700)]
WIP 965 conversion to dri_bufmgr.
Eric Anholt [Wed, 26 Sep 2007 20:57:08 +0000 (13:57 -0700)]
[965] Remove AUB file support.
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.
Brian [Thu, 27 Sep 2007 16:35:37 +0000 (10:35 -0600)]
for Miniglx, use git sources
Brian [Thu, 27 Sep 2007 16:24:17 +0000 (10:24 -0600)]
Restore old _TriangleCaps code to fix Blender problem (bug 12164)
Brian [Thu, 27 Sep 2007 16:23:32 +0000 (10:23 -0600)]
tweak point rast to fix conform failure
Xiang, Haihao [Thu, 27 Sep 2007 08:14:57 +0000 (16:14 +0800)]
i965: handle all unfilled mode in clip stage. fix bug #12453
Xiang, Haihao [Thu, 27 Sep 2007 07:52:01 +0000 (15:52 +0800)]
mesa: make sure the gotten value isn't greater than the
max depth buffer value on 64bit system. fix bug #12095
Zou Nan hai [Thu, 27 Sep 2007 05:49:35 +0000 (13:49 +0800)]
fix ppracer and bzflag issue with clip optimization
Dave Airlie [Thu, 27 Sep 2007 01:15:42 +0000 (11:15 +1000)]
i915/i965 merge serer directories along lines for radeon/r200
Xiang, Haihao [Wed, 26 Sep 2007 08:42:50 +0000 (16:42 +0800)]
i965: The cube map texture coordinates must be devided by the
component with the largest absolute value before they are
delivered. fix bug #12421
Zou Nan hai [Wed, 26 Sep 2007 02:00:41 +0000 (10:00 +0800)]
fix a bug in 965 ARB_occlusion_query,
fd.o bug #12132
Dave Airlie [Tue, 25 Sep 2007 06:22:00 +0000 (16:22 +1000)]
drm: update bufmgr code to reflect changes in drm interface
Roland Bär [Mon, 24 Sep 2007 20:47:26 +0000 (13:47 -0700)]
[i965] Bug #11812: Fix fwrite return value checks in AUB file code.
Eric Anholt [Mon, 24 Sep 2007 20:36:56 +0000 (13:36 -0700)]
Remove leftover code for i915_texprog.c noticed in crossbar review.
Eric Anholt [Mon, 24 Sep 2007 17:26:56 +0000 (10:26 -0700)]
Fix progs/tests/ build with BSD make.
Eric Anholt [Mon, 24 Sep 2007 17:26:40 +0000 (10:26 -0700)]
Update .gitignore for tests and xdemos.
Eric Anholt [Mon, 24 Sep 2007 17:22:31 +0000 (10:22 -0700)]
Just use stddef.h to get ptrdiff_t instead of obsolete malloc.h.
Eric Anholt [Mon, 24 Sep 2007 17:03:25 +0000 (10:03 -0700)]
Move i915tex driver into place as just i915.
Eric Anholt [Mon, 24 Sep 2007 16:55:16 +0000 (09:55 -0700)]
Remove the old i915 driver now that i915tex works without TTM.
Zou Nan hai [Mon, 24 Sep 2007 08:48:55 +0000 (16:48 +0800)]
fix fd.o bug #12217, recalcuate urb when clip plane size change
Brian [Sun, 23 Sep 2007 19:56:46 +0000 (13:56 -0600)]
fix DrawRangeElements error msg
Eric Anholt [Sat, 22 Sep 2007 00:05:34 +0000 (17:05 -0700)]
Merge branch 'i915-unification'
This branch replaces the DRM pool interface used by i915tex with a "dri_bufmgr"
interface in dri/common which may be set up to use either TTM or traditional
static memory management according to what is available. The i915tex TTM
code now requires an updated DDX which provides proper buffer objects for the
static front/back/depth, instead of using fake buffers. The driver is now
built as i915_dri.so, and should replace the old i915 driver shortly.
Eric Anholt [Fri, 21 Sep 2007 23:16:54 +0000 (16:16 -0700)]
Fix buffer/fence reference counting due to Destroy vs Unreference difference.
While here, remove the unnecessary fence type saving for the wait ioctl, as
a 0 argument for type means "use your other saved copy".
Brian [Fri, 21 Sep 2007 00:42:47 +0000 (18:42 -0600)]
fix -D_BSD_SOURC
Brian [Thu, 20 Sep 2007 21:11:14 +0000 (15:11 -0600)]
fixes for bluegene-xlc-osmesa config
Brian [Thu, 20 Sep 2007 21:09:57 +0000 (15:09 -0600)]
Added bluegene-xlc-osmesa config (Alexander Neundorf)
Eric Anholt [Thu, 20 Sep 2007 18:41:25 +0000 (11:41 -0700)]
Uniquely validate the batchbuffer-referenced buffers.
Otherwise, for multiple references by the batchbuffer, the kernel would see
the buffer already on the unfenced list and wait for it to leave the list
before continuing, leading to hanging and eventual -EBUSY.
Eric Anholt [Thu, 20 Sep 2007 18:38:32 +0000 (11:38 -0700)]
Add disabled-by-default tracing of TTM bufmgr operations.
Eric Anholt [Thu, 20 Sep 2007 16:20:48 +0000 (09:20 -0700)]
Fix flipped sign to strerror.
Eric Anholt [Wed, 19 Sep 2007 18:05:36 +0000 (11:05 -0700)]
Merge branch 'master' into i915-unification
Conflicts:
src/mesa/drivers/dri/common/dri_drmpool.c
src/mesa/drivers/dri/i915tex/i915_vtbl.c
src/mesa/drivers/dri/i915tex/intel_batchbuffer.c
src/mesa/drivers/dri/i915tex/intel_context.c
Xiang, Haihao [Thu, 20 Sep 2007 09:42:13 +0000 (17:42 +0800)]
i965: fix an error in brw_vs_tnl.c
if the state of TEXMAT is changed, the VS isn't updated.
Xiang, Haihao [Thu, 20 Sep 2007 09:37:04 +0000 (17:37 +0800)]
fix memory access error in vbo_bind_vertex_list
Dave Airlie [Thu, 20 Sep 2007 03:36:31 +0000 (13:36 +1000)]
nouveau: add GeForce 7300 SE to card list
Matthieu Castet [Wed, 19 Sep 2007 21:22:39 +0000 (23:22 +0200)]
nouveau : nv1x use OUT_RING_CACHE_FORCE for NV10_TCL_PRIMITIVE_3D_PROJECTION_MATRIX as strange results
appear when the matrix is partialy updated.
Matthieu Castet [Wed, 19 Sep 2007 21:20:13 +0000 (23:20 +0200)]
nouveau : add OUT_RING_CACHE_FORCE* to add stuff in the cache even if the value didn't change
Matthieu Castet [Wed, 19 Sep 2007 17:57:55 +0000 (19:57 +0200)]
nouveau : add GL_FOG_COLOR + fix a compil error
Eric Anholt [Wed, 19 Sep 2007 17:10:18 +0000 (10:10 -0700)]
Update .gitignore for demos.
Eric Anholt [Thu, 5 Jul 2007 23:57:53 +0000 (16:57 -0700)]
Add missing -g in FreeBSD OPT_CFLAGS
Eric Anholt [Wed, 19 Sep 2007 16:56:43 +0000 (09:56 -0700)]
Replace i915tex batchbuffer printout with a pretty-printed version.
Eric Anholt [Wed, 19 Sep 2007 16:02:24 +0000 (09:02 -0700)]
Enable building the debug (env INTEL_DEBUG=list) code by default.
Eric Anholt [Tue, 19 Jun 2007 22:15:40 +0000 (15:15 -0700)]
i915: Quiet valgrind by initializing the seq value the kernel writes into.
Also, add a couple of comments to the wait/emit IRQ functions.
Patrice Mandin [Wed, 19 Sep 2007 17:08:56 +0000 (19:08 +0200)]
nouveau: nv10: color logic op only for nv11+
Eric Anholt [Tue, 18 Sep 2007 22:46:16 +0000 (15:46 -0700)]
Add some error reporting and a couple of assertions to TTM bufmgr.
Xiang, Haihao [Tue, 18 Sep 2007 01:32:44 +0000 (09:32 +0800)]
mesa: Always use the original mask to update stencil buffer
in stencil_and_ztest_pixels. fix #12263
Matthieu Castet [Sun, 16 Sep 2007 21:33:10 +0000 (23:33 +0200)]
nouveau : avoid vertex_size / 4 for each vertex ops
Matthieu Castet [Sun, 16 Sep 2007 21:19:22 +0000 (23:19 +0200)]
nouveau : use GLfloat instead of uint32_t. After all, our vertex attributes are float.
Matthieu Castet [Sun, 16 Sep 2007 21:01:56 +0000 (23:01 +0200)]
nouveau : implement nv10_render_points
Matthieu Castet [Sun, 16 Sep 2007 17:37:27 +0000 (19:37 +0200)]
nouveau : fix nv10_render functions
use _tnl_RenderClipped helper functions that will call the right driver callback
clean nv10_render_generic_primitive_elts to match nv10_render style
Matthieu Castet [Sun, 16 Sep 2007 16:57:03 +0000 (18:57 +0200)]
nouveau : opps I introduce a bug when cleaning vertex pos attribute swap patch
Matthieu Castet [Sun, 16 Sep 2007 14:15:13 +0000 (16:15 +0200)]
Matthieu Castet [Sun, 16 Sep 2007 14:13:55 +0000 (16:13 +0200)]
nouveau : nv1x pos vertex attribute need to be the first in mesa.
Swap it latter in order it match hw format.
Matthieu Castet [Fri, 14 Sep 2007 22:25:09 +0000 (00:25 +0200)]
nouveau : use new nouveau_reg.h with correct Bracket in macro
Matthieu Castet [Fri, 14 Sep 2007 20:13:52 +0000 (22:13 +0200)]
nouveau : check for nmesa->state_cache.atoms overflow
Matthieu Castet [Fri, 14 Sep 2007 20:07:34 +0000 (22:07 +0200)]
nouveau : fix NV10_TCL_PRIMITIVE_3D_CLIP_PLANE
Brian [Fri, 14 Sep 2007 15:58:32 +0000 (09:58 -0600)]
added copypix.c test (test glCopyPixels w/ pixel zoom)
Brian [Fri, 14 Sep 2007 15:57:57 +0000 (09:57 -0600)]
fix copypixels overlap test bug (#12417)