X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fgallium%2Fdrivers%2Fsvga%2Fsvga_screen.h;h=12b93468da2eea73f0a6a2bb9541a9c0d5612abb;hb=5d8359ff4d8c379fdf1a78758f405bb4cdf69459;hp=d7d2c7563598293b0a84f900881d8fa501a5ae7e;hpb=9773370eda1765b1014ba11a699d10244b88757c;p=mesa.git diff --git a/src/gallium/drivers/svga/svga_screen.h b/src/gallium/drivers/svga/svga_screen.h index d7d2c756359..12b93468da2 100644 --- a/src/gallium/drivers/svga/svga_screen.h +++ b/src/gallium/drivers/svga/svga_screen.h @@ -1,4 +1,4 @@ -/********************************************************** + /********************************************************** * Copyright 2008-2009 VMware, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person @@ -30,8 +30,6 @@ #include "pipe/p_screen.h" #include "os/os_thread.h" -#include "util/u_double_list.h" - #include "svga_screen_cache.h" @@ -49,7 +47,14 @@ struct svga_screen SVGA3dHardwareVersion hw_version; + /** Device caps */ + boolean haveProvokingVertex; + boolean haveLineStipple, haveLineSmooth; + float maxLineWidth, maxLineWidthAA; float maxPointSize; + unsigned max_color_buffers; + unsigned max_const_buffers; + unsigned ms_samples; struct { boolean force_level_surface_view; @@ -57,27 +62,37 @@ struct svga_screen boolean no_surface_view; boolean force_sampler_view; boolean no_sampler_view; + boolean no_cache_index_buffers; } debug; unsigned texture_timestamp; - pipe_mutex tex_mutex; + mtx_t tex_mutex; - pipe_mutex swc_mutex; /* Used for buffer uploads */ + mtx_t swc_mutex; /* Used for buffer uploads */ /* which formats to translate depth formats into */ struct { enum SVGA3dSurfaceFormat z16; + /* note gallium order */ enum SVGA3dSurfaceFormat x8z24; enum SVGA3dSurfaceFormat s8z24; } depth; struct svga_host_surface_cache cache; + + /** HUD counters */ + struct { + /** Memory used by all resources (buffers and surfaces) */ + uint64_t total_resource_bytes; + uint64_t num_resources; + uint64_t num_failed_allocations; + } hud; }; #ifndef DEBUG /** cast wrapper */ -static INLINE struct svga_screen * +static inline struct svga_screen * svga_screen(struct pipe_screen *pscreen) { return (struct svga_screen *) pscreen;