Dave Airlie [Thu, 5 Mar 2009 16:31:00 +0000 (02:31 +1000)]
r200: add set tex buffer support
Dave Airlie [Wed, 4 Mar 2009 12:26:44 +0000 (22:26 +1000)]
radeon: r100 clean up CS packet size calc
Dave Airlie [Wed, 4 Mar 2009 12:26:20 +0000 (22:26 +1000)]
radeon: settexbuffer support
This gets DRI2 compiz going
Dave Airlie [Wed, 4 Mar 2009 10:24:08 +0000 (20:24 +1000)]
radeon: fix texturing for r100
Dave Airlie [Wed, 4 Mar 2009 08:36:46 +0000 (18:36 +1000)]
radeon: use swrast clear - fail on depth
need to write real hw user clear
Dave Airlie [Wed, 4 Mar 2009 08:36:13 +0000 (18:36 +1000)]
radeon: fixup some segfaults/exit at startup
Dave Airlie [Mon, 2 Mar 2009 17:37:23 +0000 (03:37 +1000)]
radeon: remove debugging
Dave Airlie [Mon, 2 Mar 2009 17:27:59 +0000 (03:27 +1000)]
radeon: refactor framebuffer code like intel
this is a step towards fbos and should fix pageflipping, but
I think the first flip seems broken.
Alex Deucher [Fri, 27 Feb 2009 19:48:24 +0000 (14:48 -0500)]
R300: add support for RS600 chips
Alex Deucher [Fri, 27 Feb 2009 19:31:14 +0000 (14:31 -0500)]
R300: set the number of GB pipes on all r3xx-r5xx chips
Dave Airlie [Fri, 27 Feb 2009 04:03:30 +0000 (14:03 +1000)]
r300: make ste text buffer work with > 2048 on r500
Dave Airlie [Fri, 27 Feb 2009 04:02:23 +0000 (14:02 +1000)]
radeon: add more fbconfigs
this makes glxgears get its background back when running under DRI2
Dave Airlie [Thu, 26 Feb 2009 04:04:38 +0000 (14:04 +1000)]
r300: remove depth offset exits in favour of rrb depth changes
Dave Airlie [Thu, 26 Feb 2009 17:37:30 +0000 (03:37 +1000)]
r200: fixup emit sizes for kms
Dave Airlie [Thu, 26 Feb 2009 17:05:42 +0000 (03:05 +1000)]
r200: port over cs emit changes from radeon
Dave Airlie [Thu, 26 Feb 2009 08:26:22 +0000 (18:26 +1000)]
radeon: fixup old packets emission for CS case
Dave Airlie [Thu, 26 Feb 2009 01:45:24 +0000 (11:45 +1000)]
r100: fixup kms state emissions
Dave Airlie [Wed, 25 Feb 2009 09:22:42 +0000 (19:22 +1000)]
radeon: avoid page flip code in DRI2
Dave Airlie [Wed, 25 Feb 2009 09:22:25 +0000 (19:22 +1000)]
radeon: enable DRI2 for r100
Dave Airlie [Wed, 25 Feb 2009 09:21:22 +0000 (19:21 +1000)]
radeon: move CB/ZB state init into emit code
This removes the use of the sarea for this stuff so makes DRI2 easier
and emits the CB/ZB info in the correct place
Dave Airlie [Thu, 26 Feb 2009 01:09:32 +0000 (11:09 +1000)]
r300: fixup texture state emission for kms path
Dave Airlie [Thu, 26 Feb 2009 01:09:16 +0000 (11:09 +1000)]
r300: don't call page flip on DRI2
Dave Airlie [Thu, 26 Feb 2009 01:08:14 +0000 (11:08 +1000)]
r300: don't flush VAP too often.
Flush the VAP the first time for each state atom we upload new
VAP data
Dave Airlie [Wed, 25 Feb 2009 08:06:44 +0000 (18:06 +1000)]
r300: drop r300Flush for the generic one
Dave Airlie [Tue, 24 Feb 2009 02:04:49 +0000 (12:04 +1000)]
r300: fix bo ref/unref, plugs DRI handle leaks
Dave Airlie [Mon, 23 Feb 2009 05:41:30 +0000 (15:41 +1000)]
r300: fixup old setTexOffset DRI1 extension
Dave Airlie [Mon, 23 Feb 2009 03:49:29 +0000 (13:49 +1000)]
radeon: add more debug info to the flush debug
Dave Airlie [Mon, 23 Feb 2009 03:48:52 +0000 (13:48 +1000)]
r300: revert back autostate change on cacheflush emit
Dave Airlie [Mon, 23 Feb 2009 03:37:23 +0000 (13:37 +1000)]
r300: use OUT_BATCH_REGVAL in a few more places
Dave Airlie [Mon, 23 Feb 2009 03:35:10 +0000 (13:35 +1000)]
r300: set u to 0 so debug logs are easier to read
Dave Airlie [Mon, 23 Feb 2009 03:33:51 +0000 (13:33 +1000)]
radeon: stabilise r300 driver like the F10 mesa bufmgr
For some reason flushs caused by this CS needs flush hook,
caused the chip to lockup on r300 under compiz, whereas
the F10 driver was rock solid.
Dave Airlie [Mon, 23 Feb 2009 03:33:35 +0000 (13:33 +1000)]
radeon: add some debugging for flush ioctls
Dave Airlie [Mon, 23 Feb 2009 03:33:05 +0000 (13:33 +1000)]
radeon: make state atom print like old r300 code
Dave Airlie [Mon, 23 Feb 2009 03:32:24 +0000 (13:32 +1000)]
radeon: fixup legacy bo/cs out of VRAM waiting.
This is similiar to the code from the F10 r300 bufmgr
Dave Airlie [Wed, 18 Feb 2009 00:46:11 +0000 (10:46 +1000)]
r300: make DRI2 not crash on compiz start
Dave Airlie [Wed, 18 Feb 2009 00:45:42 +0000 (10:45 +1000)]
radeon: move device param id check ifndef
Dave Airlie [Tue, 17 Feb 2009 06:01:16 +0000 (16:01 +1000)]
radeon: initialise swapped objects pointer
Dave Airlie [Tue, 17 Feb 2009 04:48:49 +0000 (14:48 +1000)]
radeon: legacy texMem interface fixups.
The texmem.c interface is wildly messed up it really wants to own the objects
so let it, pain in the ass but this code should work a lot better now
Dave Airlie [Tue, 17 Feb 2009 04:46:12 +0000 (14:46 +1000)]
Revert "dri/radeon: export a function to cleanup a texture object."
This reverts commit
5325f8624093bb1ec30d581b4ff64218ceab99f9.
Dave Airlie [Tue, 17 Feb 2009 04:00:24 +0000 (14:00 +1000)]
radeon/r200: drop legacy texture heap code
Dave Airlie [Tue, 17 Feb 2009 03:39:38 +0000 (13:39 +1000)]
radeon/r200: fixup texturing aging calls
Dave Airlie [Tue, 17 Feb 2009 01:17:22 +0000 (11:17 +1000)]
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
Dave Airlie [Tue, 17 Feb 2009 00:42:51 +0000 (10:42 +1000)]
radeon: remove leftover debug
Dave Airlie [Tue, 17 Feb 2009 00:34:01 +0000 (10:34 +1000)]
radeon/r200: drop dirty state from texture object + pp_txoffset
this is just more code cleanup for old dead code
Dave Airlie [Tue, 17 Feb 2009 00:28:43 +0000 (10:28 +1000)]
r200: align with r100 code
Dave Airlie [Tue, 17 Feb 2009 00:27:45 +0000 (10:27 +1000)]
radeon: fix not emitting texture state correctly
this is whole texture dirty bit is probably not needed with the current
codebase, need to revisit
Dave Airlie [Tue, 17 Feb 2009 00:26:58 +0000 (10:26 +1000)]
radeon: steal miptree optimisation from intel codebase
This replaces a miptree if it won't distrub anything else.
Dave Airlie [Tue, 17 Feb 2009 00:26:33 +0000 (10:26 +1000)]
radeon: move YUV on first texunit check after hw state is setup
Dave Airlie [Tue, 17 Feb 2009 00:25:34 +0000 (10:25 +1000)]
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.
Dave Airlie [Sun, 15 Feb 2009 23:49:01 +0000 (09:49 +1000)]
radeon: fix texcompress2 test.
this makes compressed subimages work properly.
Dave Airlie [Mon, 16 Feb 2009 07:16:28 +0000 (17:16 +1000)]
radeon: fix compressed tex subimage unpack parameter
Dave Airlie [Sun, 15 Feb 2009 07:03:47 +0000 (17:03 +1000)]
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.
Nicolai Haehnle [Sat, 14 Feb 2009 20:43:30 +0000 (21:43 +0100)]
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>
Nicolai Haehnle [Sat, 14 Feb 2009 19:45:01 +0000 (20:45 +0100)]
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>
Nicolai Haehnle [Sat, 14 Feb 2009 16:06:06 +0000 (17:06 +0100)]
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>
Michel Dänzer [Sat, 14 Feb 2009 10:40:48 +0000 (20:40 +1000)]
r300: Fix R300_CMD_SCRATCH on big endian.
Dave Airlie [Sat, 14 Feb 2009 10:34:20 +0000 (20:34 +1000)]
radeon: remove unused radeon_compat.c
Dave Airlie [Sat, 14 Feb 2009 10:13:04 +0000 (20:13 +1000)]
r200: fixup cube emit debug
Dave Airlie [Sat, 14 Feb 2009 09:10:13 +0000 (19:10 +1000)]
r200: fix another cmdbuf sizing issue
Dave Airlie [Sat, 14 Feb 2009 02:01:54 +0000 (12:01 +1000)]
radeon: check for valid bo in release arrays
Dave Airlie [Fri, 13 Feb 2009 10:34:19 +0000 (20:34 +1000)]
radeon: remove old cube code
Dave Airlie [Fri, 13 Feb 2009 21:49:15 +0000 (07:49 +1000)]
radeon/r300: fix warnings
Dave Airlie [Fri, 13 Feb 2009 19:57:52 +0000 (05:57 +1000)]
radeon: add initial cubemap support appears to work
Dave Airlie [Fri, 13 Feb 2009 13:34:53 +0000 (23:34 +1000)]
radeon/r200: make setTexOffset work again
Dave Airlie [Fri, 13 Feb 2009 13:29:27 +0000 (23:29 +1000)]
radeon/r200: fix set tex offset functions
Dave Airlie [Fri, 13 Feb 2009 13:02:12 +0000 (23:02 +1000)]
radeon: revert unneeded change to texturing code
Dave Airlie [Fri, 13 Feb 2009 12:49:06 +0000 (22:49 +1000)]
radeon: fix compressed texture upload on all radeons
tested on r200, texcmp works. May need more verification
Dave Airlie [Fri, 13 Feb 2009 09:39:21 +0000 (19:39 +1000)]
r200: update with changes from r100 driver for texture state
Dave Airlie [Fri, 13 Feb 2009 08:50:57 +0000 (18:50 +1000)]
r200: port over state emit fix from r100
Dave Airlie [Thu, 12 Feb 2009 15:27:21 +0000 (01:27 +1000)]
r200: fixup some CS emission sizes
Dave Airlie [Thu, 12 Feb 2009 14:04:11 +0000 (00:04 +1000)]
r200: use correct finish interface
Dave Airlie [Thu, 12 Feb 2009 15:21:37 +0000 (01:21 +1000)]
radeon: fixup include ordering
Dave Airlie [Thu, 12 Feb 2009 15:11:25 +0000 (01:11 +1000)]
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
Dave Airlie [Thu, 12 Feb 2009 15:04:18 +0000 (01:04 +1000)]
r300: fix warning about mesa_lock_context_texture
Dave Airlie [Thu, 12 Feb 2009 04:44:20 +0000 (14:44 +1000)]
radeon: add stdint include
Dave Airlie [Thu, 12 Feb 2009 04:43:25 +0000 (14:43 +1000)]
radeon: add mminfo struct to wrapper
Dave Airlie [Thu, 12 Feb 2009 04:41:16 +0000 (14:41 +1000)]
radeon: add defines for future bits
Dave Airlie [Thu, 12 Feb 2009 04:39:33 +0000 (14:39 +1000)]
r200: make build complete
Dave Airlie [Thu, 12 Feb 2009 04:36:12 +0000 (14:36 +1000)]
r300: make r300 work with latest changes
Dave Airlie [Thu, 12 Feb 2009 04:16:24 +0000 (14:16 +1000)]
radeon: make build without libdrm_radeon better
Dave Airlie [Thu, 12 Feb 2009 14:05:39 +0000 (00:05 +1000)]
radeon/r200/r300: make build again with tracker changes
Dave Airlie [Thu, 12 Feb 2009 13:53:41 +0000 (23:53 +1000)]
radeon: remove depends on libdrm_radeon for now.
will fixup makefiles later to detect and use libdrm_Radeon in proper
places
Dave Airlie [Thu, 12 Feb 2009 13:52:51 +0000 (23:52 +1000)]
radeon/r200/r300: make build with out libdrm_radeon installed for now
Dave Airlie [Thu, 12 Feb 2009 12:48:18 +0000 (22:48 +1000)]
r200/r300: get up to speed on renamed files
Dave Airlie [Thu, 12 Feb 2009 12:38:10 +0000 (22:38 +1000)]
radeon: renaming and headers cleanup
Dave Airlie [Thu, 12 Feb 2009 11:44:34 +0000 (21:44 +1000)]
r100/r200: fix front rendering issue.
Dave Airlie [Thu, 12 Feb 2009 11:16:39 +0000 (21:16 +1000)]
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
Robert Ellison [Thu, 12 Feb 2009 01:01:34 +0000 (18:01 -0700)]
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.
Dan Nicholson [Wed, 11 Feb 2009 23:16:00 +0000 (15:16 -0800)]
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>
Brian Paul [Wed, 11 Feb 2009 21:11:48 +0000 (14:11 -0700)]
gallium: const-correctness for u_linear.c functions
Brian Paul [Wed, 11 Feb 2009 21:09:22 +0000 (14:09 -0700)]
gallium: silence warnings about void ptr arithmetic
Brian Paul [Wed, 11 Feb 2009 20:59:54 +0000 (13:59 -0700)]
mesa: refactor MATH_SOURCES, remove Mesa x86 codegen from gallium build
Omit math/m_xform.c from gallium builds since it's not used and it's the
one place we were pulling in the Mesa x86 codegen which collides with
gallium's x86 codegen.
Can now omit ASM_C_SOURCES from gallium build too.
Brian Paul [Wed, 11 Feb 2009 20:52:17 +0000 (13:52 -0700)]
mesa: get rid of _math_init()
Only VBO uses the evaluator code so call _math_init_eval() there.
Only TNL uses the transform/translate code so call _math_init_transformation()
and _math_init_translate9) there.
This is a step toward resolving some symbol collisions between Mesa's and
gallium's x86 codegen.
Have VBO and TNL modules call _math_init_transformation()
Dan Nicholson [Wed, 11 Feb 2009 19:04:29 +0000 (11:04 -0800)]
autoconf: Adjust to new asm SOURCES variables
Commit
90b2beb661f630966788a6e909dc759c99e38973 changed the assembly
variables. Without this change, the glapi assembly wasn't being built
when it was supposed to, resulting in missing symbols in libGL.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Dan Nicholson [Wed, 11 Feb 2009 18:42:34 +0000 (10:42 -0800)]
autoconf: Restore commented ASM_FLAGS
This is not the proper approach to disabling assembly. If there are bugs,
they should be fixed or the assembly can default to off.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Dan Nicholson [Wed, 11 Feb 2009 17:55:20 +0000 (09:55 -0800)]
Add external pixman CFLAGS after all internal include paths
With the pixman CFLAGS at the beginning of the command line, my build
was picking up the glcore.h from glproto, which doesn't have any of the
TFP fields in __GLcontextmodes.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Younes Manton [Wed, 11 Feb 2009 16:52:32 +0000 (11:52 -0500)]
nouveau: 1xN, Nx1 levels of a swizzled mip tree shouldn't be aligned.
José Fonseca [Wed, 11 Feb 2009 16:35:12 +0000 (16:35 +0000)]
draw: Cap max vertices instead of failing assert.
Brian Paul [Wed, 11 Feb 2009 16:14:07 +0000 (09:14 -0700)]
demos: minor updates for shader_api.c test
Mesa's glGetUniformLocation() does support array indexes.
Minor code reformatting.
It would be great if this program were converted into a glean test...
Brian Paul [Wed, 11 Feb 2009 16:12:34 +0000 (09:12 -0700)]
glsl: allow setting arrays of samplers in set_program_uniform()
Arrays of sampler vars haven't been tested much and might actually be broken.
Will need to be revisited someday.
Another fix for bug 20056.