diff options
-rw-r--r-- | src/gallium/drivers/panfrost/pan_bo.c | 20 | ||||
-rw-r--r-- | src/gallium/drivers/panfrost/pan_resource.c | 19 |
2 files changed, 20 insertions, 19 deletions
diff --git a/src/gallium/drivers/panfrost/pan_bo.c b/src/gallium/drivers/panfrost/pan_bo.c index 22476f09566..9b0e8d943b4 100644 --- a/src/gallium/drivers/panfrost/pan_bo.c +++ b/src/gallium/drivers/panfrost/pan_bo.c @@ -29,6 +29,7 @@ #include <pthread.h> #include "drm-uapi/panfrost_drm.h" +#include "pan_resource.h" #include "pan_screen.h" #include "pan_util.h" #include "pandecode/decode.h" @@ -319,6 +320,25 @@ panfrost_bo_release(struct panfrost_screen *screen, struct panfrost_bo *bo, ralloc_free(bo); } +void +panfrost_bo_reference(struct panfrost_bo *bo) +{ + if (bo) + pipe_reference(NULL, &bo->reference); +} + +void +panfrost_bo_unreference(struct pipe_screen *screen, struct panfrost_bo *bo) +{ + if (!bo) + return; + + /* When the reference count goes to zero, we need to cleanup */ + + if (pipe_reference(&bo->reference, NULL)) + panfrost_bo_release(pan_screen(screen), bo, true); +} + struct panfrost_bo * panfrost_bo_import(struct panfrost_screen *screen, int fd) { diff --git a/src/gallium/drivers/panfrost/pan_resource.c b/src/gallium/drivers/panfrost/pan_resource.c index 47a44bfd81a..766edee3ca6 100644 --- a/src/gallium/drivers/panfrost/pan_resource.c +++ b/src/gallium/drivers/panfrost/pan_resource.c @@ -521,25 +521,6 @@ panfrost_resource_create(struct pipe_screen *screen, return (struct pipe_resource *)so; } -void -panfrost_bo_reference(struct panfrost_bo *bo) -{ - if (bo) - pipe_reference(NULL, &bo->reference); -} - -void -panfrost_bo_unreference(struct pipe_screen *screen, struct panfrost_bo *bo) -{ - if (!bo) - return; - - /* When the reference count goes to zero, we need to cleanup */ - - if (pipe_reference(&bo->reference, NULL)) - panfrost_bo_release(pan_screen(screen), bo, true); -} - static void panfrost_resource_destroy(struct pipe_screen *screen, struct pipe_resource *pt) |