diff options
Diffstat (limited to 'src/gallium/winsys/radeon/drm/radeon_winsys.h')
-rw-r--r-- | src/gallium/winsys/radeon/drm/radeon_winsys.h | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/src/gallium/winsys/radeon/drm/radeon_winsys.h b/src/gallium/winsys/radeon/drm/radeon_winsys.h index eeae724d042..485e9259be3 100644 --- a/src/gallium/winsys/radeon/drm/radeon_winsys.h +++ b/src/gallium/winsys/radeon/drm/radeon_winsys.h @@ -232,14 +232,17 @@ enum radeon_feature_id { struct radeon_winsys { /** - * Reference counting + * The screen object this winsys was created for */ - struct pipe_reference reference; + struct pipe_screen *screen; /** - * The screen object this winsys was created for + * Decrement the winsys reference count. + * + * \param ws The winsys this function is called for. + * \return True if the winsys and screen should be destroyed. */ - struct pipe_screen *screen; + bool (*unref)(struct radeon_winsys *ws); /** * Destroy this winsys. @@ -568,15 +571,6 @@ struct radeon_winsys { enum radeon_value_id value); }; -/** - * Decrement the winsys reference count. - * - * \param ws The winsys this function is called for. - */ -static INLINE boolean radeon_winsys_unref(struct radeon_winsys *ws) -{ - return pipe_reference(&ws->reference, NULL); -} static INLINE void radeon_emit(struct radeon_winsys_cs *cs, uint32_t value) { |