summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/nv50
Commit message (Collapse)AuthorAgeFilesLines
* nv50,nvc0: never convert in resource copy when format sizes matchChristoph Bumiller2011-08-071-1/+8
| | | | | | | If there are any cases left where the st thinks that RGBA -> BGRA will swap components, it will get what it deserves. Now the GPU's 2D engine goes unused. What a shame.
* Merge branch 'glsl-to-tgsi'Bryan Cain2011-08-041-0/+2
|\ | | | | | | | | | | Conflicts: src/mesa/state_tracker/st_atom_pixeltransfer.c src/mesa/state_tracker/st_program.c
| * gallium: add PIPE_SHADER_CAP_INTEGERSBryan Cain2011-08-011-0/+2
| |
* | nv50: implement resource_resolve with custom blitChristoph Bumiller2011-08-048-11/+559
| |
* | nouveau: hook up video decoding with nouveau_contextChristoph Bumiller2011-07-212-0/+4
| | | | | | | | | | This doesn't include nvfx since its context struct is not derived from common nouveau_context (yet).
* | nv50: fix bogus error message about 3d surfacesChristoph Bumiller2011-07-161-1/+3
| |
* | nv50,nvc0: extensive surface format renaming to get consistencyChristoph Bumiller2011-07-145-137/+167
| | | | | | | | Now the component ordering is consistent and matches gallium again.
* | nv50,nvc0: add support for multi-sample resourcesChristoph Bumiller2011-07-1411-70/+178
| |
* | nv50,nvc0: add correct storage type for Z32_FLOATChristoph Bumiller2011-07-141-0/+3
| |
* | nv50,nvc0: unify nvc0_miptree and nv50_miptree structsChristoph Bumiller2011-07-143-143/+286
| | | | | | | | | | Share some functions and restructure miptree creation a little. Prepare for multi-sample resources.
* | nv50,nvc0: don't advertise unaligned texture format supportChristoph Bumiller2011-07-141-12/+12
| | | | | | | | | | | | | | Because we don't support them. For instance, R32G32B32 is not R32G32B32X32 as was assumed. Add support for R8G8B8X8_UNORM instead of R8G8B8_UNORM surfaces.
* | nv50,nvc0: use screen instead of context for flush notifierChristoph Bumiller2011-07-074-14/+11
| | | | | | | | | | Context may become NULL and we still have to be able to flush pending fences.
* | nv50: more formats for nv50_resource_copy_region conversion pathChristoph Bumiller2011-07-071-16/+7
| | | | | | | | | | | | | | It's not supposed to do conversion, but st sometimes asks us to. Sometimes conversion is even wrong (e.g. between UNORM and SRGB). This should now include all formats the 2D engine supports.
* | nv50,nvc0: prevent pushbuf flush during ctx reloc emissionChristoph Bumiller2011-06-244-11/+16
|/ | | | | | Should unify this too, but will delay that until the planned libdrm_nouveau/winsys changes which are likely to cause major changes to this bo validation code too.
* nv50: fix copy/paste error in nv50_gmtyprog_validateChristoph Bumiller2011-06-141-2/+4
| | | | Used the vertprog instead of gmtyprog.
* nv50: fix nv50_sampler_state_delete array overflowMarcin Slusarz2011-06-061-1/+1
| | | | num_samplers is array of 3 elements, not 5
* nv50: fix emit_add_a16 to emit correct source regTrevor Davenport2011-05-271-2/+2
| | | | | | | | | | | emit_add_a16 was using the incorrect source. This caused adds in the form of: add u16 $a0 s32 $a1 u32 0x00000200 to have a source AREG of $a0 instead of $a1. Fixes World of Warcraft in OpenGL and D3D without GLSL.
* nv50: add support for user clip planesMaxim Levitsky2011-05-194-1/+40
| | | | | | | | | | | | | | | Clip distance is calculated each time vertex position is written which is suboptiomal is some cases but very safe. User clip planes are an obsolete feature anyway. Every time number of clip planes increases, the vertex program is recompiled. That ensures no overhead in normal case (no user clip planes) and reasonable overhead otherwise. Fixes 3D windows in compiz, and reflection effect in neverball. Also fixes compiz expo plugin when windows were dragged and each window shown 3 times.
* Remove redundant util_unsigned_logbase2Matt Turner2011-05-121-1/+1
| | | | | | | util_logbase2 is exactly the same function. Signed-off-by: Matt Turner <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* nv50: fix mistake in pipe caps for pre-NVA0 cardsMaxim Levitsky2011-05-101-0/+1
| | | | Introduced by 531b12af35a832bcd8928a4919d76f8e9405cde0.
* nv50/nvc0: make transfers aware of PIPE_TRANSFER_MAP_DIRECTLYMarcin Slusarz2011-05-091-0/+3
| | | | | | | | | | If state tracker asked us to map resource directly and we can't do it (because of tiling), return NULL instead of doing full transfer - state tracker should handle it and fallback to some other method or repeat transfer without PIPE_TRANSFER_MAP_DIRECTLY. It greatly improves performance of xorg state tracker on nv50+, because its fallback (DFS/UTS) is much faster than full transfer.
* nv50,nvc0: activate seamless cube map filteringChristoph Bumiller2011-05-062-1/+39
|
* gallium/xorg st/nv50: add PIPE_BIND_CURSORMarcin Slusarz2011-05-061-1/+9
| | | | | We need to distinguish surfaces for mouse cursors from scanouts, because nv50 hardware display engine ignores tiling flags.
* nv50,nvc0: advertise GL_FIXED vertex buffers as supportedChristoph Bumiller2011-05-031-0/+18
| | | | | We'll handle them like f64 vertex buffers, by falling back to copying vertex data to the command buffer through translate.
* gallium/nouveau: fix printf warningsMarek Olšák2011-04-271-1/+1
|
* gallium: add fallback for copying buffers to all driversMarek Olšák2011-04-211-0/+8
| | | | | | Just to keep drivers working. Reviewed-by: Jakob Bornecrantz <[email protected]>
* gallium: include u_format.h for util_format_is_supportedMarcin Slusarz2011-04-171-0/+1
| | | | | | | | | | | | Without it gcc complains: nv50_screen.c: In function ‘nv50_screen_is_format_supported’: nv50_screen.c:48: warning: implicit declaration of function ‘util_format_is_supported’ and handles it wrongly - util_format_is_supported returns boolean, which is typedef'ed to uchar, but function without prototype is assumed to return int. For me nv50_screen_is_format_supported was returning true for float formats without --enable-texture-float...
* nv50,nvc0: add new texture and render target formatsChristoph Bumiller2011-04-171-2/+116
|
* nv50,nvc0: fix normalized RG16 and RGBA32 texture format entriesChristoph Bumiller2011-04-171-4/+4
|
* gallium: add and use generic function for querying patented format support (v2)Marek Olšák2011-04-151-11/+2
| | | | v2: Unsigned floats are allowed regardless of the configure switch.
* nv50,nvc0: silence shader debug outputChristoph Bumiller2011-04-108-49/+52
|
* nv50-nvc0: make use of COLOR_MASK,BLEND_ENABLE_COMMONChristoph Bumiller2011-04-104-11/+18
|
* nvc0: shrink CSOs a littleChristoph Bumiller2011-04-101-3/+3
|
* nv50,nvc0: identify some line rasterization stateChristoph Bumiller2011-04-103-1/+4
| | | | Fixes width of non-smooth (aliased) lines on nvc0.
* nv50,nvc0: don't insert instructions after the block terminatorChristoph Bumiller2011-04-103-4/+15
|
* nv50: prevent NV_OP_SELECT from having flags_def definedBryan Cain2011-04-041-0/+1
|
* gallium: set PIPE_CAP_MIXED_COLORBUFFER_FORMATS in some driversMarek Olšák2011-04-011-0/+1
|
* nv50: fix for GPR allocation granularity being 16 bitChristoph Bumiller2011-03-311-3/+9
|
* nv50: copy regalloc fixes from nvc0Christoph Bumiller2011-03-312-80/+216
| | | | | | | Should fix gnome-shell's fade shader. Unification of the shader backend which is supposed to remove the code duplication is still WIP.
* nv50,nvc0: implement colour clamping controlsChristoph Bumiller2011-03-298-6/+52
|
* nv50,nvc0: implement texture barrierChristoph Bumiller2011-03-191-0/+12
|
* nv50,nvc0: don't assert on cso with 0 vertex elementsChristoph Bumiller2011-03-132-4/+2
|
* nv50,nvc0: fix pipe context switchChristoph Bumiller2011-03-131-5/+32
|
* nv50,nvc0: clean up flushesChristoph Bumiller2011-03-132-15/+11
|
* nv50,nvc0: add some missing resource referencingChristoph Bumiller2011-03-132-3/+30
|
* gallium: remove flags from the flush functionMarek Olšák2011-03-111-5/+5
| | | | | | | | | | The drivers have been changed so that they behave as if all of the flags were set. This is already implicit in most hardware drivers and required for multiple contexts. Some state trackers were also abusing the PIPE_FLUSH_RENDER_CACHE flag to decide whether flush_frontbuffer should be called. New flag ST_FLUSH_FRONT has been added to st_api.h as a replacement.
* gallium: remove the geom_flags param from is_format_supportedMarek Olšák2011-03-111-1/+1
|
* gallium: kill is_resource_referencedMarek Olšák2011-03-112-18/+0
| | | | Only st/xorg used it and even incorrectly with regards to pipelined transfers.
* nv50: add back initialization of redefine_user_bufferChristoph Bumiller2011-03-091-0/+2
| | | | Got lost in f80c03e1875fe96ff2f4c022e3cb76357828140d.
* gallium: split CAP_INSTANCE_DRAWING into INSTANCEID and INSTANCE_DIVISORMarek Olšák2011-03-051-1/+2
| | | | | | | | ARB_instanced_arrays is a subset of D3D9. ARB_draw_instanced is a subset of D3D10. The point of this change is to allow D3D9-level drivers to enable ARB_instanced_arrays without ARB_draw_instanced.