diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2019-06-28 16:06:23 +0200 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2019-07-03 09:19:07 +0000 |
commit | cb446dc0fa5c68f681108f4613560543aa4cf553 (patch) | |
tree | b9dae30fa2bcbb5453ff96022118bbaf421f4a8c /src/gallium/winsys/amdgpu/drm/amdgpu_bo.h | |
parent | 6fce296400cd327c671a39e84bd377174a534bf7 (diff) |
winsys/amdgpu: Add amdgpu_screen_winsys
It extends pipe_screen / radeon_winsys and references amdgpu_winsys.
Multiple amdgpu_screen_winsys instances may reference the same
amdgpu_winsys instance, which corresponds to an amdgpu_device_handle.
The purpose of amdgpu_screen_winsys is to keep a duplicate of the DRM
file descriptor passed to amdgpu_winsys_create, which will be needed
in the next change.
v2:
* Add comment in amdgpu_winsys_unref explaining why it always returns
true (Marek Olšák)
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Diffstat (limited to 'src/gallium/winsys/amdgpu/drm/amdgpu_bo.h')
-rw-r--r-- | src/gallium/winsys/amdgpu/drm/amdgpu_bo.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/gallium/winsys/amdgpu/drm/amdgpu_bo.h b/src/gallium/winsys/amdgpu/drm/amdgpu_bo.h index 88f4241327d..18ef7e1fa51 100644 --- a/src/gallium/winsys/amdgpu/drm/amdgpu_bo.h +++ b/src/gallium/winsys/amdgpu/drm/amdgpu_bo.h @@ -125,8 +125,16 @@ struct amdgpu_slab { }; bool amdgpu_bo_can_reclaim(struct pb_buffer *_buf); +struct pb_buffer *amdgpu_bo_create(struct amdgpu_winsys *ws, + uint64_t size, + unsigned alignment, + enum radeon_bo_domain domain, + enum radeon_bo_flag flags); void amdgpu_bo_destroy(struct pb_buffer *_buf); -void amdgpu_bo_init_functions(struct amdgpu_winsys *ws); +void *amdgpu_bo_map(struct pb_buffer *buf, + struct radeon_cmdbuf *rcs, + enum pipe_transfer_usage usage); +void amdgpu_bo_init_functions(struct amdgpu_screen_winsys *ws); bool amdgpu_bo_can_reclaim_slab(void *priv, struct pb_slab_entry *entry); struct pb_slab *amdgpu_bo_slab_alloc(void *priv, unsigned heap, |