History log of /external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
18abc270c56d5debc02a196634583a25074b3fef 15-Aug-2012 Michel Dänzer <michel.daenzer@amd.com> gallium/radeon: Don't assign virtual address space for BO that already has one.

We'd end up re-using the old one and throwing away the new one anyway, but only
after a roundtrip to the kernel.

Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
a60be05284399202c7a5a7aaf4d1f8f0626aee80 15-Aug-2012 Michel Dänzer <michel.daenzer@amd.com> gallium/radeon: Create hole for waste when allocating from va_offset.

Otherwise, the wasted area could never be used for an allocation again.

Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
1f455ef5bc3c9711d9452dcc09fd849656ad8b33 26-Apr-2012 Michel Dänzer <michel.daenzer@amd.com> gallium/radeon: Fix potential address space loss in radeon_bomgr_force_va().

Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
6d59b7f6dc3131e773e9c9729388c08a2f987364 26-Apr-2012 Michel Dänzer <michel.daenzer@amd.com> gallium/radeon: Delete uppermost virtual address space hole if it's at the top.

Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
f5fe81daea622f8f043edc19fb61ba367b6958aa 26-Apr-2012 Michel Dänzer <michel.daenzer@amd.com> gallium/radeon: Fix losing holes when allocating virtual address space.

If a hole exactly matches the allocated size plus alignment, we would fail to
preserve the alignment as a hole. This would result in never being able to use
the alignment area for an allocation again.

Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
206d07625c9fd69c7d00a8722bd7390c5215bfe2 26-Apr-2012 Michel Dänzer <michel.daenzer@amd.com> gallium/radeon: Merge holes when freeing virtual address space.

Otherwise we'll likely end up with an ever increasing amount of ever smaller
holes.

Requires keeping the list ordered wrt offsets.

Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
c25968f3e2a1b5144a2e88d15b95e5b477a55f5d 03-Aug-2012 Michel Dänzer <michel.daenzer@amd.com> gallium/radeon: Make va_offset 64 bits wide.

Otherwise we'd wrap around after 32 bits. The kernel currently limits GPU
virtual address space to 4GB anyway, but that will probably change sooner or
later, and this would result in confusing error messages when running out of
virtual address space even now.

Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
8c44e5a144009a03c20befa6468d19d41c802795 06-Aug-2012 Christian König <deathsimple@vodafone.de> radeon/winsys: fix winsys VM handling

Move releasing the VM area after closing the bo handle.

This partially fixes: https://bugs.freedesktop.org/show_bug.cgi?id=45018

Signed-off-by: Christian König <deathsimple@vodafone.de>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
7446a0407d4e61a826385c11ed6c401837baf095 16-May-2012 Michel Dänzer <michel.daenzer@amd.com> gallium/radeon: Fix r300g tiling breakage.

Commit 11f056a3f0b87e86267efa8b5ac9d36a343c9dc1 broke the r300g build. Fix it
up, and reinstate some code which isn't needed by r600g and radeonsi but is
by r300g.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
11f056a3f0b87e86267efa8b5ac9d36a343c9dc1 16-May-2012 Michel Dänzer <michel.daenzer@amd.com> r600g: Set tiling information for BOs being shared.

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=48747
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
0a6120244e66494db070ce875c0a464fbc5b15a1 26-Apr-2012 Marek Olšák <maraeo@gmail.com> winsys/radeon: simplify buffer map/unmap functions

The idea is not to use pb_map and pb_unmap wrappers, calling straight
into the winsys.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
669d8766ff3403938794eb80d7769347b6e52174 31-Mar-2012 Marek Olšák <maraeo@gmail.com> r600g: optimize r600_resource_va

Avoid calling get_radeon_bo and inline it.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
e372e53ee0ed57072322003e508b3ca4c58076be 21-Feb-2012 Jerome Glisse <jglisse@redhat.com> radeon/r600g: fix virtual address space allocation

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
356eb0aadbb977b0732da077ad31cd66d1b53e23 14-Feb-2012 Jerome Glisse <jglisse@redhat.com> r600g: fix tiling with cayman and virtual memory

The virtual address but follow the alignment requirement of the
tiled surface. The bo from handle case is not properly fix. Need
bigger change for a proper fix. Work around that by enforcing 1M
alignment for those bo.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
c0c979eebc076b95cc8d18a013ce2968fe6311ad 30-Jan-2012 Jerome Glisse <jglisse@redhat.com> r600g: add support for common surface allocator for tiling v13

Tiled surface have all kind of alignment constraint that needs to
be met. Instead of having all this code duplicated btw ddx and
mesa use common code in libdrm_radeon this also ensure that both
ddx and mesa compute those alignment in the same way.

v2 fix evergreen
v3 fix compressed texture and workaround cube texture issue by
disabling 2D array mode for cubemap (need to check if r7xx and
newer are also affected by the issue)
v4 fix texture array
v5 fix evergreen and newer, split surface values computation from
mipmap tree generation so that we can get them directly from the
ddx
v6 final fix to evergreen tile split value
v7 fix mipmap offset to avoid to use random value, use color view
depth view to address different layer as hardware is doing some
magic rotation depending on the layer
v8 fix COLOR_VIEW on r6xx for linear array mode, use COLOR_VIEW on
evergreen, align bytes per pixel to a multiple of a dword
v9 fix handling of stencil on evergreen, half fix for compressed
texture
v10 fix evergreen compressed texture proper support for stencil
tile split. Fix stencil issue when array mode was clear by
the kernel, always program stencil bo. On evergreen depth
buffer bo need to be big enough to hold depth buffer + stencil
buffer as even with stencil disabled things get written there.
v11 rebase on top of mesa, fix pitch issue with 1d surface on evergreen,
old ddx overestimate those. Fix linear case when pitch*height < 64.
Fix r300g.
v12 Fix linear case when pitch*height < 64 for old path, adapt to
libdrm API change
v13 add libdrm check

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
bb1f0cf3508630a9a93512c79badf8c493c46743 02-Dec-2011 Jerome Glisse <jglisse@redhat.com> r600g: add support for virtual address space on cayman v11

Virtual address space put the userspace in charge of their GPU
address space. It's up to userspace to bind bo into the virtual
address space. Command stream can them be executed using the
IB_VM chunck.

This patch add support for this configuration. It doesn't remove
the 64K ib size limit thought this limit can be extanded up to
1M for IB_VM chunk.

v2: fix rendering
v3: fix rendering when using index buffer
v4: make vm conditional on kernel support add basic va management
v5: catch the case when we already have va for a bo
v6: agd5f: update on top of ioctl changes
v7: agd5f: further ioctl updates
v8: indentation cleanup + fix non cayman
v9: rebase against lastest mesa + improvement from Marek & Michel
v10: fix cut/paste bug
v11: don't rely on updated radeon_drm.h

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
93f4e3cb6c1ca303ee1f5c2a2491a8eff33f2633 24-Dec-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: move managing GEM domains back to drivers

This partially reverts commit 363ff844753c46ac9c13866627e096b091ea81f8.

It caused severe performance drops in Nexuiz. Reported by Phoronix.

Tested by me on r300g and by IRC people on r600g.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
bbc320a94def6178028a4c46012c737839e1cf61 06-Dec-2011 Jerome Glisse <jglisse@redhat.com> gallium/radeon: fix indentation

Indentation cleanup, to keep consistency.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
3da5196263fb2ae60483044cbd34c94270e2accd 10-Nov-2011 Brian Paul <brianp@vmware.com> radeon: silence initializer warnings
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
ef64da8f013691c66744064769db379e57ef95de 24-Oct-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: don't use the new GEM_WAIT ioctl for now
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
2717b8f034db16cf551e167aa5ce3a9be3bf730b 08-Oct-2011 Mathias Fröhlich <Mathias.Froehlich@gmx.net> winsys/radeon: restore the old r600g winsys memory characteristics.

Use VRAM for static and immutable buffers. This restores the
recently removed r600g winsys behaviour for memory locations.
This also improoves rendering times on the gpu for some
OpenSceneGraph based test cases by about 15%.

Signed-off-by: Marek Olšák <maraeo@gmail.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
363ff844753c46ac9c13866627e096b091ea81f8 27-Sep-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: move GEM domains out of the drivers into winsys

The drivers don't need to care about the domains. All they need to set
are the bind and usage flags. This simplifies the winsys too.

This also fixes on r600g:
- fbo-depth-GL_DEPTH_COMPONENT32F-copypixels
- fbo-depth-GL_DEPTH_COMPONENT16-copypixels
- fbo-depth-GL_DEPTH_COMPONENT24-copypixels
- fbo-depth-GL_DEPTH_COMPONENT32-copypixels
- fbo-depth-GL_DEPTH24_STENCIL8-copypixels
I can't explain it.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
af8eb5c851a9d566059ae9e37745614cd96b9a13 27-Sep-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: remove a redundant parameter 'size' from buffer_from_handle

It's part of pb_buffer already.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
a3cd2c6c9b3724dbc3aa565dab98968c46bde963 27-Sep-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: remove redundant member radeon_bo::size

It's part of pb_buffer already.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
bfa51dfeac67a7e3383614374c86bdfb5751997a 27-Sep-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: simplify passing GEM domains through to GEM_CREATE
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
34f4bd81906d8385eb3e9af721d50e985cb9d7d4 13-Sep-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: use the cache bufmgr for buffers with PIPE_BIND_CUSTOM

so that we don't abuse PIPE_BIND_VERTEX_BUFFER all the time.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
4682e706012fe26627a2f827db01b5068cc62814 11-Sep-2011 Marek Olšák <maraeo@gmail.com> pb_buffer: inline 'base' sub-struct
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
70b1837dfb1b282ad9efcaeec4f9c8da5f9a74d8 20-Aug-2011 Chia-I Wu <olv@lunarg.com> winsys/radeon: use os_mmap() for memory mapping

os_mmap() guarantees large file support across OSes.

Reviewed-by: Marek Olšák <maraeo@gmail.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
ebfcc58b93cc08c534857c2314694e35b29690ae 07-Aug-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: take advantage of the new ioctl

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
1e3c81a068c4ae04cd1c6b18c687d5be69b7b8c4 07-Aug-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: hook up the new DRM_RADEON_GEM_WAIT ioctl

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
296b8990956fcbd7ce47902d7c108a5973db9397 07-Aug-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: remove broken bo-is-busy-for-write guessing

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
5229ba494b4b3f19085d13131a37626b914d4014 04-Aug-2011 Marek Olšák <maraeo@gmail.com> r600g: remove radeon_bo::handle

This should be private to radeon_winsys.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
11daa7e325cc2653269d3c01844ff77fdd515de9 03-Aug-2011 Marek Olšák <maraeo@gmail.com> r600g: allocate/destroy buffers using radeon_winsys

We use the cache buffer manager from radeon_winsys now, but we don't use
anything else yet.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
1554e69e00566bc7255b82f5ea93b1f02f1a5bb3 06-Aug-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: disable use of the buffer busy-for-write flag
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
2664980760c5cf2e7dde4065f9cc8e8b865627c3 03-Aug-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: remove dummy function pb_buffer
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
533e2289235c61eff9a14bb24da7c8a1ff0b0afa 22-Jul-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: manage constant buffers by the cache bufmgr too
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
7db148d3a5a350f80df8dc588e0079fda7aa378a 23-Jul-2011 Marek Olšák <maraeo@gmail.com> winsys/radeon: remove usage parameter from buffer_create
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
d35aeff4bb0b03450b2c3c08bd7f84db5bf43283 18-Apr-2011 Marek Olšák <maraeo@gmail.com> r300g/winsys: rename r300->radeon and do a little cleanup

Renaming a few files, types, and functions.
Also make the winsys independent of r300g.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
9d5de0fcb6ced7a4da85a09ad25dcbc2b21bfdf9 07-Apr-2011 Marek Olšák <maraeo@gmail.com> r300g: add 'radeon: ' prefix to error messages in winsys
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
6caac3ecb8bc32d92c35fdb1f0a67541ffa8af29 03-Apr-2011 Marek Olšák <maraeo@gmail.com> r300g: do not wait for a busy BO if neither GPU nor CPU is changing it

Improves frame rate in apps with at least one user vertex buffer and
a hw index buffer.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
9d881cbd5a4cd3252fdc8e1f81a6d48d67fc5e5c 03-Apr-2011 Marek Olšák <maraeo@gmail.com> r300g: remove unused RADEON_PB_USAGE_CACHE
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
652bf121f2124ec92b74f6e3e40e6aefcc1c50dc 03-Apr-2011 Marek Olšák <maraeo@gmail.com> r300g: avoid mapping the same buffer twice

Shouldn't happen, but you never know.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
c35572352e3e92683988ee8d151b47f4190d62f9 03-Apr-2011 Marek Olšák <maraeo@gmail.com> r300g: remove the redundant reference counter in radeon_bo

We already have pb_buffer::reference::count.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
5650a719f0c69c00954e47bd7a7b3e9433cb551d 08-Mar-2011 Marek Olšák <maraeo@gmail.com> r300g: decide whether a flush should be asynchronous when calling it

Thread offloading is not sometimes desirable, e.g. when mapping a buffer.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
fa3f1348e49feeac511dbe5b22bbddc47f56ba81 16-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: fix a race between CS and SET_TILING ioctls
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
b9e2cde6006b557a3a23a82384899f4d5a5ac7b8 15-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: offload the CS ioctl to another thread

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
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
333d3daf472485b247101932d95ccb798cb55f7b 15-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: actually implement the is_buffer_busy hook the right way

Ooops.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
45e1cd522bd26a5aa3d424ea49975b90feef8450 15-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: handle interaction between UNSYNCHRONIZED and DONTBLOCK flags in bo_map

The VBO module uses both, but they are somewhat opposite to each other.
In this case, we pick UNSYNCHRONIZED and ignore DONTBLOCK.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
8decb0a96de0accfc8361890cbcf9db89f8fe8ba 15-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: fix a possible race condition when mapping a buffer

This is the last one I think.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
89ee0d527c689b70a08c1eb396486d47da7f120d 14-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: flush CS in bo_map even if we get USAGE_DONTBLOCK

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.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
a87730ff3f83253465fbe9a1e9e9b1ea92cb79b9 13-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: implement pb_manager::is_buffer_busy
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
8ab1fcc66a58ca87fb19fea2b0e14e62562deccc 13-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: fixup the handle_compare function

Accidentally negated in 685c3262b945a7f0e9f1f3a9409a12fdda08c828.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
685c3262b945a7f0e9f1f3a9409a12fdda08c828 12-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: typecast void* to unsigned correctly
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
df54b53b7d12a3bca5867b6649cb308feb36f0da 11-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: improve function radeon_bo_is_referenced_by_cs

This should prevent calling into radeon_get_reloc when there's
only one context.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
de22d8f1eebd3245acccdb4098526ee1bf616c06 11-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: remove unused function prototypes, update copyright
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
032b162ce88ef6ec8ad981fff709eb177d794589 11-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: plug a memory leak in winsys
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
862ebb411b911f28bc93316e9e68c42f69f4dff3 11-Feb-2011 Marek Olšák <maraeo@gmail.com> r300g: remove unneeded code in winsys

We don't need the read/write flags.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
6ccab620a0e7364ab6c0d902b3ddf58ee988f7fa 23-Dec-2010 Marek Olšák <maraeo@gmail.com> r300g: import the last bits of libdrm and cleanup the whole thing

Based on Dave's branch.

The majority of this commit is a cleanup, mainly renaming things.
There wasn't much code to import, just ioctl calls.

Also done:
- implemented unsynchronized bo_map (important optimization!)
- radeon_bo_is_referenced_by_cs is no longer a refcount hack
- dropped the libdrm_radeon dependency

I'm surprised that this has resulted in less code in the end.
/external/mesa3d/src/gallium/winsys/radeon/drm/radeon_drm_bo.c