linux -video

来源:互联网 发布:淘宝ipad版下载 编辑:程序博客网 时间:2024/05/21 18:00

 video  个人总结:


  video里面有很多的结构体,例如:

  1 struct fb_video *mode  ;//这个结构体里面的参数是从modedb里面读出来的。其中modedb里面的时间参数是p秒为单位的。

        10的12次方/(x * y * 60) = p秒。就是modedb里面的参数。

2 struct fb_var_screeninfo var;//这个是显示参数,真正显示的屏的分辨率和timing的参数。


3 struct fb_monspecs monspecs;//定义的是读edid的所有信息。


4 采用dma方式分配的显存空间,是从kernel里面分配出来的一段内存用于fb显示的。并且地址是动态分配的。


5 WAIT_FOR_VSYNC;//此洪的目的是用于等待VSYNC信号是否完成。


6 几个有用的函数:

   fb_find_mode(&stdvar, info, mode_option, NULL, 0,NULL, info->var.bits_per_pixel);//此函数的作用是从modedb里面找出合适的显示分辨率。

   fb_var_to_videomode(&mode, &stdvar); //此函数的作用是将从modedb里面找到的显示timing参数,传递给中间变量mode。

   fb_videomode_to_var(&info->var, &mode); //此函数的作用是将mode作为中间临时变量,把mode里面存放的参数赋值给info->var结构体。


7 lcd的video驱动的模板在:

      drivers/video/skeletonfb.c

原创粉丝点击