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
José Fonseca
c7e46c1857
Merge commit 'origin/master' into gallium-map-range
2009-03-03 13:18:15 +00:00
Keith Whitwell
916de35d67
Merge commit 'origin/gallium-0.1'
...
Conflicts:
scons/gallium.py
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/gallium/include/pipe/p_defines.h
src/mesa/vbo/vbo_exec_api.c
src/mesa/vbo/vbo_exec_draw.c
2009-03-03 11:51:14 +00:00
José Fonseca
cfc3d5c219
gallium: New PIPE_BUFFER_USAGE_DONTBLOCK flag.
...
To prevent blocking when mapping a buffer.
2009-03-02 17:33:25 +00:00
José Fonseca
97a1fd158c
Merge commit 'origin/master' into gallium-map-range
2009-03-02 13:27:46 +00:00
Corbin Simpson
7a10fcb7b6
Include p_compiler.h in drm_api.h for boolean typedef.
2009-02-27 12:25:09 -08:00
Jakob Bornecrantz
24a94d13c9
st/drm: Seperate get handle for global buffer ids
2009-02-27 03:35:01 +01:00
Benjamin Close
dbab39c6ca
gallium: Add support for BSD operating systems, tested with FreeBSD
...
BSD supports pipe in the same way as linux hence options which
are safe for linux are also safe for BSD. Define PIPE_OS_BSD in
include/pipe/p_config.h and adjust the defines to make use of it.
Also define MAP_ANONYMOUS for BSD systems which use MAP_ANON
Signed-off-by: Benjamin Close <Benjamin.Close@clearchain.com>
2009-02-25 07:56:43 -07:00
Jakob Bornecrantz
25b32eb8d0
st/drm: Bring drm_api.h up to date with latest changes
2009-02-25 02:00:29 +01:00