Commit graph

298 commits

Author SHA1 Message Date
Thomas Hellstrom
f5888d9ca5 Merge branch 'mesa_7_5_branch'
Conflicts:

	progs/util/extfuncs.h
2009-06-15 11:43:48 +02:00
Thomas Hellstrom
cbe5af766e gallium: Fix segfault and valgrind error introduced with commit 3f2e006b75
Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
2009-06-15 11:22:06 +02:00
José Fonseca
877061141a Merge branch 'mesa_7_5_branch' 2009-06-11 19:03:54 +01:00
José Fonseca
3f2e006b75 gallium: New pf_is_depth_and_stencil / pf_is_depth_or_stencil inlines. 2009-06-11 19:02:59 +01:00
José Fonseca
bf89ecb6c9 Merge branch 'mesa_7_5_branch'
Conflicts:
	src/mesa/state_tracker/st_cb_fbo.c
	src/mesa/state_tracker/st_framebuffer.c
2009-06-11 16:34:56 +01:00
José Fonseca
8bfbb7ec8b gallium: Shorthand functions for computing stride and sizes for a rect. 2009-06-10 15:31:12 +01:00
Brian Paul
aebc08b5cc gallium: updated PIPE_CAP_x comments 2009-06-10 08:12:19 -06:00
Jakob Bornecrantz
d4c578ae41 gallium: Make pipe thread say if it has condvars or not 2009-06-05 02:57:19 +01:00
Brian Paul
95b7771ea7 gallium: remove redundant cube face #defines 2009-05-05 10:13:11 -06:00
Thomas Hellstrom
a70c4f352e gallium: Add a dri1 api
that a driver needs to implement on top of the drm api to support dri1.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
2009-04-28 11:45:36 +02:00
Thomas Hellstrom
638261b353 gallium: Update the drm_api.
Make it possible to pass state-tracker-specific data to the
init_screen function, and even open the door for device-specific
state-tracker screen initialization.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
2009-04-28 11:25:56 +02:00
José Fonseca
86ed894e47 pipe: Get the p_atomic_dec_zero logic right this time. 2009-04-17 18:40:46 +01:00
Michel Dänzer
3b76072915 gallium: Fix PIPE_ATOMIC_GCC_INTRINSIC build. 2009-04-17 17:02:34 +02:00
José Fonseca
dbb90436f8 pipe: Fix InterlockedDecrement usage. 2009-04-17 15:01:38 +01:00
Keith Whitwell
687f331a1f gallium: simplify further the logic for selecting mutex implementation
Cleaner than the previous cleanup...
2009-04-17 11:02:07 +01:00
Keith Whitwell
db93dcecc8 gallium: add #warning to mutex-based atomic implementation
Some builds end up picking this up.
2009-04-17 11:02:07 +01:00
Thomas Hellstrom
9b75627fab gallium: Make sure we flush before some texture / buffer operations.
Also implement context member functions to optimize away those
flushes whenever possible.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
2009-04-15 17:16:58 +02:00
Brian Paul
88999de8b7 gallium: remove pipe_texture::compressed field
The format field encodes compressed vs. uncompressed already.  We can easily
check if a texture is compressed with pf_is_compressed(texture->format).
2009-04-10 08:05:10 -06:00
Brian Paul
92d3b2a4da gallium: comments for surface_copy(), surface_fill() in p_context.h 2009-04-09 18:40:24 -06:00
Brian Paul
7e0d4598fb gallium: change // comment to /* */ style 2009-04-09 16:10:43 -06:00
Brian Paul
985e71866a gallium: updated comments in p_screen.h 2009-04-09 16:03:50 -06:00
José Fonseca
7ea265888f gallium: Use "flags" consistently. 2009-04-09 21:26:15 +01:00
Michel Dänzer
eb168e26aa gallium: Clean up driver clear() interface.
Only allows clearing currently bound buffers, but colour and depth/stencil in
a single call.
2009-04-04 19:01:51 +02:00
José Fonseca
382306c573 gallium: Move pf_is_depth_stencil to p_format.h. 2009-03-31 12:29:13 +01:00
Michel Dänzer
d332f8b4ef gallium: Remove some little-used fields from struct pipe_surface. 2009-03-26 10:53:47 +01:00
Alan Coopersmith
ad11107206 Add #ifdefs needed to compile Gallium on Solaris with gcc or Sun cc
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-03-25 11:07:31 -07:00
Michel Dänzer
e9d156e9e4 gallium: Remove remnants of reference counting internals outside of p_refcnt.h. 2009-03-23 18:03:13 +01:00
Keith Whitwell
1bb60d25e0 gallium: remove remaining references to origin_lower_left 2009-03-21 10:55:45 +00:00
José Fonseca
48f6e75489 gallium: Explain what happens if buffer_flush_mapped_range isn't called. 2009-03-20 18:34:24 +00:00
Keith Whitwell
33c1bec73b pipe/atomic: dont use ms interlock calls from gcc 2009-03-18 13:27:53 +00:00
Keith Whitwell
eddfad3955 pipe/atomic: clean up #ifdef maze 2009-03-18 13:04:43 +00:00
Michal Krol
c337bafeb9 gallium: Use _new' name, new' is a reserved keyword in C++. 2009-03-17 10:56:00 +01:00
Michal Krol
1e23dac869 gallium: Provide unprotected atomic implementation for display and miniport interfaces. 2009-03-17 10:54:08 +01:00
Michal Krol
c97b671d64 gallium: Implement atomic for MSVC on x86. 2009-03-16 13:42:22 +01:00
Michal Krol
a7d42e11b4 gallium: Implement atomic interface for windows user mode subsystem. 2009-03-16 13:15:50 +01:00
Michal Krol
ed7bb2c196 gallium: Use macro parameter names consistently. 2009-03-16 12:39:07 +01:00
Michal Krol
bf6ed0b962 gallium: pipe_mutex_init() is of type void.
Both the windows and fallback versions are void already.
2009-03-16 12:36:22 +01:00
Michal Krol
13dad5294b gallium: Include p_compiler.h for integer types. 2009-03-16 12:27:47 +01:00
Thomas Hellstrom
cf25ef9072 gallium: Use struct pipe_atomic for pipe refcounts.
Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
2009-03-16 11:40:47 +01:00
Thomas Hellstrom
fc1ef97c33 gallium: Add simple atomic class api.
Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
2009-03-16 11:40:18 +01:00
Keith Whitwell
683e7091a9 gallium: consolidate bypass_vs and bypass_clipping flags
The draw module provides a similar interface to the driver which
is retained as various bits of hardware may be able to take on
incremental parts of the vertex pipeline.  However, there's no
need to advertise all this complexity to the state tracker.

There are basically two modes now - normal and passthrough/screen-coords.
2009-03-13 16:42:57 +00:00
Jakob Bornecrantz
f500f3a72c gallium: Remove do_flip argument from surface_copy
I should have gotten most uses and implementation
	correctly fixed, but things might break.

	Feel free to blame me.
2009-03-13 01:38:20 +01:00
Michal Krol
fb88908f5c tgsi: Consider INDEX, NEGATE, MULTIPLYMATRIX opcodes for removal. 2009-03-10 10:27:24 +01:00
Michel Dänzer
a2aedf95d8 gallium: Fix p_refcnt.h for C++ compilers. 2009-03-09 12:58:16 +01:00
José Fonseca
2a1f29c220 gallium: Use consistent semantics for map ranges in gallium.
Which are slightly different from ARB_map_buffer_range semantics, since
gallium still supports more than one mapping of the same buffer.
2009-03-04 17:48:26 +00:00
José Fonseca
e80d330419 gallium: Ensure map ranges are valid. 2009-03-04 16:07:51 +00:00
José Fonseca
5b04939b16 Merge commit 'origin/master' into gallium-map-range 2009-03-04 15:23:35 +00:00
Michel Dänzer
5e27cd46c0 gallium: Unify reference counting.
The core reference counting code is centralized in p_refcnt.h.

This has some consequences related to struct pipe_buffer:

* The screen member of struct pipe_buffer must be initialized, or
  pipe_buffer_reference() will crash trying to destroy a buffer with reference
  count 0. u_simple_screen takes care of this, but I may have missed some of
  the drivers not using it.
* Except for rare exceptions deep in winsys code, buffers must always be
  allocated via pipe_buffer_create() or via screen->*buffer_create() rather
  than via winsys->*buffer_create().
2009-03-04 11:58:48 +01:00
Jakob Bornecrantz
16526b7099 st/drm: s/hocks/hooks/ 2009-03-03 22:18:14 +01:00
José Fonseca
190db8b4c3 gallium: Massage the interface to more closely resemble ARB_map_buffer_range 2009-03-03 18:52:16 +00:00