Jakob Bornecrantz [Thu, 14 Jan 2010 22:31:04 +0000 (22:31 +0000)]
Merge branch 'mesa_7_7_branch'
Conflicts:
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/gallium/auxiliary/util/Makefile
src/gallium/drivers/r300/r300_state_derived.c
Michal Krol [Thu, 14 Jan 2010 17:55:52 +0000 (18:55 +0100)]
gallium: Document drawing commands.
Michal Krol [Thu, 14 Jan 2010 17:11:41 +0000 (18:11 +0100)]
Merge branch 'instanced-arrays'
Conflicts:
src/gallium/drivers/softpipe/sp_draw_arrays.c
Corbin Simpson [Thu, 14 Jan 2010 16:25:46 +0000 (08:25 -0800)]
r300g: Cleanup from last few commits.
Strangely enough, the code solidified pretty quickly.
Łukasz Krotowski [Thu, 14 Jan 2010 09:05:02 +0000 (10:05 +0100)]
r300g: Really destroy translated buffer at the end.
Note that indexSize is changed by r300_translate_elts(). Also make sure
it's destroyed on errors.
Brian Paul [Thu, 14 Jan 2010 16:38:47 +0000 (09:38 -0700)]
progs/trivial: test user clip plane in tri-point-line-clipped.c
Brian Paul [Thu, 14 Jan 2010 16:21:18 +0000 (09:21 -0700)]
progs/trivial: test glPolygonMode(POINT/LINE) with frustum clipping
Note whether the new verts introduced by clipping show up as points
and lines along the edge of the window...
Brian Paul [Thu, 14 Jan 2010 01:24:15 +0000 (18:24 -0700)]
gallium/util: silence warning about array initializers
Chia-I Wu [Thu, 14 Jan 2010 09:29:12 +0000 (17:29 +0800)]
egl_g3d: Check if the creation of pipe or st context fails.
It should not return an incomplete EGLContext to the users.
Chia-I Wu [Tue, 12 Jan 2010 10:08:02 +0000 (18:08 +0800)]
st/egl_g3d: Use a sequence number to decide if validation is required.
It is not safe to assume that the native surface has not changed since
the last validation by checking the geometry alone. Add a sequence
number to "validate" callback for that purpose. This is inspired by
Luca Barbieri's work.
Vinson Lee [Thu, 14 Jan 2010 07:28:00 +0000 (23:28 -0800)]
st/mesa: Remove unnecessary header from st_program.c.
Vinson Lee [Thu, 14 Jan 2010 07:16:05 +0000 (23:16 -0800)]
st/mesa: Remove unnecessary header from st_texture.c.
Vinson Lee [Thu, 14 Jan 2010 07:01:03 +0000 (23:01 -0800)]
swrast: Remove unnecessary header from s_accum.c.
Vinson Lee [Thu, 14 Jan 2010 06:58:07 +0000 (22:58 -0800)]
swrast: Remove unnecessary header from s_atifragshader.c.
Vinson Lee [Thu, 14 Jan 2010 06:45:54 +0000 (22:45 -0800)]
swrast: Remove unnecessary header from s_bitmap.c.
Vinson Lee [Thu, 14 Jan 2010 06:43:16 +0000 (22:43 -0800)]
swrast: Remove unnecessary headers from s_copypix.c.
Vinson Lee [Thu, 14 Jan 2010 06:36:01 +0000 (22:36 -0800)]
swrast: Remove unnecessary header from s_depth.c.
Vinson Lee [Thu, 14 Jan 2010 06:30:04 +0000 (22:30 -0800)]
swrast: Remove unnecessary header from s_drawpix.c.
Vinson Lee [Thu, 14 Jan 2010 06:20:44 +0000 (22:20 -0800)]
swrast: Remove unnecessary header from s_feedback.c.
Corbin Simpson [Thu, 14 Jan 2010 04:46:53 +0000 (20:46 -0800)]
gallium/docs: Random things sitting around in my stash.
Corbin Simpson [Thu, 14 Jan 2010 04:44:49 +0000 (20:44 -0800)]
r300g: Use indices to translate index buffers of ubytes.
progs/redbook/aapoly, among others, works fine now.
Corbin Simpson [Thu, 14 Jan 2010 02:37:17 +0000 (18:37 -0800)]
radeong: Change DRI driver name to radeong.
Corbin Simpson [Thu, 14 Jan 2010 02:36:54 +0000 (18:36 -0800)]
r300g: Disable immediate mode rendering for now.
Will re-enable when the bugs are ironed out.
Brian Paul [Wed, 13 Jan 2010 23:55:54 +0000 (16:55 -0700)]
gallium/draw: s/clipper/clip_stage/ to be consistant with other stages
Brian Paul [Wed, 13 Jan 2010 23:54:00 +0000 (16:54 -0700)]
gallium/draw: whitespace and comments
Brian Paul [Wed, 13 Jan 2010 23:48:57 +0000 (16:48 -0700)]
gallium/draw: remove always-true conditional
Brian Paul [Wed, 13 Jan 2010 23:46:53 +0000 (16:46 -0700)]
gallium: remove forward struct decl
Other struct types (like pipe_texture) are referenced before they're
defined so no reason to special-case this one.
Jesse Barnes [Thu, 14 Jan 2010 00:01:51 +0000 (19:01 -0500)]
DRI2: don't send DRI2 requests the server doesn't know about
At init time, NULL out the hooks that send the server new requests.
DRI2 never supported these extensions, so this preserves old behavior on
old servers with new Mesa.
Jesse Barnes [Wed, 13 Jan 2010 23:42:55 +0000 (18:42 -0500)]
GLX/DRI2: pass X drawable ID instead
These happened to be the same in my testing since I was using apps that
depend on the GLX 1.2 behavior where X and GLX drawables are
interchangeable.
Jesse Barnes [Wed, 13 Jan 2010 20:48:14 +0000 (15:48 -0500)]
GLX: use glproto CFLAGS etc. when building
Roll the glproto check into the dri2proto and libdrm check so we get the
proper CFLAGS and LDFLAGS for the package.
Thomas Hellstrom [Wed, 13 Jan 2010 16:40:41 +0000 (17:40 +0100)]
st/dri: Make sure we always request a fake front.
This should be the correct, but sub-optimal way to handle things on
pre-1.7 servers. For servers that automatically adds a fake front
we should never request the fake front and handle the reply differently.
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
José Fonseca [Wed, 13 Jan 2010 13:40:09 +0000 (13:40 +0000)]
svga: Fix compile_vs error code.
It could erroneously return PIPE_OK in some circumstances.
Make compile_fs code identical.
Michal Krol [Wed, 13 Jan 2010 10:13:00 +0000 (11:13 +0100)]
svga: Fix call to translate::run().
Corbin Simpson [Wed, 13 Jan 2010 09:41:31 +0000 (01:41 -0800)]
r300g: Account for CS space used per atom.
Oh yeah, those atoms are startin' to pay off. The main obstacle now
for OA playability is the absurdly low default mouse sensitivity, IMO.
Not totally smooth yet, but getting there.
Corbin Simpson [Wed, 13 Jan 2010 09:07:49 +0000 (01:07 -0800)]
r300g: Two dirty state optimizations.
Corbin Simpson [Wed, 13 Jan 2010 08:57:03 +0000 (00:57 -0800)]
r300g: DCE in emit.
Vinson Lee [Wed, 13 Jan 2010 07:54:15 +0000 (23:54 -0800)]
swrast: Remove unnecessary header from s_fragprog.c.
Corbin Simpson [Wed, 13 Jan 2010 06:22:22 +0000 (22:22 -0800)]
r300g: Lower the immd mode threshold.
Vinson Lee [Wed, 13 Jan 2010 05:59:58 +0000 (21:59 -0800)]
swrast: Remove unnecessary header in s_lines.c.
Corbin Simpson [Wed, 13 Jan 2010 05:52:00 +0000 (21:52 -0800)]
r300g: Fix is_r400 status for rs4xx and rc4xx.
As suggested by agd5f.
Vinson Lee [Wed, 13 Jan 2010 05:51:19 +0000 (21:51 -0800)]
swrast: Remove unnecessary header from s_points.c.
Corbin Simpson [Wed, 13 Jan 2010 05:50:14 +0000 (21:50 -0800)]
r300g: Switch to immediate mode for tiny renders.
Useful for e.g. blitter.
Vinson Lee [Wed, 13 Jan 2010 05:41:09 +0000 (21:41 -0800)]
swrast: Remove unnecessary header from s_readpix.c.
Vinson Lee [Wed, 13 Jan 2010 04:36:33 +0000 (20:36 -0800)]
swrast: Remove unnecessary header from s_texcombine.c.
Vinson Lee [Wed, 13 Jan 2010 04:14:36 +0000 (20:14 -0800)]
tnl: Remove unnecessary header from t_context.c.
Vinson Lee [Wed, 13 Jan 2010 04:02:44 +0000 (20:02 -0800)]
tnl: Remove unnecessary headers from t_draw.c.
Vinson Lee [Wed, 13 Jan 2010 03:55:24 +0000 (19:55 -0800)]
tnl: Remove unnecessary header from t_pipeline.c.
Vinson Lee [Wed, 13 Jan 2010 03:49:19 +0000 (19:49 -0800)]
tnl: Remove unnecessary header from t_rasterpos.c.
Vinson Lee [Wed, 13 Jan 2010 03:45:25 +0000 (19:45 -0800)]
tnl: Remove unnecessary header from t_vb_program.c.
Marek Olšák [Fri, 8 Jan 2010 13:09:57 +0000 (14:09 +0100)]
r300g: emit blend LTE/GTE thresholds on >=RV350
As per classic r300.
Marek Olšák [Sun, 10 Jan 2010 06:09:56 +0000 (07:09 +0100)]
r300g: update the texture initialization so that it respects tiling
This is still work-in-progress and tiling is not enabled by default.
Marek Olšák [Sun, 10 Jan 2010 01:29:02 +0000 (02:29 +0100)]
r300g: add emission of texture tiling bits
Marek Olšák [Fri, 8 Jan 2010 13:08:02 +0000 (14:08 +0100)]
r300g: add is_r400 flag
r4xx has some additional fragment shader registers compared to r3xx.
Marek Olšák [Sat, 9 Jan 2010 18:23:21 +0000 (19:23 +0100)]
r300g: silence a warning
Marek Olšák [Tue, 12 Jan 2010 22:55:37 +0000 (23:55 +0100)]
r300g: only emit scissor when needed
Reverting some bits from
ce1c493ff8fad4b62e2b66f06636ac6560a6e0ad.
Given the latest fixes, it's not needed to always emit scissor, really.
Marek Olšák [Tue, 12 Jan 2010 22:23:05 +0000 (23:23 +0100)]
Revert "r300g: Placate kernel checker by explicitly disabling depth test."
This reverts commit
e920ee23b32f6031a7b8527b540566e7ada6af8a.
Assuming the FB state is not dirty and the DSA state is, then the depth test
will be re-enabled, making the kernel checker angry. Reverting the commit
fixes piglit/glsl-bug-22603.
Marek Olšák [Tue, 12 Jan 2010 20:50:10 +0000 (21:50 +0100)]
r300g: mark all states as dirty after flush
It fixes almost all regressions introduced lately.
Vinson Lee [Wed, 13 Jan 2010 01:07:24 +0000 (17:07 -0800)]
vbo: Remove unnecessary headers from vbo_exec.c.
Vinson Lee [Wed, 13 Jan 2010 00:55:36 +0000 (16:55 -0800)]
vbo: Remove unnecessary header from vbo_exec_array.c.
Vinson Lee [Wed, 13 Jan 2010 00:37:30 +0000 (16:37 -0800)]
vbo: Remove unnecessary header from vbo_exec_draw.c.
Michal Krol [Tue, 12 Jan 2010 17:51:27 +0000 (18:51 +0100)]
gallium: draw_arrays/elements_instanced() are of type void.
Marcin Slusarz [Tue, 12 Jan 2010 16:39:23 +0000 (17:39 +0100)]
nv50: fix 2 off by one memory leaks (nv50_miptree_level->image_offset)
Marcin Slusarz [Tue, 12 Jan 2010 16:38:52 +0000 (17:38 +0100)]
nv50: fix memory leak on nv50_pc free
José Fonseca [Tue, 12 Jan 2010 12:15:24 +0000 (12:15 +0000)]
gallium: Rename ALIGN_STACK -> PIPE_ALIGN_STACK for consistency.
José Fonseca [Tue, 12 Jan 2010 11:47:37 +0000 (11:47 +0000)]
gallium: Simplify PIPE_ALIGN_VAR.
gcc allows pre-fix variable attributes.
Suggested by Ian Romanick.
José Fonseca [Sun, 10 Jan 2010 12:58:11 +0000 (12:58 +0000)]
gallium: Generalize the alignment macros to other compilers and any alignment.
Corbin Simpson [Tue, 12 Jan 2010 10:09:07 +0000 (02:09 -0800)]
r300g: Always emit scissors.
Save some code, improve FPS, and fix piglit tests. Everybody wins.
Chia-I Wu [Tue, 12 Jan 2010 09:55:53 +0000 (17:55 +0800)]
st/egl_g3d: Get the stapi from the driver.
egl_g3d_get_st was called because the driver argument was not given
before. It can be fixed now.
Chia-I Wu [Tue, 12 Jan 2010 09:44:03 +0000 (17:44 +0800)]
egl: Add _EGLDriver as the first argument to GetProcAddress.
The rest of the driver API has it as the first argument. It should be
there so that a driver has access to itself.
Chia-I Wu [Tue, 12 Jan 2010 09:49:43 +0000 (17:49 +0800)]
egl_xdri: Fix build breakage.
driScreen->swapBuffers takes 3 more arguments since
daf7fe69f7bd0caa955d30b43fc35b7ce0069b6b.
Vinson Lee [Tue, 12 Jan 2010 08:50:05 +0000 (00:50 -0800)]
vbo: Remove unnecessary headers from vbo_save.c.
Vinson Lee [Tue, 12 Jan 2010 07:53:13 +0000 (23:53 -0800)]
vbo: Remove unnecessary header from vbo_save_loopback.c.
Vinson Lee [Tue, 12 Jan 2010 06:46:30 +0000 (22:46 -0800)]
vbo: Remove unnecessary header from vbo_split_copy.c.
Chia-I Wu [Tue, 12 Jan 2010 06:01:56 +0000 (14:01 +0800)]
st/egl_g3d: Improve comments to the native display interface.
Document the future of __GLcontextModes. Improve the description of
surface validation and native_flush_frontbuffer.
Vinson Lee [Tue, 12 Jan 2010 05:04:16 +0000 (21:04 -0800)]
x86: Remove unnecessary header from x86_xform.c.
Corbin Simpson [Tue, 12 Jan 2010 04:52:19 +0000 (20:52 -0800)]
r300g: Add back dirty state check.
From
07ea7e6c80. This is the only questionable part of that commit,
AFAICT...
Corbin Simpson [Tue, 12 Jan 2010 04:41:57 +0000 (20:41 -0800)]
r300g: Placate kernel checker by explicitly disabling depth test.
This probably should disable stencil, too, if the kernel cares enough.
Note: When atomized, framebuffer setup should go towards the end anyway,
but it *must* follow these test setups anyway.
Corbin Simpson [Tue, 12 Jan 2010 04:27:54 +0000 (20:27 -0800)]
r300g: Avoid segfault on binding null RS state.
Brian Paul [Tue, 12 Jan 2010 04:17:49 +0000 (21:17 -0700)]
st/mesa: removed unused var
Brian Paul [Tue, 12 Jan 2010 02:04:11 +0000 (19:04 -0700)]
st/mesa: comments, whitespace
Vinson Lee [Tue, 12 Jan 2010 04:24:57 +0000 (20:24 -0800)]
progs/xdemos: Remove unnecessary header from corender.c.
Vinson Lee [Tue, 12 Jan 2010 04:21:50 +0000 (20:21 -0800)]
progs/trivial: Remove unnecessary headers from tri-fbo-tex.c.
Vinson Lee [Tue, 12 Jan 2010 04:15:59 +0000 (20:15 -0800)]
progs/trivial: Remove unnecessary header from tri-fbo-tex-mip.c.
Vinson Lee [Tue, 12 Jan 2010 03:57:46 +0000 (19:57 -0800)]
progs/tests: Remove duplicate included header in vparray.c.
Vinson Lee [Tue, 12 Jan 2010 03:56:04 +0000 (19:56 -0800)]
progs/tests: Add newline to end of printf in vparray.c.
Vinson Lee [Tue, 12 Jan 2010 03:52:22 +0000 (19:52 -0800)]
progs/redbook: Remove unnecessary header from aapoly.c.
Vinson Lee [Tue, 12 Jan 2010 03:42:55 +0000 (19:42 -0800)]
progs/glsl: Remove duplicate included header from shtest.c.
Vinson Lee [Tue, 12 Jan 2010 03:29:26 +0000 (19:29 -0800)]
progs/demos: Remove unnecessary header from morph3d.c.
Brian Paul [Tue, 12 Jan 2010 03:18:50 +0000 (20:18 -0700)]
Revert "util: Build u_bitmask.o when using make."
This reverts commit
01eff0e6d23f90650de7c563f74a1aec3de112a6.
u_bitmask.c was already in the C_SOURCES list.
Vinson Lee [Tue, 12 Jan 2010 03:15:54 +0000 (19:15 -0800)]
progs/tests: Silence fprintf format warning.
Chia-I Wu [Sun, 10 Jan 2010 15:08:39 +0000 (23:08 +0800)]
winsys/drm: Use egl_g3d to build EGL drivers.
The new EGL drivers use egl_g3d and respect EGL_DISPLAYS. They are
named after the display supported and the DRM name.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Sun, 3 Jan 2010 11:24:04 +0000 (19:24 +0800)]
st/egl_g3d: Add support for KMS native display.
The KMS native display implements the modeset interface using DRM
modesetting.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 4 Jan 2010 04:01:38 +0000 (12:01 +0800)]
st/egl_g3d: Add support for EGL_MESA_screen_surface.
This is implemented through the modeset interface.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Sun, 3 Jan 2010 13:27:22 +0000 (21:27 +0800)]
st/egl_g3d: Update the native display interface for modesetting.
The new interface can be used to implement EGL_MESA_screen_surface.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Sun, 10 Jan 2010 17:23:01 +0000 (01:23 +0800)]
st/egl_g3d: New EGL state tracker that uses Gallium.
This new (intermediate) EGL state tracker is the base work for EGL
drivers that uses Gallium. It makes it easier to support new window
systems.
Currently, there is support only for X11. This driver supports multiple
APIs (OpenVG, OpenGL, ...) and supports hardware acceleration through
winsys/drm.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Vinson Lee [Tue, 12 Jan 2010 03:03:18 +0000 (19:03 -0800)]
progs/demos: Remove unnecessary header from isosurf.c.
Chia-I Wu [Sat, 2 Jan 2010 14:06:42 +0000 (22:06 +0800)]
winsys/drm: Add name field to drm_api.
The name can be used for driver selection. It has the same name as the
DRI driver does right now.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 4 Jan 2010 04:56:04 +0000 (12:56 +0800)]
egl: EGL_SCREEN_BIT_MESA is a valid bit.
Update _eglValidateConfig so that it passes the test.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 4 Jan 2010 05:32:50 +0000 (13:32 +0800)]
progs/egl: Fix screen surface demos.
Set the screen surface size to the mode size, as the spec requires the
screen surface size to be larger than the mode size. Besides, bind the
API to OpenGL as they are written in it.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Sat, 2 Jan 2010 13:57:16 +0000 (21:57 +0800)]
progs/egl: glGenTextures is called too early in xeglbindtex.
It should be called after eglMakeCurrent.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>