Commit graph

21408 commits

Author SHA1 Message Date
Dave Airlie
7c7ff659ce radeon: fixup destroy texture object exit path and update LRU
the destroy path was doing bad things with structure names, make it do less
bad things, use container_of instead
2009-02-17 11:17:22 +10:00
Dave Airlie
43c71a2d40 radeon: remove leftover debug 2009-02-17 10:42:51 +10:00
Dave Airlie
62d504d818 radeon/r200: drop dirty state from texture object + pp_txoffset
this is just more code cleanup for old dead code
2009-02-17 10:41:21 +10:00
Dave Airlie
a365f9b78b r200: align with r100 code 2009-02-17 10:28:43 +10:00
Dave Airlie
646325a5ef radeon: fix not emitting texture state correctly
this is whole texture dirty bit is probably not needed with the current
codebase, need to revisit
2009-02-17 10:27:45 +10:00
Dave Airlie
0a8cba9a65 radeon: steal miptree optimisation from intel codebase
This replaces a miptree if it won't distrub anything else.
2009-02-17 10:26:58 +10:00
Dave Airlie
7a1dbcabf3 radeon: move YUV on first texunit check after hw state is setup 2009-02-17 10:26:33 +10:00
Dave Airlie
5325f86240 dri/radeon: export a function to cleanup a texture object.
The radeon legacy code want to cleanup not free the texture obj,
so export a function to do that and wrap it.
2009-02-17 10:25:34 +10:00
Dave Airlie
ecf0a3eac1 radeon: fix texcompress2 test.
this makes compressed subimages work properly.
2009-02-16 09:51:08 +10:00
Dave Airlie
f069bc4a8e radeon: fix compressed tex subimage unpack parameter 2009-02-16 17:16:28 +10:00
Dave Airlie
b0e8ac8fd2 radeon: add cflags to decide whether to link libdrm_radeon or not.
You don't need libdrm_radeon for the legacy driver to build,
only for the experimental mm/cs paths.
2009-02-15 17:03:47 +10:00
Nicolai Haehnle
7d19d27684 radeon-common: Fix crash in glGetTexImage
Since texture images are now stored in miptrees, we cannot usually
access them directly via the Data pointer.

So we wrap Mesa's implementation by map/unmap calls.

This crash was triggered by Sauerbraten, Piglit now contains a
regression test.

Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
2009-02-14 21:46:44 +01:00
Nicolai Haehnle
2d9471b281 r300: Fix crash in cubemap tree creation
The mip tree creation would crash if the first baselevel image to be uploaded
was not the positive-x image.

Found with Sauerbraten, also added a regression test to Piglit.

Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
2009-02-14 20:47:08 +01:00
Nicolai Haehnle
9a26164f35 r300: Redirect constant TEX coordinates
R3xx/R5xx fragment program texture constants must come from a hardware
register instead of the constant file, so we redirect if necessary during
the native rewrite phase.

The symptoms of this bug started appearing when the Mesa fixed function
texenvprogram code started using STATE_CURRENT_ATTRIB constants for
texture coordinates when the corresponding attributes were constant across
all vertices.

Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
2009-02-14 17:09:54 +01:00
Michel Dänzer
5f3ab230ea r300: Fix R300_CMD_SCRATCH on big endian. 2009-02-14 20:40:48 +10:00
Dave Airlie
b1b7bc66a4 radeon: remove unused radeon_compat.c 2009-02-14 20:34:20 +10:00
Dave Airlie
f8c2beccd4 r200: fixup cube emit debug 2009-02-14 20:13:55 +10:00
Dave Airlie
fd81835dc7 r200: fix another cmdbuf sizing issue 2009-02-14 20:13:55 +10:00
Dave Airlie
f3a1f321cf radeon: check for valid bo in release arrays 2009-02-14 12:05:36 +10:00
Dave Airlie
fcc7a691dc radeon: remove old cube code 2009-02-14 12:05:36 +10:00
Dave Airlie
c0ae4d3c55 radeon/r300: fix warnings 2009-02-14 07:49:15 +10:00
Dave Airlie
cd4e37c8fb radeon: add initial cubemap support appears to work 2009-02-14 05:57:52 +10:00
Dave Airlie
2753dd42fd radeon/r200: make setTexOffset work again 2009-02-13 23:34:53 +10:00
Dave Airlie
f363a97d25 radeon/r200: fix set tex offset functions 2009-02-13 23:29:27 +10:00
Dave Airlie
ed8340192e radeon: revert unneeded change to texturing code 2009-02-13 23:02:12 +10:00
Dave Airlie
9fd8da299b radeon: fix compressed texture upload on all radeons
tested on r200, texcmp works. May need more verification
2009-02-13 22:49:06 +10:00
Dave Airlie
8123897615 r200: update with changes from r100 driver for texture state 2009-02-13 19:39:21 +10:00
Dave Airlie
695ca1e2be r200: port over state emit fix from r100 2009-02-13 18:50:57 +10:00
Dave Airlie
ade3660942 r200: fixup some CS emission sizes 2009-02-13 01:27:21 +10:00
Dave Airlie
393c699e21 r200: use correct finish interface 2009-02-13 00:04:11 +10:00
Dave Airlie
5ee1dd2133 radeon: fixup include ordering 2009-02-13 01:21:37 +10:00
Dave Airlie
53116910b1 Merge remote branch 'origin/master' into radeon-rewrite
Conflicts:
	configure.ac
	src/mesa/drivers/dri/r200/r200_context.c
	src/mesa/drivers/dri/r300/r300_render.c
2009-02-13 01:11:25 +10:00
Dave Airlie
7e104f9cde r300: fix warning about mesa_lock_context_texture 2009-02-13 01:04:18 +10:00
Dave Airlie
dc531ba406 radeon: add stdint include 2009-02-12 14:44:20 +10:00
Dave Airlie
899b91b1fb radeon: add mminfo struct to wrapper 2009-02-12 14:43:25 +10:00
Dave Airlie
ec0939b013 radeon: add defines for future bits 2009-02-12 14:41:16 +10:00
Dave Airlie
1e77f7b55c r200: make build complete 2009-02-12 14:39:33 +10:00
Dave Airlie
56a13a7ca9 r300: make r300 work with latest changes 2009-02-12 14:36:12 +10:00
Dave Airlie
c83d0bfe06 radeon: make build without libdrm_radeon better 2009-02-12 14:16:24 +10:00
Dave Airlie
d513915d27 radeon/r200/r300: make build again with tracker changes 2009-02-13 00:05:39 +10:00
Dave Airlie
9314d936e8 radeon: remove depends on libdrm_radeon for now.
will fixup makefiles later to detect and use libdrm_Radeon in proper
places
2009-02-12 23:53:41 +10:00
Dave Airlie
dc8a707c67 radeon/r200/r300: make build with out libdrm_radeon installed for now 2009-02-12 23:52:51 +10:00
Dave Airlie
8cb16e6daf r200/r300: get up to speed on renamed files 2009-02-12 22:48:18 +10:00
Dave Airlie
23d3559bd4 radeon: renaming and headers cleanup 2009-02-12 22:38:10 +10:00
Dave Airlie
df4a1348b1 r100/r200: fix front rendering issue. 2009-02-12 21:44:34 +10:00
Dave Airlie
1090d206de radeon/r200/r300: another big merge upheavel.
This merges lots of the hw state atom emission and firevertices code.

it also removes a lot of the extra radeon crap from r300

and merge scissor
2009-02-12 21:16:39 +10:00
Robert Ellison
0ccbc3c905 Fix an i965 assertion failure on glClear()
While running conform with render-to-texture:

	conform -d 33 -v 2 -t -direct

the i965 driver failed this assertion:

intel_clear.c:77: intel_clear_tris: Assertion `(mask & ~((1 << BUFFER_BACK_LEFT) | (1 << BUFFER_FRONT_LEFT) | (1 << BUFFER_DEPTH) | (1 << BUFFER_STENCIL))) == 0' failed.

The problem is that intel_clear_tris() is called by intelClear() to
clear any and all of the available color buffers, but intel_clear_tris()
actually only handles the back left and front left color buffers; so
the assertion fails as soon as you try to clear a non-standard color
buffer.

The fix is to have intelClear() only call intel_clear_tris() with
buffers that intel_clear_tris() can support.  intelClear() already backs
down to _swrast_Clear() for all buffers that aren't handled explicitly.
2009-02-11 18:05:19 -07:00
Dan Nicholson
8217f24f21 autoconf: Fix lib globbing for static builds
Reported-by: Siddhartha Chaudhuri <expiring_frog@yahoo.co.uk>
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-02-11 15:16:00 -08:00
Brian Paul
6b06a6b929 gallium: const-correctness for u_linear.c functions 2009-02-11 14:11:48 -07:00
Brian Paul
81374d1ebe gallium: silence warnings about void ptr arithmetic 2009-02-11 14:09:22 -07:00