summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/nv50
AgeCommit message (Collapse)Author
2009-12-14nouveau: avoid running out of relocsMaarten Maathuis
- Added flush notify functions for NV30 and NV40. - Flushing mid frame will call flush notify, which will resubmit all relocs. - We don't try to recover from reloc failure yet.
2009-12-14nv50: be more cautious about using reg_instanceChristoph Bumiller
Trying to free part of nv50_pc->reg_instances[] for an nv50_reg representing an indirect constant resulted in a segmentation fault.
2009-12-14nv50: store immediates as uint32Christoph Bumiller
Sometimes we want non-float immediates, hacking them into floats isn't nice. Sorry, this should have already been committed before.
2009-12-13nouveau: nv50: Add missing ctor_immd_4u32 functionPatrice Mandin
2009-12-13nv50: add proper zslice offset in miptree_surfaceChristoph Bumiller
2009-12-13nv50: use m2mf z pos instead of calculating offset manuallyChristoph Bumiller
2009-12-13nv50: add craziness for non-constant TXB and TXLChristoph Bumiller
If lod or bias can be non-constant across a quad of fragments, we need to execute TEX separately for each value. Don't ask why.
2009-12-12nv50: support TXB and TXLChristoph Bumiller
... and don't set the 'live' flag for TEX anymore, we'd have to know if results affect the inputs for another TEX, and I'm not going to do that kind of analysis now.
2009-12-12nv50: add S8Z24 depth texture format tooChristoph Bumiller
2009-12-12nv50: fix depth comparison func TSC bitsChristoph Bumiller
Unfortunately it seems that if depth comparison is active and we read a 2D texture, i.e. provide only 2 inputs, the second is used for comparison ...
2009-12-12nv50: add src_mask case for IF opcodeChristoph Bumiller
2009-12-12nv50: plug memory leak in miptree creation/destructionChristoph Bumiller
Keeping this dynamically allocated for texture arrays. Since we don't use it to store zslice offsets anymore it's either 1 or 6 integers (cube) ...
2009-12-12nv50: use copies of tgsi src nv50_regsChristoph Bumiller
So we can use the 'mod' member without concern if a source is used multiple times in 1 insn.
2009-12-12nv50: support vertex program texturesChristoph Bumiller
2009-12-08nouveau: use boolean instead of boolRoland Scheidegger
2009-12-04Merge branch 'gallium-noblocks'Roland Scheidegger
Conflicts: src/gallium/state_trackers/xorg/xorg_exa.c
2009-12-02gallium: adapt nv drivers to interface cleanupsRoland Scheidegger
2009-12-01Merge commit 'origin/tgsi-simplify-ext'Keith Whitwell
Conflicts: src/gallium/drivers/r300/r300_vs.c
2009-12-01nv: Update for renamed sampler/texture state setters.Michal Krol
2009-11-29nv50: update linkage on rasterizer changeChristoph Bumiller
We need to update VP_RESULT_MAP and/or COORD_REPLACE_MAP when light_twoside and/or point_sprite are changed.
2009-11-29nv50: match VP outputs to FP inputs ourselvesChristoph Bumiller
For each FP input, don't assume that the VP output will be at the same position, but scan the semantics instead, then put the correct output reg indices into VP_RESULT_MAP. Position is still assumed to be the first output/input. See 07fafc7c9346aa260829603bf3188596481e9e62, which renders previous assumptions incorrect.
2009-11-29nv50: don't permanently negate src in emit_ddyChristoph Bumiller
2009-11-27nv50: do conversion of last insn to 64 bit format firstChristoph Bumiller
Simplifies things since the second to last one will then be converted in the subsequent pass that ensures alignment automatically.
2009-11-27nv50: bswap32 the polygon stipple patternChristoph Bumiller
The hardware wants the pattern the same way it is passed to glPolygonStipple.
2009-11-26gallium: fix more statetrackers/drivers for not using texture ↵Roland Scheidegger
width/height/depth arrays
2009-11-24tgsi: rename fields of tgsi_full_src_register to reduce verbosityKeith Whitwell
SrcRegister -> Register SrcRegisterInd -> Indirect SrcRegisterDim -> Dimension SrcRegisterDimInd -> DimIndirect
2009-11-24tgsi: rename fields of tgsi_full_dst_register to reduce verbosityKeith Whitwell
DstRegister -> Register DstRegisterInd -> Indirect
2009-11-24tgsi: rename fields of tgsi_full_declaration to reduce verbosityKeith Whitwell
DeclarationRange -> Range
2009-11-24tgsi: rename fields of tgsi_full_instruction to avoid excessive verbosityKeith Whitwell
InstructionPredicate -> Predicate InstructionLabel -> Label InstructionTexture -> Texture FullSrcRegisters -> Src FullDstRegisters -> Dst
2009-11-24tgsi: reduce repetition of structure name in its membersKeith Whitwell
Rename Semantic.SemanticName to Semantic.Name. Similar for SemanticIndex, and the members of the tgsi_version struct.
2009-11-24gallium: try and update r300 and nv drivers for tgsi changesKeith Whitwell
It would be nice if these drivers built under the linux-debug header so that these types of interface changes can be minimally propogated into those drivers by people without the hardware. They don't have to generate a working driver -- though a command-dumping winsys would be an excellent for regression checking.
2009-11-09nv50: clarify data for method 0x121cChristoph Bumiller
2009-11-07nv50: enable all 32 threads of a warpChristoph Bumiller
This should be the default setting. See also 7d967b9b7c08aea2a471c5bf6aced8bfafdae874.
2009-11-04nv50: fix shader emit_tex for cube texturesChristoph Bumiller
2009-11-04nv50: add abs-modifier for emit_minmaxChristoph Bumiller
2009-11-04nv50: add 3d texture tiling and mip-mappingChristoph Bumiller
Mip-mapped 3D textures are not arrays of 2D layers with a mip-map layout like 2D textures, therefore we cannot use image_nr == depth for them. Making use of "volume tiling" modes now, the allowed modes are 0xZY where Z <= 5 and y <= 5.
2009-11-01nv50: handle TGSI_SEMANTIC_FACEChristoph Bumiller
2009-11-01nv50: make IF condition safeChristoph Bumiller
Don't assume that a SET that writes to IF's argument directly precedes the IF.
2009-11-01nv50: implement TGSI_OPCODE_AND/OR/XORChristoph Bumiller
Will use AND for gl_FrontFacing, the face input is either 0 or 0xffffffff.
2009-10-31nv50: fix textures with block size != cppChristoph Bumiller
First, using width * block size as pitch is evidently wrong if a block contains more than 1 texel. For tiled textures, since a block occupies a contiguous area of memory, y addressing in m2mf has to be done by block index, not the y coordinate itself. This should fix compressed textures.
2009-10-31nv50: use SIFC also for shader uploadChristoph Bumiller
Adds a more generic SIFC transfer function.
2009-10-31nv50: make MRTs workChristoph Bumiller
We have to indicate to the hw whether the FP exports multiple colour results. Method 0x121c is used to specify the number of RTs. Also deactivate zeta explicitly if there's no zsbuf.
2009-10-28nv50: activate more lanes in a warpChristoph Bumiller
Some cards have crippling defaults set and use only 4 of 32 lanes. This should activate 16 on these. Those that allow 32 by default should still do so. Found out by Marcin Kościelnicki.
2009-10-23nv50: do SIGN_SET as one instructionChristoph Bumiller
2009-10-23nv50: fix saturation outside of tx_insn caseChristoph Bumiller
2009-10-23nv50: allow all 127 TEMP regsChristoph Bumiller
We should really learn to not waste so many though.
2009-10-23nv50: fix address reg codeChristoph Bumiller
Contained some rather obvious thinking errors before, and didn't consider offsets from TGSI ADDRESS regs.
2009-10-23nv50: add depth texture formats, and a few others, tooChristoph Bumiller
2009-10-23gallium: remove the swizzling parts of ExtSwizzleKeith Whitwell
These haven't been used by the mesa state tracker since the conversion to tgsi_ureg, and it seems that none of the other state trackers are using it either. This helps simplify one of the biggest suprises when starting off with TGSI shaders.
2009-10-22nv50: handle PIPE_TEX_FILTER_ANISO caseChristoph Bumiller
Set the same bits as for linear filtering (in addition to max anisotropy), and 2 unknown bits I've seen set.