|
发表于 2017-11-6 15:25:52
只看该作者
板凳
本帖最后由 发光的大白菜 于 2017-11-6 15:32 编辑
今天发现在vga驱动中,vga_find_best_mode()方法直接返回了一个最大的分辨率,这里是否会导致VGA分辨率一直保持1920*1080呢?- static struct fb_videomode *vga_find_best_mode(void)
- {
- int res = -1,i;
- struct fb_videomode *mode = NULL, *best = NULL;
- res = vga_parse_edid();
- for(i = 0; i < 2 && res != 0; i++) {
- mdelay(30);
- res = vga_parse_edid();
- }
-
- if (res == 0) {
- mode = vga_find_max_mode();
- if (mode) {
- vga_set_modelist();
- best = (struct fb_videomode *)fb_find_nearest_mode(mode, &ddev->modelist);
- }
- } else {
- vga_set_default_modelist();
- printk("vga-ddc: read and parse edid failed errno:%d.\n", res);
- }
- best = vga_find_max_mode();</span>
- return best;
- }
复制代码
|
|