+enum ilo_transfer_map_method {
+ /* map() / map_gtt() / map_unsynchronized() */
+ ILO_TRANSFER_MAP_CPU,
+ ILO_TRANSFER_MAP_GTT,
+ ILO_TRANSFER_MAP_UNSYNC,
+
+ /* use staging system buffer */
+ ILO_TRANSFER_MAP_SW_CONVERT,
+ ILO_TRANSFER_MAP_SW_ZS,
+};
+
+struct ilo_transfer {
+ struct pipe_transfer base;
+
+ enum ilo_transfer_map_method method;
+ void *ptr;
+
+ void *staging_sys;
+};
+