summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/i915
AgeCommit message (Collapse)Author
2010-12-02i915g: prepare winsys/batchbuffer for execbuf2Daniel Vetter
Wire up a fenced parameter, switch all relocations to _FENCED Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Jakob Bornecrantz <wallbraker@gmail.com> Signed-off-by: Jakob Bornecrantz <wallbraker@gmail.com>
2010-12-02i915g: switch to tiled allocations, kill set_fenceDaniel Vetter
This way relaxed fencing is handled by libdrm. And buffers _can't_ ever change their tiling. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Jakob Bornecrantz <wallbraker@gmail.com> Signed-off-by: Jakob Bornecrantz <wallbraker@gmail.com>
2010-12-02i915g: add winsys function to create tiled buffersDaniel Vetter
Different kernels have different restrictions for tiled buffers. Hence use the libdrm abstraction to calculate the necessary stride and height alignment requirements. Not yet used. v2: Incorporate review comments from Jakob Bornecrantz Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Jakob Bornecrantz <wallbraker@gmail.com> Signed-off-by: Jakob Bornecrantz <wallbraker@gmail.com>
2010-12-02i915g: drop alignment parameter from iws->buffer_createDaniel Vetter
It's unnecessary. The kernel gem ignores it totally and we can't run on the old userspace fake bo manager due to lack of dri2. Also drop the redundant name string from the sw winsys as suggested by Jakob Bornecrantz Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Jakob Bornecrantz <wallbraker@gmail.com> Signed-off-by: Jakob Bornecrantz <wallbraker@gmail.com>
2010-11-22gallium: add PIPE_SHADER_CAP_SUBROUTINESMarek Olšák
This fixes piglit/glsl-vs-main-return and glsl-fs-main-return for the drivers which don't support RET (i915g, r300g, r600g, svga). ir_to_mesa does not currently generate subroutines, but it's a matter of time till it's added. It would then break all the drivers which don't implement them, so this CAP makes sense. Signed-off-by: Marek Olšák <maraeo@gmail.com>
2010-11-21i915g: kill RGBA/X formatsDaniel Vetter
It's intel, so always little endian! Reviewed-by: Jakob Bornecrantz <wallbraker@gmail.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Jakob Bornecrantz <wallbraker@gmail.com>
2010-11-21i915g: add pineview pci idsDaniel Vetter
Reviewed-by: Jakob Bornecrantz <wallbraker@gmail.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Jakob Bornecrantz <wallbraker@gmail.com>
2010-11-21i915g: s/hw_tiled/tilingDaniel Vetter
More in line with other intel drivers. Change to use enum by Jakob Bornecrantz. Reviewed-by: Jakob Bornecrantz <wallbraker@gmail.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Jakob Bornecrantz <wallbraker@gmail.com>
2010-11-21i915g: rip out ->sw_tiledDaniel Vetter
It looks like this was meant to facilitate unfenced access to textures/ color/renderbuffers. It's totally incomplete and fundamentally broken on a few levels: - broken: The kernel needs to about every tiled bo to fix up bit17 swizzling on swap-in. - unflexible: fenced/unfenced relocs from execbuffer2 do the same, much simpler. - unneeded: with relaxed fencing tiled gem bos are as memory-efficient as this trick. Hence kill it. Reviewed-by: Jakob Bornecrantz <wallbraker@gmail.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Jakob Bornecrantz <wallbraker@gmail.com>
2010-11-12i915g: fill out CAPs for indirect addressingMarek Olšák
2010-11-02scons: Add aliases for several pipe drivers.José Fonseca
2010-11-01scons: Revamp how to specify targets to build.José Fonseca
Use scons target and dependency system instead of ad-hoc options. Now is simply a matter of naming what to build. For example: scons libgl-xlib scons libgl-gdi scons graw-progs scons llvmpipe and so on. And there is also the possibility of scepcified subdirs, e.g. scons src/gallium/drivers If nothing is specified then everything will be build. There might be some rough corners over the next days. Please bare with me.
2010-09-30gallium/i915: remove duplicated includeNicolas Kaiser
Remove duplicated include. Signed-off-by: Brian Paul <brianp@vmware.com>
2010-09-13i915g: Fix 'control reaches end of non-void function' warning.Vinson Lee
Fixes the following GCC warning. i915_screen.c: In function 'i915_get_shader_param': i915_screen.c:184: warning: control reaches end of non-void function
2010-09-13i915: Fix "implicit declaration of function 'draw_get_shader_param'" warning.Vinson Lee
Fixes the following GCC warning. i915_screen.c: In function 'i915_get_shader_param': i915_screen.c:147: warning: implicit declaration of function 'draw_get_shader_param'
2010-09-14gallium: introduce get_shader_param (ALL DRIVERS CHANGED) (v3)Luca Barbieri
Changes in v3: - Also change trace, which I forgot about Changes in v2: - No longer adds tessellation shaders Currently each shader cap has FS and VS versions. However, we want a version of them for geometry, tessellation control, and tessellation evaluation shaders, and want to be able to easily query a given cap type for a given shader stage. Since having 5 duplicates of each shader cap is unmanageable, add a new get_shader_param function that takes both a shader cap from a new enum and a shader stage. Drivers with non-unified shaders will first switch on the shader and, within each case, switch on the cap. Drivers with unified shaders instead first check whether the shader is supported, and then switch on the cap. MAX_CONST_BUFFERS is now per-stage. The geometry shader cap is removed in favor of checking whether the limit of geometry shader instructions is greater than 0, which is also used for tessellation shaders. WARNING: all drivers changed and compiled but only nvfx tested
2010-08-25gallium: Use draw_set_index_buffer and others.Chia-I Wu
Update all drivers to use draw_set_index_buffer, draw_set_mapped_index_buffer, and draw_vbo. Remove draw_set_mapped_element_buffer and draw_set_mapped_element_buffer_range.
2010-08-20gallium: make all checks for PIPE_TEXTURE_2D check for PIPE_TEXTURE_RECT tooLuca Barbieri
Searched for them with: git grep -E '[!=]=.*PIPE_TEXTURE_2D|PIPE_TEXTURE_2D.*[!=]=|case.*PIPE_TEXTURE_2D' Behavior hasn't been changed.
2010-08-20galahad, i915g: Copy over constant buffer index check.Corbin Simpson
2010-08-20galahad, i915g: Move over a few state asserts.Corbin Simpson
2010-07-29gallium: Avoid void pointer arithmetic.Chia-I Wu
This fixes fdo bug #29286.
2010-07-29gallium: Keep only pipe_context::draw_vbo.Chia-I Wu
That is, remove pipe_context::draw_arrays, pipe_context::draw_elements, pipe_context::draw_arrays_instanced, pipe_context::draw_elements_instanced, pipe_context::draw_range_elements.
2010-07-29gallium: Implement draw_vbo and set_index_buffer for all drivers.Chia-I Wu
Some drivers define a generic function that is called by all drawing functions. To implement draw_vbo for such drivers, either draw_vbo calls the generic function or the prototype of the generic function is changed to match draw_vbo. Other drivers have no such generic function. draw_vbo is implemented by calling either draw_arrays and draw_elements. For most drivers, set_index_buffer does not mark the state dirty for tracking. Instead, the index buffer state is emitted whenever draw_vbo is called, just like the case with draw_elements. It surely can be improved.
2010-07-22i915g: Set total_nblocksy in from_handleJakob Bornecrantz
2010-07-22i915g: Add some debug prints in texture codeJakob Bornecrantz
2010-07-22i915g: Ifdef out debug code on non-debug buildsJakob Bornecrantz
2010-07-04i915g: Remove unnecessary header.Vinson Lee
2010-07-04i915g: Minor cleanupsJakob Bornecrantz
2010-07-04i915g: Make batchbuffer flush function not be inlineJakob Bornecrantz
2010-07-04i915g: Rename texture state to map stateJakob Bornecrantz
2010-07-04i915g: Move fragment state to its own fileJakob Bornecrantz
2010-07-04i915g: Move static state to its own fileJakob Bornecrantz
2010-07-04i915g: Don't dirty dynamic state if it hasn't changedJakob Bornecrantz
2010-07-04i915g: Don't flush after blitJakob Bornecrantz
2010-07-04i915g: Don't flush empty batchbuffersJakob Bornecrantz
2010-06-28Merge branch 'gallium-drm-driver-drescriptor'Jakob Bornecrantz
Conflicts: src/gallium/state_trackers/egl/x11/native_dri2.c src/gallium/state_trackers/egl/x11/native_x11.c src/gallium/state_trackers/egl/x11/native_x11.h src/gallium/state_trackers/xorg/xorg_driver.c src/gallium/winsys/radeon/drm/radeon_drm.c
2010-06-22i915g: Revert debug hunks from last commitJakob Bornecrantz
2010-06-22i915g: Reduce state emission by using a index biasJakob Bornecrantz
2010-06-22i915g: Drop fifo code in vbufJakob Bornecrantz
2010-06-22i915g: Change state code in vbuf codeJakob Bornecrantz
2010-06-22i915g: Rework debug print codeJakob Bornecrantz
2010-06-22i915g: Switch to state atomsJakob Bornecrantz
2010-06-22i915g: i915_state_sampler.c code styleJakob Bornecrantz
2010-06-22i915g: i915_state_immediate.c code styleJakob Bornecrantz
2010-06-22i915g: i915_state_dynamic.c code styleJakob Bornecrantz
2010-06-11scons: Disable i915g build if using MSVC.Vinson Lee
i915g uses C99 constructs that are not supported by MSVC.
2010-06-06i915g: Move bootstrap code to targetsJakob Bornecrantz
2010-06-05i915g: fix bug in ds clear logic (still disabled)Roland Scheidegger
2010-06-03Merge branch 'gallium-newclear'Roland Scheidegger
Conflicts: src/gallium/state_trackers/python/p_context.i
2010-06-03gallium: rename clearRT / clearDS to clear_render_target / clear_depth_stencilRoland Scheidegger
more consistent with rest of gallium naming conventions. Also rename driver-internal names for these the same.