#include "pipe/p_screen.h"
#include "renderonly/renderonly.h"
#include "os/os_thread.h"
-#include "state_tracker/drm_driver.h"
+#include "frontend/drm_driver.h"
#include "util/list.h"
#include "util/slab.h"
#include "broadcom/common/v3d_debug.h"
struct v3d_bo;
-#define VC5_MAX_MIP_LEVELS 12
-#define VC5_MAX_TEXTURE_SAMPLERS 32
-#define VC5_MAX_SAMPLES 4
-#define VC5_MAX_DRAW_BUFFERS 4
-#define VC5_MAX_ATTRIBUTES 16
-
/* These are tunable parameters in the HW design, but all the V3D
* implementations agree.
*/
const struct v3d_compiler *compiler;
- struct util_hash_table *bo_handles;
+ struct hash_table *bo_handles;
mtx_t bo_handles_mutex;
uint32_t bo_size;
uint32_t bo_count;
+ bool has_csd;
+ bool has_cache_flush;
+ bool nonmsaa_texture_size_limit;
+
struct v3d_simulator_file *sim_file;
};
return (struct v3d_screen *)screen;
}
-struct pipe_screen *v3d_screen_create(int fd, struct renderonly *ro);
+struct pipe_screen *v3d_screen_create(int fd,
+ const struct pipe_screen_config *config,
+ struct renderonly *ro);
void
v3d_fence_init(struct v3d_screen *screen);