Michel Dänzer [Wed, 28 Feb 2007 16:46:07 +0000 (17:46 +0100)]
i915tex: Sync pages differently when crossing pipe borders.
Don't flip (up to twice) immediately but just arrange things such that the
pages will be in sync on both pipes on the next flip.
Michel Dänzer [Wed, 28 Feb 2007 16:42:54 +0000 (17:42 +0100)]
i915tex: Check that intel_rb is valid before trying to add it to an fbo.
Michel Dänzer [Wed, 28 Feb 2007 15:05:49 +0000 (16:05 +0100)]
i915tex: Also update intel_rb->vbl_pending when scheduled swap is not a flip.
Michel Dänzer [Thu, 22 Feb 2007 16:24:09 +0000 (17:24 +0100)]
i915tex: Schedule flips when possible.
Also move vsync related state from context to window, so it's possible to
schedule several flips ahead of time with triple buffering.
Michel Dänzer [Tue, 20 Feb 2007 18:14:23 +0000 (19:14 +0100)]
i915tex: Triple buffering support, only effective with page flipping so far.
Pending flips are tracked per renderbuffer and the colour renderbuffer
attachments of window framebuffer objects are rotated on flips to avoid
stalling the pipeline for pending flips unnecessarily.
Michel Dänzer [Thu, 15 Feb 2007 17:43:46 +0000 (18:43 +0100)]
intelWindowMoved: Some debugging output was accidentally left always enabled.
Michel Dänzer [Thu, 15 Feb 2007 17:41:40 +0000 (18:41 +0100)]
intelRotateWindow: Only use back buffer and cliprects in very specific cases.
Michel Dänzer [Thu, 15 Feb 2007 17:33:53 +0000 (18:33 +0100)]
intelCopyBuffer: Remove incorrect intel_fb->pf_current_page tests.
intel_get_rb_region already takes the current page into account.
This would result in broken rendering when multiple 3D windows are visible
and the pages are reversed.
Michel Dänzer [Thu, 15 Feb 2007 15:30:40 +0000 (16:30 +0100)]
i915tex: Support page flipping on both CRTCs independently.
No longer track page flipping state per context but per window, via struct
intel_framebuffer which wraps struct gl_framebuffer for windows.
Michel Dänzer [Fri, 2 Feb 2007 16:10:25 +0000 (17:10 +0100)]
i915tex: Make page flipping work again.
Thomas Hellstrom [Mon, 19 Feb 2007 18:57:30 +0000 (19:57 +0100)]
i915tex: Fix performance regression with new vbo code and latest drm.
With current memory preferences, vbos ended up in AGP space
where reading from them got a bit slow.
Make sure buffer objects are initially created in system memory.
Sean D'Epagnier [Sat, 17 Feb 2007 00:46:11 +0000 (17:46 -0700)]
Merge branch 'master' of git+ssh://geckosenator@git.freedesktop.org/git/mesa/mesa
Sean D'Epagnier [Sat, 17 Feb 2007 00:44:13 +0000 (17:44 -0700)]
Commiting a few minor fixes to glut fbdev (segfault on a separate stack)
Updated all drivers that used the old _ac_ functions to use
the new _vbo_ functions. I know this fixed the fbdev driver,
it looks like it might fix some other drivers too.
Jerome Glisse [Fri, 16 Feb 2007 22:22:04 +0000 (23:22 +0100)]
doxygen: update doxygen project number to 6.5
doxygen number was laggin behind a bit.
Jerome Glisse [Fri, 16 Feb 2007 22:18:56 +0000 (23:18 +0100)]
Update doxygen doc to reflet vbo changes.
Update doxygen doc, array_cache no longuer exist,
new shiny vbo modules is there. Tested on unix,
but i think i didn't broke that bat :).
Patrice Mandin [Fri, 16 Feb 2007 21:39:28 +0000 (22:39 +0100)]
nouveau: nv50: update
Patrice Mandin [Fri, 16 Feb 2007 21:39:12 +0000 (22:39 +0100)]
nouveau: nv10,20: wrong viewport clip setup
Patrice Mandin [Fri, 16 Feb 2007 21:09:42 +0000 (22:09 +0100)]
nouveau: nv20: texture matrix
Patrice Mandin [Fri, 16 Feb 2007 21:03:31 +0000 (22:03 +0100)]
nouveau: nv20: update
Patrice Mandin [Fri, 16 Feb 2007 19:26:57 +0000 (20:26 +0100)]
nouveau: nv10: set clear value for 16 and 24 bits depth
Patrice Mandin [Fri, 16 Feb 2007 18:54:55 +0000 (19:54 +0100)]
nouveau: nv10: rescale depth near and far
Patrice Mandin [Fri, 16 Feb 2007 18:46:54 +0000 (19:46 +0100)]
nouveau: nv10: fix viewport scale and origin
Rune Peterson [Wed, 14 Feb 2007 22:10:52 +0000 (23:10 +0100)]
r300: Fix cos & add scs to fragment program.
So this do :
- Fixes COS.
- Does range reductions for SIN & COS.
- Adds SCS.
- removes the optimized version of SIN & COS.
- tweaked weight (should help on precision).
- fixed a copy paste typo in emit_arith().
Etienne Clement [Wed, 14 Feb 2007 20:21:12 +0000 (13:21 -0700)]
test for POT before using sample_2d_linear_repeat()
Roland Scheidegger [Wed, 14 Feb 2007 19:34:52 +0000 (20:34 +0100)]
fix typo preventing generic arrays from working with ARB_vp (bug #9952)
Patrice Mandin [Wed, 14 Feb 2007 19:28:31 +0000 (20:28 +0100)]
nouveau: nv10: there are 8 clipping regions
Roland Scheidegger [Wed, 14 Feb 2007 15:38:32 +0000 (16:38 +0100)]
fix stupid bug in the optimized per-vertex fog generation code
Thomas Hellstrom [Wed, 14 Feb 2007 10:11:23 +0000 (11:11 +0100)]
i915tex: Take into account various mapping states when dropping the
batch buffer after a resolution / rotation switch.
Xiang, Haihao [Mon, 12 Feb 2007 08:38:50 +0000 (16:38 +0800)]
I965: fix a failure on waiting irq.
Wait until getting the right fence if drm/i915 resets the
counter.
Zou Nan hai [Mon, 12 Feb 2007 04:16:49 +0000 (12:16 +0800)]
fd.o #BZ 9684
gcc may cast an overflowed float value to an negative int value on i386,
fix it to make sure at least some apps will not crash if it contains wrong normal data.
Rune Peterson [Sun, 11 Feb 2007 23:24:36 +0000 (00:24 +0100)]
r300: Add proper support for sin/cos instruction in fragment program
Getting proper SIN and COS wasn't as easy as it appeared.
I had to make make some changes to the fragment program code.
general FP changes:
- support HHH swizzle for vector instructions.
- don't copy a source to a temp when it is not XYZW swizzled, but
combine the two and have the swizzle resolve any issues.
(saves temps/instructions with more elaborate shader code)
- fix overflow in cnstv[].
Rune Peterson [Sun, 11 Feb 2007 01:19:43 +0000 (18:19 -0700)]
ctx->Point._Size fix
Roland Scheidegger [Fri, 9 Feb 2007 18:21:29 +0000 (19:21 +0100)]
optimize per-pixel fog program
use the same internal state as for vertex fog. From the old implemenentation,
this changes a SUB+MUL into a MAD for linear fog, and saves a MUL for EXP/EXP2,
plus saves a (constant) parameter. While here, fix the broken (forgotten)
swizzling. (untested)
Zou Nan hai [Fri, 9 Feb 2007 05:28:56 +0000 (13:28 +0800)]
array overflow fix
Roland Scheidegger [Thu, 8 Feb 2007 23:36:53 +0000 (00:36 +0100)]
r200: simplify / unify input map handling for vp and fftnl
Use the same input map handling for fftnl and vertex programs. It doesn't
enable any new functionality (should make it easy to support per-vertex
materials though), but the code is much cleaner.
Roland Scheidegger [Thu, 8 Feb 2007 23:36:40 +0000 (00:36 +0100)]
optimize generated vertex programs a bit
Use new internal state to avoid per-vertex normalization of static spot
direction vector. Use internal state for simpler per-vertex fog computations
(MAD instead of SUB/MUL for linear fog, EX2 instead of POW for EXP/EXP2 fog).
Simplify point size calc (2 MADs instead of MOV, MUL, MUL, DP3), and while
there fix it up (RSQ instead of RCP). All untested...
Roland Scheidegger [Thu, 8 Feb 2007 22:54:28 +0000 (23:54 +0100)]
fix issues in vp when using FRAG_BIT_WPOS in a fragment program (bug #9910)
Redirect all VERT_RESULT_HPOS writes to a temp and use that for fixup.
The viewport transformation still seems to take some shortcuts, and it
still does not seem to work at all...
Ben Skeggs [Tue, 6 Feb 2007 02:49:39 +0000 (13:49 +1100)]
nouveau: a couple of NV3x fixes
Jakob Bornecrantz [Mon, 5 Feb 2007 23:22:47 +0000 (10:22 +1100)]
Add support for CN700 chipset in miniglx
Roland Scheidegger [Mon, 5 Feb 2007 20:29:25 +0000 (21:29 +0100)]
fix issues when using mixed-mode pos-invariant vp and ff tnl (bug #9856)
ARB_vp requires vertex transformation to be invariant to fixed function tnl
if the position_invariant option is used. So the same function needs to be
used, otherwise z-fighting artifacts may happen with applications which rely
on the results being really the same due to precision issues when dealing with
floating point values (may not be a problem when using a non-optimizing
compiler strictly following IEEE rules).
Brian [Mon, 5 Feb 2007 17:29:58 +0000 (10:29 -0700)]
Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa
Panagiotis Papadakos [Mon, 5 Feb 2007 17:29:10 +0000 (10:29 -0700)]
fix mem leak
Ben Skeggs [Mon, 5 Feb 2007 15:28:55 +0000 (02:28 +1100)]
nouveau: OUT_RINGp expects the size in dwords, not bytes.
This fixes the *actual* bug that the previous commit was supposed to fix..
Panagiotis Papadakos [Mon, 5 Feb 2007 15:17:50 +0000 (08:17 -0700)]
fix mem leaks
Ben Skeggs [Mon, 5 Feb 2007 14:57:04 +0000 (01:57 +1100)]
nouveau: fix a small bug in nv10 swtcl
Ben Skeggs [Mon, 5 Feb 2007 13:39:50 +0000 (00:39 +1100)]
nouveau: new bufferobj code.
The old code suffered from a number of issues, the most severe being that
with the Mesa VBO merge even swtcl used the driver's bufferobj interface.
On most VBO types (or non-AGP cards) the buffer ended up in vram, and
killed swtcl performance greatly. All bufferobj's start in system memory
now, until they get referenced as a "real" VBO.
The other big change is that only potentially "damaged" areas are
uploaded/downloaded to/from the hardware.
Panagiotis Papadakos [Mon, 5 Feb 2007 08:34:55 +0000 (10:34 +0200)]
break if we removed driver from Drivers list in driDestroyDisplay
Else we read memory we just released, in for statement.
Patrice Mandin [Sun, 4 Feb 2007 12:10:23 +0000 (13:10 +0100)]
nouveau: nv10: add init for unknown 0x120
Stephane Marchesin [Sun, 4 Feb 2007 02:17:06 +0000 (03:17 +0100)]
nouveau: fix nv04 and nv10 swtcl, more work on nv04 state.
Patrice Mandin [Sat, 3 Feb 2007 22:46:58 +0000 (23:46 +0100)]
nouveau: forgot function declaration
Patrice Mandin [Sat, 3 Feb 2007 22:32:12 +0000 (23:32 +0100)]
nouveau: nv50: use nv50 state
Brian [Sat, 3 Feb 2007 17:30:50 +0000 (10:30 -0700)]
Add _NEW_PROGRAM flag to _MESA_NEW_NEED_EYE_COORDS.
This fixes a segfault in the texgen code that can occur after we've
disabled a vertex program.
Michel Dänzer [Sat, 3 Feb 2007 16:37:01 +0000 (17:37 +0100)]
Merge branch 'origin'
Michel Dänzer [Sat, 3 Feb 2007 16:32:02 +0000 (17:32 +0100)]
Fall back to software rasterization if r300_translate_fragment_shader() fails.
Aborting immediately is a bad idea with AIGLX.
Michel Dänzer [Sat, 3 Feb 2007 16:24:22 +0000 (17:24 +0100)]
Remove unused r200 files from r300 driver directory.
Michel Dänzer [Sat, 3 Feb 2007 16:23:19 +0000 (17:23 +0100)]
r300CreateContext: Really initialize r300->initialMaxAnisotropy.
Patrice Mandin [Sat, 3 Feb 2007 12:22:42 +0000 (13:22 +0100)]
nouveau: fix viewport clipping initialization
Patrice Mandin [Sat, 3 Feb 2007 12:20:16 +0000 (13:20 +0100)]
nouveau: use color pitch as depth pitch if depth disabled
Roland Scheidegger [Sat, 3 Feb 2007 02:31:31 +0000 (03:31 +0100)]
disable r200 materials-between-begin-end check if vertex progs are enabled
Roland Scheidegger [Sat, 3 Feb 2007 02:15:45 +0000 (03:15 +0100)]
remove now unused vtxfmt stuff from radeon/r200 header files
Roland Scheidegger [Sat, 3 Feb 2007 02:15:14 +0000 (03:15 +0100)]
fix errorneously adding fog state params to all vertex programs...
Keith Whitwell [Fri, 2 Feb 2007 12:26:10 +0000 (12:26 +0000)]
Merge branch 'vbo-0.2'
Conflicts:
src/mesa/main/texcompress_s3tc.c
src/mesa/tnl/t_array_api.c
Keith Whitwell [Fri, 2 Feb 2007 11:06:37 +0000 (11:06 +0000)]
Merge branch 'vbo-0.2-origin' into vbo-0.2
Keith Whitwell [Fri, 2 Feb 2007 10:59:58 +0000 (10:59 +0000)]
Modify assert to reflect rebase criteria
Zou Nan hai [Fri, 2 Feb 2007 06:37:24 +0000 (14:37 +0800)]
Zou Nan hai [Fri, 2 Feb 2007 01:35:17 +0000 (09:35 +0800)]
Fix fd.o #9686, when fall into vertex fog,
fog factors are precomputed in t_vb_fog.c compute_fog_blend_factors,
which is incompatible with appended fragment fog code.
That will make GoogleEarth display abnormally.
always use pixel fog.
Roland Scheidegger [Thu, 1 Feb 2007 19:59:45 +0000 (20:59 +0100)]
fix missing ADD_POINTERS, fixes crashes if the index elements are in a vbo.
Brian [Thu, 1 Feb 2007 14:22:50 +0000 (07:22 -0700)]
Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa
Brian [Thu, 1 Feb 2007 14:22:25 +0000 (07:22 -0700)]
fix mem leak in __glXReportDamage (Panagiotis Papadakos)
Keith Whitwell [Thu, 1 Feb 2007 14:21:14 +0000 (14:21 +0000)]
Correct usage/meaning of max_index parameter.
Keith Whitwell [Thu, 1 Feb 2007 14:20:31 +0000 (14:20 +0000)]
Cope with internally-generated null inputs.
Michel Dänzer [Thu, 1 Feb 2007 09:45:51 +0000 (10:45 +0100)]
driDestroyDisplay: Fix comment, it is called now.
Michel Dänzer [Thu, 1 Feb 2007 09:43:10 +0000 (10:43 +0100)]
driDestroyDisplay: Remove Drivers list entry when dlclosing its handle.
This fixes a regression from commit
f81b1dbe374fe446f6ef676e70a72952ffb47d4e:
Since then, driDestroyDisplay gets called from __glXFreeDisplayPrivate. It
dlcloses the handles associated with the display but fails to remove their
references from the Drivers list, so subsequent calls to OpenDriver return a
stale handle and an invalid createNewScreenFunc pointer. The attempt to call
the latter results in a segfault when running amoeba, e.g.
Roland Scheidegger [Thu, 1 Feb 2007 00:09:26 +0000 (01:09 +0100)]
fix unitialized values in radeonClear
Xiang, Haihao [Wed, 31 Jan 2007 01:47:02 +0000 (09:47 +0800)]
_mesa_pack_rgba_span_float: fix for packing data into group
Keith Whitwell [Tue, 30 Jan 2007 20:22:55 +0000 (20:22 +0000)]
Use new rebase helper. Remove other rebase code.
Keith Whitwell [Tue, 30 Jan 2007 19:27:53 +0000 (19:27 +0000)]
Helper for rebasing draw requests where min_index != 0.
Keith Whitwell [Tue, 30 Jan 2007 19:19:51 +0000 (19:19 +0000)]
New tests for the array functions which also provoke rebasing.
Brian [Tue, 30 Jan 2007 15:13:49 +0000 (08:13 -0700)]
regenerated
Brian [Tue, 30 Jan 2007 15:13:02 +0000 (08:13 -0700)]
s/params/pointer/ for glGetVertexAttribPointer
Brian [Tue, 30 Jan 2007 15:11:50 +0000 (08:11 -0700)]
bump version to 6.5.3
Brian [Tue, 30 Jan 2007 15:10:03 +0000 (08:10 -0700)]
s/params/pointer/ for glGetVertexAttribPointer
Brian [Tue, 30 Jan 2007 15:09:25 +0000 (08:09 -0700)]
s/params/pointer/ for glGetVertexAttribPointer
Brian [Tue, 30 Jan 2007 15:02:20 +0000 (08:02 -0700)]
s/params/pointer/ for glGetVertexAttribPointer
Ben Skeggs [Tue, 30 Jan 2007 05:51:50 +0000 (16:51 +1100)]
nouveau: argh
Ben Skeggs [Tue, 30 Jan 2007 05:49:27 +0000 (16:49 +1100)]
nouveau: misc NV40 fixes
Ben Skeggs [Tue, 30 Jan 2007 05:00:20 +0000 (16:00 +1100)]
nouveau: NV40 glClipPlane support.
Ben Skeggs [Tue, 30 Jan 2007 01:33:00 +0000 (12:33 +1100)]
nouveau: rework shader param handling
Conflicts:
src/mesa/drivers/dri/nouveau/nouveau_shader_0.c
Ben Skeggs [Mon, 29 Jan 2007 06:08:45 +0000 (17:08 +1100)]
nouveau: oops, build attrib map after we know how the final shader will look..
Ben Skeggs [Sat, 27 Jan 2007 07:54:42 +0000 (18:54 +1100)]
nouveau: remove an unused table
Ben Skeggs [Sat, 27 Jan 2007 07:51:19 +0000 (18:51 +1100)]
nouveau: oops
Ben Skeggs [Sat, 27 Jan 2007 07:36:01 +0000 (18:36 +1100)]
nouveau: maintain a map of which vtxprog input corresponds to which array
Ben Skeggs [Mon, 29 Jan 2007 05:39:19 +0000 (16:39 +1100)]
nouveau: unhardcode some more NV30TCL_FP_CONTROL values
Matthieu Castet [Mon, 29 Jan 2007 22:26:35 +0000 (23:26 +0100)]
nouveau : NOUVEAU_RING_TRACE
allow to print what we are really sending to the fifo.
Matthieu Castet [Mon, 29 Jan 2007 22:19:12 +0000 (23:19 +0100)]
nouveau : nv10 comment icomplete command
Matthieu Castet [Sun, 28 Jan 2007 22:26:21 +0000 (23:26 +0100)]
nouveau : nv10 mixing cached stuff with not cached stuff is bad.
Ben Skeggs [Sun, 28 Jan 2007 11:55:35 +0000 (22:55 +1100)]
nouveau: fix nv30 line width
Ben Skeggs [Sun, 28 Jan 2007 06:02:40 +0000 (17:02 +1100)]
nouveau: initial GL_ARB_occlusion_query support
Only enabled on NV40, NV20/NV30 code is untested.. However, NV30
should be identical to NV40.
Ben Skeggs [Sun, 28 Jan 2007 05:35:32 +0000 (16:35 +1100)]
nouveau: extend notifier interface to allow multiple notifiers in a memory block.
Claudio Ciccani [Sat, 27 Jan 2007 18:32:05 +0000 (19:32 +0100)]
Updated copyright header.
Switched to LGPL (GPL header was a cut-&-paste mistake).