summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/nv50
Commit message (Collapse)AuthorAgeFilesLines
* nv50/ir: add missing license headersChristoph Bumiller2011-09-1420-1/+400
|
* nv50,nvc0: handle PIPE_CAP_MIN/MAX_TEXEL_OFFSETChristoph Bumiller2011-09-141-0/+4
|
* nvc0: hook up to new shader code generatorChristoph Bumiller2011-09-142-0/+14
| | | | | | Also includes loading of shared shader library code (used for f64 and integer division) and setting up the immediate array buffer which is appended to the code.
* nv50/ir: import new shader backend codeChristoph Bumiller2011-09-1421-1/+13395
|
* nouveau: make data argument of nouveau_context::push_data constChristoph Bumiller2011-09-142-2/+2
|
* nv50/nvc0: add support for R4A4_UNORM and A4R4_UNORM formatsMarcin Slusarz2011-09-131-0/+8
| | | | R4A4 is needed by OSD in mplayer's xvmc output
* gallium: add PIPE_CAP_MAX_TEXTURE_ARRAY_LAYERSMarek Olšák2011-09-101-1/+1
| | | | v2: remove PIPE_CAP_ARRAY_TEXTURES in favor of the new CAP.
* nv50: fix screen->blitctx memory leakMarcin Slusarz2011-09-081-0/+2
|
* nv50,nvc0: fix multisample format hackChristoph Bumiller2011-08-311-1/+1
| | | | | | | | Advertising different format support based on sample count was a bad idea, it made resolve to window work, but resolve to anything else would fail. See 9f4998639c3c47f0b7ee3e2a29b7f3609d3f7796.
* nouveau: use PRIu64 for printing uint64_tChristoph Bumiller2011-08-301-1/+1
|
* nv50: add support for linear textures and render targetsChristoph Bumiller2011-08-305-13/+60
|
* nv50: align pitch of linear surfaces correctlyChristoph Bumiller2011-08-301-1/+2
|
* nv50: handle TGSI_OPCODE_ROUNDChristoph Bumiller2011-08-305-3/+10
| | | | Will round to nearest-even.
* nv50,nvc0: add states mask to state validation functionChristoph Bumiller2011-08-304-12/+16
| | | | | | This prevents null dereferences in validation of interdependent state after a switch to a pipe context where we mark all state as dirty but where not all state is valid / set yet.
* nv50,nvc0: reject R8G8B8A8/X8_UNORM for multisample surfacesChristoph Bumiller2011-08-301-1/+6
| | | | | | The window system buffer will be BGRA and applications will try to directly resolve to it, which would trigger an INVALID_OPERATION in BlitFramebuffer if the multisample renderbuffer is RGBA.
* android: add support for nouveauChia-I Wu2011-08-271-0/+37
| | | | Compile tested only.
* nouveau: share the source listsChia-I Wu2011-08-273-47/+27
| | | | | For each driver, factor out C_SOURCES from Makefile to Makefile.sources, and let Makefile and SConscript share it.
* nv50: fix potential null deref in insn modifer optimization passChristoph Bumiller2011-08-191-2/+4
| | | | Bug introduced in 34980cd153050111edc545545ddff11f5b68347e.
* nv50: don't drop flags definition when merging SAT with ADD/MADChristoph Bumiller2011-08-171-0/+2
|
* 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
|