中国建设教育协会的是假网站吗,郑州电力高等专科学校招生办电话,湖北高端企业礼品定制,设计报价网站接前一篇文章:KWin、libdrm、DRM从上到下全过程 —— drmModeAddFBxxx(6) 上一回讲到了drm_internal_framebuffer_create函数中的framebuffer_check函数。讲解了该函数的参数检查部分中的第二部分,本回对于该函数余下部分进行解析。
为了便于理解,再次贴出framebuffer_ch…接前一篇文章:KWin、libdrm、DRM从上到下全过程 —— drmModeAddFBxxx(6) 上一回讲到了drm_internal_framebuffer_create函数中的framebuffer_check函数。讲解了该函数的参数检查部分中的第二部分,本回对于该函数余下部分进行解析。
为了便于理解,再次贴出framebuffer_check函数的源码,在drivers/gpu/drm/drm_framebuffer.c中,代码如下:
static int framebuffer_check(struct drm_device *dev,const struct drm_mode_fb_cmd2 *r)
{const struct drm_format_info *info;int i;/* check if the format is supported at all */if (!__drm_format_info(r-pixel_format)) {drm_dbg_kms(dev, "bad framebuffer format %p4cc\n",r-pixel_format);return -EINVAL;}if (r-width == 0) {drm_dbg_kms(dev, "bad framebuffer width %u\n", r-width);return -EINVAL;}if (r-height == 0) {