mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-06-12 02:16:17 +00:00
igt: Add a helper function for creating VC4 BOs.
v2: Use do_ioctl(). Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Daniel Stone <daniels@collabora.com>
This commit is contained in:
parent
b8badc2436
commit
59f98997ab
@ -68,9 +68,7 @@ uint32_t igt_vc4_get_cleared_bo(int fd, size_t size, uint32_t clearval)
|
|||||||
/* A single row will be a page. */
|
/* A single row will be a page. */
|
||||||
uint32_t width = 1024;
|
uint32_t width = 1024;
|
||||||
uint32_t height = size / (width * 4);
|
uint32_t height = size / (width * 4);
|
||||||
struct drm_vc4_create_bo create = {
|
uint32_t handle = igt_vc4_create_bo(fd, size);
|
||||||
.size = size,
|
|
||||||
};
|
|
||||||
struct drm_vc4_submit_cl submit = {
|
struct drm_vc4_submit_cl submit = {
|
||||||
.color_write = {
|
.color_write = {
|
||||||
.hindex = 0,
|
.hindex = 0,
|
||||||
@ -84,7 +82,7 @@ uint32_t igt_vc4_get_cleared_bo(int fd, size_t size, uint32_t clearval)
|
|||||||
.msaa_color_write = { .hindex = ~0 },
|
.msaa_color_write = { .hindex = ~0 },
|
||||||
.msaa_zs_write = { .hindex = ~0 },
|
.msaa_zs_write = { .hindex = ~0 },
|
||||||
|
|
||||||
.bo_handles = (uint64_t)(uintptr_t)&create.handle,
|
.bo_handles = (uint64_t)(uintptr_t)&handle,
|
||||||
.bo_handle_count = 1,
|
.bo_handle_count = 1,
|
||||||
.width = width,
|
.width = width,
|
||||||
.height = height,
|
.height = height,
|
||||||
@ -96,10 +94,20 @@ uint32_t igt_vc4_get_cleared_bo(int fd, size_t size, uint32_t clearval)
|
|||||||
|
|
||||||
igt_assert_eq_u32(width * height * 4, size);
|
igt_assert_eq_u32(width * height * 4, size);
|
||||||
|
|
||||||
do_ioctl(fd, DRM_IOCTL_VC4_CREATE_BO, &create);
|
|
||||||
|
|
||||||
do_ioctl(fd, DRM_IOCTL_VC4_SUBMIT_CL, &submit);
|
do_ioctl(fd, DRM_IOCTL_VC4_SUBMIT_CL, &submit);
|
||||||
|
|
||||||
|
return handle;
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
igt_vc4_create_bo(int fd, size_t size)
|
||||||
|
{
|
||||||
|
struct drm_vc4_create_bo create = {
|
||||||
|
.size = size,
|
||||||
|
};
|
||||||
|
|
||||||
|
do_ioctl(fd, DRM_IOCTL_VC4_CREATE_BO, &create);
|
||||||
|
|
||||||
return create.handle;
|
return create.handle;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,6 +25,7 @@
|
|||||||
#define IGT_VC4_H
|
#define IGT_VC4_H
|
||||||
|
|
||||||
uint32_t igt_vc4_get_cleared_bo(int fd, size_t size, uint32_t clearval);
|
uint32_t igt_vc4_get_cleared_bo(int fd, size_t size, uint32_t clearval);
|
||||||
|
int igt_vc4_create_bo(int fd, size_t size);
|
||||||
void *igt_vc4_mmap_bo(int fd, uint32_t handle, uint32_t size, unsigned prot);
|
void *igt_vc4_mmap_bo(int fd, uint32_t handle, uint32_t size, unsigned prot);
|
||||||
|
|
||||||
#endif /* IGT_VC4_H */
|
#endif /* IGT_VC4_H */
|
||||||
|
@ -22,6 +22,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "igt.h"
|
#include "igt.h"
|
||||||
|
#include "igt_vc4.h"
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
@ -39,14 +40,8 @@ igt_main
|
|||||||
int bo_handle;
|
int bo_handle;
|
||||||
|
|
||||||
igt_fixture {
|
igt_fixture {
|
||||||
struct drm_vc4_create_bo create = {
|
|
||||||
.size = 4096,
|
|
||||||
};
|
|
||||||
|
|
||||||
fd = drm_open_driver(DRIVER_VC4);
|
fd = drm_open_driver(DRIVER_VC4);
|
||||||
|
bo_handle = igt_vc4_create_bo(fd, 4096);
|
||||||
do_ioctl(fd, DRM_IOCTL_VC4_CREATE_BO, &create);
|
|
||||||
bo_handle = create.handle;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
igt_subtest("bad-bo") {
|
igt_subtest("bad-bo") {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user