Jakob Bornecrantz [Thu, 27 Aug 2009 16:56:30 +0000 (17:56 +0100)]
st/xorg: Fix some warnings
Jakob Bornecrantz [Thu, 27 Aug 2009 16:38:33 +0000 (17:38 +0100)]
st/dri: Fix some warnings
Jakob Bornecrantz [Fri, 28 Aug 2009 10:32:04 +0000 (12:32 +0200)]
st/xorg: Pass dri driver name as driverName on screen
Jakob Bornecrantz [Fri, 28 Aug 2009 09:43:19 +0000 (11:43 +0200)]
Revert "st/xorg/dri: Pass texture formats via the DRI2 protocol flags."
This reverts commit
a33e9ea3b9b7ac98d6e9bc385bbbe7eac2eb73d0.
As this change breaks both radeon and nouveau
Pauli Nieminen [Fri, 28 Aug 2009 02:42:41 +0000 (05:42 +0300)]
r100/r200: Bring back old PolygonStripple for DRI1.
DRI1 didn't have support for command buffer emit for stripple.
Pauli Nieminen [Fri, 28 Aug 2009 01:58:50 +0000 (04:58 +0300)]
r100/r200: Share PolygonStripple code.
Pauli Nieminen [Fri, 28 Aug 2009 01:12:17 +0000 (04:12 +0300)]
r200: Fix piglit paths test.
Polygon stipple has to go to command buffer because special ioctl is disabled.
Piglit doesn't like HyperZ warning so disable it for kms.
Dave Airlie [Fri, 28 Aug 2009 01:05:29 +0000 (11:05 +1000)]
r600: fix scissor also.
I forgot about r600 being here.
Dave Airlie [Fri, 28 Aug 2009 01:01:38 +0000 (11:01 +1000)]
radeon: fix scissors harder.
this makes gnome-shell work on r300 for me
Eric Anholt [Thu, 27 Aug 2009 23:53:50 +0000 (16:53 -0700)]
intel: Add support for ARB_copy_buffer.
Passes glean's bufferObject test for this extension.
Pauli Nieminen [Thu, 27 Aug 2009 23:04:00 +0000 (02:04 +0300)]
r300: Fix emit prediction to account scissor emitting correctly.
Brian Paul [Thu, 27 Aug 2009 22:54:32 +0000 (16:54 -0600)]
Merge branch 'mesa_7_5_branch'
Brian Paul [Thu, 27 Aug 2009 22:50:44 +0000 (16:50 -0600)]
docs: fix selection/feedback culling bug
Brian Paul [Thu, 27 Aug 2009 22:50:03 +0000 (16:50 -0600)]
swrast: fix incorrect tri culling in selection/feedback mode.
See bug 16866.
Eric Anholt [Thu, 27 Aug 2009 22:33:33 +0000 (15:33 -0700)]
Zack Rusin [Thu, 27 Aug 2009 22:17:54 +0000 (18:17 -0400)]
st/xorg: set vertex and fragment shader for the current op
Zack Rusin [Thu, 27 Aug 2009 22:08:58 +0000 (18:08 -0400)]
st/xorg: bind rasterizer state
Zack Rusin [Thu, 27 Aug 2009 22:06:15 +0000 (18:06 -0400)]
st/xorg: set blend state for exa
Zack Rusin [Thu, 27 Aug 2009 21:39:20 +0000 (17:39 -0400)]
st/xorg: bind framebuffer and viewport for exa
Zack Rusin [Wed, 26 Aug 2009 22:32:36 +0000 (18:32 -0400)]
st/xorg: create and destroy shader cache
Michel Dänzer [Thu, 27 Aug 2009 18:29:32 +0000 (20:29 +0200)]
st/xorg: Set shared usage of pixmaps for use via DRI2.
Also allow pixmaps to have both the shared and displayed usage flags, as is
the case for the screen pixmap now.
Michel Dänzer [Thu, 27 Aug 2009 18:27:28 +0000 (20:27 +0200)]
st/dri: Make sure the front left renderbuffer is there for texture-from-pixmap.
Michel Dänzer [Thu, 27 Aug 2009 18:27:28 +0000 (20:27 +0200)]
st/xorg: Don't hardcode ExaPrepareCopy to fall back to software.
Michel Dänzer [Thu, 27 Aug 2009 18:27:28 +0000 (20:27 +0200)]
st/xorg: Flush context if necessary in ExaPrepareAccess.
Michel Dänzer [Thu, 27 Aug 2009 18:17:53 +0000 (20:17 +0200)]
st/dri: Only ask for fake front buffer for single buffer visuals by default.
Michel Dänzer [Thu, 27 Aug 2009 18:17:53 +0000 (20:17 +0200)]
st/xorg/dri: Pass texture formats via the DRI2 protocol flags.
No need to guess.
Nicolai Hähnle [Thu, 27 Aug 2009 15:51:12 +0000 (17:51 +0200)]
r300: Cleanup reported native program limits
The fragment program native limits are actually higher on R4xx
as reported by Alex Deucher, but using those requires some
bit-twiddling changes to program handling.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Nicolai Hähnle [Thu, 27 Aug 2009 15:12:22 +0000 (17:12 +0200)]
r300: Debug messages are written to stderr, so fflush that
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Pauli Nieminen [Thu, 27 Aug 2009 11:21:13 +0000 (14:21 +0300)]
radeon/r200/r300: Fix swtcl prediction to work after primitie change.
Swtcl calls flush everytime primitive changes so prediction has to made again
after flushing.
marvin24 [Thu, 27 Aug 2009 15:22:51 +0000 (09:22 -0600)]
mesa: direct program debug output to stderr instead of stdout
Brian Paul [Thu, 27 Aug 2009 15:14:09 +0000 (09:14 -0600)]
Merge branch 'mesa_7_5_branch'
Brian Paul [Thu, 27 Aug 2009 15:10:34 +0000 (09:10 -0600)]
gallium/util: added support for SRGB formats
Fixes glean/texture_srgb failure, bug #23449.
Brian Paul [Thu, 27 Aug 2009 15:09:56 +0000 (09:09 -0600)]
gallium/util: added cases for SRGB formats
Chia-I Wu [Wed, 26 Aug 2009 04:44:02 +0000 (12:44 +0800)]
progs: EGL/X progs should link to libX11.
Since
5a459d58fca2b71cb77c39f98df8a81ce6298421, libEGL no longer links
to libX11. Add the dependency to affected progs and cleanup
prog/egl/Makefile.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Vinson Lee [Thu, 27 Aug 2009 13:40:37 +0000 (07:40 -0600)]
mesa: move decls before code
Cooper Yuan [Thu, 27 Aug 2009 09:46:59 +0000 (17:46 +0800)]
r300g: Correct scissor setting, subtract 1 from window's width and height
Dave Airlie [Thu, 27 Aug 2009 05:36:35 +0000 (15:36 +1000)]
radeon: fix scissor calcs.
For non-FBOs we need to invert, for FBOs the scissors are non-inverted.
no matter what we need to clamp them to the buffer sizes.
Ian Romanick [Thu, 27 Aug 2009 05:04:23 +0000 (22:04 -0700)]
i965: Increase assmebly shader program parameter limits
Increase the number of native program parameters to the same values
exposed by GLSL.
Ian Romanick [Mon, 24 Aug 2009 19:54:48 +0000 (12:54 -0700)]
ARB prog: Change handling of program parameter limits
Several changes are made to program parameter limits. Several of the
non-NATIVE limits are set higher. All of the NATIVE limits are set to
zero in the core Mesa code. Each driver must set the actual value in
its context creation routine. If the NATIVE value remains zero, this
indicates that hardware shaders may not be supported.
Each of the preceeding changes matches the bahavior of Apple's shader
assembler, so it seems safe.
Finally, we limit the value of MaxEnvParams to be no greater than
MaxNativeAttribs. At least one case has been found where an
application does the wrong thing if MaxNativeAttribs < MaxEnvParams.
See also bugzilla #23490.
Dave Airlie [Fri, 24 Jul 2009 01:46:20 +0000 (11:46 +1000)]
radeon: fix max indx/vertex emission due to state checker
Younes Manton [Thu, 27 Aug 2009 00:13:11 +0000 (20:13 -0400)]
mesa: gitignore
Younes Manton [Thu, 27 Aug 2009 00:07:51 +0000 (20:07 -0400)]
nv04: Handle more Z formats.
Based on the patch from Luo Jinghua.
Nicolai Hähnle [Wed, 26 Aug 2009 21:31:37 +0000 (23:31 +0200)]
r300/compiler: Fix vertex program MAD emit
Only use the macro variant of MAD when absolutely necessary.
Apparently it cannot deal with relative addressing.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Nicolai Hähnle [Wed, 26 Aug 2009 20:53:24 +0000 (22:53 +0200)]
r300/compiler: Fix bug in rc_find_free_temporary
Find used temporaries even if they are only written to in dead code.
This fixes a bug in the NQSSADCE stage.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Chia-I Wu [Wed, 26 Aug 2009 08:06:39 +0000 (16:06 +0800)]
egl: Remove Xdpy from EGLDisplay.
It is not used anymore.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Wed, 26 Aug 2009 06:45:17 +0000 (14:45 +0800)]
egl_glx: Make fbconfigs and visuals per display.
This is to allow a driver to drive multiple displays. Remove the use of
_EGL_PLATFORM_X and obsolete code along the way.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Wed, 26 Aug 2009 07:42:35 +0000 (15:42 +0800)]
egl_softpipe: Make winsys and pipe screen per display.
This is to allow a driver to drive multiple displays. Remove the use of
_EGL_PLATFORM_X along the way.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Wed, 26 Aug 2009 08:39:29 +0000 (16:39 +0800)]
EGL_i915: Make struct drm_device per display.
This is to allow a driver to drive multiple displays.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Pauli Nieminen [Wed, 26 Aug 2009 21:08:30 +0000 (00:08 +0300)]
Merge branch 'fix_r300_swtcl' into push_master
Pauli Nieminen [Wed, 26 Aug 2009 21:07:05 +0000 (00:07 +0300)]
radeon: Fix loop en condition so debug output doesn't flood meaningless values.
Pauli Nieminen [Wed, 26 Aug 2009 21:05:57 +0000 (00:05 +0300)]
radeon: Make RADEON_CMDBUF more fine grained.
Pauli Nieminen [Wed, 26 Aug 2009 19:24:25 +0000 (22:24 +0300)]
radeon/r200/r300: Fix swtcl flushing not to invalidate dma region.
We were check command buffer sizes too alte so allocated dma regions
were freed before relocations so space checking failed.
Brian Paul [Wed, 26 Aug 2009 20:49:15 +0000 (14:49 -0600)]
Merge branch 'mesa_7_5_branch'
Brian Paul [Wed, 26 Aug 2009 20:47:50 +0000 (14:47 -0600)]
i965: init the tex_units_used field
Brian Paul [Wed, 26 Aug 2009 20:46:58 +0000 (14:46 -0600)]
i965: fix incorrect tex unit in emit_tex() and emit_txb()
The instructions we're translating already went through the brw_wm_pass_fp()
function which does the sampler->texture unit mapping. We were applying
the sample->unit mapping a second time in the GLSL texture emitters.
Often, this made no difference but other times it could lead to accessing
an invalid texture and could cause a GPU lockup.
Brian Paul [Wed, 26 Aug 2009 20:43:45 +0000 (14:43 -0600)]
i965: clean-up tex target switches
Brian Paul [Wed, 26 Aug 2009 20:35:45 +0000 (14:35 -0600)]
glsl: asst. clean-ups in set_program_uniform()
Remove redunant type check for samplers (assert instead).
Move some local vars. Update comments.
Brian Paul [Wed, 26 Aug 2009 20:29:50 +0000 (14:29 -0600)]
glsl: signal that the program needs to be re-translated when samplers change
Brian Paul [Wed, 26 Aug 2009 18:16:07 +0000 (12:16 -0600)]
progs/glsl: asst. changes in shtest.c
Brian Paul [Wed, 26 Aug 2009 18:07:52 +0000 (12:07 -0600)]
i965: added texture unit sanity check
Check that all the textures needed by the current fragment program
actually exist and are valid.
Brian Paul [Wed, 26 Aug 2009 18:07:03 +0000 (12:07 -0600)]
i965: keep track of which texture units the fragment shader accesses
We'll use this for debug/sanity checking.
Brian Paul [Wed, 26 Aug 2009 18:04:35 +0000 (12:04 -0600)]
docs: document sampler array bug fix
Brian Paul [Wed, 26 Aug 2009 17:05:04 +0000 (11:05 -0600)]
i965: clean up texture target switches
Brian Paul [Wed, 26 Aug 2009 16:58:06 +0000 (10:58 -0600)]
mesa: var renaming, new assertion
Brian Paul [Wed, 26 Aug 2009 16:57:18 +0000 (10:57 -0600)]
mesa: additional instruction field size assertions
Brian Paul [Wed, 26 Aug 2009 18:01:23 +0000 (12:01 -0600)]
Merge branch 'mesa_7_5_branch'
Brian Paul [Wed, 26 Aug 2009 17:56:19 +0000 (11:56 -0600)]
progs/glsl: handle window resizes in texaaline.c
Brian Paul [Wed, 26 Aug 2009 17:55:15 +0000 (11:55 -0600)]
progs/glsl: add special Makefile rule for samplers_array
Brian Paul [Wed, 26 Aug 2009 17:53:25 +0000 (11:53 -0600)]
progs/glsl: change samplers.c to better test sampler/texture indexing
Now the left half is yellow and the right half is red, with the gradients
going in opposite directions.
Brian Paul [Wed, 26 Aug 2009 17:39:24 +0000 (11:39 -0600)]
glsl: fix bug in sampler array indexing
Need to add the 'offset' parameter when indexing the parameter array.
Before, if we were setting arrays of samplers, we were actually only
setting the 0th sampler's value.
Because of how progs/glsl/samplers.c is constructed, this wasn't showing
up as a failure in the samplers_array output.
Alex Deucher [Wed, 26 Aug 2009 17:33:06 +0000 (13:33 -0400)]
r600: fix two sided stencil
Alex Deucher [Wed, 26 Aug 2009 17:08:49 +0000 (13:08 -0400)]
r600: add missing radeon_cs_space_set_flush call
fixes crash in etracer reported by kdekorte on IRC
Zack Rusin [Wed, 26 Aug 2009 16:50:14 +0000 (12:50 -0400)]
st/xorg: create basic vertex shader
Zack Rusin [Wed, 26 Aug 2009 16:14:27 +0000 (12:14 -0400)]
st/xorg: create basic fragment shader
Alex Deucher [Wed, 26 Aug 2009 16:17:44 +0000 (12:17 -0400)]
r600: make reloc_chunk size dynamic
Alex Deucher [Wed, 26 Aug 2009 15:09:59 +0000 (11:09 -0400)]
r600: fix memory leak
Alex Deucher [Wed, 26 Aug 2009 14:53:30 +0000 (10:53 -0400)]
r300: r4xx and rs4xx also have lte discard regs
Jakob Bornecrantz [Wed, 26 Aug 2009 12:30:54 +0000 (14:30 +0200)]
st/dri: Add some debug code
Jakob Bornecrantz [Wed, 26 Aug 2009 12:27:50 +0000 (14:27 +0200)]
st/xorg: Temporary fix for none stencil visuals
Should be replaced with something looking at the proper
glx visual for the buffers.
Jakob Bornecrantz [Wed, 26 Aug 2009 11:45:31 +0000 (13:45 +0200)]
st/xorg: Find out correct type for depth stencil buffers
Jakob Bornecrantz [Wed, 26 Aug 2009 10:26:14 +0000 (12:26 +0200)]
st/dri: Redo config generation
Michel Dänzer [Wed, 26 Aug 2009 11:18:37 +0000 (13:18 +0200)]
st/xorg: Add support for dirty framebuffer region reporting.
Add a BlockHandler which flushes the context and reports the dirty region
gathered using the X server damage layer.
In the interim, with dirty region reporting only allocate textures for the
framebuffer and shared pixmaps (e.g. DRI2 buffers) and fall back to software
for other pixmaps. This will be improved in the future.
Cooper Yuan [Wed, 26 Aug 2009 08:21:10 +0000 (16:21 +0800)]
r600: Update vertex fetch shader if necessary
Ben Skeggs [Wed, 26 Aug 2009 06:17:37 +0000 (16:17 +1000)]
st/dri: make the GL_ARB_map_buffer_range entrypoints available
Dave Airlie [Wed, 26 Aug 2009 04:16:54 +0000 (14:16 +1000)]
radeon/r100/r200: actually init the OQ support properly
Dave Airlie [Wed, 26 Aug 2009 04:03:48 +0000 (14:03 +1000)]
radeon/r200: OQ support for r200 in theory.
this is an untested port of the r100 OQ code
Dave Airlie [Wed, 26 Aug 2009 03:56:45 +0000 (13:56 +1000)]
radeon: add r100 OQ support with kms.
This adds OQ support for the r100 chipsets, it requires
KMS unless someone wants to make a kernel patch to add support
for OQ regs.
Brian Paul [Tue, 25 Aug 2009 23:45:50 +0000 (17:45 -0600)]
progs/glsl: call ValidateShaderProgram()
Brian Paul [Tue, 25 Aug 2009 23:43:54 +0000 (17:43 -0600)]
mesa: validate shader before drawing (for debugging, disabled)
Brian Paul [Tue, 25 Aug 2009 23:43:16 +0000 (17:43 -0600)]
glsl: update a texture/sampler comment
Brian Paul [Tue, 25 Aug 2009 23:42:47 +0000 (17:42 -0600)]
glsl: implement shader sampler validation
Shader validation should fail if there are two samplers of different types
which reference the same texture unit. For example, if a cubemap sampler
and a 2D sampler both reference texture unit 0, that's invalid.
Brian Paul [Tue, 25 Aug 2009 23:37:38 +0000 (17:37 -0600)]
mesa: use gl_texture_index type for gl_program::SamplerTargets
Brian Paul [Tue, 25 Aug 2009 23:36:28 +0000 (17:36 -0600)]
progs/util: added ValidateShaderProgram() to shaderutil.c
Brian Paul [Tue, 25 Aug 2009 22:12:46 +0000 (16:12 -0600)]
i965: add some texture unit/target assertions
Brian Paul [Tue, 25 Aug 2009 22:11:39 +0000 (16:11 -0600)]
mesa: print some program fields in binary too
Pauli Nieminen [Tue, 25 Aug 2009 22:43:27 +0000 (01:43 +0300)]
r200: Add scissor to state atom list.
Scissors are jsut one of states that we have to emit so it should be in state list
Pauli Nieminen [Tue, 25 Aug 2009 18:46:32 +0000 (21:46 +0300)]
radeon/r600: Fix remaining warnings when building 64 bit binary.
Pauli Nieminen [Tue, 25 Aug 2009 18:39:39 +0000 (21:39 +0300)]
r200: Addd missing parameter to debug output.
Pauli Nieminen [Tue, 25 Aug 2009 18:36:19 +0000 (21:36 +0300)]
r200: Fix commit size prediction.
Scissor are emited for every primitive so fix that in prediction.
Zack Rusin [Tue, 25 Aug 2009 18:22:26 +0000 (14:22 -0400)]
xorg: insert shaders into the cache