Commit graph

42963 commits

Author SHA1 Message Date
Daniel Vetter
179cb58795 i915g: split up hw state emission into small atoms
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2011-03-01 22:18:09 +01:00
Christian König
4c4ab5668c st/mesa: probably handle instanced drawing
Remove the previous workaround for instanced drawing and implement it correctly.
2011-03-01 21:42:16 +01:00
Daniel Vetter
583eb13948 i915g: fix i915_winsys_batchbuffer_write
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2011-03-01 20:57:57 +01:00
Kenneth Graunke
d1fc920f61 intel: Support glCopyTexImage() from ARGB8888 to XRGB8888.
Nexuiz was hitting a software fallback.
2011-03-01 11:21:48 -08:00
Chris Wilson
faf1ddacfb configure: Bump libdrm requirements
In my last commit I introduced a build dependency upon a new libdrm.
Add the associated autoconf checks. As the headers are part of the core
libdrm, we need to bump that version and so may as well bump the chipset
specific versions simultaneously.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-03-01 18:42:23 +00:00
Marek Olšák
952222e4bf r300g: initialize some r500 PS3 regs 2011-03-01 19:10:30 +01:00
Marek Olšák
a5ee80a264 r300g: document some more DRM 2.8.0 features 2011-03-01 19:10:30 +01:00
Chris Wilson
900a5c91ee i965: Use negative relocation deltas to minimse vertex uploads
With relaxed relocation checking in the kernel, we can specify a
negative delta (i.e. pointing outside of the target bo) in order to fake
a range in a large buffer. We only then need to upload the elements used
and adjust the buffer offset such that they correspond with the indices
used in the DrawArrays.

(Depends on libdrm 0209428b3918c4336018da9293cdcbf7f8fedfb6)

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-03-01 16:34:50 +00:00
Chris Wilson
9fa380ccdc i965: Undo 'continuation of vb packets'
This breaks nexuiz for unknown reason; disable until a true fix can be
found.
2011-03-01 16:33:49 +00:00
Chris Wilson
69b3f24658 i965: Fix uploading of shortened vertex packets
... handle all cases and not just the interleaved upload.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-03-01 16:33:40 +00:00
Chris Wilson
6ddfb322f5 i965: Upload all vertices used
... and take advantage of start_vertex_bias to trim to [min_index,
max_index] where possible (i.e. when we need to upload all arrays).

Fixes half_float_vertex(misc.fillmode.wireframe)

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=34595
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-03-01 09:42:52 +00:00
Thomas Hellstrom
8b145e2302 st/egl: Implement swapbuffer throttling
When doing copy swapbuffers using drm, throttle on outstanding copy operations.
Introduces a new environment variable, EGL_THROTTLE_FENCES that the
user can use to indicate the desired number of outstanding swapbuffers, or
disable throttling using EGL_THROTTLE_FENCES=0.

This can and perhaps should be extended to the pageflip case as well, since
with some hardware pageflips can be pipelined. In case the pageflip syncs, the
throttle operation will be a no-op anyway.

Update copyright notices.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
2011-03-01 10:36:19 +01:00
Thomas Hellstrom
c9febff31f st/egl/drm: Rework swapbuffers
Use the pageflip ioctl when available.
Otherwise, or when the backbuffer contents need to be preserved,
fall back to a copy operation.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
2011-03-01 10:36:19 +01:00
Thomas Hellstrom
2b079485f6 st/egl: Add a helper to perform a copy swap on a resource surface
The copy swap can be used when we need to preserve the contents of
the back buffer or when there is no way to do native page-flipping.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
2011-03-01 10:36:19 +01:00
Thomas Hellstrom
d1e4117355 st/egl: Move the copy context to the native display structure
This makes it usable also for native helpers.
Also add inline functions to access the context and to
uninit the native display structure.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
2011-03-01 10:36:18 +01:00
Kenneth Graunke
186d3bc7a3 Revert "i965/fs: Correctly set up gl_FragCoord.w on Sandybridge."
This reverts commit 4a3b28113c, as it
caused a regression on Ironlake (bug #34646).
2011-03-01 01:09:15 -08:00
Dave Airlie
b1ceda5cbd st/dri: one more missing array size
whats one more between friends.

again bnf on irc.
2011-03-01 18:32:33 +10:00
Dave Airlie
02448f2241 st/dri: fix missing array size init.
Init array size to 1,

reported by bnf on irc.
2011-03-01 18:29:24 +10:00
Dave Airlie
2d62e39c62 egl/st: add array size initialisor
reported by bnf on irc.
2011-03-01 18:24:15 +10:00
Ben Skeggs
450aa241bf nouveau: remove nouveau_stateobj.h
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 17:43:13 +10:00
Ben Skeggs
28eb7214db nvc0: fix a crash on context destruction
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 17:23:31 +10:00
Ben Skeggs
1ba8e95108 nouveau: ensure vbo_dirty is set when buffer write transfer complete
This introduces a shared nouveau_context struct to track such things.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 17:23:31 +10:00
Ben Skeggs
96d57722fd nouveau: fix leak of nouveau_mman structs
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 17:22:53 +10:00
Ben Skeggs
4826cd0f61 nvc0: port to common fence/mm/buffer code
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 17:22:49 +10:00
Dave Airlie
a44b65312e r600g: add NV_conditional_render support.
This is reliant on a drm patch that I posted on the list + a version bump.

These will appear in drm-next today.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-03-01 15:09:00 +10:00
Dave Airlie
929be6eb95 r600g: start using drm minor version to enable things.
If the drm minor version is > 9 (i.e. whats in drm-next),
we enable s3tc + texture tiling by default now.

this changes R600_FORCE_TILING to R600_TILING which can
be set to false to disable tiling on working drm.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-03-01 15:08:50 +10:00
Ben Skeggs
40d7a87a8e nv50: multiply polygon offset units by 2
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 14:44:43 +10:00
Ben Skeggs
be68782d9a nv50: sync textures with render targets ourselves
Port of the nvc0 commit doing the same.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 14:44:43 +10:00
Ben Skeggs
79079141fa nv50: move onto common linear buffer manager
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 14:44:43 +10:00
Ben Skeggs
5c1c4f8593 nouveau: common linear buffer manager, ported from nv50/nvc0 drivers
nv50_resource is being called nv04_resource now temporarily, to avoid
a naming conflict with nouveau_resource from libdrm.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 14:44:43 +10:00
Ben Skeggs
cd24fcedec nouveau: create linear gart/vram mman in common screen init
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 14:44:43 +10:00
Ben Skeggs
3a38a4b0a8 nouveau: fix fence_ref() where fence and *ref are the same fence
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 14:44:43 +10:00
Ben Skeggs
d6bdf1f6ae nouveau: fix compiler complaint
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 14:44:42 +10:00
Ben Skeggs
2f30a5bdaa nv50: make mm available as common code
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 14:44:42 +10:00
Ben Skeggs
7a8ee058a8 nv50: move onto shared fence code
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 14:44:42 +10:00
Ben Skeggs
5a0915870c nouveau: move nv50/nvc0 fencing to common location, and modify slightly
Modified from original to remove chipset-specific code, and to be decoupled
from the mm present in said drivers.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 14:44:42 +10:00
Ben Skeggs
48e191f90c nv50-nvc0: set cur_ctx during init if none currently bound
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-03-01 14:44:42 +10:00
Marek Olšák
ea4a19c392 r300g: fix RGTC2_SNORM
ATI engineers have probably chosen those sign bits by a dice roll.
2011-03-01 05:25:33 +01:00
Marek Olšák
66d5de74c4 r300g: reorder parts of translate_texformat 2011-03-01 05:25:33 +01:00
Alex Deucher
1dc204d145 r600g: truncate point sampled texture coordinates
By default the hardware rounds texcoords.  However,
for point sampled textures, the expected behavior is
to truncate.  When we have point sampled textures,
set the truncate bit in the sampler.

Should fix:
https://bugs.freedesktop.org/show_bug.cgi?id=25871

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2011-02-28 22:01:59 -05:00
Zou Nan hai
6c324777a6 i965: bump VS thread number to 60 on SNB
Signed-off-by: Zou Nan hai <nanhai.zou@intel.com>
2011-03-01 10:39:35 +08:00
Marek Olšák
7a61957424 r300g: fix RGTC1_UNORM and RGTC2_UNORM
Signs don't work the way I'd like...
2011-03-01 03:24:55 +01:00
Dave Airlie
9c16fcc617 rgtc: shared the compressor code between signed/unsigned
No idea why I didn't do it like this the first time, but share
the code like other portions of mesa do using _tmp.h suffix
and some #defines for the types.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-03-01 11:57:51 +10:00
Brian Paul
7b3bec87df vbo: silence unused var warning 2011-02-28 18:34:06 -07:00
Brian Paul
125b4ac7e6 softpipe: remove redundant draw_flush() call
We'll flush after the same-shader comparison.
2011-02-28 18:25:41 -07:00
Brian Paul
e6f3e24330 draw: setup pipe's draw pointer for the aapoint stage
The other draw stages like aaline and pstipple were already doing this.
If the driver used the aapoint stage but not the others it would crash
because of a null pipe->draw pointer.
2011-02-28 18:25:37 -07:00
Brian Paul
b70610b982 mesa: move PBO-related functions into a new file 2011-02-28 18:24:35 -07:00
Brian Paul
7d8db55148 mesa: always generate error in glColorTableParameter[fi]v()
These were only used by GL_SGI_texture_color_table, which is gone now.
2011-02-28 18:24:30 -07:00
Brian Paul
9d20849516 mesa: remove GL_SGI_texture_color_table support
It was only implemented in the swrast driver and probably not used by
any applications.  A modern app would use a dependent/chained texture
lookup in the fragment shader.
2011-02-28 18:24:30 -07:00
Brian Paul
7e161bcf11 svga: add assertions in svga_shader_type() 2011-02-28 18:24:30 -07:00