设计网络网站有哪些功能,数字作品商城wordpress,广州市网站建设科技公司,咸宁市网站建设接前一篇文章#xff1a;libdrm全解析十九 —— 源码全解析#xff08;16#xff09; 本文参考以下博文#xff1a;
DRM 驱动程序开发#xff08;VKMS#xff09;
特此致谢#xff01; 本文继续对include/drm/drm.h中实际功能宏定义进行讲解。
29. DRM_IOCTL_SET_MAS…接前一篇文章libdrm全解析十九 —— 源码全解析16 本文参考以下博文
DRM 驱动程序开发VKMS
特此致谢 本文继续对include/drm/drm.h中实际功能宏定义进行讲解。
29. DRM_IOCTL_SET_MASTER
第29个宏是DRM_IOCTL_SET_MASTER相应代码如下
#define DRM_IOCTL_SET_MASTER DRM_IO(0x1e)
结合之前文章中的_IO(type,nr) 的最终定义得到如下代码
#define DRM_IOCTL_SET_MASTER ( ((0) 30) | ((d) 8) | ((0x1e) 0) | ((0) 16) )
DRM_IOCTL_SET_MASTER对应的Userspace API为drmSetMaster()。该函数也是在xf86drm.c中代码如下
drm_public int drmSetMaster(int fd)
{return drmIoctl(fd, DRM_IOCTL_SET_MASTER, NULL);
}
函数的作用是获取DRM-Master访问权限。此函数在后文具体讲解函数的时候进行详细解析。在此先认识一下、有个印象就好。 30. DRM_IOCTL_DROP_MASTER
第30个宏是DRM_IOCTL_DROP_MASTER相应代码如下
#define DRM_IOCTL_DROP_MASTER DRM_IO(0x1f)
结合之前文章中的_IOWR(type,nr,size)的最终定义得到如下代码
#define DRM_IOCTL_DROPMASTER ( ((0) 30) | ((d) 8) | ((0x1f) 0) | ((0) 16) )
DRM_IOCTL_DROP_MASTER对应的Userspace API为drmDropMaster()。该函数也是在xf86drm.c中代码如下
drm_public int drmDropMaster(int fd)
{return drmIoctl(fd, DRM_IOCTL_DROP_MASTER, NULL);
}
函数的作用是放弃DRM-Master访问权限。此函数在后文具体讲解函数的时候进行详细解析。在此先认识一下、有个印象就好。
其余宏定义将在后续文章中继续解析。