OSDN Git Service

Make drv_mapping_destroy() be called in release builds
[android-x86/external-minigbm.git] / drv_priv.h
index d1369f0..b497890 100644 (file)
 
 #include "drv.h"
 
-struct bo {
-       struct driver *drv;
+struct bo_metadata {
        uint32_t width;
        uint32_t height;
        uint32_t format;
        uint32_t tiling;
        size_t num_planes;
-       union bo_handle handles[DRV_MAX_PLANES];
        uint32_t offsets[DRV_MAX_PLANES];
        uint32_t sizes[DRV_MAX_PLANES];
        uint32_t strides[DRV_MAX_PLANES];
        uint64_t format_modifiers[DRV_MAX_PLANES];
        uint64_t use_flags;
        size_t total_size;
+};
+
+struct bo {
+       struct driver *drv;
+       struct bo_metadata meta;
+       union bo_handle handles[DRV_MAX_PLANES];
        void *priv;
 };
 
@@ -73,7 +77,7 @@ struct backend {
        int (*bo_unmap)(struct bo *bo, struct vma *vma);
        int (*bo_invalidate)(struct bo *bo, struct mapping *mapping);
        int (*bo_flush)(struct bo *bo, struct mapping *mapping);
-       uint32_t (*resolve_format)(uint32_t format, uint64_t use_flags);
+       uint32_t (*resolve_format)(struct driver *drv, uint32_t format, uint64_t use_flags);
 };
 
 // clang-format off