diff options
author | Corbin Simpson <MostAwesomeDude@gmail.com> | 2009-05-01 05:54:53 -0700 |
---|---|---|
committer | Corbin Simpson <MostAwesomeDude@gmail.com> | 2009-05-01 05:54:53 -0700 |
commit | c11ad489e7432f3ed2fcaf5b15b8fe3538ae6d30 (patch) | |
tree | e2a1bb1fec400d7419a12f0f2532585ae8d61e86 /src/gallium/winsys/drm/radeon/core/radeon_buffer.h | |
parent | d7f4ac9f34a72efe53a1a140557f1822afbadf16 (diff) |
r300-gallium, radeon-winsys: Space accounting.
It is no longer optional in current libdrm, so it was time to actually
start counting our BOs.
Diffstat (limited to 'src/gallium/winsys/drm/radeon/core/radeon_buffer.h')
-rw-r--r-- | src/gallium/winsys/drm/radeon/core/radeon_buffer.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/gallium/winsys/drm/radeon/core/radeon_buffer.h b/src/gallium/winsys/drm/radeon/core/radeon_buffer.h index 163422f296..73fa362aca 100644 --- a/src/gallium/winsys/drm/radeon/core/radeon_buffer.h +++ b/src/gallium/winsys/drm/radeon/core/radeon_buffer.h @@ -41,6 +41,7 @@ #include "util/u_memory.h" #include "radeon_bo.h" +#include "radeon_cs.h" #include "radeon_drm.h" @@ -49,13 +50,24 @@ struct radeon_pipe_buffer { struct radeon_bo *bo; }; +#define RADEON_MAX_BOS 24 + +struct radeon_winsys_priv { + /* Radeon BO manager. */ + struct radeon_bo_manager* bom; + + /* Radeon BO space checker. */ + struct radeon_cs_space_check sc[RADEON_MAX_BOS]; + /* Current BO count. */ + unsigned bo_count; +}; + struct radeon_winsys { /* Parent class. */ struct pipe_winsys base; - /* Radeon BO manager. - * This corresponds to void* radeon_winsys in r300_winsys. */ - struct radeon_bo_manager* bom; + /* This corresponds to void* radeon_winsys in r300_winsys. */ + struct radeon_winsys_priv* priv; }; struct radeon_winsys* radeon_pipe_winsys(int fb); |