[igt-dev] [PATCH i-g-t v11 1/2] lib/igt_ioctl_wrappers: Add igt_has_drm_cap ioctl wrapper

Ville Syrjälä ville.syrjala at linux.intel.com
Fri Sep 25 15:08:06 UTC 2020


On Fri, Sep 25, 2020 at 09:56:12AM +0530, Karthik B S wrote:
> Add a generic helper for DRM_IOCTL_GET_CAP ioctl.
> 
> v10: -No changes.
> 
> v11: -Pass cap ID instead of the whole structure. (Ville)
>      -Fix the patch ordering. (Ville)
> 
> Signed-off-by: Karthik B S <karthik.b.s at intel.com>
> ---
>  lib/ioctl_wrappers.c | 17 +++++++++++++++++
>  lib/ioctl_wrappers.h |  1 +
>  2 files changed, 18 insertions(+)
> 
> diff --git a/lib/ioctl_wrappers.c b/lib/ioctl_wrappers.c
> index 3781286d..3f35609a 100644
> --- a/lib/ioctl_wrappers.c
> +++ b/lib/ioctl_wrappers.c
> @@ -1318,3 +1318,20 @@ int __kms_addfb(int fd, uint32_t handle,
>  
>  	return ret < 0 ? -errno : ret;
>  }
> +
> +/**
> + * igt_has_drm_cap:
> + * @fd: Open DRM file descriptor.
> + * @cap: drm_get_cap structure.
> + *
> + * This helper verifies if the passed cap is supported by the kernel
> + *
> + * Returns: Whether the cap is supported or not.
> + */
> +bool igt_has_drm_cap(int fd, uint64_t flag)

The docs and code here don't match. I fixed that up and
s/flag/capability/ for clarity.

There was also an int vs. pointer compiler warning in the
othr patch  which I fixed.

Series pushed to master. Thanks.

> +{
> +	struct drm_get_cap cap = { .capability = flag };
> +
> +	igt_assert(drmIoctl(fd, DRM_IOCTL_GET_CAP, &cap) == 0);
> +	return cap.value;
> +}
> diff --git a/lib/ioctl_wrappers.h b/lib/ioctl_wrappers.h
> index 870ac8b7..e0ec203d 100644
> --- a/lib/ioctl_wrappers.h
> +++ b/lib/ioctl_wrappers.h
> @@ -196,6 +196,7 @@ struct local_drm_mode_fb_cmd2 {
>  
>  bool igt_has_fb_modifiers(int fd);
>  void igt_require_fb_modifiers(int fd);
> +bool igt_has_drm_cap(int fd, uint64_t flag);
>  
>  /**
>   * __kms_addfb:
> -- 
> 2.22.0

-- 
Ville Syrjälä
Intel


More information about the igt-dev mailing list