tree-wide: replace MAYBE_UNUSED with ASSERTED
[mesa.git] / src / gallium / drivers / vc4 / vc4_screen.c
index 13fd5ac5440126d62bce9c7bbc0447b8f559c86f..d7325b885a4a330d06808a94f1739cb93d0867f8 100644 (file)
@@ -22,7 +22,7 @@
  * IN THE SOFTWARE.
  */
 
-#include "os/os_misc.h"
+#include "util/os_misc.h"
 #include "pipe/p_defines.h"
 #include "pipe/p_screen.h"
 #include "pipe/p_state.h"
 #include "util/u_format.h"
 #include "util/u_hash_table.h"
 #include "util/u_screen.h"
+#include "util/u_transfer_helper.h"
 #include "util/ralloc.h"
 
 #include <xf86drm.h>
-#include "drm_fourcc.h"
-#include "vc4_drm.h"
+#include "drm-uapi/drm_fourcc.h"
+#include "drm-uapi/vc4_drm.h"
 #include "vc4_screen.h"
 #include "vc4_context.h"
 #include "vc4_resource.h"
@@ -110,6 +111,8 @@ vc4_screen_destroy(struct pipe_screen *pscreen)
         vc4_simulator_destroy(screen);
 #endif
 
+        u_transfer_helper_destroy(pscreen->transfer_helper);
+
         close(screen->fd);
         ralloc_free(pscreen);
 }
@@ -168,13 +171,17 @@ vc4_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
                 return 1;
 
                 /* Texturing. */
-        case PIPE_CAP_MAX_TEXTURE_2D_LEVELS:
+        case PIPE_CAP_MAX_TEXTURE_2D_SIZE:
+                return 2048;
         case PIPE_CAP_MAX_TEXTURE_CUBE_LEVELS:
                 return VC4_MAX_MIP_LEVELS;
         case PIPE_CAP_MAX_TEXTURE_3D_LEVELS:
                 /* Note: Not supported in hardware, just faking it. */
                 return 5;
 
+        case PIPE_CAP_MAX_VARYINGS:
+                return 8;
+
         case PIPE_CAP_VENDOR_ID:
                 return 0x14E4;
         case PIPE_CAP_ACCELERATED:
@@ -300,7 +307,7 @@ vc4_screen_get_shader_param(struct pipe_screen *pscreen,
         return 0;
 }
 
-static boolean
+static bool
 vc4_screen_is_format_supported(struct pipe_screen *pscreen,
                                enum pipe_format format,
                                enum pipe_texture_target target,
@@ -314,10 +321,10 @@ vc4_screen_is_format_supported(struct pipe_screen *pscreen,
                 return false;
 
         if (sample_count > 1 && sample_count != VC4_MAX_SAMPLES)
-                return FALSE;
+                return false;
 
         if (target >= PIPE_MAX_TEXTURE_TYPES) {
-                return FALSE;
+                return false;
         }
 
         if (usage & PIPE_BIND_VERTEX_BUFFER) {
@@ -368,34 +375,34 @@ vc4_screen_is_format_supported(struct pipe_screen *pscreen,
                 case PIPE_FORMAT_R8_SSCALED:
                         break;
                 default:
-                        return FALSE;
+                        return false;
                 }
         }
 
         if ((usage & PIPE_BIND_RENDER_TARGET) &&
             !vc4_rt_format_supported(format)) {
-                return FALSE;
+                return false;
         }
 
         if ((usage & PIPE_BIND_SAMPLER_VIEW) &&
             (!vc4_tex_format_supported(format) ||
              (format == PIPE_FORMAT_ETC1_RGB8 && !screen->has_etc1))) {
-                return FALSE;
+                return false;
         }
 
         if ((usage & PIPE_BIND_DEPTH_STENCIL) &&
             format != PIPE_FORMAT_S8_UINT_Z24_UNORM &&
             format != PIPE_FORMAT_X8Z24_UNORM) {
-                return FALSE;
+                return false;
         }
 
         if ((usage & PIPE_BIND_INDEX_BUFFER) &&
             format != PIPE_FORMAT_I8_UINT &&
             format != PIPE_FORMAT_I16_UINT) {
-                return FALSE;
+                return false;
         }
 
-        return TRUE;
+        return true;
 }
 
 static void