summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* ilo: move ilo_layout.[ch] to core as ilo_image.[ch]Chia-I Wu2015-05-0211-487/+489
| | | | Move files and s/layout/image/.
* ilo: add ilo_format.[ch] to coreChia-I Wu2015-05-028-169/+184
| | | | The original ilo_format.[ch] are removed.
* ilo: add ilo_fence.h to coreChia-I Wu2015-05-025-58/+113
| | | | Implement pipe_fence_handle on top of ilo_fence.
* ilo: add ilo_dev_init() to coreChia-I Wu2015-05-024-146/+195
| | | | Move init_dev() from ilo_screen.c to core.
* ilo: rename ilo_dev_info to ilo_devChia-I Wu2015-05-0225-141/+141
| | | | With intel_winsys being embedded in it, drop the "_info" suffix.
* ilo: move intel_winsys to ilo_dev_infoChia-I Wu2015-05-025-13/+15
| | | | We want to use ilo_dev_info instead of ilo_screen in core.
* ilo: add ilo_dev.h to coreChia-I Wu2015-05-023-38/+73
| | | | Move what are remaining in ilo_common.h (that is, ilo_dev_*) to ilo_dev.h.
* ilo: add ilo_debug.[ch] to coreChia-I Wu2015-05-025-85/+158
| | | | | They consist of the debug helpers that used to live in ilo_common.h and ilo_screen.c.
* ilo: add ilo_core.h to coreChia-I Wu2015-05-023-14/+48
| | | | | ilo_core.h includes the common gallium headers that were included in ilo_common.h.
* ilo: move intel_winsys.h to coreChia-I Wu2015-05-0220-19/+19
| | | | | Add a new subdirectory and start moving files that do not depend on ilo_screen/ilo_context to it.
* st/dri: implement the fence interface for CL eventsMarek Olšák2015-04-303-1/+81
|
* gallium,clover: add OpenCL interoperability support for CL eventsMarek Olšák2015-04-305-0/+114
| | | | | | | | | | | v2: - move interop.cpp to clover/api - change intptr_t to void* in the interface - add a virtual function fence() to simplify some code v3: - use bool in the interface v4: - enclose the last two interop functions in try..catch Reviewed-by: Francisco Jerez <[email protected]>
* st/dri: implement the fence interfaceMarek Olšák2015-04-301-0/+80
|
* nvc0/ir: fix predicated PFETCH for realIlia Mirkin2015-04-302-2/+2
| | | | | | | | Commit a9d08a250 accidentally didn't make use of the new src1 variable. Use it. Signed-off-by: Ilia Mirkin <[email protected]> Cc: [email protected]
* nv50/ir: fix asFlow() const helper for OP_JOINIlia Mirkin2015-04-291-1/+1
| | | | | Signed-off-by: Ilia Mirkin <[email protected]> Cc: [email protected]
* nvc0/ir: fix predicated PFETCH emissionIlia Mirkin2015-04-292-2/+6
| | | | | | | | | src1 would contain the predicate, which would get emitted as a register source by an undiscerning srcId helper. Work around this in the same way as in emitTEX. Signed-off-by: Ilia Mirkin <[email protected]> Cc: [email protected]
* gk110/ir: fix set with a register dest to not auto-set the abs flagIlia Mirkin2015-04-291-1/+1
| | | | | | | This was causing src0 to always have the absolute value flag set. Signed-off-by: Ilia Mirkin <[email protected]> Cc: [email protected]
* winsys/radeon: add a private interface for radeon_surfaceMarek Olšák2015-04-2917-47/+286
|
* winsys/radeon: move radeon_winsys.h to drivers/radeonMarek Olšák2015-04-2919-21/+16
|
* clover: remove util/compatEdB2015-04-2912-367/+56
| | | | | Acked-by: Francisco Jerez <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* r300: do not link against libdrm_intelEmil Velikov2015-04-291-1/+1
| | | | | | | | Accidentally added since the introduction of the file. Cc: "10.4 10.5" <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* clover: make module::symbol::name a stringEdB2015-04-293-4/+24
| | | | | Acked-by: Francisco Jerez <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* clover: remove compat::stringEdB2015-04-297-129/+26
| | | | | Acked-by: Francisco Jerez <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* clover: remove compat classes that match std oneEdB2015-04-296-70/+6
| | | | | Acked-by: Francisco Jerez <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* clover: compile all sources with c++11EdB2015-04-291-1/+2
| | | | | | | Later we can remove the compat code Reviewed-by: Francisco Jerez <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* st/nine: Remove Managed texture hack.Axel Davy2015-04-291-3/+4
| | | | | | | | | | | | Previously binding an unitialized managed texture was causing a crash, and a workaround was added to prevent the crash. This patch removes this workaround and instead set the initial state of managed textures as dirty, so that when the texture is bound for the first time, it is always initialized. Signed-off-by: Axel Davy <[email protected]>
* st/nine: Enforce LOD 0 for D3DUSAGE_AUTOGENMIPMAPAxel Davy2015-04-292-3/+10
| | | | | | | | | For D3DUSAGE_AUTOGENMIPMAP textures, applications can only lock/copy from/get surface descriptor for/etc the first level. Thus it makes sense to restrict the LOD to 0, and use only the first level to generate the sublevels. Signed-off-by: Axel Davy <[email protected]>
* st/nine: Some D3DUSAGE_AUTOGENMIPMAP fixesAxel Davy2015-04-293-2/+17
| | | | Signed-off-by: Axel Davy <[email protected]>
* st/nine: util_gen_mipmap doesn't need we reset states.Axel Davy2015-04-291-2/+0
| | | | | | | util_gen_mipmap uses pipe->blit, and thus doesn't need we restore all states after using it. Signed-off-by: Axel Davy <[email protected]>
* st/nine: D3DUSAGE_AUTOGENMIPMAP is forbidden for volumesAxel Davy2015-04-292-16/+1
| | | | Signed-off-by: Axel Davy <[email protected]>
* st/nine: Fix NineBaseTexture9_PreLoadAxel Davy2015-04-291-1/+1
| | | | | | | It wasn't uploading the texture when the lod had changed. Signed-off-by: Axel Davy <[email protected]>
* st/nine: Rewrite Managed texture uploadsAxel Davy2015-04-291-96/+125
| | | | | | | | That part of the code was quite obscure. This new implementation tries to make it clearer by separating the differents parts, and commenting more. Signed-off-by: Axel Davy <[email protected]>
* st/nine: Bound the dirty regions to resource sizeAxel Davy2015-04-293-0/+16
| | | | Signed-off-by: Axel Davy <[email protected]>
* st/nine: Simplify Surface9 Managed resources implementationAxel Davy2015-04-294-93/+53
| | | | | | | | | | | Remove the Surface9 code for dirty rects, used only for Managed resources. Instead convey the information to the parent texture. According to documentation, this seems to be the expected behaviour, and if documentation is wrong there, that's not a problem since it can only leads to more texture updates in corner cases. Signed-off-by: Axel Davy <[email protected]>
* st/nine: Remove impossible cases with Managed texturesAxel Davy2015-04-292-34/+8
| | | | | | | Copying to/from a Managed texture is forbidden. Rendering to a Managed texture is forbidden. Signed-off-by: Axel Davy <[email protected]>
* st/nine: Encapsulate variables for MANAGED resourceAxel Davy2015-04-2910-57/+60
| | | | Signed-off-by: Axel Davy <[email protected]>
* st/nine: Rework texture data allocationAxel Davy2015-04-297-37/+131
| | | | | | | | | | | | Some applications assume the memory for multilevel textures is allocated per continuous blocks. This patch implements that behaviour. v2: cache offsets Reviewed-by: Ilia Mirkin <[email protected]> Signed-off-by: Axel Davy <[email protected]>
* st/nine: Fix update_vertex_elements bad rebaseAxel Davy2015-04-291-3/+0
| | | | | | | | This code was supposed to be removed, but a rebase seems to have made it stay. Reviewed-by: Ilia Mirkin <[email protected]> Signed-off-by: Axel Davy <[email protected]>
* st/nine: Add debug warning when application uses sw processingAxel Davy2015-04-296-7/+27
| | | | | Reviewed-by: Ilia Mirkin <[email protected]> Signed-off-by: Axel Davy <[email protected]>
* st/nine: Rework update_vertex_buffersAxel Davy2015-04-291-11/+4
| | | | | | | | | | | | | | | | Previous code was trying to optimise to call set_vertex_buffers on big packets, and thus avoids as many calls as possible. However in practice doing so won't be faster (drivers implement set_vertex_buffers by a loop over the buffers we want to bind) When we want to unbind a buffer, we were calling set_vertex_buffers on a buffer with vtxbuf->buffer = NULL. It works on some drivers, but not on all of them, because it isn't in Gallium spec. This patch fixes that. Reviewed-by: Ilia Mirkin <[email protected]> Signed-off-by: Axel Davy <[email protected]>
* st/nine: Fix computation of const_used_sizeXavier Bouchoux2015-04-291-3/+6
| | | | | | | Was sometimes too large for PS. Reviewed-by: Axel Davy <[email protected]> Signed-off-by: Xavier Bouchoux <[email protected]>
* gallium/svga: Remove useless ARRAY_SIZE declarationAxel Davy2015-04-291-4/+0
| | | | | | | This is already declared in util/macros.h Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Axel Davy <[email protected]>
* util/macros: Move DIV_ROUND_UP to util/macros.hAxel Davy2015-04-291-2/+0
| | | | | | | Move DIV_ROUND_UP to a shared location accessible everywhere Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Axel Davy <[email protected]>
* st/nine: Fix behaviour of D3DUSAGE_QUERY_POSTPIXELSHADER_BLENDINGXavier Bouchoux2015-04-291-1/+2
| | | | | | | | | | Ignore D3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING when D3DUSAGE_RENDERTARGET is not specified. This behaviour matches windows drivers. Reviewed-by: Axel Davy <[email protected]> Signed-off-by: Xavier Bouchoux <[email protected]>
* st/nine: Improve D3DQUERYTYPE_TIMESTAMPXavier Bouchoux2015-04-291-2/+7
| | | | | | | | | | | Avoid blocking when retrieving D3DQUERYTYPE_TIMESTAMP result with NineQuery9_GetData(), when D3DGETDATA_FLUSH is not specified. This mimics Win behaviour and gives slightly better performance for some games. Reviewed-by: Ilia Mirkin <[email protected]> Reviewed-by: Axel Davy <[email protected]> Signed-off-by: Xavier Bouchoux <[email protected]>
* st/nine: Fix D3DQUERYTYPE_TIMESTAMPFREQ queryXavier Bouchoux2015-04-291-1/+9
| | | | | | | | | | | | | | D3DQUERYTYPE_TIMESTAMPFREQ is supposed to give the frequency at which the clock of D3DQUERYTYPE_TIMESTAMP runs. PIPE_QUERY_TIMESTAMP returns a value in ns, thus the corresponding frequency is 1000000000. PIPE_QUERY_TIMESTAMP_DISJOINT returns the frequency at which PIPE_QUERY_TIMESTAMP value is updated. It isn't always 1000000000. Reviewed-by: Axel Davy <[email protected]> Signed-off-by: Xavier Bouchoux <[email protected]>
* st/nine: Change x86 FPU Control word on device creationTiziano Bacocco2015-04-291-0/+31
| | | | | | | | | As on wined3d and windows, when D3DCREATE_FPU_PRESERVE is not specified, change the fpu control word to all exceptions masked, single precision, round to nearest. Signed-off-by: Axel Davy <[email protected]> Signed-off-by: Tiziano Bacocco <[email protected]>
* st/nine: Do not advertise D3DDEVCAPS_TEXTURESYSTEMMEMORYAxel Davy2015-04-292-9/+3
| | | | | | | No major vendor advertises it, and we weren't supporting it. Reviewed-by: Ilia Mirkin <[email protected]> Signed-off-by: Axel Davy <[email protected]>
* st/nine: Fix comment in update_viewportAxel Davy2015-04-291-3/+2
| | | | | Reviewed-by: Ilia Mirkin <[email protected]> Signed-off-by: Axel Davy <[email protected]>
* st/nine: Workaround barycentrics issue on some cardsAxel Davy2015-04-293-1/+31
| | | | Signed-off-by: Axel Davy <[email protected]>