summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r300
Commit message (Collapse)AuthorAgeFilesLines
* r300g: move r300_transfer to separate filesMarek Olšák2010-03-076-84/+171
|
* r300g: disable emitting the HWTCL-related state when SWTCL is in useMarek Olšák2010-03-074-5/+12
| | | | Now SWTCL renders at least "something", we're close...
* r300g: resurrect r300_emit_vertex_buffer for SWTCLMarek Olšák2010-03-071-2/+28
| | | | Taken over from c9928ac3ee5dc0d10127388f9312779a6c59da7c.
* r300g: validate buffers when using SWTCLMarek Olšák2010-03-071-3/+5
|
* r300g: share the VS-output-mapping state with SWTCLMarek Olšák2010-03-074-148/+96
| | | | And associated cleanups.
* r300g: abort if FS compilation fails on non-debug buildsMarek Olšák2010-03-071-0/+1
|
* r300g: minor cleanups after the no-rhw mergeMarek Olšák2010-03-062-9/+5
|
* r300g: clamp vertex max index according to currently bound buffersMarek Olšák2010-03-061-1/+1
|
* r300g: Fix indexbuf upper limits.Corbin Simpson2010-03-041-1/+6
| | | | | | | Wine tends to pessimistically use ~0 for its max index, but r300s only can go up to 2^24-1, causing the kernel checker to freak out. Civ4 is marginally improved now. Still crashes, but not as bad.
* r300: Remove PIPE_FORMAT_R8G8B8X8_SNORM support.José Fonseca2010-03-031-2/+0
|
* r300g: Use a macro to consolidate general state handling.Corbin Simpson2010-03-021-10/+11
| | | | My God, I've reinvented R300_STATECHANGE. Forgive me. :C
* Merge branch 'gallium-format-cleanup'José Fonseca2010-03-024-51/+47
|\
| * r300: Rename pipe formats.José Fonseca2010-03-024-48/+48
| |
| * r300: Remove PIPE_FORMAT_A8B8G8R8_SNORM.José Fonseca2010-03-011-2/+0
| | | | | | | | PIPE_FORMAT_R8G8B8A8_SNORM already listed.
| * r300: Use PIPE_FORMAT_R8G8B8A8_UNORM_REV where appropriate.José Fonseca2010-03-011-2/+2
| |
| * r300: Don't implement PIPE_FORMAT_R8G8B8X8_SNORM.José Fonseca2010-03-011-2/+0
| | | | | | | | | | | | This format is not actually used by any state tracker. Probably the reverse notation was mean, which would make it identical to PIPE_FORMAT_X8B8G8R8_SNORM.
* | Merge branch 'gallium-no-rhw-position'Michal Krol2010-03-025-43/+28
|\ \ | |/ |/| | | | | | | | | Conflicts: src/gallium/drivers/r300/r300_blit.c src/gallium/drivers/r300/r300_emit.c src/gallium/drivers/r300/r300_state_derived.c
| * r300: Save viewport and clip states before invoking blitter.Michal Krol2010-03-013-0/+10
| |
| * gallium: Remove bypass_vs_clip_and_viewport from rasteriser state.Michal Krol2010-02-224-43/+18
| | | | | | | | Needs testing.
* | r300g: atomize texture and sampler statesMarek Olšák2010-02-289-135/+153
| |
* | r300g: decouple vertex stream setup (PSC) and VS output mapping (VAP_OUT)Marek Olšák2010-02-287-66/+101
| | | | | | | | | | | | | | | | | | | | | | Formerly known as vertex_format_state. These two are completely unrelated when using HWTCL and decoupling them makes the design less SWTCL-centric. When bypass_vs_clip_and_viewport gets removed, the PSC setup will no longer be a derived state. This change shouldn't make unbreaking SWTCL harder.
* | r300g: put validating buffers after flushingMarek Olšák2010-02-283-53/+37
| | | | | | | | Also cleaning up the nasty validation process.
* | r300g: use the atom size directly during emissionMarek Olšák2010-02-284-30/+31
| |
* | r300g: atomize invalidation of texture cachesMarek Olšák2010-02-285-8/+11
| |
* | r300g: atomize PVS flushMarek Olšák2010-02-285-27/+29
| | | | | | | | The first non-state atom. It's better and cleaner to have it.
* | r300g: add size parameter to the atom emit functionsMarek Olšák2010-02-285-28/+47
| | | | | | | | | | Maintaining a closer relationship between the atom size and what's passed in BEGIN_CS.
* | r300g: move the emission of GA_POINT_MINMAX into emit_fb_stateMarek Olšák2010-02-273-23/+7
| | | | | | | | | | The only practical limits are the ones derived from the currently-set framebuffer state.
* | r300g: put the emission of R300_US_OUT_FMT_UNUSED backMarek Olšák2010-02-272-2/+7
| | | | | | | | It wasn't such a good idea to remove it. :/
* | r300g: mark rasterizer_state as dirty only when it's not NULLMarek Olšák2010-02-271-1/+1
| |
* | r300g: always emit the correct max vertex index to avoid DRM errorsMarek Olšák2010-02-273-2/+13
| | | | | | | | Fixing bizarre reports that a vertex buffer is not large enough.
* | r300g: remove pointless "while"Marek Olšák2010-02-271-1/+1
| |
* | r300g: Atomize vertex shader.Corbin Simpson2010-02-248-60/+58
| |
* | r300g: Move CALLOCs to correct place.Corbin Simpson2010-02-241-8/+7
| |
* | r300g: prevent CS overflow when emitting the draw packetsMarek Olšák2010-02-243-18/+55
| | | | | | | | Signed-off-by: Corbin Simpson <[email protected]>
* | r300g: remove invalid .PHONY lineBrian Paul2010-02-241-2/+0
| | | | | | | | | | The $(COMPILER_ARCHIVE) target is not a phony target. This solves the unconditional re-making of libr300.a
* | r300: Update for UTIL_FORMAT_LAYOUT_xxx changes.José Fonseca2010-02-242-16/+4
| |
* | r300g: fix texture swizzling for the SRGB formatsMarek Olšák2010-02-241-4/+20
| |
* | r300g: fix draw_elements for "start" != 0Marek Olšák2010-02-231-7/+2
|/ | | | Reported-by: Andre Maasikas <[email protected]>
* Revert "r300g: rebuild winsys/pipe buffer handling and add buffer map"Dave Airlie2010-02-2214-600/+101
| | | | | | | | | | This reverts commit fff5be8e7b4557c221f2425dcafc2e7cbbba76ba. Probably went too soon with this, dileX reported OA not working for him it works here fine, but the optimisations I wanted aren't working properly yet so I'll fix that now. Signed-off-by: Dave Airlie <[email protected]>
* r300g: rebuild winsys/pipe buffer handling and add buffer mapDave Airlie2010-02-2214-101/+600
| | | | | | | | | | | | | This creates a cleaner winsys and drop the simple screen stuff. It makes r300g use pb_bufmgr structs and adds usage of the cached bufmgr for vertex/index buffers. It also avoids mapping too often. I'm not 100% sure this is perfect but it won't find its own bugs. Signed-off-by: Dave Airlie <[email protected]>
* r3OOg: support rendering of more than 65535 vertices per draw call (almost)Marek Olšák2010-02-222-29/+83
| | | | | | | | | | The path for VAP_ALT_NUM_VERTICES is also in place (and tested) but not enabled by default due to the missing support of this reg in the upstream kernel. Also, a non-zero BUFFER_BASE in the INDX_BUFFER packet3 hangs the machine. Am I missing something? Because of this, only draw_arrays can render more than 65535 vertices without the use of VAP_ALT_NUM_VERTICES.
* r300g: Remove unnecessary header.Vinson Lee2010-02-211-1/+0
|
* r300g: precompute framebuffer register valuesMarek Olšák2010-02-216-220/+250
|
* r300g: add all missing colorbuffer formatsMarek Olšák2010-02-212-83/+165
|
* r300g: make r300_translate_texformat privateMarek Olšák2010-02-213-235/+246
| | | | | | Unlikely to increase performance from inlining. And partially expose it through r300_is_sampler_format_supported.
* r300g: re-enable SRGB formatsMarek Olšák2010-02-211-1/+2
| | | | Ouch.
* r300g: fix rendering into the L8 and A8 texture formatsMarek Olšák2010-02-191-2/+2
| | | | RB3D_COLORPITCH.COLORFORMAT.I8 stores the C2 component.
* Revert "r300g: remove L8_UNORM from colorbuffer formats"Corbin Simpson2010-02-191-0/+1
| | | | | | | | This reverts commit fc427d23439a2702068209957f08990ea29fe21b. At least xorg uses this, and just because something is not used in OpenGL is *never* a valid reason to remove functionality from Gallium. If something lacks a test, go add a test, don't remove features.
* r300g: remove L8_UNORM from colorbuffer formatsMarek Olšák2010-02-191-1/+0
| | | | Not renderable in OpenGL anyway.
* r300g: add support for all missing non-FP sampler formatsMarek Olšák2010-02-183-124/+234
| | | | | The idea is to directly parse the format description in r300_translate_texformat and return ~0 if the format is unsupported.