Eric Anholt [Sat, 8 Dec 2007 00:15:49 +0000 (16:15 -0800)]
[965] Convert the driver to dri_bufmgr interface and enable TTM.
This is currently believed to work but be a significant performance loss.
Performance recovery should be soon to follow.
The dri_bo_fake_disable_backing_store() call was added to allow backing store
disable like bufmgr_fake.c did, which is a significant performance win (though
it's missing the no-fence-subdata part).
This commit is a squash merge of the 965-ttm branch, which had some history
I wanted to avoid pulling due to noisiness and brokenness at many points
for git-bisecting.
Eric Anholt [Fri, 7 Dec 2007 23:20:00 +0000 (15:20 -0800)]
[965] Remove dead code in upload_wm_surfaces.
Eric Anholt [Fri, 7 Dec 2007 23:16:42 +0000 (15:16 -0800)]
[965] Move brw_surface_state stack allocation into the function using it.
Dan Nicholson [Thu, 6 Dec 2007 04:34:59 +0000 (20:34 -0800)]
Make osdemos linking like other programs
Most of the programs list their dependencies on the Mesa libraries in
their Makefiles. This works with the default configuration where
APP_LIB_DEPS only lists external libraries. This changes the
linux-osmesa configs and the osdemos Makefile to follow that convention.
Some cleanup of the Makefile is also added to refer to the GL libraries
through the existing variables rather than hardcoding their names.
Dan Nicholson [Thu, 1 Nov 2007 00:12:07 +0000 (17:12 -0700)]
configs: Fix linking with static libGL and --as-needed
Linking of the programs breaks when using a static libGL and the GNU ld
option --as-needed. This is because libXext is needed for the XShm
functions.
Xiang, Haihao [Fri, 7 Dec 2007 09:33:18 +0000 (17:33 +0800)]
i915: fix the error in the previos commit.
Xiang, Haihao [Fri, 7 Dec 2007 09:26:38 +0000 (17:26 +0800)]
i915: Check the program size when uploading a program. fix bug 13494
Michel Dänzer [Thu, 6 Dec 2007 09:19:22 +0000 (10:19 +0100)]
Minor followup fixes for the previous commit.
George Nassas [Thu, 6 Dec 2007 09:11:05 +0000 (10:11 +0100)]
Always call dlopen in DriverOpen.
This increases the reference count for the driver binary, preventing it from
getting unloaded prematurely in driDestroyDisplay. See
https://bugs.freedesktop.org/show_bug.cgi?id=13541 .
Eric Anholt [Thu, 6 Dec 2007 00:57:27 +0000 (16:57 -0800)]
Revert "[965] Add missing flagging of new stage programs for updating stage state."
I had forgotten part of brw_state_cache.c that made this fix not relevant for
master (last_addr comparison and flagging based on cache id).
This reverts commit
a4642f3d18bdaebaba31e5dee72fe5de9d890ffb.
Eric Anholt [Wed, 5 Dec 2007 23:52:13 +0000 (15:52 -0800)]
[965] Add missing flagging of new stage programs for updating stage state.
Otherwise, choosing a new program wouldn't necessarily update the state, and
and an old program could be executed, leading to various sorts of pretty
pictures or hangs.
Brian [Wed, 5 Dec 2007 22:06:23 +0000 (15:06 -0700)]
Fix endianness bug in _mesa_texstore_argb8888()
On big-endian, storing in _mesa_texformat_argb8888 format produced wrong res
Also, clean-up nearby code to match.
picked from gallium-0.1 branch
Xiang, Haihao [Wed, 5 Dec 2007 02:31:35 +0000 (10:31 +0800)]
Don't Swap buffer if a DRIDrawable is entirely obscured
by another window.
Brian [Wed, 5 Dec 2007 01:44:40 +0000 (18:44 -0700)]
Undo changes made to the toyball shaders in commit
d19d0596daf004b56d80f78fa1a329b43c2ebf94
This demo produces the expected results again.
Brian [Tue, 4 Dec 2007 21:06:10 +0000 (14:06 -0700)]
fix span->facing computation and gl_FrontFacing initialization
Brian [Tue, 4 Dec 2007 21:05:26 +0000 (14:05 -0700)]
Fix gl_FrontFacing compilation problem
Brian [Tue, 4 Dec 2007 17:48:05 +0000 (10:48 -0700)]
added culling/wireframe options
Michel Dänzer [Tue, 4 Dec 2007 09:46:45 +0000 (10:46 +0100)]
Use -Bsymbolic for linking all shared objects.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=10132 .
Also remove comment about SONAME, as SONAME only applies to shared libraries.
Eric Anholt [Mon, 3 Dec 2007 18:58:08 +0000 (10:58 -0800)]
[965] Change constant buffer from state structs to plain batch emission.
Reduces diff to branch which has a relocation in this state emit.
Brian [Mon, 3 Dec 2007 21:14:16 +0000 (14:14 -0700)]
fix DD_TRI_LIGHT_TWOSIDE bug (#13368)
Dan Nicholson [Mon, 3 Dec 2007 19:57:14 +0000 (11:57 -0800)]
Fix the library name in glw.pc
Fix a copy and paste error s/GLU/GLw/ in glw.pc.
Brian [Mon, 3 Dec 2007 18:58:55 +0000 (11:58 -0700)]
glut doesn't need -lXt
Brian [Mon, 3 Dec 2007 18:57:56 +0000 (11:57 -0700)]
added missing quote char
Michel Dänzer [Fri, 30 Nov 2007 10:40:06 +0000 (11:40 +0100)]
i915: Fix up state changes for i8xx.
Eric Anholt [Sat, 1 Dec 2007 02:17:12 +0000 (18:17 -0800)]
[intel] Move batch bo_unmap from TTM code to shared, and add more asserts.
Eric Anholt [Sat, 1 Dec 2007 02:12:23 +0000 (18:12 -0800)]
[intel] Add failure path printfs to relocation code and some comments.
Eric Anholt [Sat, 1 Dec 2007 02:08:17 +0000 (18:08 -0800)]
[intel] Simplify TTM relocation code by passing around bufmgr struct.
Eric Anholt [Fri, 30 Nov 2007 22:15:36 +0000 (14:15 -0800)]
[intel] Fix the type and naming of the flags/mask args to TTM functions.
The uint64_t flags (as defined by drm.h) were being used as unsigned ints in
many places.
Eric Anholt [Fri, 30 Nov 2007 22:14:11 +0000 (14:14 -0800)]
[intel] intel_bufmgr_ttm style sanity
Brian [Fri, 30 Nov 2007 22:52:27 +0000 (15:52 -0700)]
fix-build: remove ctx->_Facing assignment
Brian [Fri, 30 Nov 2007 20:01:57 +0000 (13:01 -0700)]
fix broken two-sided stencil
Brian [Fri, 30 Nov 2007 16:07:39 +0000 (09:07 -0700)]
better front-plane clip test
joukj [Fri, 30 Nov 2007 12:16:05 +0000 (13:16 +0100)]
Updates of some OpenVMS makefiles.
joukj [Fri, 30 Nov 2007 10:12:41 +0000 (11:12 +0100)]
Merge branch 'master' of git+ssh://joukj@git.freedesktop.org/git/mesa/mesa
Xiang, Haihao [Fri, 30 Nov 2007 04:04:04 +0000 (12:04 +0800)]
i965: if source depth to render target is set,
it should be handled in fb_write.
Xiang, Haihao [Fri, 30 Nov 2007 03:50:08 +0000 (11:50 +0800)]
i965: use uncompressed instruction to ensure only
Pixel Mask Copy is modified as the pixel shader thread
turns off pixels based on kill instructions.
Eric Anholt [Thu, 29 Nov 2007 21:00:34 +0000 (13:00 -0800)]
[i915] Make INTEL_DEBUG=bufmgr actually do things for bufmgr_fake.
Brian [Thu, 29 Nov 2007 15:12:33 +0000 (08:12 -0700)]
New ctx->Driver.Map/UnmapTexture() functions for accessing textures from t_vb_program.c
Brian [Wed, 28 Nov 2007 22:55:57 +0000 (15:55 -0700)]
cleanups, comments
Brian [Wed, 28 Nov 2007 22:19:46 +0000 (15:19 -0700)]
Move _mesa_load_tracked_matrices() from TNL module to prog_statevars.c
Michel Dänzer [Wed, 28 Nov 2007 09:20:04 +0000 (10:20 +0100)]
r200: Fix texture format regression on big endian systems.
See https://bugs.freedesktop.org/show_bug.cgi?id=13324 .
Also use tx_table_be for VALID_FORMAT, in case r200SetTexImages ever gets
called for MESA_FORMAT_RGB888.
Xiang, Haihao [Wed, 28 Nov 2007 01:46:43 +0000 (09:46 +0800)]
i965: update RefCount when using Vertex/Fragment program.
It makes quake4-demo works well on 965.
WuNian [Wed, 28 Nov 2007 01:22:42 +0000 (18:22 -0700)]
remove drawable from hash table when window is deleted (see bug 13091)
Delle [Wed, 28 Nov 2007 01:18:25 +0000 (18:18 -0700)]
use DEFAULT_SOFTWARE_DEPTH_BITS
Brian [Tue, 27 Nov 2007 17:31:05 +0000 (10:31 -0700)]
minor additions to avoid FAQs
Brian [Tue, 27 Nov 2007 17:27:55 +0000 (10:27 -0700)]
document GLSL float f/F suffix bug
Brian [Tue, 27 Nov 2007 17:16:51 +0000 (10:16 -0700)]
set fp->UsesKill when emitting OPCODE_KIL
Brian [Mon, 26 Nov 2007 18:39:17 +0000 (11:39 -0700)]
add a few more logicop modes, simplify code
Brian [Mon, 26 Nov 2007 16:35:39 +0000 (09:35 -0700)]
improve 24-bit Z to 32-bit Z conversion
Xiang, Haihao [Tue, 27 Nov 2007 01:45:32 +0000 (09:45 +0800)]
i965: The jump instruction count is added
to IP pre-increment, and should point to
the first instruction after the do instruction
of the do-while block of code
Keith Whitwell [Thu, 15 Nov 2007 09:59:33 +0000 (09:59 +0000)]
i915: Catch cases where not all state is emitted for a new batchbuffer.
This could lead to incorrect rendering or even lockups.
Michel Dänzer [Fri, 9 Nov 2007 17:46:55 +0000 (18:46 +0100)]
i915: Some additional blit fixes and assertions.
Michel Dänzer [Sun, 25 Nov 2007 13:20:36 +0000 (14:20 +0100)]
libGL: Make sure a valid value is returned for GLX_BIND_TO_MIPMAP_TEXTURE_EXT.
If the server didn't send a value, assume it's not supported.
A more generic solution might be better for this kind of problem, but an
attempt for this failed (see https://bugs.freedesktop.org/show_bug.cgi?id=9264)
and this allows compiz to work with drivers that support
GL_EXT_framebuffer_object.
Michel Dänzer [Sun, 25 Nov 2007 13:17:02 +0000 (14:17 +0100)]
intel: Fix relative symlinks.
Brian [Fri, 23 Nov 2007 23:19:25 +0000 (16:19 -0700)]
better test of point attenuation
Brian [Fri, 23 Nov 2007 21:35:46 +0000 (14:35 -0700)]
#define GL_GLEXT_PROTOTYPES to silence warning
Brian [Fri, 23 Nov 2007 19:01:57 +0000 (12:01 -0700)]
Consolidate texture fetch code and use partial derivatives when possible.
Brian [Fri, 23 Nov 2007 17:25:48 +0000 (10:25 -0700)]
Fix parsing of gl_FrontLightModelProduct.sceneColor, don't segfault on variable array indexes.
Brian [Fri, 23 Nov 2007 16:14:39 +0000 (09:14 -0700)]
need to check border width in sample_linear_2d() - fixes failed assertion in texwrap.c test
Brian [Thu, 22 Nov 2007 16:31:16 +0000 (09:31 -0700)]
Consolidate point size computation, clamping in get_size().
Also, apply user-defined clamp limits to point size even when not using
attentuation or program-computed size.
Brian [Thu, 22 Nov 2007 16:29:38 +0000 (09:29 -0700)]
Print point/line size range limits
Roland Scheidegger [Thu, 22 Nov 2007 01:49:11 +0000 (02:49 +0100)]
fix z buffer read/write issue with rv100-like chips and old ddx
Eric Anholt [Mon, 5 Nov 2007 22:55:52 +0000 (14:55 -0800)]
[965] Replace 965 texture format code with common code.
The only functional difference should be that 965 now gets the optimization
where textures default to 16bpp when the screen is 16bpp.
Eric Anholt [Fri, 9 Nov 2007 19:45:25 +0000 (11:45 -0800)]
[965] Remove dead exec vfmt code which was replaced by generic vbo code.
Brian [Mon, 19 Nov 2007 20:05:00 +0000 (13:05 -0700)]
clamp lambda to Min/MaxLod
Eric Anholt [Mon, 19 Nov 2007 22:37:14 +0000 (14:37 -0800)]
[965] Add INTEL_DEBUG=fall debugging output.
Eric Anholt [Mon, 19 Nov 2007 23:26:14 +0000 (15:26 -0800)]
[965] Convert DBG macro to use FILE_DEBUG_FLAG like i915.
Brian [Mon, 19 Nov 2007 17:37:54 +0000 (10:37 -0700)]
fix some texture format assertions, etc
Brian [Mon, 19 Nov 2007 16:55:17 +0000 (09:55 -0700)]
fix out-of-bounds array index (ix=-1)
Eric Anholt [Sat, 17 Nov 2007 00:43:45 +0000 (16:43 -0800)]
[intel] Add 965 support to shared intel_blit.c
This requires that regions grow a marker of whether they are tiled or not,
because fence (surface) registers are ignored by the 965 2D engine.
Eric Anholt [Sat, 17 Nov 2007 00:14:42 +0000 (16:14 -0800)]
[i915] Pass static region names in so debugging says more than "static region".
Eric Anholt [Sat, 17 Nov 2007 00:05:11 +0000 (16:05 -0800)]
[intel] Move additional code to be shared from intel_context.h to intel/.
Eric Anholt [Fri, 16 Nov 2007 23:51:34 +0000 (15:51 -0800)]
[intel] Move intel_tex.h into place, forgotten in the previous commit.
Eric Anholt [Thu, 25 Oct 2007 22:37:13 +0000 (15:37 -0700)]
[965] Add batchbuffer decode for several more packets.
Eric Anholt [Fri, 16 Nov 2007 23:01:48 +0000 (15:01 -0800)]
[intel] Fix typos in intel_chipset.h macros.
Eric Anholt [Fri, 16 Nov 2007 22:56:26 +0000 (14:56 -0800)]
[i915] Add INTEL_DEBUG=sync debug flag to wait for fences after making them.
Eric Anholt [Thu, 25 Oct 2007 18:31:15 +0000 (11:31 -0700)]
[i915] Reenable batchbuffer debug under INTEL_DEBUG=bat.
Eric Anholt [Thu, 15 Nov 2007 22:00:17 +0000 (14:00 -0800)]
[intel] Add some doxygen notes on what the bufmgr_fake block members mean.
Eric Anholt [Fri, 16 Nov 2007 22:45:26 +0000 (14:45 -0800)]
[intel] Add a simple relocation cache to the fake buffer manager.
This is required for 965 performance, as it avoids a lot of repeated data
uploads of the state caches due to surface offsets in them.
Eric Anholt [Fri, 16 Nov 2007 22:38:09 +0000 (14:38 -0800)]
[intel] Assert against 0-sized buffers in dri_bufmgr_fake.c.
They shouldn't be created, and this often helps catch stupid issues.
Eric Anholt [Fri, 16 Nov 2007 22:20:24 +0000 (14:20 -0800)]
[intel] Add support for multiple levels of relocation in bufmgr_fake.
This is required for 965 support, which has relocations in other places than
just the batchbuffer.
Eric Anholt [Sat, 10 Nov 2007 00:43:21 +0000 (16:43 -0800)]
[i915] Push locking in intelClearWithTris down inside meta_draw_poly.
The lock coverage and checks for cliprects were unneeded since the batchbuffer
will have INTEL_BATCH_CLIPRECTS anyway. It appeared to be a leftover from
intelClearWithBlit.
This makes the locking requirements of i915 meta_draw_quad match i965
meta_draw_quad.
Brian [Fri, 16 Nov 2007 22:18:30 +0000 (15:18 -0700)]
added z/s keys to reset/step rotation
Brian [Fri, 16 Nov 2007 22:17:37 +0000 (15:17 -0700)]
Only emit texcoords for enabled units. Enable/disable units with 0..7 keys.
Also, asst. clean-ups.
Roland Scheidegger [Thu, 15 Nov 2007 00:13:16 +0000 (01:13 +0100)]
fix bogus assumption if ddx has set up surface reg for z buffer
this is wrong since even if ddx has not set up a surface reg to cover the z
buffer we should pretend it has on those rv100 chips since they presumably do
not do z buffer tiling if not using hyperz, so we can use linear addressing
just the same. Doesn't seem to fix #13080, but it's wrong anyway and the bug
almost certainly broke newer non-tcl chips.
Roland Scheidegger [Wed, 14 Nov 2007 23:52:38 +0000 (00:52 +0100)]
fix position invariant vertex programs for sw-tnl
do the same math as for fixed function pipe, including
user clip planes.
(mostly resurrected from the dead t_vb_arbprogram.c code)
Brian [Mon, 12 Nov 2007 15:02:09 +0000 (08:02 -0700)]
remove dependency on libGLU
Brian [Mon, 12 Nov 2007 14:51:28 +0000 (07:51 -0700)]
add glw.pc.in to tarball list, remove from DEPEND_FILES
Xiang, Haihao [Mon, 12 Nov 2007 02:20:26 +0000 (10:20 +0800)]
i965: correct the opcode of XY_SETUP_BLT_CMD. fix bug #12730
Brian [Sat, 10 Nov 2007 00:02:12 +0000 (17:02 -0700)]
test that point/line/quad rendering hits the right pixels
Eric Anholt [Fri, 9 Nov 2007 23:05:56 +0000 (15:05 -0800)]
[i915] Remove old frontbuffer rotation hack.
This was replaced in previous releases of xserver/dri/libGL by reporting the
damage to the frontbuffer so that the server and driver could handle it
appropriately.
Eric Anholt [Wed, 7 Nov 2007 00:07:10 +0000 (16:07 -0800)]
[intel] By default, output batchbuffer decode to stderr like other debug info.
Eric Anholt [Thu, 8 Nov 2007 22:49:37 +0000 (14:49 -0800)]
[intel] Initialize a depth buffer if the visual has depth 24 but no stencil.
Eric Anholt [Wed, 7 Nov 2007 18:04:59 +0000 (10:04 -0800)]
[intel] Move over files that will be shared with 965-fbo work.
Brian [Fri, 9 Nov 2007 15:55:49 +0000 (08:55 -0700)]
check for texture and renderbuffer in check_end_texture_render()
Benno Schulenberg [Fri, 9 Nov 2007 15:54:21 +0000 (08:54 -0700)]
code clean-ups, reformatting
Benno Schulenberg [Fri, 9 Nov 2007 15:54:16 +0000 (08:54 -0700)]
remove commented-out code
Roland Scheidegger [Fri, 9 Nov 2007 13:49:01 +0000 (14:49 +0100)]
recreate from changed gl_API.xml
Roland Scheidegger [Fri, 9 Nov 2007 13:46:59 +0000 (14:46 +0100)]
alias ProgramEnvParameter4xyARB and ProgramParameter4xyNV (bug #12935)
these should be the same functions (as per spec).
Ian Romanick [Fri, 9 Nov 2007 01:45:34 +0000 (17:45 -0800)]
Prevent loss of vectorequiv information when an alias follows the function being aliased.