Ben Skeggs [Mon, 10 Dec 2007 05:47:47 +0000 (16:47 +1100)]
nv40: more flexible vbo format translation
Ben Skeggs [Mon, 10 Dec 2007 05:30:24 +0000 (16:30 +1100)]
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
Brian [Mon, 10 Dec 2007 04:44:26 +0000 (21:44 -0700)]
use quadColor local var
Ben Skeggs [Mon, 10 Dec 2007 04:16:05 +0000 (15:16 +1100)]
nouveau: fix elusive dma bug
In some situations WAIT_RING would get called while the GPU was processing
data from outside the "master" ring, which caused dma.free to be updated
incorrectly and much fun was had.
WAIT_RING will now wait until it reads GET values from within the main ring
buffer before calculating free space.
Brian [Mon, 10 Dec 2007 04:10:39 +0000 (21:10 -0700)]
Fix looping for multi-color buffer writing.
Brian [Mon, 10 Dec 2007 03:45:20 +0000 (20:45 -0700)]
added null ptr check in draw_destroy() for rasterizer stage
Ben Skeggs [Mon, 10 Dec 2007 02:19:47 +0000 (13:19 +1100)]
nouveau: add callbacks for signalled fences
Ben Skeggs [Mon, 10 Dec 2007 01:13:00 +0000 (12:13 +1100)]
nouveau: fix build
Ben Skeggs [Mon, 10 Dec 2007 01:06:59 +0000 (12:06 +1100)]
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
Conflicts:
src/mesa/drivers/dri/intel_winsys/intel_winsys_pipe.c
src/mesa/pipe/Makefile
src/mesa/pipe/draw/draw_vertex_fetch.c
src/mesa/pipe/i915simple/i915_texture.c
src/mesa/pipe/softpipe/sp_texture.c
src/mesa/pipe/xlib/xm_winsys.c
src/mesa/state_tracker/st_cb_fbo.c
José Fonseca [Sun, 9 Dec 2007 18:26:26 +0000 (18:26 +0000)]
Adapt for winsys interface changes.
Ben Skeggs [Sun, 9 Dec 2007 15:07:47 +0000 (02:07 +1100)]
nouveau: give resources a start property
José Fonseca [Wed, 5 Dec 2007 15:28:39 +0000 (15:28 +0000)]
gallium: use SSE by default
Michal [Wed, 28 Nov 2007 18:10:31 +0000 (18:10 +0000)]
Allow tgsi_dump print-out to stderr or a string buffer.
Handle source register complement modifier in exec and dump.
José Fonseca [Sun, 25 Nov 2007 20:23:10 +0000 (20:23 +0000)]
gallium: Remove buffer_unfence and buffer_finish.
These interfaces have been deemed useless by Keith.
Keith Whitwell [Sun, 25 Nov 2007 15:06:54 +0000 (15:06 +0000)]
gallium: more trivial tests
José Fonseca [Fri, 23 Nov 2007 17:22:54 +0000 (17:22 +0000)]
gallium: Reusable pipe buffer library.
This is an optional library that winsys drivers can use to simplify memory
management, and help meet the winsys interface requirements.
Keith Whitwell [Fri, 23 Nov 2007 14:50:26 +0000 (14:50 +0000)]
gallium: fix ordering of arguments to pack_ui32_float4
Keith Whitwell [Fri, 23 Nov 2007 14:49:54 +0000 (14:49 +0000)]
gallium: remove unneeded depth buffer
Keith Whitwell [Fri, 23 Nov 2007 14:44:54 +0000 (14:44 +0000)]
gallium: initialized draw element buffer to NULL
Keith Whitwell [Fri, 23 Nov 2007 12:03:45 +0000 (12:03 +0000)]
gallium: add support for aliased 4ub format
Keith Whitwell [Fri, 23 Nov 2007 12:02:50 +0000 (12:02 +0000)]
gallium: support the full range of possible vertex types
Michal [Fri, 23 Nov 2007 11:30:51 +0000 (11:30 +0000)]
gallium: add draw_stage::destroy().
José Fonseca [Fri, 23 Nov 2007 10:35:53 +0000 (10:35 +0000)]
gallium: Comment on winsys's fence functions. Fix comment layout for doxygen.
keithw [Wed, 21 Nov 2007 17:12:39 +0000 (17:12 +0000)]
temporary _mesa_printf symbol
keithw [Wed, 21 Nov 2007 11:04:20 +0000 (11:04 +0000)]
[pipe]: add Offset() util macro
José Fonseca [Tue, 20 Nov 2007 14:27:52 +0000 (14:27 +0000)]
Document return types.
keithw [Mon, 19 Nov 2007 20:05:38 +0000 (20:05 +0000)]
add fence interfaces and buffer create flags to pipe_winsys
Ben Skeggs [Sun, 9 Dec 2007 11:32:09 +0000 (22:32 +1100)]
Merge branch 'nouveau-gallium-0.1' into darktama-gallium-0.1
Ben Skeggs [Sun, 9 Dec 2007 11:25:35 +0000 (22:25 +1100)]
nouveau: downgrade hacked syncs to hacked flushes
Unfortunately we still need to keep the forced flushes as mesa's vbo path
is still insane. But, at least this is a little less brutal. The bo code will
detect when it needs to do a sync.
Ben Skeggs [Sun, 9 Dec 2007 10:44:46 +0000 (21:44 +1100)]
nouveau: relocs are per-pushbuf, not per-channel
Ben Skeggs [Sun, 9 Dec 2007 09:38:08 +0000 (20:38 +1100)]
nouveau: use "indirect" push buffers
Ben Skeggs [Sat, 8 Dec 2007 16:22:14 +0000 (03:22 +1100)]
nouveau: adapt to gallium interface changes
Brian [Sat, 8 Dec 2007 04:21:58 +0000 (21:21 -0700)]
Try to reduce the frequency of calls to pipe->get_tex_surface()
Save the surface info in the tile cache and re-use whenever possible.
Brian [Sat, 8 Dec 2007 03:58:01 +0000 (20:58 -0700)]
shorten loops over color bufs
Brian [Sat, 8 Dec 2007 03:31:26 +0000 (20:31 -0700)]
code re-org in softpipe_clear()
Brian [Sat, 8 Dec 2007 03:24:24 +0000 (20:24 -0700)]
clean-ups
Brian [Sat, 8 Dec 2007 03:13:10 +0000 (20:13 -0700)]
Tile clearing optimizations.
Clear using int values rather than floats when possible. Better performance now.
Brian [Sat, 8 Dec 2007 00:26:06 +0000 (17:26 -0700)]
Disable, remove tnl module from the Gallium build since no longer used.
Brian [Sat, 8 Dec 2007 00:24:42 +0000 (17:24 -0700)]
New vbo_set_draw_func() to keep vbo context opaque to state tracker and tnl module.
Brian [Sat, 8 Dec 2007 00:14:02 +0000 (17:14 -0700)]
Disable swrast, swrast_setup and driverfuncs in the build.
The gallium/state tracker no longer uses them and this speeds up the build a bit.
Brian [Sat, 8 Dec 2007 00:11:30 +0000 (17:11 -0700)]
Move _mesa_init_glsl_driver_functions() into shader_api.c
This allows making a bunch of functions static, and removes a state
tracker dependency on driverfuncs.c
Brian [Fri, 7 Dec 2007 23:46:30 +0000 (16:46 -0700)]
Define PIPE_FORMAT_ tokens as an enum set, rather than #defines.
This makes debugging a _lot_ easier.
In gdb, "print format" used to display
613570600, now you see PIPE_FORMAT_A8R8G8B8_UNORM.
Brian [Fri, 7 Dec 2007 23:22:39 +0000 (16:22 -0700)]
include tgsi_dump.h
Brian [Fri, 7 Dec 2007 23:15:14 +0000 (16:15 -0700)]
Replace "duplicate" formats
Brian [Fri, 7 Dec 2007 23:01:31 +0000 (16:01 -0700)]
Get rid of "duplicate" formats.
For example, replace PIPE_FORMAT_U_A8_R8_G8_B8 with PIPE_FORMAT_A8R8G8B8_UNORM
Brian [Fri, 7 Dec 2007 22:47:39 +0000 (15:47 -0700)]
Enable the tile clear "optimization"
Not really faster yet because we're using the float-valued put/get_tile()
functions so we're doing quite a bit of float/int conversion. That can
be fixed though...
Brian [Fri, 7 Dec 2007 22:46:10 +0000 (15:46 -0700)]
Make sp_tile_cache_flush_clear() static.
Also, misc clean-ups, comments.
Brian [Fri, 7 Dec 2007 22:44:58 +0000 (15:44 -0700)]
Convert the clearValue back to floats for sp_tile_cache_clear()
It might be nice if sp->clear() took the color/value as floats...
Brian [Fri, 7 Dec 2007 22:32:13 +0000 (15:32 -0700)]
Some tile cache improvements, clean-ups.
Code for optimized clears (per-tile flag indicating clear status) in place
but not enabled yet.
Brian [Fri, 7 Dec 2007 20:19:00 +0000 (13:19 -0700)]
don't dereference pt after realloc - fixes valgrind error
Brian [Fri, 7 Dec 2007 20:08:28 +0000 (13:08 -0700)]
add some whitespace
Brian [Fri, 7 Dec 2007 17:21:56 +0000 (10:21 -0700)]
Move struct softpipe_texture definition into sp_texture.h
Also, added softpipe_texture() cast wrapper.
Brian [Fri, 7 Dec 2007 17:18:34 +0000 (10:18 -0700)]
minor code movement
Brian [Fri, 7 Dec 2007 15:28:59 +0000 (08:28 -0700)]
Add PIPE_FORMAT_U_B8_G8_R8_A8 in default_rgba_format().
Also, rewrite/simplify default_rgba_format() and default_depth_format().
Brian [Fri, 7 Dec 2007 15:24:56 +0000 (08:24 -0700)]
byteswapping fixes in choose_pixel_format()
Brian [Fri, 7 Dec 2007 15:24:33 +0000 (08:24 -0700)]
remove stray ;
Brian [Fri, 7 Dec 2007 14:58:31 +0000 (07:58 -0700)]
Remove obsolete xlib driver files
Brian [Fri, 7 Dec 2007 14:57:54 +0000 (07:57 -0700)]
Overhaul the Xlib winsys layer.
Front/back color buffers are now allocated with ordinary malloc() via the
winsys buffer functions.
To display surfaces in SwapBuffers() or flush_frontbuffer() we create an
XImage that wraps the surface, then use XPutImage to copy to the window.
Shared memory transport disabled for now.
Brian [Fri, 7 Dec 2007 14:53:21 +0000 (07:53 -0700)]
added ST_SURFACE_DEPTH
Brian [Fri, 7 Dec 2007 14:53:06 +0000 (07:53 -0700)]
move surface pitch calculation so it always gets updated
Brian [Fri, 7 Dec 2007 14:52:35 +0000 (07:52 -0700)]
fix void pointer arithmetic warnings
Brian [Fri, 7 Dec 2007 14:48:33 +0000 (07:48 -0700)]
silence void ptr arithmetic warning
Michel Dänzer [Fri, 7 Dec 2007 11:30:35 +0000 (12:30 +0100)]
Eliminate struct pipe_region.
Directly use struct pipe_buffer_handle for storage and struct pipe_surface for
(un)mapping.
Michel Dänzer [Thu, 6 Dec 2007 10:30:34 +0000 (11:30 +0100)]
Remove remnants of 'intel' from active state tracker code.
Michel Dänzer [Thu, 6 Dec 2007 10:25:40 +0000 (11:25 +0100)]
st_mesa_format_to_pipe_format: Handle MESA_FORMAT_ARGB4444.
Michel Dänzer [Fri, 30 Nov 2007 19:48:03 +0000 (20:48 +0100)]
Hide texture layout details from the state tracker.
pipe->get_tex_surface() has to be used for access to texture image data.
Brian [Wed, 5 Dec 2007 21:57:19 +0000 (14:57 -0700)]
Add dependency checking for Cell driver sources.
Brian [Wed, 5 Dec 2007 21:54:29 +0000 (14:54 -0700)]
silence warning
Brian [Wed, 5 Dec 2007 21:54:19 +0000 (14:54 -0700)]
added PIPE_FORMAT_U_B8_G8_R8_A8 case in color_value()
Brian [Wed, 5 Dec 2007 21:53:19 +0000 (14:53 -0700)]
Fix endianness bug in _mesa_texstore_argb8888()
On big-endian, storing in _mesa_texformat_argb8888 format produced wrong results.
Also, clean-up nearby code to match.
Brian [Wed, 5 Dec 2007 21:51:08 +0000 (14:51 -0700)]
added B8G8R8A8 support and improved pixel format selection when doing remote display to X server of different endianness.
Brian [Wed, 5 Dec 2007 21:48:09 +0000 (14:48 -0700)]
added tile funcs for B8G8R8A8 format
Brian [Wed, 5 Dec 2007 21:47:27 +0000 (14:47 -0700)]
added B8G8R8A8 format
Brian [Sun, 2 Dec 2007 22:34:27 +0000 (15:34 -0700)]
added -fPIC
Brian [Sun, 2 Dec 2007 22:34:14 +0000 (15:34 -0700)]
don't build libglw
Brian [Sun, 2 Dec 2007 22:23:51 +0000 (15:23 -0700)]
Initial Cell driver infrastructure.
No real code yet. Just stand-ins and make/build infrastructure.
Brian [Sun, 2 Dec 2007 22:20:13 +0000 (15:20 -0700)]
glut doesn't need -lXt
José Fonseca [Sun, 2 Dec 2007 17:13:28 +0000 (17:13 +0000)]
Cover state tracker and winsys driver. Tweak parameters.
Michel Dänzer [Wed, 28 Nov 2007 18:04:54 +0000 (19:04 +0100)]
Move dimensions from struct pipe_region to struct pipe_surface.
Brian [Sat, 8 Dec 2007 04:21:58 +0000 (21:21 -0700)]
Try to reduce the frequency of calls to pipe->get_tex_surface()
Save the surface info in the tile cache and re-use whenever possible.
Brian [Sat, 8 Dec 2007 03:58:01 +0000 (20:58 -0700)]
shorten loops over color bufs
Brian [Sat, 8 Dec 2007 03:31:26 +0000 (20:31 -0700)]
code re-org in softpipe_clear()
Brian [Sat, 8 Dec 2007 03:24:24 +0000 (20:24 -0700)]
clean-ups
Brian [Sat, 8 Dec 2007 03:13:10 +0000 (20:13 -0700)]
Tile clearing optimizations.
Clear using int values rather than floats when possible. Better performance now.
Brian [Sat, 8 Dec 2007 00:26:06 +0000 (17:26 -0700)]
Disable, remove tnl module from the Gallium build since no longer used.
Brian [Sat, 8 Dec 2007 00:24:42 +0000 (17:24 -0700)]
New vbo_set_draw_func() to keep vbo context opaque to state tracker and tnl module.
Brian [Sat, 8 Dec 2007 00:14:02 +0000 (17:14 -0700)]
Disable swrast, swrast_setup and driverfuncs in the build.
The gallium/state tracker no longer uses them and this speeds up the build a bit.
Brian [Sat, 8 Dec 2007 00:11:30 +0000 (17:11 -0700)]
Move _mesa_init_glsl_driver_functions() into shader_api.c
This allows making a bunch of functions static, and removes a state
tracker dependency on driverfuncs.c
Brian [Fri, 7 Dec 2007 23:46:30 +0000 (16:46 -0700)]
Define PIPE_FORMAT_ tokens as an enum set, rather than #defines.
This makes debugging a _lot_ easier.
In gdb, "print format" used to display
613570600, now you see PIPE_FORMAT_A8R8G8B8_UNORM.
Brian [Fri, 7 Dec 2007 23:22:39 +0000 (16:22 -0700)]
include tgsi_dump.h
Brian [Fri, 7 Dec 2007 23:15:14 +0000 (16:15 -0700)]
Replace "duplicate" formats
Brian [Fri, 7 Dec 2007 23:01:31 +0000 (16:01 -0700)]
Get rid of "duplicate" formats.
For example, replace PIPE_FORMAT_U_A8_R8_G8_B8 with PIPE_FORMAT_A8R8G8B8_UNORM
Brian [Fri, 7 Dec 2007 22:47:39 +0000 (15:47 -0700)]
Enable the tile clear "optimization"
Not really faster yet because we're using the float-valued put/get_tile()
functions so we're doing quite a bit of float/int conversion. That can
be fixed though...
Brian [Fri, 7 Dec 2007 22:46:10 +0000 (15:46 -0700)]
Make sp_tile_cache_flush_clear() static.
Also, misc clean-ups, comments.
Brian [Fri, 7 Dec 2007 22:44:58 +0000 (15:44 -0700)]
Convert the clearValue back to floats for sp_tile_cache_clear()
It might be nice if sp->clear() took the color/value as floats...
Brian [Fri, 7 Dec 2007 22:32:13 +0000 (15:32 -0700)]
Some tile cache improvements, clean-ups.
Code for optimized clears (per-tile flag indicating clear status) in place
but not enabled yet.
Brian [Fri, 7 Dec 2007 20:19:00 +0000 (13:19 -0700)]
don't dereference pt after realloc - fixes valgrind error
Brian [Fri, 7 Dec 2007 20:08:28 +0000 (13:08 -0700)]
add some whitespace
Brian [Fri, 7 Dec 2007 17:21:56 +0000 (10:21 -0700)]
Move struct softpipe_texture definition into sp_texture.h
Also, added softpipe_texture() cast wrapper.
Brian [Fri, 7 Dec 2007 17:18:34 +0000 (10:18 -0700)]
minor code movement