Merge remote branch 'origin/master' into pipe-video
[mesa.git] / src / gallium / winsys / r600 / drm / r600_priv.h
index e3868d3cb9a5b6840bc045345ed629daf3d8fbfb..9fd77b71c775c562097d47f71fc5a25d6fc9009e 100644 (file)
@@ -42,6 +42,7 @@ struct radeon {
        enum chip_class                 chip_class;
        struct pb_manager *kman; /* kernel bo manager */
        struct pb_manager *cman; /* cached bo manager */
+       struct r600_tiling_info tiling_info;
 };
 
 struct radeon *r600_new(int fd, unsigned device);
@@ -61,7 +62,7 @@ struct radeon_bo {
        unsigned                        handle;
        unsigned                        size;
        unsigned                        alignment;
-       unsigned                        map_count;
+       int                             map_count;
        void                            *data;
        struct list_head                fencedlist;
        unsigned                        fence;
@@ -76,6 +77,9 @@ struct r600_bo {
        struct pipe_reference           reference;
        struct pb_buffer                *pb;
        unsigned                        size;
+       unsigned                        tiling_flags;
+       unsigned                        kernel_pitch;
+       unsigned                        domains;
 };
 
 
@@ -87,14 +91,20 @@ struct radeon *radeon_decref(struct radeon *radeon);
 
 /* radeon_bo.c */
 struct radeon_bo *radeon_bo(struct radeon *radeon, unsigned handle,
-                           unsigned size, unsigned alignment, void *ptr);
+                           unsigned size, unsigned alignment);
 void radeon_bo_reference(struct radeon *radeon, struct radeon_bo **dst,
                         struct radeon_bo *src);
 int radeon_bo_wait(struct radeon *radeon, struct radeon_bo *bo);
 int radeon_bo_busy(struct radeon *radeon, struct radeon_bo *bo, uint32_t *domain);
 void radeon_bo_pbmgr_flush_maps(struct pb_manager *_mgr);
 int radeon_bo_fencelist(struct radeon *radeon, struct radeon_bo **bolist, uint32_t num_bo);
-
+int radeon_bo_get_tiling_flags(struct radeon *radeon,
+                              struct radeon_bo *bo,
+                              uint32_t *tiling_flags,
+                              uint32_t *pitch);
+int radeon_bo_get_name(struct radeon *radeon,
+                      struct radeon_bo *bo,
+                      uint32_t *name);
 
 /* radeon_bo_pb.c */
 struct radeon_bo *radeon_bo_pb_get_bo(struct pb_buffer *_buf);