int pan_debug = 0;
-struct panfrost_driver *panfrost_create_drm_driver(int fd);
-
static const char *
panfrost_get_name(struct pipe_screen *screen)
{
case PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR:
return 1;
+ /* TODO: Where does this req come from in practice? */
+ case PIPE_CAP_VERTEX_BUFFER_STRIDE_4BYTE_ALIGNED_ONLY:
+ return 1;
+
case PIPE_CAP_MAX_TEXTURE_2D_SIZE:
return 4096;
case PIPE_CAP_MAX_TEXTURE_3D_LEVELS:
if (format == PIPE_FORMAT_A1B5G5R5_UNORM || format == PIPE_FORMAT_X1B5G5R5_UNORM)
return FALSE;
+ /* Allow through special formats */
+
+ switch (format) {
+ case PIPE_FORMAT_R11G11B10_FLOAT:
+ case PIPE_FORMAT_B5G6R5_UNORM:
+ return TRUE;
+ default:
+ break;
+ }
+
if (bind & PIPE_BIND_RENDER_TARGET) {
if (format_desc->colorspace == UTIL_FORMAT_COLORSPACE_ZS)
return FALSE;
- if (format == PIPE_FORMAT_B5G6R5_UNORM)
- return TRUE;
-
/* Check for vaguely 8UNORM formats. Looser than
* util_format_is_rgba8_variant, since it permits R8 (for
* instance) */