diff options
author | Corbin Simpson <MostAwesomeDude@gmail.com> | 2009-03-03 22:11:56 -0800 |
---|---|---|
committer | Corbin Simpson <MostAwesomeDude@gmail.com> | 2009-03-03 22:16:24 -0800 |
commit | 60041203d5847de8ab71842a6ce5d33d96cc4930 (patch) | |
tree | 84af1958396b95db7d5de189441f8079564cfadf /src/gallium/winsys/drm | |
parent | 9e67b0a1745e50fe34efedb0a3191b4a27e10724 (diff) |
r300-gallium, radeon-gallium: Continue migration to DRI2 state_tracker, part 2.
Almost there. glxinfo still works, and AFAICT so does trivial/clear.
Diffstat (limited to 'src/gallium/winsys/drm')
-rw-r--r-- | src/gallium/winsys/drm/radeon/radeon_drm.c | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/gallium/winsys/drm/radeon/radeon_drm.c b/src/gallium/winsys/drm/radeon/radeon_drm.c index 9cd178f944..21f2a62e0f 100644 --- a/src/gallium/winsys/drm/radeon/radeon_drm.c +++ b/src/gallium/winsys/drm/radeon/radeon_drm.c @@ -59,6 +59,7 @@ boolean radeon_buffer_from_texture(struct pipe_texture* texture, struct pipe_buffer** buffer, unsigned* stride) { + return FALSE; } /* Create a buffer from a handle. */ @@ -67,7 +68,8 @@ struct pipe_buffer* radeon_buffer_from_handle(struct pipe_screen* screen, const char* name, unsigned handle) { - struct radeon_bo_manager* bom = ((struct radeon_winsys*)screen->winsys)->bom; + struct radeon_bo_manager* bom = + ((struct radeon_winsys*)screen->winsys)->bom; struct radeon_pipe_buffer* radeon_buffer; struct radeon_bo* bo = NULL; @@ -92,19 +94,29 @@ boolean radeon_handle_from_buffer(struct pipe_screen* screen, struct pipe_buffer* buffer, unsigned* handle) { + struct radeon_pipe_buffer* radeon_buffer = + (struct radeon_pipe_buffer*)buffer; + *handle = radeon_buffer->bo->handle; + return TRUE; } boolean radeon_global_handle_from_buffer(struct pipe_screen* screen, struct pipe_buffer* buffer, unsigned* handle) { + /* XXX WTF is the difference here? global? */ + struct radeon_pipe_buffer* radeon_buffer = + (struct radeon_pipe_buffer*)buffer; + *handle = radeon_buffer->bo->handle; + return TRUE; } struct drm_api drm_api_hooks = { .create_screen = radeon_create_screen, .create_context = radeon_create_context, - .buffer_from_texture = radeon_buffer_from_texture, + /* XXX fix this */ + .buffer_from_texture = r300_get_texture_buffer, .buffer_from_handle = radeon_buffer_from_handle, .handle_from_buffer = radeon_handle_from_buffer, .global_handle_from_buffer = radeon_global_handle_from_buffer, -};
\ No newline at end of file +}; |