diff options
| -rw-r--r-- | drivers/gpu/drm/drm_drv.c | 18 | ||||
| -rw-r--r-- | include/drm/drmP.h | 1 | 
2 files changed, 19 insertions, 0 deletions
| diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c index cf2dfb790bf1..03711d00aaae 100644 --- a/drivers/gpu/drm/drm_drv.c +++ b/drivers/gpu/drm/drm_drv.c @@ -450,3 +450,21 @@ long drm_ioctl(struct file *filp,  	return retcode;  }  EXPORT_SYMBOL(drm_ioctl); + +/** + * drm_ioctl_flags - Check for core ioctl and return ioctl permission flags + * + * @nr: Ioctl number. + * @flags: Where to return the ioctl permission flags + */ +bool drm_ioctl_flags(unsigned int nr, unsigned int *flags) +{ +	if ((nr >= DRM_COMMAND_END && nr < DRM_CORE_IOCTL_COUNT) || +	    (nr < DRM_COMMAND_BASE)) { +		*flags = drm_ioctls[nr].flags; +		return true; +	} + +	return false; +} +EXPORT_SYMBOL(drm_ioctl_flags); diff --git a/include/drm/drmP.h b/include/drm/drmP.h index 4e24a1a0daeb..e97fc998374c 100644 --- a/include/drm/drmP.h +++ b/include/drm/drmP.h @@ -1229,6 +1229,7 @@ extern long drm_ioctl(struct file *filp,  extern long drm_compat_ioctl(struct file *filp,  			     unsigned int cmd, unsigned long arg);  extern int drm_lastclose(struct drm_device *dev); +extern bool drm_ioctl_flags(unsigned int nr, unsigned int *flags);  				/* Device support (drm_fops.h) */  extern struct mutex drm_global_mutex; | 
