summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r600
Commit message (Collapse)AuthorAgeFilesLines
* r600g: Fix include styleKai Wasserbäch2011-08-299-66/+66
| | | | | | | | | | | As explained in the thread starting at [0], the internal include style should be »#include "path/to/header.h"« for non-system includes. [0] <http://news.gmane.org/find-root.php?message_id=%3c4E5802BE.6020206%40vmware.com%3e> Signed-off-by: Kai Wasserbäch <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* r600g: Handle PIPE_TRANSFER_MAP_DIRECTLY.Michel Dänzer2011-08-261-0/+3
| | | | | | | | If the state tracker tries to map the resource directly but we can't or don't want to do that, fail to create a transfer. Signed-off-by: Michel Dänzer <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* g3dvl: Rework the decoder interface part 2/5Christian König2011-08-261-0/+2
| | | | | | | | Implement PIPE_CAP_NUM_BUFFERS_DESIRED giving the decoder control over the number of buffers a state tracker should allocate. Signed-off-by: Christian König <[email protected]> Reviewed-by: Younes Manton <[email protected]>
* r600g: fix replace_gpr_with_pv_psVadim Girlin2011-08-251-1/+1
| | | | | | | | | | Instructions with 3 source operands have no write mask, so we may replace their destinations with PV/PS in the next group even if their dst.write is 0. Note: This is a candidate for the 7.11 branch. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
* r600g: fix check_and_set_bank_swizzleVadim Girlin2011-08-251-10/+20
| | | | | | | | | | Need to do full check when not all bank swizzles in the group are forced (e.g. when trying to merge interp_* group with the next instruction) Note: This is a candidate for the 7.11 branch. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
* android: add support for r600gChia-I Wu2011-08-251-0/+42
| | | | | | | | Tested with a Radeon HD 6250. SurfaceFlinger (the display server and compositor) works. 2D apps with RGB or RGBA visuals work. As for 3D apps, some work but some don't (with serious rendering defects). Reviewed-by: Marek Olšák <[email protected]>
* r600g: share the source listChia-I Wu2011-08-253-31/+19
| | | | | | | Factor out C_SOURCES from Makefile to Makefile.sources, and let Makefile and SConscript share it. Reviewed-by: Marek Olšák <[email protected]>
* r600g: fill out missing entries in opcode tables.Dave Airlie2011-08-241-0/+36
| | | | | | this just adds the missing opcodes as unsupported. Signed-off-by: Dave Airlie <[email protected]>
* r600g: don't allocate separate depth and stencil for transfer textures on EGMarek Olšák2011-08-191-1/+2
| | | | | | | | The state tracker expects depth and stencil pixels interleaved. Evergreen can bind an interleaved depth-stencil resource as a colorbuffer, but not as a zbuffer. The hardware can do the interleaving for us when decompressing.
* r600g: finally enable float depth buffers on evergreenMarek Olšák2011-08-191-0/+11
|
* r600g: rename resource -> view in create_sampler_viewMarek Olšák2011-08-192-32/+26
| | | | | The sampler view is not a resource. Also remove the unused desc variable.
* r600g: hack around a problem with texture alignmentMarek Olšák2011-08-191-0/+10
|
* r600g: simplify the conditionals determining array modeMarek Olšák2011-08-191-20/+11
|
* r600g: put depth and stencil into one backing bufferMarek Olšák2011-08-191-10/+17
| | | | For DRI2 sharing.
* r600g: fix depth-stencil on evergreenMarek Olšák2011-08-194-55/+99
| | | | | | | | | | | | | | Such that it actually works in apps which use both. A separate buffer is allocated for stencil. The only exception is the window-system-provided depth-stencil buffer, where depth and stencil share the same buffer. This fixes: - fbo-depthstencil-GL_DEPTH24_STENCIL8-clear - fbo-depthstencil-GL_DEPTH24_STENCIL8-drawpixels-FLOAT-and-USHORT - fbo-depthstencil-GL_DEPTH24_STENCIL8-readpixels-24_8 - fbo-depthstencil-GL_DEPTH24_STENCIL8-readpixels-FLOAT-and-USHORT
* r600g: fix a possible crash in r600_adjust_gprsMarek Olšák2011-08-191-1/+1
|
* r600g: implement NV_primitive_restart functionality (v2)Marek Olšák2011-08-183-1/+9
| | | | | | | | | Needed for GL3. v2: evergreen support I don't set PA_SU_SC_MODE_CNTL.MULTI_PRIM_IB_ENA. piglit/primitive-restart does pass though. Tested on RV730 and EG-REDWOOD.
* r600g: rename bc -> bytecodeMarek Olšák2011-08-166-485/+485
| | | | It took me a while to figure out what it stands for.
* r600g: expose ARB_ES2_compatibility by claiming fixed-point format supportMarek Olšák2011-08-162-1/+1
| | | | | | I also needed to make some changes in u_vbuf_mgr in order to override the caps from the driver and enable the fallback even though the driver claims the format is supported.
* u_blitter: rename util_blitter_copy_region -> util_blitter_copy_textureMarek Olšák2011-08-161-2/+2
|
* r600g: consolidate two files r600d.hMarek Olšák2011-08-161-1/+55
|
* r600g: set read/write usage flags for each relocationMarek Olšák2011-08-165-505/+531
| | | | | | This takes advantage of the new GEM_WAIT ioctl when mapping buffers. Reviewed-by: Alex Deucher <[email protected]>
* r600g: enable thread offloadingMarek Olšák2011-08-163-5/+9
| | | | Reviewed-by: Alex Deucher <[email protected]>
* r600g: undefine RADEON_CTX_MAX_PM4Marek Olšák2011-08-161-2/+0
| | | | | | winsys/radeon has its own definition. Reviewed-by: Alex Deucher <[email protected]>
* r600g: don't include radeon_drm.h and xf86drm.hMarek Olšák2011-08-161-3/+0
| | | | Reviewed-by: Alex Deucher <[email protected]>
* r600g: remove an unused parameter from r600_bo_destroyMarek Olšák2011-08-167-14/+11
| | | | Reviewed-by: Alex Deucher <[email protected]>
* r600g: merge radeon_bo with r600_boMarek Olšák2011-08-161-1/+1
| | | | Reviewed-by: Alex Deucher <[email protected]>
* r600g: use buffer_map/unmap from radeon_winsysMarek Olšák2011-08-166-10/+13
| | | | | | This also drops the unneeded bo_busy/wait functions. Reviewed-by: Alex Deucher <[email protected]>
* r600g: set the flush callback in radeon_winsysMarek Olšák2011-08-162-4/+19
| | | | | | I have also renamed the winsys function. Reviewed-by: Alex Deucher <[email protected]>
* r600g: emit CS using radeon_winsysMarek Olšák2011-08-161-2/+2
| | | | Reviewed-by: Alex Deucher <[email protected]>
* r600g: remove struct r600_relocMarek Olšák2011-08-161-13/+2
| | | | | | That is really private to winsys/radeon. Reviewed-by: Alex Deucher <[email protected]>
* r600g: let radeon_winsys maintain the list of relocationsMarek Olšák2011-08-161-1/+2
| | | | Reviewed-by: Alex Deucher <[email protected]>
* r600g: remove now-unused r600_context::fenced_boMarek Olšák2011-08-161-1/+1
| | | | Reviewed-by: Alex Deucher <[email protected]>
* r600g: put radeon_winsys in screen::winsys, don't include drm_driver in the pipeMarek Olšák2011-08-166-31/+34
| | | | Reviewed-by: Alex Deucher <[email protected]>
* r600g: cleanup includes in winsysMarek Olšák2011-08-162-8/+2
| | | | Reviewed-by: Alex Deucher <[email protected]>
* r600g: first step into winsys/radeonMarek Olšák2011-08-163-3/+9
| | | | Reviewed-by: Alex Deucher <[email protected]>
* r600g: Add support for ROUND, v2Lauri Kasanen2011-08-102-3/+5
| | | | | | This is a GLSL 1.3 feature, but also used by MLAA. Signed-off-by: Lauri Kasanen <[email protected]>
* 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
| |
* | r600g: remove more of unused codeMarek Olšák2011-08-041-13/+0
| | | | | | | | This is a follow-up to f6df430a85141f6a384c18079fb5b2ad848dac0d.
* | r600g: take into account force_add_cf in popsVadim Girlin2011-08-031-15/+24
| | | | | | | | | | | | | | | | | | | | | | When we have two ENDIFs in a row, we shouldn't modify the pop_count for the same alu clause twice. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=38163 Note: this is a candidate for the 7.11 branch. Signed-off-by: Alex Deucher <[email protected]>
* | r600g: use backend mask for occlusion queriesVadim Girlin2011-08-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | Use backend_map kernel query if supported, otherwise analyze ZPASS_DONE results to get the mask. Fixes lockups with predicated rendering due to incorrect query buffer initialization on some cards. Note: this is a candidate for the 7.11 branch. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
* | r600g: remove dummy function r600_bo_offsetMarek Olšák2011-08-024-26/+22
| | | | | | | | Always returned 0.
* | r600g: remove unused codeMarek Olšák2011-08-021-1/+0
| |
* | gallium/util: add functions for manipulating swizzlesMarek Olšák2011-08-021-5/+1
| | | | | | | | Some of those have been in drivers already.
* | r600g: fix up vs export handlingAlex Deucher2011-07-294-4/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | Certain attributes (position, psize, etc.) don't count as params; they are handled separately by the hw. However, the VS is required to export at least one param and r600_shader_from_tgsi() takes care of adding a dummy export if there is none. Make sure the VS param export count in the SPI properly accounts for this. Note: This is a candidate for the 7.11 branch. Signed-off-by: Alex Deucher <[email protected]>
* | r600g: fix vs export countVadim Girlin2011-07-282-2/+2
| | | | | | | | | | | | Fixes https://bugs.freedesktop.org/show_bug.cgi?id=39572 Signed-off-by: Vadim Girlin <[email protected]>
* | r600g: use file_max instead of file_count to determine reg offsetChristian König2011-07-241-3/+3
| | | | | | | | | | | | Otherwise shaders with skipped inputs/outputs doesn't work correctly. Signed-off-by: Christian König <[email protected]>
* | r600g: Get rid of leftover PB_USAGE_* flags.Henri Verbeet2011-07-182-26/+2
| | | | | | | | | | | | | | These happen to work because their values are the same as the equivalent PIPE_TRANSFER_* flags, but it's still misleading. Signed-off-by: Henri Verbeet <[email protected]>
* | r600g: fix queries and predicationVadim Girlin2011-07-152-11/+23
| | | | | | | | | | | | | | Use all zpass data for predication instead of the last block only. Use query buffer as a ring instead of reusing the same area for each new BeginQuery. All query buffer offsets are in bytes to simplify offsets math.