Firefly开源社区

lubuntu vga 分辨率设死一种,不能多种或者自适应

24

积分

0

威望

0

贡献

游客

积分
24
发表于 2016-4-27 11:12:00     
查看日志,发现在firefly_vga.c代码里面是读不到显示器到EDID block,所以最终到显示器分辨率就是DEFAULT_MODE 设置默认的这一种。


static int vga_edid_read(char *buf, int len)
{
    int rc;

    if (ddev == NULL || ddev->client == NULL)
        return -ENODEV;

    if (buf == NULL)
        return -ENOMEM;

    // Check ddc i2c communication is available or not.
    rc = vga_edid_i2c_read_regs(ddev->client, 0, buf, 6);
    if(rc == 6) {
        memset(buf, 0, len);
        // Read EDID.
        rc = vga_edid_i2c_read_regs(ddev->client, 0, buf, len);
        if(rc == len)
            return 0;
    }

    printk("unable to read EDID block.\n");
    return -EIO;
}


代码就是执行到红色部分,然后return -5,这边的DEFAULT_MODE就是设置为5



请问为什么读不到EDID呢,是不是编译内核时候要设置一些属性才行呢?
大家有遇到这个问题吗


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表