summaryrefslogtreecommitdiff
path: root/src/gallium/winsys/r600
AgeCommit message (Collapse)Author
2010-12-07r600g: fix userspace fence against lastest kernelJerome Glisse
R6XX GPU doesn't like to have two partial flush writting back to memory in row without a prior flush of the pipeline. Add PS_PARTIAL_FLUSH to flush all work between the CP and the ES, GS, VS, PS shaders. Thanks a lot to Alban Browaeys (prahal on irc) for investigating this issue. Signed-off-by: Alban Browaeys <prahal@yahoo.com> Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-12-06r600g: remove useless flush mapJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-12-05r600g: Cleanup block bo references in r600_context_fini().Henri Verbeet
2010-12-03r600g: more indentation fix + warning silencing + dead code removalJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-11-25r300g/r600g: bump cache manager timeouts to 1sDave Airlie
On lightsmark on my r500 this drop the bufmgr allocations of the sysprof.
2010-11-22r600g: add support for ontario APUsAlex Deucher
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2010-11-22r600g: fix some winsys functions to deal properly with evergreenAlex Deucher
Are these functions actually used anywhere?
2010-11-22r600g: fix additional EVENT_WRITE packetAlex Deucher
Add explicit EVENT_TYPE field
2010-11-19r600g: add fetch shader capabilitiesJerome Glisse
Use fetch shader instead of having fetch instruction in the vertex shader. Allow to restrict shader update to a smaller part when vertex buffer input layout changes. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-11-19r600g: All EVENT_WRITE packets need the EVENT_INDEX fieldAlex Deucher
6xx-evergreen
2010-11-19r600g: fix occlusion query on evergreen (avoid lockup)Jerome Glisse
Occlusion query on evergreen need the event index field to be set otherwise we endup locking up the GPU. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-11-17r600g: fix buffer alignmentAlex Deucher
This should fix the remaining buffer alignment issues in r600g.
2010-11-15r600g: Cleanup the fenced_bo list in r600_context_fini().Henri Verbeet
2010-11-10r600g: allow driver to work without submitting cmd to GPUJerome Glisse
For driver performance analysis it usefull to be able to disable as much as possible the GPU interaction so that one can profile the userspace only. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-11-10ws/r600: match bo_busy shared/fence logic in bo_waitKeith Whitwell
Fixes crash in piglit depthrange-clear.
2010-11-08r600g: implement texture_get_handle (needed for eglExportDRMImageMESA)Benjamin Franzke
2010-11-03r600g: set hardware pixel centers according to gl_rasterization_rulesKeith Whitwell
These were previously being left in the default (D3D) mode. This mean that triangles were drawn slightly incorrectly, but also because this state is relied on by the u_blitter code, all blits were half a pixel off.
2010-11-03r600g: propogate resource usage flags to winsys, use to choose bo domainsKeith Whitwell
This opens the question of what interface the winsys layer should really have for talking about these concepts. For now I'm using the existing gallium resource usage concept, but there is no reason not use terms closer to what the hardware understands - eg. the domains themselves.
2010-11-02r600g: Fixed two memory leaks in winsys.Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: Made radeon_bo::map_count signed.Tilman Sauerbeck
That way assert(map_count >= 0) can actually fail when we screwed up. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: Fixed unmap condition in radeon_bo_pb_destroy().Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: Made radeon_bo_pb_map_internal() actually call radeon_bo_map().Tilman Sauerbeck
This ensures that we increase bo->map_count when radeon_bo_map_internal() returns successfully, which in turn makes sure we don't decrement bo->map_count below zero later. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: Removed unused 'ptr' argument from radeon_bo().Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-10-27r600g: In radeon_bo(), call LIST_INITHEAD early.Tilman Sauerbeck
radeon_bo_destroy() will want to read the list field. Without this patch, we'd end up evaluating the list pointers before they have been properly set up when we destroyed the newly created bo if it cannot be mapped. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-10-23r600g: not fatal if we can't get tiling info from kernelDave Airlie
2010-10-18r600g: retrieve tiling info from kernel for shared buffers.Dave Airlie
we need to know if the back is tiled so we can blit from it properly.
2010-10-18r600g: get tiling info from kernelDave Airlie
2010-10-15r600/drm: fix segfaults in winsys create failure pathKeith Whitwell
Would try to destroy radeon->cman, radeon->kman both which were still NULL. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-10-08r600g: Silence uninitialized variable warning.Vinson Lee
2010-10-08r600g: Silence uninitialized variable warning.Vinson Lee
2010-10-08r600g: Silence uninitialized variable warning.Vinson Lee
2010-10-08r600g: Remove unnecessary header.Vinson Lee
2010-10-06r600g: fix dirty state handlingJerome Glisse
Avoid having object ending up in dead list of dirty object. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-06r600g: avoid segfault due to unintialized list pointerJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-05r600g: userspace fence to avoid kernel call for testing bo busy statusJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-05r600g: simplify block relocationJerome Glisse
Since flush rework there could be only one relocation per register in a block. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-05r600g: use dirty list to track dirty blocksBas Nieuwenhuizen
Got a speed up by tracking the dirty blocks in a seperate list instead of looping through all blocks. This version should work with block that get their dirty state disabled again and I added a dirty check during the flush as some blocks were already dirty.
2010-10-05r600g: improve bo flushingJerome Glisse
Flush read cache before writting register. Track flushing inside of a same cs and avoid reflushing same bo if not necessary. Allmost properly force flush if bo rendered too and then use as a texture in same cs (missing pipeline flush dunno if it's needed or not). Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-05r600g: store reloc information in bo structureJerome Glisse
Allow fast lookup of relocation information & id which was a CPU time consumming operation. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-05r600g: avoid unneeded bo waitDave Airlie
if we know the bo has gone not busy, no need to add another bo wait thanks to Andre (taiu) on irc for pointing this out.
2010-10-05r600g: drop use_mem_constant.Dave Airlie
since we plan on using dx10 constant buffers everywhere.
2010-10-05r600g: drop mman allocatorDave Airlie
we don't use this since constant buffers are now being used on all gpus.
2010-10-05r600g: add bo busy backoff.Dave Airlie
When we go to do a lot of bos in one draw like constant bufs we need to avoid bouncing off the busy ioctl, this mitigates by backing off on busy bos for a short amount of times.
2010-10-05r600g: add bo fenced list.Dave Airlie
this just keeps a list of bos submitted together, and uses them to decide bo busy state for the whole group.
2010-10-04r600g: Fix SCons build.Vinson Lee
2010-10-04r600g: remove dead label & fix indentationJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-04r600g: rename radeon_ws_bo to r600_boJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-04r600g: use r600_bo for relocation argument, simplify codeJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-04r600g: allow r600_bo to be a sub allocation of a big boJerome Glisse
Add bo offset everywhere needed if r600_bo is ever a sub bo of a bigger bo. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-04r600g: rename radeon_ws_bo to r600_boJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>