Commit graph

2372 commits

Author SHA1 Message Date
Corbin Simpson
e5f1f6a0be r300g: Demonstratory kludge to unbreak glxgears.
We *must* recalculate something in vformat every rebind; let's see
if we can't narrow it down a bit.
2009-10-19 14:43:33 -07:00
Christoph Bumiller
ec5c23551c nv50: add support for address regs
Allow indirect uniform access and increase the
limit on parameters from 128 to 512.
2009-10-19 18:25:09 +02:00
Christoph Bumiller
eb7ea97e7f nv50: cleanup emit_kil 2009-10-19 18:25:09 +02:00
Christoph Bumiller
2eef2017ac nv50: implement TGSI_OPCODE_CMP 2009-10-19 18:25:09 +02:00
Christoph Bumiller
f204eb1842 nv50: quick fix for insn src negation
We only have a per nv50_reg negation flag, if an
nv50_reg is used more than once in a TGSI op with
different sign modes, we'd generate wrong code.

We probably can't do much better without more
invasive changes.
2009-10-19 18:25:09 +02:00
Christoph Bumiller
1635e8d6f4 nv50: add support for DDX and DDY opcodes 2009-10-19 18:25:09 +02:00
Christoph Bumiller
c0e80cf0e9 nv50: submit user vbo data through the fifo
Requesting a new real buffer from the kernel and
copying all the data is wasteful e.g. if only a
few (but widely spread) vertices are accessed.
2009-10-19 18:25:08 +02:00
Christoph Bumiller
fba2eabe13 nv50: use SIFC for TIC, TSC upload
Add proper flushes for TIC and TSC and remove
the costly 2D.0110 flush in nv50_flush.

Correct TIC and TSC bo sizes.
2009-10-19 18:25:08 +02:00
Christoph Bumiller
6ab2fcca9d nv50: nicer texture format switch
Similar to nv40.
2009-10-19 18:25:08 +02:00
Ben Skeggs
35b98e2884 nouveau: implement is_{texture,buffer}_referenced properly 2009-10-19 09:49:02 +10:00
Ben Skeggs
869d3eea37 drm/nv50: write tic/tsc setup to correct slots when skipping units 2009-10-19 09:49:02 +10:00
Corbin Simpson
16a06fea73 r300g: Fix up a bunch of warnings. 2009-10-18 16:09:01 -07:00
Corbin Simpson
d2e29b502e r300g: Add another ZTOP condition.
I don't even know if texkill works right now.
2009-10-18 10:30:18 -07:00
José Fonseca
838da1d4ae llvmpipe: Allocate texture storage for whole quads. 2009-10-18 14:31:58 +01:00
Corbin Simpson
bb567357bc gallium: Permit surface_copy and surface_fill to be NULL.
Uf. Lots of files touched. Would people with working vega, xorg, dri1, etc.
please make sure you are not broken, and fix yourself up if you are.

There were only two or three places where the code did not have painful
fallbacks, so I would advise st maintainers to find less painful workarounds,
or consider overhauling util_surface_copy and util_surface_fill.

Per ymanton, darktama, and Dr_Jakob's suggestions, clear has been left as-is.

I will not add PIPE_CAP_BLITTER unless it is deemed necessary.
2009-10-17 21:32:56 -07:00
Corbin Simpson
bfd877e470 r300g: Squash format warning.
Won't ever be supported.
2009-10-17 20:53:19 -07:00
Corbin Simpson
11056ca86f r300g: Use a dirty test to bring framerate back up.
This is just split out from the next commit, that's all.
2009-10-17 20:47:45 -07:00
Corbin Simpson
51173e4e53 r300g: Also have rs_block keyed to the current shader combo.
Eliminates part of the glxgears corruption here. Need to clean up PSC more,
to get rid of the rest of it.
2009-10-17 20:29:27 -07:00
Corbin Simpson
ce9ae4a483 r300g: Fix u_hash_table rename. 2009-10-17 20:05:23 -07:00
Patrice Mandin
114417a2f5 nouveau: nv40: Use same workaround as i915 for segfault related to vbo 2009-10-17 20:49:18 +02:00
Patrice Mandin
66aab9a1f6 nouveau: nv30: Remove duplicate case. Was a typo for X8R8G8B8, but that will never be use for front buffer. 2009-10-17 20:46:19 +02:00
Patrice Mandin
67356ae047 nouveau: nv30: Use same workaround as i915 for segfault related to vbo 2009-10-17 20:27:24 +02:00
Corbin Simpson
fc8a156cfc r300g: Use a hash table to look up vertex info.
Need to move rs_block to this, too.

Also, I'm getting massive amounts of flicker for some reason; I bet we've gotta
re-re-examine PSC and friends. :C
2009-10-16 08:43:02 -07:00
Corbin Simpson
e4f21be13a r300g: Set logical ID for each emitted texture/sampler.
multitexarray works on my r300, but texrect doesn't.
2009-10-15 16:58:26 -07:00
Patrice Mandin
a5a05fd782 nouveau: nv30: Hack to enforce same number of bits as front buffer, for render targets 2009-10-15 22:41:09 +02:00
Patrice Mandin
13580aa3d1 nouveau: nv30: refuse binding a colour buffer with a zeta buffer with different bits, till the backend can tell Mesa not to do that. 2009-10-15 21:58:44 +02:00
Jakob Bornecrantz
72fd1cf292 trace: Handle transfer returning null 2009-10-14 11:44:09 +02:00
Corbin Simpson
a82fc97c64 r300g: Move ZTOP to its own state atom.
It may seem pointless, but this avoids a fair amount of predicted CSO pain.
2009-10-14 20:06:38 -07:00
Jakob Bornecrantz
96c9b39a6a i915g: Fix warnings 2009-10-14 23:05:55 +01:00
José Fonseca
4046c3bab4 llvmpipe: Use ALIGN_STACK. 2009-10-14 17:24:22 +01:00
Corbin Simpson
fd63f89e95 r300g: Move ztop to derived state.
Need to get it into its own atom instead of piggybacking on DSA.
2009-10-14 03:09:41 -07:00
Corbin Simpson
f13e507798 r300g: Compiler warning cleanup. 2009-10-14 01:58:18 -07:00
Dave Airlie
88b697fb0a r300g: remove buffer add that should be unnecessary.
This should be handled in the emit fine
2009-10-14 18:24:34 +10:00
Dave Airlie
fa581580b1 r300g: add QUERY to KITCHEN_SINK
I missed this, thanks to Corbin for pointing it out.
2009-10-14 18:24:05 +10:00
Dave Airlie
ce5cba040c r300g: add one more ZTOP disable bit.
Still missing the frag uses kill support, hopefully nha can point that out.
2009-10-14 18:05:14 +10:00
Dave Airlie
51d1cf55da r300g: port over last parts of oq support.
Add support for begin/end in each CS so we don't get any other
processes rendering in between.

TODO:
blame other parts of driver for this not working like Z.
2009-10-14 17:44:19 +10:00
Dave Airlie
47791697ab r300g: convert query to a state for emitting.
This means we don't emit in the begin query but when we have
to flush. Similiar to classic.

TODO:
make query object actually work.
2009-10-14 17:14:43 +10:00
Dave Airlie
c1bee7bdea r300g: fixup arb occulsion query support.
1: add rv530 support
   - num z pipes cap
   - add proper start/finish query options for rv530

2: convert to use linked list properly.

3: add flushing required check.

4: initial Z top disabling support.

TODO:
make it actually work on my rv530.
2009-10-14 16:53:12 +10:00
Dave Airlie
210481ae16 r300g: attempt to make bo space check sane.
This attempts to make r300g do proper bo space checking as opposed
to whatever it was doing now.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2009-10-14 15:13:25 +10:00
Dave Airlie
23c0c820e2 r300g: fix case where texture unit 0 is disabled but unit 1 is enabled.
to reproduce, start texrect, disable 0 texture in menu.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2009-10-14 11:42:05 +10:00
Patrice Mandin
cf33aaf8fe nouveau: nv30: use texture width,height for render target dimensions 2009-10-13 22:53:32 +02:00
Corbin Simpson
ca8cafda0b r300g: More debug flags. 2009-10-12 21:48:08 -07:00
Corbin Simpson
a4a4f7abc2 r300g: Surface debug.
It gets really annoying watching r300g tell me how it's filling surfaces.
Or falling back during filling surfaces.
2009-10-12 21:48:08 -07:00
Corbin Simpson
95a05621eb r300g: Fallback on surfaces we can't render to or from.
Still not sure why st keeps handing down things we can't render to.
2009-10-12 21:48:07 -07:00
Corbin Simpson
36ccdf09b8 r300g: Prevent multiple-use textures from getting incorrectly approved. 2009-10-12 21:48:07 -07:00
Corbin Simpson
05fc9cdfdf r300g: Clean up texture formats. 2009-10-12 21:48:07 -07:00
Patrice Mandin
a5348d435d Add support for more 8 and 16 bits formats 2009-10-12 21:03:26 +02:00
Nicolai Hähnle
f096cc7dc1 r300g: Fix fragment program constants upload on R300
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-10-11 12:41:18 +02:00
Dave Airlie
3611d01a44 r300g: fix blending default state + alpha separate.
this makes the default state same as r300
2009-10-11 19:30:23 +10:00
Brian Paul
57e3eb1b17 Merge branch 'mesa_7_6_branch' 2009-10-10 09:25:34 -06:00