#include "radv_entrypoints.h"
+#include "wsi_common.h"
#define MAX_VBS 32
#define MAX_VERTEX_ATTRIBS 32
* Print a FINISHME message, including its source location.
*/
#define radv_finishme(format, ...) \
- __radv_finishme(__FILE__, __LINE__, format, ##__VA_ARGS__);
+ do { \
+ static bool reported = false; \
+ if (!reported) { \
+ __radv_finishme(__FILE__, __LINE__, format, ##__VA_ARGS__); \
+ reported = true; \
+ } \
+ } while (0)
/* A non-fatal assert. Useful for debugging. */
#ifdef DEBUG
extern struct radv_dispatch_table dtable;
-struct radv_wsi_interaface;
-
-#define VK_ICD_WSI_PLATFORM_MAX 5
-
struct radv_physical_device {
VK_LOADER_DATA _loader_data;
uint32_t pci_vendor_id;
uint32_t pci_device_id;
- struct radv_wsi_interface * wsi[VK_ICD_WSI_PLATFORM_MAX];
+ uint8_t uuid[VK_UUID_SIZE];
+
+ struct wsi_device wsi_device;
};
struct radv_instance {
bool allow_fast_clears;
bool allow_dcc;
+ bool shader_stats_dump;
/* MSAA sample locations.
* The first index is the sample index.
float sample_locations_16x[16][2];
};
-void radv_device_get_cache_uuid(void *uuid);
-
struct radv_device_memory {
struct radeon_winsys_bo *bo;
uint32_t type_index;
struct ac_shader_variant_info info;
unsigned rsrc1;
unsigned rsrc2;
+ uint32_t code_size;
};
struct radv_depth_stencil_state {
uint64_t offset;
uint64_t size;
unsigned alignment;
- unsigned pitch;
- unsigned height;
- unsigned xalign;
- unsigned yalign;
unsigned slice_tile_max;
unsigned base_address_reg;
};
struct radv_image *image, uint32_t value);
void radv_initialize_dcc(struct radv_cmd_buffer *cmd_buffer,
struct radv_image *image, uint32_t value);
+
+struct radv_fence {
+ struct radeon_winsys_fence *fence;
+ bool submitted;
+ bool signalled;
+};
+
#define RADV_DEFINE_HANDLE_CASTS(__radv_type, __VkType) \
\
static inline struct __radv_type * \