summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/master' into pipe-videoChristian König2011-06-0925-690/+869
|\ | | | | | | | | | | Conflicts: src/gallium/tests/unit/u_format_test.c src/gallium/winsys/r600/drm/r600_hw_context.c
| * svga: fix typos, update commentsBrian Paul2011-06-081-7/+5
| |
| * r600g: fix mixup in GPR resource reg setupAlex Deucher2011-06-081-3/+10
| | | | | | | | | | | | | | GLOBAL_GPR regs should be 0. Need to set the number of temp regs in SQ_GPR_RESOURCE_MGMT_1. Signed-off-by: Alex Deucher <[email protected]>
| * gallium: s/bool/boolean/Brian Paul2011-06-086-12/+12
| |
| * r600g: missed one line in eg dyn gpr fallback.Dave Airlie2011-06-081-0/+1
| | | | | | | | | | | | need more sleep or something. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: condition evergreen dyn gpr resource managementDave Airlie2011-06-082-2/+33
| | | | | | | | | | | | | | So only with kernel version 2.7 can this work, thanks to Alex for pointing that out. Also add a workaround for a hw bug. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: enable dynamic GPR resource management on evergreenDave Airlie2011-06-082-18/+7
| | | | | | | | | | | | | | | | | | | | | | Evergreen can do this as well as cayman, so we should enable it. This fixes a gpu lockup with glsl-vs-vec4-indexing-temp-dst-in-nested-loop-combined.shader_test I need to add a better workaround for r600/r700. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: take alpha ref update out of line.Dave Airlie2011-06-081-5/+4
| | | | | | | | Signed-off-by: Dave Airlie <[email protected]>
| * r600g: split resource emit path from main register emit pathDave Airlie2011-06-081-0/+4
| | | | | | | | | | | | | | | | | | Since resources don't generally vary in size, this splits the emit path, it also takes into a/c that texture and vertex resources have different number of relocs, and avoids emitting the extra reloc for vertex resources. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: inline r600_bo_reference.Dave Airlie2011-06-081-2/+13
| | | | | | | | | | | | This relies on the reference member being first, so document it. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: remove pre-r6xx asic families and pci idsAlex Deucher2011-06-071-32/+0
| | | | | | | | | | | | Not sure why these were included originally. Signed-off-by: Alex Deucher <[email protected]>
| * r300g: consolidate deducing chipset infoMarek Olšák2011-06-074-392/+107
| | | | | | | | Use the new PCI ID table, make it simpler.
| * r600g: add missing r300 familiesMarek Olšák2011-06-071-0/+5
| | | | | | | | Wondering why r600g needs to include r300_pci_ids.h
| * Merge branch 'master' of ssh://git.freedesktop.org/git/mesa/mesaStéphane Marchesin2011-06-065-144/+116
| |\
| | * r600g: use an enabled list to track enabled blocks.Dave Airlie2011-06-071-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | At the end of flushing we were scanning over 450 blocks with generally about 50 enabled. This reduces the scanning to just the list of enabled blocks. Signed-off-by: Dave Airlie <[email protected]>
| | * r600g/winsys: overhaul resource range/blocks.Dave Airlie2011-06-071-0/+4
| | | | | | | | | | | | | | | | | | | | | There isn't much point taking the overhead of range/block lookups on resources we aren't going to be getting resource registers at wierd offsets. Signed-off-by: Dave Airlie <[email protected]>
| | * r600g: move resource setting to its own structures.Dave Airlie2011-06-075-144/+110
| | | | | | | | | | | | | | | | | | | | | | | | | | | resource setting could be a fair bit more lightweight, this patch just separates the resource structs from the standard reg tracking structs in the driver, later patches will improve the winsys. Signed-off-by: Dave Airlie <[email protected]>
| * | i915g: Do generic remapping.Stéphane Marchesin2011-06-063-92/+119
| |/ | | | | | | | | | | With complex shaders there are often "holes" in the fs inputs, and we only have 8 tex coorsd to map those to. To fix this, we remap fs inputs to [0..8]. This lets us to run many more GLSL programs.
| * i915g: implement more opcodes.Stéphane Marchesin2011-06-061-12/+82
| |
| * i915g: implement TGSI_OPCODE_SEQ.Stéphane Marchesin2011-06-061-0/+28
| |
| * i915g: handle varyings properly.Stéphane Marchesin2011-06-062-9/+27
| |
| * i915g: add missing and unsupported PIPE_CAPs to avoid debug messages.Stéphane Marchesin2011-06-061-0/+5
| |
| * i915g: don't destroy a texture buffer if it's NULL.Stéphane Marchesin2011-06-061-1/+2
| |
| * llvmpipe: use $(CXX) instead of g++ for linking.Stéphane Marchesin2011-06-061-1/+1
| | | | | | | | This allows setting the path to the C++ compiler.
| * softpipe: Anisotropic filtering extension.Andreas Faenger2011-06-062-6/+336
| | | | | | | | | | | | | | Reference implementation which produces high quality renderings. Based on Higher Quality Elliptical Weighted Avarage Filter (EWA). Signed-off-by: Brian Paul <[email protected]>
| * nv50: fix nv50_sampler_state_delete array overflowMarcin Slusarz2011-06-061-1/+1
| | | | | | | | num_samplers is array of 3 elements, not 5
* | r600g: some merge fixesChristian König2011-06-052-3/+3
| |
* | Merge remote-tracking branch 'origin/master' into pipe-videoChristian König2011-06-0526-436/+1516
|\|
| * r600g: move spi update to only when states change.Dave Airlie2011-06-031-2/+9
| | | | | | | | | | | | | | This updates the spi state after ps/vs binding or rasteriser state change. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: make conv pipe prim table driven.Dave Airlie2011-06-031-32/+20
| | | | | | | | | | | | | | This is a lot more branch predictor friendly, it actually showed up in cachegrind profiles. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: sampler and texture state doesn't need a range/block.Dave Airlie2011-06-034-34/+50
| | | | | | | | | | | | | | | | | | These are handled separately in the winsys, so don't need the calculations done at this point. this manifested as a crash in point-sprite, Thanks to XoD on #radeon for pointing it out. Signed-off-by: Dave Airlie <[email protected]>
| * softpipe: add a better fake implementation of fencesMarek Olšák2011-06-022-6/+5
| | | | | | | | | | | | | | | | | | | | The flush function, when asked for, should not return a NULL fence. NULL can only be returned if fences are not implemented, and st/mesa doesn't call any of the fence functions if it receives a NULL fence (because some drivers don't even set the fence hooks). ARB_sync is exposed if fence_finish is set.
| * r600g: add spi state and move spi/vgt to modify registerDave Airlie2011-06-022-16/+35
| | | | | | | | | | | | | | | | | | This modifies the VGT state and move the SPI setup to its own discrete state. It then just sets the SPI state up and the VGT state up once and modifies them thereafter. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: decrease CPU time on set buffer resourcesDave Airlie2011-06-025-24/+92
| | | | | | | | | | | | | | | | This splits the initialisation and the setting of values in the resource buffers. We only should end up initialising once and updateing with new values when needed. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: work out range/block etc at state build time.Dave Airlie2011-06-022-6/+15
| | | | | | | | | | | | | | | | This moves the overhead of working out the range/block to state build time, it also allows the compiler to use constants for a lot of things instead of working them out each time. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: deinline r600_pipe_state_add_reg.Dave Airlie2011-06-022-12/+17
| | | | | | | | | | | | | | This is going to get too big to be a forced inline. Also going to remove it from some hotpaths. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: prepare for passing ctx into _r600_pipe_state_add_regDave Airlie2011-06-025-18/+37
| | | | | | | | | | | | | | | | This moves the functions down the file, and also adds a ctx parameter. This is precursor patch just moving stuff around and getting it ready. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: migrate macros from r600_priv.h to r600.hDave Airlie2011-06-021-0/+11
| | | | | | | | | | | | this is just an precursor change for some later patches. Signed-off-by: Dave Airlie <[email protected]>
| * r600g: optimise state setting in r600_draw_vbo.Dave Airlie2011-06-022-11/+21
| | | | | | | | | | | | | | This drop the r600_draw_vbo CPU usage on a run of nexuiz from 1.40% to 0.72% in sysprof for me on my Fusion APU. Signed-off-by: Dave Airlie <[email protected]>
| * r300g: remove unused debug option DBG_UPLOADMarek Olšák2011-06-012-15/+11
| | | | | | | | And renumber the options.
| * r600g: add llano supportAlex Deucher2011-05-314-0/+52
| | | | | | | | Signed-off-by: Alex Deucher <[email protected]>
| * r300g: set squared microtiling for the dummy zbufferMarek Olšák2011-05-311-1/+1
| | | | | | | | The pitch of 4 is allowed for squared microtiling only.
| * r300g: log when getting unsupported texture formatMarek Olšák2011-05-311-4/+14
| |
| * trace: implement texture_barrierMarek Olšák2011-05-291-0/+16
| |
| * trace: implement render_conditionMarek Olšák2011-05-291-0/+20
| |
| * r300g: clear can be killed by render conditionMarek Olšák2011-05-293-7/+35
| | | | | | | | | | Fixes piglit: - NV_conditional_render/clear
| * r300g: fix occlusion queries when depth test is disabled or zbuffer is missingMarek Olšák2011-05-292-6/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From now on, depth test is always enabled in hardware. If depth test is disabled in Gallium, the hardware Z function is set to ALWAYS. If there is no zbuffer set, the colorbuffer0 memory is set as a zbuffer to silence the CS checker. This fixes piglit: - occlusion-query-discard - NV_conditional_render/bitmap - NV_conditional_render/drawpixels - NV_conditional_render/vertex_array
| * r300g: cleanup render_condition a bitMarek Olšák2011-05-291-5/+3
| |
| * r300g: remove fake occlusion queries (debug option)Marek Olšák2011-05-293-58/+7
| |
| * r300g: remove debug option DBG_FALLMarek Olšák2011-05-292-2/+1
| |