From 56e89c9e4fb00b5c2af4536d4c50294608d0c46c Mon Sep 17 00:00:00 2001 From: Radosław Kujawa Date: Sun, 2 Aug 2026 22:04:06 +0200 Subject: Performance improvements, support userspace simulators --- src/mesa/drivers/verite/libv3d.c | 7 +++++++ src/mesa/drivers/verite/libv3d.h | 1 + src/mesa/drivers/verite/rlgl.c | 3 +-- src/mesa/drivers/verite/vrspan.c | 4 ++++ 4 files changed, 13 insertions(+), 2 deletions(-) (limited to 'src/mesa/drivers/verite') diff --git a/src/mesa/drivers/verite/libv3d.c b/src/mesa/drivers/verite/libv3d.c index b09f960..8d8050b 100644 --- a/src/mesa/drivers/verite/libv3d.c +++ b/src/mesa/drivers/verite/libv3d.c @@ -283,6 +283,13 @@ v3d_alloc(struct v3d *v, uint32_t size, uint32_t align, uint32_t *addr) return 0; } +int +v3d_free(struct v3d *v, uint32_t addr) +{ + + return ioctl(v->fd, V3D_FREE, &addr); +} + int v3d_mode(struct v3d *v, uint32_t depth, uint32_t frame_base) { diff --git a/src/mesa/drivers/verite/libv3d.h b/src/mesa/drivers/verite/libv3d.h index 4ee44b1..e27175a 100644 --- a/src/mesa/drivers/verite/libv3d.h +++ b/src/mesa/drivers/verite/libv3d.h @@ -122,6 +122,7 @@ void v3d_commit(struct v3d *, uint32_t nwords); int v3d_flush(struct v3d *); int v3d_sync(struct v3d *); int v3d_alloc(struct v3d *, uint32_t, uint32_t, uint32_t *); +int v3d_free(struct v3d *, uint32_t addr); int v3d_mode(struct v3d *, uint32_t depth, uint32_t frame_base); int v3d_flip(struct v3d *, uint32_t frame_base); diff --git a/src/mesa/drivers/verite/rlgl.c b/src/mesa/drivers/verite/rlgl.c index 1da14f2..4e25d93 100644 --- a/src/mesa/drivers/verite/rlgl.c +++ b/src/mesa/drivers/verite/rlgl.c @@ -27,7 +27,6 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include #include #include @@ -289,7 +288,7 @@ rlgl_tex_free(struct rlgl *rl, struct rlgl_tex *t) return; if (rl->cur_tex == addr) rl->cur_tex = (uint32_t)-1; - (void)ioctl(rl->v.fd, V3D_FREE, &addr); + (void)v3d_free(&rl->v, addr); t->addr = 0; } diff --git a/src/mesa/drivers/verite/vrspan.c b/src/mesa/drivers/verite/vrspan.c index 82a9f73..b666f6b 100644 --- a/src/mesa/drivers/verite/vrspan.c +++ b/src/mesa/drivers/verite/vrspan.c @@ -89,7 +89,11 @@ vr_set_buffer(GLcontext *ctx, GLframebuffer *buffer, GLuint bufferBit) } } +#if defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ #define VR_SWAP16(x) ((GLushort)((((x) & 0xff) << 8) | ((x) >> 8))) +#else +#define VR_SWAP16(x) ((GLushort)(x)) +#endif #define NAME(PREFIX) PREFIX##_565 #define SPAN_VARS \ -- cgit