Firefly开源社区

标题: failed to open DRM:No such file or directory. [打印本页]

作者: wx_Alen_VVU76    时间: 2021-6-18 13:16
标题: failed to open DRM:No such file or directory.
本帖最后由 wx_Alen_VVU76 于 2021-6-18 13:25 编辑


已实现lcd驱动,有/dev/dri/card0设备。
运行qt程序的时候报错: failed to open DRM:No such file or directory.   请问这个问题怎么解决啊?

[root@RV1126_RV1109:~]# ./qt_test
failed to open DRM:No such file or directory.
Rga built version:version:1.00
"pine" "pineapples"
failed to open DRM:No such file or directory.
failed to open DRM:No such file or directory.
failed to open DRM:No such file or directory.
failed to open DRM:No such file or directory.



作者: 板蓝根    时间: 2021-6-18 21:08
不清楚你是不是我们的板子和系统,推荐你看一下我们的 QFacialGate 仓库:https://gitlab.com/firefly-linux/app/qfacialgate
S06_QFacialGate 启动文件已经明确了启动 Qt 需要配置环境变量

export QT_QPA_FB_DRM=1
export QT_QPA_PLATFORM=linuxfb:rotation=0


作者: wx_Alen_VVU76    时间: 2021-6-21 08:37
板蓝根 发表于 2021-6-18 21:08
不清楚你是不是我们的板子和系统,推荐你看一下我们的 QFacialGate 仓库:https://gitlab.com/firefly-linu ...

谢谢回复,就是用了贵公司的开发板。 编译的环境是 ./build.sh aio-rv1126-jd4.mk 。

qt的配置环境也配置了。qt的测试程序是能运行的,但是报了上面的错误,然后显示屏显示的内容是白色的。
作者: 板蓝根    时间: 2021-6-21 14:24
开机 logo 是否有显示?提供一下修改记录,根据你所说你自己适配的 LCD和白屏的现象 ,如果修改过 kernel 的 dsi 节点的话,请注意 dts 的这几个属性有没有配置对

&dsi
                size,width = <120>;                                                                                                                                                      
                size,height = <170>;

                width-mm = <135>;
                height-mm = <217>;


作者: wx_Alen_VVU76    时间: 2021-6-21 16:38
板蓝根 发表于 2021-6-21 14:24
开机 logo 是否有显示?提供一下修改记录,根据你所说你自己适配的 LCD和白屏的现象 ,如果修改过 kernel  ...

开机的logo是能够正常显示的。
我只配置了width-mm 和 height-mm;
删除了  size,width 和 size,height 节点; (因为我看内核设备数描述文档里,没有这两个节点)

&dsi
           width-mm = <8>;
           height-mm = <6>;

下图是显示屏的结构图,可显示区域是 7.72mm x 5.8mm ; 整个尺寸是 16.6mm x 14.2mm
C:\Users\Administrator\Pictures\1.png
作者: 板蓝根    时间: 2021-6-21 16:40
怎么可能你的屏幕长度是 8毫米,高6毫米呢?请自行核对一下

作者: wx_Alen_VVU76    时间: 2021-6-21 16:42
板蓝根 发表于 2021-6-21 16:40
怎么可能你的屏幕长度是 8毫米,高6毫米呢?请自行核对一下

是真的,我用的是oled屏幕。只有指甲盖那么大

1.png (37.66 KB, 下载次数: 1719)

1.png

作者: 板蓝根    时间: 2021-6-21 16:42
这个属性关系到 QT 画面字体显示,至关重要。你的配置明显不合理
作者: wx_Alen_VVU76    时间: 2021-6-21 16:47
板蓝根 发表于 2021-6-21 16:42
这个属性关系到 QT 画面字体显示,至关重要。你的配置明显不合理

谢谢指导,但运行qt的时候,报错误 “failed to open DRM:No such file or directory.” ; 这个问题应该从哪个角度来解决呢,我现在没思路。  开机的时候也有logo显示的。
作者: 板蓝根    时间: 2021-6-21 17:00
如果检查配置没有问题,试一下以下方式排查
1. 试一下把 cd /oem; ./RkLunch-stop.sh 然后再运行看看可不可以。
2.在 sdk external/libdrm 参考 drm api 尝试一下直接用 drm api 绘图能不能正常显示


作者: wx_Alen_VVU76    时间: 2021-6-22 08:47
板蓝根 发表于 2021-6-21 17:00
如果检查配置没有问题,试一下以下方式排查
1. 试一下把 cd /oem; ./RkLunch-stop.sh 然后再运行看看可不 ...

您好,我按照您的说法试了一下。
1.   运行  ./RkLunch-stop.sh 然后再运行 ./qt_test,还是报错failed to open DRM:No such file or directory
2.  使用modetest是能够正常显示图案的。
作者: 板蓝根    时间: 2021-6-22 09:22
目前信息没办法分析,可以提供软件环境给我复现吗?
作者: wx_Alen_VVU76    时间: 2021-6-22 09:53
板蓝根 发表于 2021-6-22 09:22
目前信息没办法分析,可以提供软件环境给我复现吗?

可以的,怎么把环境发给你?微信还是qq?

我刚刚查了一下,发现没有 /dev/rga设备,但是你们已经在设备数里配置了啊,而且 ROCKCHIP_RGA2 =y 。
&rk_rga {
        status = "okay";
};

作者: 板蓝根    时间: 2021-6-22 09:57
固件和补丁放到百度云盘,下载地址贴出来就可以了
作者: wx_Alen_VVU76    时间: 2021-6-22 14:43
板蓝根 发表于 2021-6-22 09:57
固件和补丁放到百度云盘,下载地址贴出来就可以了

电脑磁盘空间不够了,补丁暂时没做好。等我做好了再上传,并告诉你。目前里面有固件和内核配置文件

链接:https://pan.baidu.com/s/1iUt1SpVTf568wrIduIwRAg
提取码:fpme

作者: 板蓝根    时间: 2021-6-22 17:43
设备树,发一下,用你的 config 编译 zboot.img 跑一个简单的 QT digitalclock demo 没有问题,用你的 zboot_ok.img 就有问题。看看设备树改了啥
作者: wx_Alen_VVU76    时间: 2021-6-23 09:13
板蓝根 发表于 2021-6-22 17:43
设备树,发一下,用你的 config 编译 zboot.img 跑一个简单的 QT digitalclock demo 没有问题,用你的 zboo ...

谢谢帮助。设备树已上传
作者: 板蓝根    时间: 2021-6-23 09:34
请问你是不是内核改得比较多,我们的 sdk 用你的 config 和dts 都没有复现问题
作者: wx_Alen_VVU76    时间: 2021-6-23 09:41
板蓝根 发表于 2021-6-23 09:34
请问你是不是内核改得比较多,我们的 sdk 用你的 config 和dts 都没有复现问题

您好,我没有更改内核里的东西啊。好奇怪啊。
请问您用的sdk版本是多少?我想切换到你的版本上再试一试。
作者: 板蓝根    时间: 2021-6-23 10:03
试一下我编译的 img
18760ddcde94769212e185fd1798144c  zboot.img

另外提供一下你的 kernel 仓库的 commit, cd kernel;git log

zboot.img.tar.gz

14.93 MB, 下载次数: 14, 下载积分: 灯泡 -1 , 经验 -1


作者: wx_Alen_VVU76    时间: 2021-6-23 10:08
板蓝根 发表于 2021-6-23 10:03
试一下我编译的 img
18760ddcde94769212e185fd1798144c  zboot.img

好的,谢谢。 我试试你的img。
我的git log信息如下
commit d0a23a658f1f8d6c649dc83e9b982a89624b33b4 (HEAD, m/master)
Author: daijh <djh@t-chip.com.cn>
Date:   Wed Mar 3 15:51:35 2021 +0800

    Firefly add RV1126/RV1109 support

作者: 板蓝根    时间: 2021-6-23 10:20
你没有更新 SDK 哦,根据 wiki 详细步骤需要 repo sync -c 同步更新。从百度云下载的 10几个G 的包是基础包,是为了让没有梯子的国内用户不需要从 gitlab 上一次下载 10几 G 的代码,但是下载基础包之后还是需要通过 repo sync -c 同步一下的。
作者: wx_Alen_VVU76    时间: 2021-6-23 10:35
板蓝根 发表于 2021-6-23 10:20
你没有更新 SDK 哦,根据 wiki 详细步骤需要 repo sync -c 同步更新。从百度云下载的 10几个G 的包是基础包 ...

1. 我是4月份下载源码,按照下面方式获取到源码的。
方式二(国外用户)
repo init  --no-clone-bundle --repo-url https://gitlab.com/firefly-linux/git-repo.git -u https://gitlab.com/firefly-linux/manifests.git -b master -m rv1126_rv1109_linux_release.xml

repo sync -c
#需反复确认代码下载是否成功

2.目前使用你的img文件,
我安装了显示屏驱动后,就会自动显示firefly图标,执行qt后,没有报 failed to open DRM:No such file or directory. 错误。但是显示的背景是白色的,没有显示我预先设置的按钮,然后隐约可见firefly的图标。


作者: 板蓝根    时间: 2021-6-23 11:02
你可以查看 这个 manifest.xml repo 是解析这个 xml 来更新 SDK的,

vim .repo/manifests/rv1126_rv1109_linux_release.xml

<project name="kernel" revision="4b1845bafe8b15038ef02617899a4e2593d9786d" upstream="rv1126_rv1109/firefly"/>

这里的kernel commit version 是 4b1845bafe8b15038ef02617899a4e2593d9786d


commit 4b1845bafe8b15038ef02617899a4e2593d9786d (HEAD, m/master, firefly-linux-gitlab/rv1126_rv1109/firefly)
Author: daijh <djh@t-chip.com.cn>
Date:   Wed Apr 28 17:26:05 2021 +0800

    ARM: dts: ai cam disabled overlayfs


所以 kernel 应该是这样子


另外白屏我觉得还是之前提到的 dts width-mm heigth-mm 因为我们之前遇到过,QT RK 加入了 rga 加速补丁,系统会读取这个属性进行配置可能会影响到字体库读取, 导致控件没有办法加载出来,或者你试试换个背景色看看 QT 应用有没有反应。
作者: wx_Alen_VVU76    时间: 2021-6-23 16:47
板蓝根 发表于 2021-6-23 11:02
你可以查看 这个 manifest.xml repo 是解析这个 xml 来更新 SDK的,

vim .repo/manifests/rv1126_rv1109 ...

谢谢,width-mm heigth-mm 这两个值我设置了。
将背景色换成红色是可以显示的,但是,控件显示不出来。然后隐约可见firefly的图标。 这是啥原因呢
作者: 板蓝根    时间: 2021-6-23 16:59
这个就是上一楼说的 width-mm heigth-mm 两个属性导致字库无法加载问题,这个 RK的补丁导致的,你试一下把 package/qt5/qt5base/5.9.4/ 下的 *.patch 删掉在编译出 QT 看看能不能用,如果遇到编译出错可能需要选择性的加会几个已经删除的补丁。我去确认一下这么小的屏幕能不能兼容
作者: wx_Alen_VVU76    时间: 2021-6-23 17:22
本帖最后由 wx_Alen_VVU76 于 2021-6-23 17:31 编辑
板蓝根 发表于 2021-6-23 16:59
这个就是上一楼说的 width-mm heigth-mm 两个属性导致字库无法加载问题,这个 RK的补丁导致的,你试一下把  ...

谢谢。我待会儿按照你的方法试一试。
1. 关于文件系统及应用程序的测试:
我目前用的文件系统是firefly官方提供的文件系统,我将这个文件系统烧录到荣品的rv1126上,然后运行我的测试程序qt_test,能够正常显示的(用了荣品的屏幕)。
但是放在firefly的板子上运行,就出现楼上说的问题了(用了我自己开发的屏幕)。(软件层面上:只有内核不一样,文件系统和qt_test是一样的)
2. 我这边开机的时候能够显示firefly的图标,是不是说明驱动是OK的?

作者: 板蓝根    时间: 2021-6-23 22:13
wx_Alen_VVU76 发表于 2021-6-23 17:22
谢谢。我待会儿按照你的方法试一试。
1. 关于文件系统及应用程序的测试:
我目前用的文件系统是firefly ...

驱动肯定没有问题,display 这一部分肯定也是延用 rockchip 提供的 sdk 的代码,主要区别是设备树吧。荣品的 kernel 开源吗?对比一下不就完了嘛
作者: wx_Alen_VVU76    时间: 2021-6-24 09:12
板蓝根 发表于 2021-6-23 22:13
驱动肯定没有问题,display 这一部分肯定也是延用 rockchip 提供的 sdk 的代码,主要区别是设备树吧。荣 ...

是啊,dsi这部分对比了,没啥区别啊
作者: ubuntu    时间: 2021-7-16 16:32
非典过后就哭了;




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1