Warning, file /include/libdrm/radeon_bo.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030 #ifndef RADEON_BO_H
0031 #define RADEON_BO_H
0032
0033 #include <stdio.h>
0034 #include <stdint.h>
0035
0036
0037 #define RADEON_BO_FLAGS_MACRO_TILE 1
0038 #define RADEON_BO_FLAGS_MICRO_TILE 2
0039 #define RADEON_BO_FLAGS_MICRO_TILE_SQUARE 0x20
0040
0041 struct radeon_bo_manager;
0042 struct radeon_cs;
0043
0044 struct radeon_bo {
0045 void *ptr;
0046 uint32_t flags;
0047 uint32_t handle;
0048 uint32_t size;
0049 };
0050
0051
0052 void radeon_bo_debug(struct radeon_bo *bo, const char *op);
0053
0054 struct radeon_bo *radeon_bo_open(struct radeon_bo_manager *bom,
0055 uint32_t handle,
0056 uint32_t size,
0057 uint32_t alignment,
0058 uint32_t domains,
0059 uint32_t flags);
0060
0061 void radeon_bo_ref(struct radeon_bo *bo);
0062 struct radeon_bo *radeon_bo_unref(struct radeon_bo *bo);
0063 int radeon_bo_map(struct radeon_bo *bo, int write);
0064 int radeon_bo_unmap(struct radeon_bo *bo);
0065 int radeon_bo_wait(struct radeon_bo *bo);
0066 int radeon_bo_is_busy(struct radeon_bo *bo, uint32_t *domain);
0067 int radeon_bo_set_tiling(struct radeon_bo *bo, uint32_t tiling_flags, uint32_t pitch);
0068 int radeon_bo_get_tiling(struct radeon_bo *bo, uint32_t *tiling_flags, uint32_t *pitch);
0069 int radeon_bo_is_static(struct radeon_bo *bo);
0070 int radeon_bo_is_referenced_by_cs(struct radeon_bo *bo, struct radeon_cs *cs);
0071 uint32_t radeon_bo_get_handle(struct radeon_bo *bo);
0072 uint32_t radeon_bo_get_src_domain(struct radeon_bo *bo);
0073 #endif