Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | winsys/radeon: Create async thread only once | Maarten Lankhorst | 2011-08-30 | 2 | -21/+50 |
| | | | | | | | | I noticed that a thread was created for every time async flush was called, so I moved it and used some semaphores to synch. Signed-off-by: Maarten Lankhorst <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Signed-off-by: Christian König <[email protected]> | ||||
* | android: add support for r600g | Chia-I Wu | 2011-08-25 | 1 | -0/+40 |
| | | | | | | | | 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]> | ||||
* | winsys/radeon: share the source list | Chia-I Wu | 2011-08-25 | 3 | -9/+7 |
| | | | | | | | Factor out C_SOURCES from Makefile to Makefile.sources, and let Makefile and SConscript share it. Reviewed-by: Marek Olšák <[email protected]> | ||||
* | winsys/radeon: use os_mmap() for memory mapping | Chia-I Wu | 2011-08-24 | 1 | -3/+3 |
| | | | | | | os_mmap() guarantees large file support across OSes. Reviewed-by: Marek Olšák <[email protected]> | ||||
* | winsys/radeon: take advantage of the new ioctl | Marek Olšák | 2011-08-16 | 1 | -12/+28 |
| | | | | Reviewed-by: Alex Deucher <[email protected]> | ||||
* | winsys/radeon: hook up the new DRM_RADEON_GEM_WAIT ioctl | Marek Olšák | 2011-08-16 | 2 | -20/+61 |
| | | | | Reviewed-by: Alex Deucher <[email protected]> | ||||
* | winsys/radeon: remove broken bo-is-busy-for-write guessing | Marek Olšák | 2011-08-16 | 3 | -31/+0 |
| | | | | Reviewed-by: Alex Deucher <[email protected]> | ||||
* | winsys/radeon: remove the device file descriptor from the interface | Marek Olšák | 2011-08-16 | 2 | -2/+0 |
| | | | | | | r600g doesn't need it anymore. Reviewed-by: Alex Deucher <[email protected]> | ||||
* | r600g: remove radeon_bo::handle | Marek Olšák | 2011-08-16 | 2 | -11/+0 |
| | | | | | | This should be private to radeon_winsys. Reviewed-by: Alex Deucher <[email protected]> | ||||
* | r600g: set the flush callback in radeon_winsys | Marek Olšák | 2011-08-16 | 2 | -4/+4 |
| | | | | | | I have also renamed the winsys function. Reviewed-by: Alex Deucher <[email protected]> | ||||
* | r600g: move more DRM queries into winsys/radeon | Marek Olšák | 2011-08-16 | 2 | -1/+21 |
| | | | | Reviewed-by: Alex Deucher <[email protected]> | ||||
* | winsys/radeon: consolidate the add_reloc function | Marek Olšák | 2011-08-16 | 2 | -37/+12 |
| | | | | Reviewed-by: Alex Deucher <[email protected]> | ||||
* | r600g: emit CS using radeon_winsys | Marek Olšák | 2011-08-16 | 2 | -6/+2 |
| | | | | Reviewed-by: Alex Deucher <[email protected]> | ||||
* | r600g: let radeon_winsys maintain the list of relocations | Marek Olšák | 2011-08-16 | 2 | -8/+37 |
| | | | | Reviewed-by: Alex Deucher <[email protected]> | ||||
* | r600g: allocate/destroy buffers using radeon_winsys | Marek Olšák | 2011-08-16 | 2 | -0/+11 |
| | | | | | | | We use the cache buffer manager from radeon_winsys now, but we don't use anything else yet. Reviewed-by: Alex Deucher <[email protected]> | ||||
* | r600g: move some queries into winsys/radeon | Marek Olšák | 2011-08-16 | 2 | -7/+27 |
| | | | | Reviewed-by: Alex Deucher <[email protected]> | ||||
* | r600g: first step into winsys/radeon | Marek Olšák | 2011-08-16 | 3 | -8/+36 |
| | | | | Reviewed-by: Alex Deucher <[email protected]> | ||||
* | winsys/radeon: disable use of the buffer busy-for-write flag | Marek Olšák | 2011-08-06 | 1 | -0/+12 |
| | |||||
* | winsys/radeon: do the CS cleanup in the CS ioctl thread | Marek Olšák | 2011-08-05 | 1 | -2/+4 |
| | |||||
* | winsys/radeon: fix space checking | Marek Olšák | 2011-08-05 | 3 | -3/+35 |
| | | | | | | | We should remove the relocations which caused a validation failure from the list, so that the kernel receives only the validated ones. NOTE: This is a candidate for the 7.11 branch. | ||||
* | winsys/radeon: remove dummy function pb_buffer | Marek Olšák | 2011-08-03 | 2 | -16/+7 |
| | |||||
* | winsys/radeon: fix typos in the driver interface | Marek Olšák | 2011-07-25 | 1 | -2/+3 |
| | |||||
* | winsys/radeon: manage constant buffers by the cache bufmgr too | Marek Olšák | 2011-07-25 | 1 | -1/+2 |
| | |||||
* | winsys/radeon: remove usage parameter from buffer_create | Marek Olšák | 2011-07-25 | 2 | -6/+2 |
| | |||||
* | winsys/radeon: fix int->boolean conversion in radeon_bo_is_referenced_by_any_cs | Marek Olšák | 2011-07-25 | 1 | -1/+1 |
| | |||||
* | winsys/radeon: little change in radeon_bo_is_referenced_by_cs | Marek Olšák | 2011-07-25 | 1 | -2/+3 |
| | |||||
* | winsys/radeon: add R300 infix to winsys feature names | Marek Olšák | 2011-07-25 | 2 | -4/+4 |
| | |||||
* | winsys/radeon: simplify how value queries work | Marek Olšák | 2011-07-25 | 4 | -128/+101 |
| | | | | | This drops the get_value query and adds a function query_info, which returns all the values in one nice structure. | ||||
* | scons: Expose pkg-config in a simpler manner. | José Fonseca | 2011-06-30 | 1 | -5/+1 |
| | |||||
* | r300g: Remove is_r3xx | Benjamin Franzke | 2011-06-07 | 3 | -215/+9 |
| | | | | | | Use r300_pci_ids.h instead. Reviewed-by: Alex Deucher <[email protected]> | ||||
* | r300g: dynamically ask for and release Hyper-Z access | Marek Olšák | 2011-05-15 | 3 | -27/+99 |
| | | | | | We ask for Hyper-Z access when clearing a zbuffer. We release it if no zbuffer clear has been done for 2 seconds. | ||||
* | r300g/winsys: rename r300->radeon and do a little cleanup | Marek Olšák | 2011-04-18 | 10 | -146/+461 |
| | | | | | Renaming a few files, types, and functions. Also make the winsys independent of r300g. | ||||
* | r300g: fix crash when adding a new relocation | Marek Olšák | 2011-04-08 | 1 | -1/+2 |
| | | | | | | | No idea why it's so hard to reproduce. Broken with: c35572352e3e92683988ee8d151b47f4190d62f9 Thanks to Toni Spets for assistance. | ||||
* | r300g: add 'radeon: ' prefix to error messages in winsys | Marek Olšák | 2011-04-08 | 2 | -5/+5 |
| | |||||
* | r300g: do not wait for a busy BO if neither GPU nor CPU is changing it | Marek Olšák | 2011-04-03 | 4 | -12/+75 |
| | | | | | Improves frame rate in apps with at least one user vertex buffer and a hw index buffer. | ||||
* | r300g: remove unused RADEON_PB_USAGE_CACHE | Marek Olšák | 2011-04-03 | 2 | -6/+0 |
| | |||||
* | r300g: avoid mapping the same buffer twice | Marek Olšák | 2011-04-03 | 1 | -0/+5 |
| | | | | Shouldn't happen, but you never know. | ||||
* | r300g: remove the redundant reference counter in radeon_bo | Marek Olšák | 2011-04-03 | 3 | -36/+21 |
| | | | | We already have pb_buffer::reference::count. | ||||
* | r300g: decide whether a flush should be asynchronous when calling it | Marek Olšák | 2011-03-08 | 3 | -16/+17 |
| | | | | Thread offloading is not sometimes desirable, e.g. when mapping a buffer. | ||||
* | r300g: require DRM 2.3.0 (kernel 2.6.34) | Marek Olšák | 2011-03-02 | 1 | -7/+6 |
| | | | | Running any older kernel is not recommended anyway. | ||||
* | r300g: do not use ioctl thread offloading on single-core machines | Marek Olšák | 2011-03-02 | 3 | -1/+4 |
| | |||||
* | r300g: fix invalid dereference in winsys | Marek Olšák | 2011-02-19 | 1 | -1/+1 |
| | | | | radeon_bo_unref may destroy the buffer, so call it after p_atomic_dec, not before. | ||||
* | r300g: fix a race between CS and SET_TILING ioctls | Marek Olšák | 2011-02-16 | 3 | -6/+21 |
| | |||||
* | r300g: offload the CS ioctl to another thread | Marek Olšák | 2011-02-15 | 4 | -111/+220 |
| | | | | | | | | | | This is a multi-threading optimization which hides the kernel overhead behind a thread. It improves performance in CPU-limited apps by 2-15%. Of course you must have at least 2 cores for it to make any difference. It can be disabled with: export RADEON_THREAD=0 | ||||
* | r300g: actually implement the is_buffer_busy hook the right way | Marek Olšák | 2011-02-15 | 1 | -3/+3 |
| | | | | Ooops. | ||||
* | r300g: handle interaction between UNSYNCHRONIZED and DONTBLOCK flags in bo_map | Marek Olšák | 2011-02-15 | 1 | -20/+16 |
| | | | | | The VBO module uses both, but they are somewhat opposite to each other. In this case, we pick UNSYNCHRONIZED and ignore DONTBLOCK. | ||||
* | r300g: fix a possible race condition when mapping a buffer | Marek Olšák | 2011-02-15 | 2 | -23/+34 |
| | | | | This is the last one I think. | ||||
* | r300g: flush CS in bo_map even if we get USAGE_DONTBLOCK | Marek Olšák | 2011-02-14 | 1 | -0/+1 |
| | | | | | | | | | | Because an app may do something like this: while (!(ptr = bo_map(..., DONT_BLOCK))) { /* Do some other work. */ } And it would be looping endlessly if we didn't flush. | ||||
* | r300g: implement pb_manager::is_buffer_busy | Marek Olšák | 2011-02-14 | 1 | -22/+27 |
| | |||||
* | r300g: fixup the handle_compare function | Marek Olšák | 2011-02-13 | 1 | -2/+2 |
| | | | | Accidentally negated in 685c3262b945a7f0e9f1f3a9409a12fdda08c828. |