Bryan Cain
4683529048
Merge branch 'glsl-to-tgsi'
...
Conflicts:
src/mesa/state_tracker/st_atom_pixeltransfer.c
src/mesa/state_tracker/st_program.c
2011-08-04 15:43:34 -05:00
Christoph Bumiller
94822c6d83
gallium: extend resource_resolve to accommodate BlitFramebuffer
...
Resolve via glBlitFramebuffer allows resolving a sub-region of a
renderbuffer to a different location in any mipmap level of some
other texture, and, with a new extension, even scaling. Therefore,
location and size parameters are needed.
The mask parameter was added because resolving only depth or only
stencil of a combined buffer is possible as well.
Full information about the blit operation allows the drivers to
take the most efficient path they possibly can.
2011-08-04 15:38:49 +02:00
Bryan Cain
17b695e6e7
gallium: add PIPE_SHADER_CAP_INTEGERS
2011-08-01 17:59:07 -05:00
Jeremy Huddleston
5b3c719983
darwin: Use machine/endian.h to determine endianness
...
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2011-07-31 09:43:52 -07:00
Jeremy Huddleston
e737a99a6f
Fix PPC detection on darwin
...
Fixes regression introduced by 7004582c18
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2011-07-31 09:24:35 -07:00
Christian König
13da00f07c
g3dvl: change picture parameter of decode_bitstream to general version
...
Using pipe_mpeg12_picture_desc was unintentional here.
2011-07-15 10:22:51 +02:00
Brian Paul
e5f7e09210
gallium: don't use enum bitfields in p_video_state.h
...
Silences many warnings about "type of bit-field ‘field_select’ is a
GCC extension".
Since the field sizes were 8 and 16 bits, just use basic types.
2011-07-14 08:14:14 -06:00
Brian Paul
a5a9422561
gallium: put video-related enums in separate header
...
The forward references to video enum types in p_context.h causes
a massive number of compiler warnings (ISO C forbids forward references
to ‘enum’ types).
By putting the new video enums in a separate header that can be included
by p_context.h and p_screen.h we can avoid this.
Acked-by Christian König <deathsimple@vodafone.de>
2011-07-14 08:14:14 -06:00
Christian König
efc7fda462
[g3dvl] add some more PIPE_VIDEO_CAPs
2011-07-12 00:12:12 +02:00
Christian König
a7ec477ebc
[g3dvl] revert some unintended white space changes
2011-07-11 14:36:03 +02:00
Christian König
ea78480029
[g3dvl] and finally remove pipe_video_context
2011-07-08 19:22:43 +02:00
Christian König
4e837f557b
[g3dvl] move video buffer creation out of video context
2011-07-08 16:56:11 +02:00
Christian König
3bb33c911b
[g3dvl] remove the unused priv member from pipe_video_context
2011-07-08 15:07:39 +02:00
Christian König
bd5fd67a3e
[g3dvl] move compositor creation and handling directly into the state trackers
2011-07-08 14:44:19 +02:00
Christian König
10fd45114d
[g3dvl] remove sampler view handling from video context
2011-07-08 12:47:52 +02:00
Christian König
06ddbc3b8e
[g3dvl] remove create_surface from video context
2011-07-08 12:15:48 +02:00
Christian König
2ec350ff1d
[g3dvl] make pipe_context mandatory for creation pipe_video_context
2011-07-08 12:03:13 +02:00
Christian König
7eca76952b
[g3dvl] rename is_format_supported to is_video_format_supported and move it into screen object
2011-07-08 11:20:39 +02:00
Christian König
f265a19426
[g3dvl] rename get_param to get_video_param and move into screen object
2011-07-07 22:51:45 +02:00
Christian König
c3b2230b71
Merge remote-tracking branch 'origin/master' into pipe-video
...
Conflicts:
configure.ac
src/gallium/drivers/r600/r600_state_inlines.h
src/gallium/tests/trivial/Makefile
src/gallium/winsys/g3dvl/dri/XF86dri.c
src/gallium/winsys/g3dvl/dri/driclient.c
src/gallium/winsys/g3dvl/dri/driclient.h
src/gallium/winsys/g3dvl/dri/xf86dri.h
src/gallium/winsys/g3dvl/dri/xf86dristr.h
src/gallium/winsys/r600/drm/r600_bo.c
2011-07-04 15:04:41 +02:00
Thomas Hellstrom
ac8fdbc1c7
st-api: Rework how drawables are invalidated v3.
...
The api and the state tracker manager code as well as the state tracker code
assumed that only a single context could be bound to a drawable. That is not
a valid assumption, since multiple contexts can bind to the same drawable.
Fix this by making it the state tracker's responsibility to update all
contexts binding to a drawable
Note that the state trackers themselves don't use atomic stamps on
frame-buffers. Multiple context rendering to the same drawable should
be protected by the application.
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
2011-06-29 12:48:59 +02:00
José Fonseca
4175010749
scons: make embedding orthogonal to the platform
...
To enable embedding in platforms other than linux.
2011-06-17 14:50:37 +01:00
Christian König
003401f95c
Merge remote-tracking branch 'origin/master' into pipe-video
...
Conflicts:
src/gallium/tests/unit/u_format_test.c
src/gallium/winsys/r600/drm/r600_hw_context.c
2011-06-09 09:35:09 +02:00
Brian Paul
713fb50759
gallium: fix comments for pipe_stream_output_state
2011-06-08 08:05:40 -06:00
Christian König
00b4e48560
[g3dvl] rework video buffer format handling
2011-06-07 22:01:30 +02:00
Christian König
f1bf7d3dbf
[g3dvl] move dummy quantification into xvmc state tracker
2011-06-07 21:13:59 +02:00
Christian König
b4fa7db656
[g3dvl] split quant matrix out of picture info
2011-06-05 18:59:57 +02:00
Christian König
c4a168819d
[g3dvl] rename map/unmap to begin/end frame
...
mapping and unmapping of buffers is just an implementation detail.
begining and ending an frame is much more descriptive
2011-06-05 17:53:48 +02:00
Christian König
7e1fbb3603
[g3dvl] remove unused and dublicate fields from picture structure
2011-06-05 17:07:17 +02:00
Christian König
1eb957bb41
Merge remote-tracking branch 'origin/master' into pipe-video
2011-06-05 00:11:41 +02:00
Dave Airlie
d2ede5e648
gallium: include limits.h in p_config.h
...
We are getting inconsistent methods for endian detection (same answer when
it works, just doesn't work on some platforms) depending on whether __GLIBC__
is defined, which of course depends on include ordering before p_config.h
Just make p_config.h include limits.h to solve this.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
2011-05-31 17:28:48 +10:00
Christian König
aa63ebc48a
Merge remote-tracking branch 'origin/master' into pipe-video
2011-05-21 16:43:12 +02:00
Brian Paul
38f89c7008
st/glx: define/set new ST_CONTEXT_FLAG_bits
2011-05-19 21:18:33 -06:00
Christian König
828540e491
Merge remote-tracking branch 'origin/master' into pipe-video
2011-05-15 19:26:53 +02:00
Michel Dänzer
9d792d013c
gallium: Factor out unknown endianness detection.
2011-05-09 12:29:47 +02:00
Matt Turner
991c1f0249
Don't allow compilation if endianness isn't known
...
PIPE_ARCH_UNKNOWN_ENDIAN is used no where else. All #else branches of
ifdef PIPE_ARCH_LITTLE assume big-endian. Not #error'ing out here
only serves to allow bad things to happen.
Signed-off-by: Matt Turner <mattst88@gmail.com>
2011-05-09 12:23:21 +02:00
Matt Turner
5e945863ca
p_config.h: Rely on glibc endianness definitions when available
...
Suggested by Julien Cristau.
Signed-off-by: Matt Turner <mattst88@gmail.com>
2011-05-09 12:22:59 +02:00
Christian König
213b9004a6
Merge remote-tracking branch 'origin/master' into pipe-video
...
Conflicts:
src/gallium/drivers/r600/r600_state.c
2011-05-07 14:11:40 +02:00
Marek Olšák
a5f0a11477
gallium: implement seamless cubemap extensions
...
Reviewed-by: Brian Paul <brianp@vmware.com>
2011-05-06 20:06:30 +02:00
Marcin Slusarz
3b2bc4ac5b
gallium/xorg st/nv50: add PIPE_BIND_CURSOR
...
We need to distinguish surfaces for mouse cursors from scanouts,
because nv50 hardware display engine ignores tiling flags.
2011-05-06 19:09:23 +02:00
Christian König
352bfb525a
[g3dvl] remove quantizer_scale from picture structure
2011-05-04 22:30:16 +02:00
Christian König
a9b1c4fe2e
[g3dvl] remove dc_dct_pred from picture structure
2011-05-04 22:16:03 +02:00
Christian König
c888fe027c
[g3dvl] Implement MPEG2 VLD
...
Based uppon xine's slice_xvmc.c.
This gets VDPAU up and running.
2011-05-04 18:58:55 +02:00
Marek Olšák
02b352e2ac
gallium: reorder fields of pipe_rasterizer_state to pack it more tightly
...
sizeof(struct pipe_rasterizer_state):
Before: 32 bytes
After: 28 bytes
Reviewed-by: Brian Paul <brianp@vmare.com>
2011-05-02 17:16:09 +02:00
Christian König
563f6c225c
[g3dvl] make clear color configureable
2011-04-27 16:50:34 +02:00
Christian König
221e1b7aba
[g3dvl] make reset_dirty_area a public interface
2011-04-27 15:28:13 +02:00
Christian König
104ac00663
[g3dvl] rework fence handling and add r600g workaround
2011-04-24 20:08:11 +02:00
Christian König
3ea7e2713c
[g3dvl] start supporting different render target formats
...
Let's start with NV12, but anything else shouldn't be much of a problem any more.
2011-04-24 19:29:34 +02:00
Christian König
b54909910c
[g3dvl] remove resource_format workaround
2011-04-24 16:04:23 +02:00
Christian König
fa31b1095e
Merge remote branch 'origin/master' into pipe-video
...
Conflicts:
configs/linux-dri
src/gallium/drivers/r600/r600_pipe.c
src/gallium/drivers/r600/r600_state.c
src/gallium/include/pipe/p_format.h
src/gallium/tests/graw/fragment-shader/frag-abs.sh
src/gallium/tests/graw/fragment-shader/frag-add.sh
src/gallium/tests/graw/fragment-shader/frag-cb-1d.sh
src/gallium/tests/graw/fragment-shader/frag-cb-2d.sh
src/gallium/tests/graw/fragment-shader/frag-dp3.sh
src/gallium/tests/graw/fragment-shader/frag-dp4.sh
src/gallium/tests/graw/fragment-shader/frag-dst.sh
src/gallium/tests/graw/fragment-shader/frag-ex2.sh
src/gallium/tests/graw/fragment-shader/frag-face.sh
src/gallium/tests/graw/fragment-shader/frag-flr.sh
src/gallium/tests/graw/fragment-shader/frag-frc.sh
src/gallium/tests/graw/fragment-shader/frag-kil.sh
src/gallium/tests/graw/fragment-shader/frag-lg2.sh
src/gallium/tests/graw/fragment-shader/frag-lit.sh
src/gallium/tests/graw/fragment-shader/frag-lrp.sh
src/gallium/tests/graw/fragment-shader/frag-mad-immx.sh
src/gallium/tests/graw/fragment-shader/frag-mad.sh
src/gallium/tests/graw/fragment-shader/frag-max.sh
src/gallium/tests/graw/fragment-shader/frag-min.sh
src/gallium/tests/graw/fragment-shader/frag-mov.sh
src/gallium/tests/graw/fragment-shader/frag-mul.sh
src/gallium/tests/graw/fragment-shader/frag-rcp.sh
src/gallium/tests/graw/fragment-shader/frag-rsq.sh
src/gallium/tests/graw/fragment-shader/frag-sge.sh
src/gallium/tests/graw/fragment-shader/frag-slt.sh
src/gallium/tests/graw/fragment-shader/frag-srcmod-abs.sh
src/gallium/tests/graw/fragment-shader/frag-srcmod-absneg.sh
src/gallium/tests/graw/fragment-shader/frag-srcmod-neg.sh
src/gallium/tests/graw/fragment-shader/frag-srcmod-swz.sh
src/gallium/tests/graw/fragment-shader/frag-sub.sh
src/gallium/tests/graw/fragment-shader/frag-tempx.sh
src/gallium/tests/graw/fragment-shader/frag-xpd.sh
src/gallium/tests/graw/vertex-shader/vert-abs.sh
src/gallium/tests/graw/vertex-shader/vert-add.sh
src/gallium/tests/graw/vertex-shader/vert-arl.sh
src/gallium/tests/graw/vertex-shader/vert-arr.sh
src/gallium/tests/graw/vertex-shader/vert-cb-1d.sh
src/gallium/tests/graw/vertex-shader/vert-cb-2d.sh
src/gallium/tests/graw/vertex-shader/vert-dp3.sh
src/gallium/tests/graw/vertex-shader/vert-dp4.sh
src/gallium/tests/graw/vertex-shader/vert-dst.sh
src/gallium/tests/graw/vertex-shader/vert-ex2.sh
src/gallium/tests/graw/vertex-shader/vert-flr.sh
src/gallium/tests/graw/vertex-shader/vert-frc.sh
src/gallium/tests/graw/vertex-shader/vert-lg2.sh
src/gallium/tests/graw/vertex-shader/vert-lit.sh
src/gallium/tests/graw/vertex-shader/vert-lrp.sh
src/gallium/tests/graw/vertex-shader/vert-mad.sh
src/gallium/tests/graw/vertex-shader/vert-max.sh
src/gallium/tests/graw/vertex-shader/vert-min.sh
src/gallium/tests/graw/vertex-shader/vert-mov.sh
src/gallium/tests/graw/vertex-shader/vert-mul.sh
src/gallium/tests/graw/vertex-shader/vert-rcp.sh
src/gallium/tests/graw/vertex-shader/vert-rsq.sh
src/gallium/tests/graw/vertex-shader/vert-sge.sh
src/gallium/tests/graw/vertex-shader/vert-slt.sh
src/gallium/tests/graw/vertex-shader/vert-srcmod-abs.sh
src/gallium/tests/graw/vertex-shader/vert-srcmod-absneg.sh
src/gallium/tests/graw/vertex-shader/vert-srcmod-neg.sh
src/gallium/tests/graw/vertex-shader/vert-srcmod-swz.sh
src/gallium/tests/graw/vertex-shader/vert-sub.sh
src/gallium/tests/graw/vertex-shader/vert-xpd.sh
src/gallium/tools/trace/dump.py
src/gallium/tools/trace/format.py
src/gallium/tools/trace/model.py
src/gallium/tools/trace/parse.py
2011-04-23 14:27:40 +02:00