mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-06-27 17:56:15 +00:00
lib: Add support for new extension to the ADDFB2 ioctl.
New functionality accessesed via the __kms_addfb wrapper. Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
This commit is contained in:
parent
e36091d1c7
commit
c7bac3c62a
@ -1165,3 +1165,29 @@ void igt_require_fb_modifiers(int fd)
|
|||||||
|
|
||||||
igt_require(has_modifiers);
|
igt_require(has_modifiers);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int __kms_addfb(int fd, uint32_t handle, uint32_t width, uint32_t height,
|
||||||
|
uint32_t stride, uint32_t pixel_format, uint64_t modifier,
|
||||||
|
uint32_t flags, uint32_t *buf_id)
|
||||||
|
{
|
||||||
|
struct local_drm_mode_fb_cmd2 f;
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
igt_require_fb_modifiers(fd);
|
||||||
|
|
||||||
|
memset(&f, 0, sizeof(f));
|
||||||
|
|
||||||
|
f.width = width;
|
||||||
|
f.height = height;
|
||||||
|
f.pixel_format = pixel_format;
|
||||||
|
f.flags = flags;
|
||||||
|
f.handles[0] = handle;
|
||||||
|
f.pitches[0] = stride;
|
||||||
|
f.modifier[0] = modifier;
|
||||||
|
|
||||||
|
ret = drmIoctl(fd, LOCAL_DRM_IOCTL_MODE_ADDFB2, &f);
|
||||||
|
|
||||||
|
*buf_id = f.fb_id;
|
||||||
|
|
||||||
|
return ret < 0 ? -errno : ret;
|
||||||
|
}
|
||||||
|
@ -167,4 +167,13 @@ struct local_drm_mode_fb_cmd2 {
|
|||||||
|
|
||||||
void igt_require_fb_modifiers(int fd);
|
void igt_require_fb_modifiers(int fd);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* __kms_addfb:
|
||||||
|
*
|
||||||
|
* Creates a framebuffer object.
|
||||||
|
*/
|
||||||
|
int __kms_addfb(int fd, uint32_t handle, uint32_t width, uint32_t height,
|
||||||
|
uint32_t stride, uint32_t pixel_format, uint64_t modifier,
|
||||||
|
uint32_t flags, uint32_t *buf_id);
|
||||||
|
|
||||||
#endif /* IOCTL_WRAPPERS_H */
|
#endif /* IOCTL_WRAPPERS_H */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user