您尚未登录。

楼主 #1 2020-01-05 17:22:10

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,350
积分: 9202

全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?





离线

楼主 #2 2020-01-05 17:41:15

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,350
积分: 9202

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

https://github.com/torvalds/linux/blob/master/arch/arm/boot/dts/sun7i-a20.dtsi

		mali: gpu@1c40000 {
			compatible = "allwinner,sun7i-a20-mali", "arm,mali-400";
			reg = <0x01c40000 0x10000>;
			interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
				     <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>,
				     <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>,
				     <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>,
				     <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>,
				     <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>,
				     <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
			interrupt-names = "gp",
					  "gpmmu",
					  "pp0",
					  "ppmmu0",
					  "pp1",
					  "ppmmu1",
					  "pmu";
			clocks = <&ccu CLK_AHB_GPU>, <&ccu CLK_GPU>;
			clock-names = "bus", "core";
			resets = <&ccu RST_GPU>;

			assigned-clocks = <&ccu CLK_GPU>;
			assigned-clock-rates = <384000000>;
		};

gpu dts 配置





离线

楼主 #3 2020-01-05 18:40:18

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,350
积分: 9202

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

QQ图片20200105183432.png

QQ图片20200105183437.png

本站一位网友用 linux 5.2-rc6 驱动 A20的mali 400,

dts 如上配置

驱动这两项要选中:

Devices Drivers->Graphics support->ARM devices->ARM Mali Display processor
Devices Drivers->Graphics support->LIMA (DRM support for ARM Mali 400/450 GPU)

启动log:
QQ图片20200105183441.png

如果用qt的话还要配置qt的OpenGL ES等一大堆东西
而且内核工具链要用glibc,不能用uclibc,我折腾这么久就得出这些结论.





离线

楼主 #4 2020-01-05 18:44:41

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,350
积分: 9202

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

这样 Qt 就可以使用 opengl 了.

大家主线Linux怼 opengl 的过程有什么问题, 可以在此跟帖, 我帮你继续问.





离线

楼主 #5 2020-01-05 18:54:57

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,350
积分: 9202

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

继续记录聊天记录:

开mali的时候QGLWidget跑不了
开了mali之后用QGLWidget就不报错了,内容也可以显示

CPU占用率明显降低了
Widget跑,2层窗口半透明情况下CPU占用率可以高到40%多,连鼠标都能感觉到卡顿
一个窗口占用率20%左右
现在的CPU占用率区区5%





离线

#6 2020-01-05 19:40:14

超级萌新
会员
注册时间: 2018-05-04
已发帖子: 408
积分: 407

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

这个真太好了,把opengl怼上去了, QML也就能用了吧?

离线

楼主 #7 2020-01-05 21:16:56

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,350
积分: 9202

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

超级萌新 说:

这个真太好了,把opengl怼上去了, QML也就能用了吧?

按理来说, 应该是可以的.





离线

#8 2020-01-05 22:00:09

raspberryman
会员
注册时间: 2019-12-27
已发帖子: 503
积分: 465

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

离线

#9 2020-01-06 11:16:11

shaoxi2010
会员
注册时间: 2019-06-13
已发帖子: 392
积分: 336

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

这个我倒是有些测试,目前QT5支持并不完美,目前发现QML的烟雾效果显示不出来,其他的我没有细测。

然后在ARCHLINUX上的至此目前最完美,debian11问题还不少,主要mesa驱动必须要最新的才行,不如gl也是失效的,
Xorg加速下鼠标分层显示会有闪所找不到原因,还有就算高分辨率1080p下渲染非常非常慢,也不知道怎么优化,GTK会偶尔
出现花屏,感觉和alpha有关。目前测试了awsome和openbox都不行,只能说这阶段只能叫基本可用了,常规渲染感觉依然靠的
CPU渲染的。

wayland的驱动下,好了很多,可惜wayland还有点早,没什么应用支持。

离线

楼主 #10 2020-01-06 11:23:03

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,350
积分: 9202

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

感谢大神分享宝贵经验!





离线

#11 2020-01-06 11:26:51

shaoxi2010
会员
注册时间: 2019-06-13
已发帖子: 392
积分: 336

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

还有就算webgl都是GG状态,会出现内部错误,倒是浏览器跑的很顺滑。

VPU我也测试过了,目前AARCH64与VPU无缘,那段汇编代码只在V7架构下有,需要大神解决下@晕哥

离线

楼主 #12 2020-01-06 11:28:39

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,350
积分: 9202

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

shaoxi2010 说:

还有就算webgl都是GG状态,会出现内部错误,倒是浏览器跑的很顺滑。

VPU我也测试过了,目前AARCH64与VPU无缘,那段汇编代码只在V7架构下有,需要大神解决下@晕哥

大神你用的是哪个soc, 哪个开发板呢?有没有固件呢?能不能直接烧了跑?





离线

#13 2020-01-06 11:36:42

shaoxi2010
会员
注册时间: 2019-06-13
已发帖子: 392
积分: 336

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

晕哥 说:

大神你用的是哪个soc, 哪个开发板呢?有没有固件呢?能不能直接烧了跑?

我用的A64,AARCH64只有那么几个,我们公司的板子电源定义不一样,固件给你也用不了,你可以去下载pine64的
ARCHLINUX版本,然后用pacman 删除掉内核在自己编一个就好了,ARCHLINUX适配内核已经到5.4了应该没问题。

当然你也可以直接买PINE64,只是这伙没LCD显示。

离线

#14 2020-01-06 11:39:55

达克罗德
会员
注册时间: 2018-04-10
已发帖子: 1,138
积分: 1090.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

shaoxi2010 说:

还有就算webgl都是GG状态,会出现内部错误,倒是浏览器跑的很顺滑。

VPU我也测试过了,目前AARCH64与VPU无缘,那段汇编代码只在V7架构下有,需要大神解决下@晕哥

浏览器不是用OpenGL吗?说明跑起来了?

离线

楼主 #15 2020-01-06 11:40:15

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,350
积分: 9202

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

嗯嗯, 感谢分享, 手边也有 A33/H3 的板子, 没来得及玩呢。





离线

#16 2020-01-06 11:42:03

shaoxi2010
会员
注册时间: 2019-06-13
已发帖子: 392
积分: 336

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

达克罗德 说:

浏览器不是用OpenGL吗?说明跑起来了?

浏览器本来就不许要GL,只是webgl不支持罢了

离线

#17 2020-01-06 11:48:57

win32prog
会员
注册时间: 2019-11-28
已发帖子: 138
积分: 138

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

达克罗德 说:

浏览器不是用OpenGL吗?说明跑起来了?

浏览器可以不需要opengl, 只是太慢了: https://whycan.cn/t_3287.html#p28404

离线

#18 2020-01-08 10:18:06

红白机
会员
注册时间: 2020-01-02
已发帖子: 133
积分: 133

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

https://bootlin.com/blog/more-opengl-binaries-for-the-mali-support-on-allwinner-platforms-with-mainline-linux/

这些二进制Blob非常有用,因为它们现在允许在Allwinner平台上具有完全正常的OpenGL加速:
作为稳定性测试,我们最近在Allwinner A33平台上运行了一个Qt5应用程序,
在Allwinner A33平台上进行OpenGL渲染24/7,持续了1.5个月。当然,从长远来看,
我们将跟踪Lima项目的进度,该项目将提供一个完全免费的开源解决方案,
以在Allwinner平台上提供OpenGL加速。

看来稳定性不错嘛.


还有一个问题, https://github.com/bootlin/mali-blobs/tree/master/r6p2/arm/wayland
这些文件是谁发布的呢?
全志?arm?

最近编辑记录 红白机 (2020-01-08 10:18:18)

离线

#19 2020-01-17 10:18:23

达克罗德
会员
注册时间: 2018-04-10
已发帖子: 1,138
积分: 1090.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

晕哥,能帮忙问问3楼这个方案只需要Kernel选上就好了,不需要用户态的库吗?还是说也需要https://bootlin.com/blog/mali-opengl-support-on-allwinner-platforms-with-mainline-linux/这里的全志用户态库?

准备玩玩GPU,看看lima这个方案好还是全志提供的方案好

离线

楼主 #20 2020-01-17 10:40:27

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,350
积分: 9202

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

嗯,达神的问题我已经转发,坐等大神解惑。





离线

#21 2020-01-19 16:57:55

达克罗德
会员
注册时间: 2018-04-10
已发帖子: 1,138
积分: 1090.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

主线Linux下载下来了,但是没看到GPU的驱动设置
Devices Drivers->Graphics support->ARM devices->ARM Mali Display processor
Devices Drivers->Graphics support->LIMA (DRM support for ARM Mali 400/450 GPU)
这两项都没看到。可能是我的deconfig有误。
请问谁有对应的deconfig或config文件?

离线

楼主 #22 2020-01-19 17:55:13

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,350
积分: 9202

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

晕哥 说:

嗯,达神的问题我已经转发,坐等大神解惑。

才想起大神还没回我信息,估计回家过年了.





离线

#23 2020-02-08 11:42:52

达克罗德
会员
注册时间: 2018-04-10
已发帖子: 1,138
积分: 1090.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

lima + Mesa3D 据说能跑了,但是我试了下跑不起来mesa带的demo
然后我试了全志的库,就差一点点,最后一步出错
[    2.290176] mali: loading out-of-tree module taints kernel.
[    2.303401] using random self ethernet address
[    2.310432] Allwinner sunXi mali glue initialized
[    2.310892] using random host ethernet address
[    2.319040] Mali:
[    2.319045] Found Mali GPU Mali-400 MP r1p1
[    2.325812] using random self ethernet address
[    2.344761] using random host ethernet address
[    2.352326] usb0: HOST MAC 3a:7e:4f:95:4b:5d
[    2.359199] usb0: MAC f6:29:20:a6:b8:86
[    2.365680] g_ffs gadget: g_ffs ready
[    2.386332] Mali:
[    2.386337] 2+0 PP cores initialized
[    2.396969] Mali:
[    2.396971] Mali device driver loaded

run malitest:

EGL Version: "1.4 Linux-r6p2-01rel0"
EGL Vendor: "ARM"
EGL Extensions: "EGL_KHR_image EGL_KHR_image_base EGL_KHR_image_pixmap EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_r

这里出错死机

离线

#24 2020-02-08 11:44:24

飞翔工控
会员
注册时间: 2019-11-21
已发帖子: 95
积分: 93.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

好消息啊, 坐等 A33 跑 OpenGL

离线

#25 2020-04-01 16:58:42

shaoxi2010
会员
注册时间: 2019-06-13
已发帖子: 392
积分: 336

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

来给大家带来点好消息,经过测试发现最新的主线驱动修复啦不少问题,我觉得已经到了可以使用的状态啦,使用基本没遇到明显缺陷。
我这个跑得是A64,大家可以试试其他的。
1. gtk的花屏问题,再也没发现啦
2. 1080p下的卡顿问题也解决的啦
3. alpha通道叠加也正常啦
4. 渲染CPU还是消耗过大,但是比上一版本下降一大堆
5. 电路还有点问题,不知道QT的烟雾效果修复没有

F8D4725B-D11D-41E6-8190-905562D3D4BA.jpeg

离线

#26 2020-04-11 12:37:36

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

Devices Drivers->Graphics support->ARM devices->ARM Mali Display processor
Devices Drivers->Graphics support->LIMA (DRM support for ARM Mali 400/450 GPU)

&mali{
    status="okay";
};
作为新手,使用主线配置这两项。并在 arch/arm/boot/dts/sun8i-a33-sinlinx-sina33.dts 也加上了ok,就是没看见/dev/mali设备。暂时尝试失败。
文件系统用的是debian buster 通过debootstrap来创建


以下是启动信息:
[    0.788007] lima 1c40000.gpu: IRQ ppmmu2 not found
[    0.792802] lima 1c40000.gpu: IRQ ppmmu3 not found
[    0.797650] lima 1c40000.gpu: gp - mali400 version major 1 minor 1
[    0.803868] lima 1c40000.gpu: pp0 - mali400 version major 1 minor 1
[    0.810191] lima 1c40000.gpu: pp1 - mali400 version major 1 minor 1
[    0.816505] lima 1c40000.gpu: IRQ pp2 not found
[    0.821032] lima 1c40000.gpu: IRQ pp3 not found
[    0.825577] lima 1c40000.gpu: l2 cache 64K, 4-way, 64byte cache line, 64bit external bus
[    0.834043] lima 1c40000.gpu: bus rate = 200000000
[    0.838856] lima 1c40000.gpu: mod rate = 384000000
[    0.844045] [drm] Initialized lima 1.0.0 20190217 for 1c40000.gpu on minor 0

离线

#27 2020-04-11 15:14:35

达克罗德
会员
注册时间: 2018-04-10
已发帖子: 1,138
积分: 1090.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

yuemin3 说:

Devices Drivers->Graphics support->ARM devices->ARM Mali Display processor
Devices Drivers->Graphics support->LIMA (DRM support for ARM Mali 400/450 GPU)

&mali{
    status="okay";
};
作为新手,使用主线配置这两项。并在 arch/arm/boot/dts/sun8i-a33-sinlinx-sina33.dts 也加上了ok,就是没看见/dev/mali设备。暂时尝试失败。
文件系统用的是debian buster 通过debootstrap来创建


以下是启动信息:
[    0.788007] lima 1c40000.gpu: IRQ ppmmu2 not found
[    0.792802] lima 1c40000.gpu: IRQ ppmmu3 not found
[    0.797650] lima 1c40000.gpu: gp - mali400 version major 1 minor 1
[    0.803868] lima 1c40000.gpu: pp0 - mali400 version major 1 minor 1
[    0.810191] lima 1c40000.gpu: pp1 - mali400 version major 1 minor 1
[    0.816505] lima 1c40000.gpu: IRQ pp2 not found
[    0.821032] lima 1c40000.gpu: IRQ pp3 not found
[    0.825577] lima 1c40000.gpu: l2 cache 64K, 4-way, 64byte cache line, 64bit external bus
[    0.834043] lima 1c40000.gpu: bus rate = 200000000
[    0.838856] lima 1c40000.gpu: mod rate = 384000000
[    0.844045] [drm] Initialized lima 1.0.0 20190217 for 1c40000.gpu on minor 0

我当时是选上了sun4i的drm,你试试

离线

#28 2020-04-11 15:15:47

达克罗德
会员
注册时间: 2018-04-10
已发帖子: 1,138
积分: 1090.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

shaoxi2010 说:

来给大家带来点好消息,经过测试发现最新的主线驱动修复啦不少问题,我觉得已经到了可以使用的状态啦,使用基本没遇到明显缺陷。
我这个跑得是A64,大家可以试试其他的。
1. gtk的花屏问题,再也没发现啦
2. 1080p下的卡顿问题也解决的啦
3. alpha通道叠加也正常啦
4. 渲染CPU还是消耗过大,但是比上一版本下降一大堆
5. 电路还有点问题,不知道QT的烟雾效果修复没有

https://whycan.cn/files/members/1749/F8D4725B-D11D-41E6-8190-905562D3D4BA.jpeg

请问你测的是lima驱动吗?opengles选mesa3D吗?

离线

#29 2020-04-12 00:56:27

shaoxi2010
会员
注册时间: 2019-06-13
已发帖子: 392
积分: 336

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

达克罗德 说:

请问你测的是lima驱动吗?opengles选mesa3D吗?

是的lima 5.4 + meas3d 20.0

离线

#30 2020-04-12 16:07:11

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

达克罗德 说:

我当时是选上了sun4i的drm,你试试

有选的,DRM_SUN4I [=y]
<*> DRM Support for Allwinner A10 Display Engine

离线

#31 2020-04-13 19:07:23

adda
会员
注册时间: 2020-04-09
已发帖子: 12
积分: 12

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

shaoxi2010 说:

来给大家带来点好消息,经过测试发现最新的主线驱动修复啦不少问题,我觉得已经到了可以使用的状态啦,使用基本没遇到明显缺陷。
我这个跑得是A64,大家可以试试其他的。
1. gtk的花屏问题,再也没发现啦
2. 1080p下的卡顿问题也解决的啦
3. alpha通道叠加也正常啦
4. 渲染CPU还是消耗过大,但是比上一版本下降一大堆
5. 电路还有点问题,不知道QT的烟雾效果修复没有

https://whycan.cn/files/members/1749/F8D4725B-D11D-41E6-8190-905562D3D4BA.jpeg

图片是用A64运行的浏览器么

离线

#32 2020-04-14 17:55:41

shaoxi2010
会员
注册时间: 2019-06-13
已发帖子: 392
积分: 336

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

adda 说:

图片是用A64运行的浏览器么

是的,跑的firefox,QT5的web也能用其他的我就没测了

离线

#33 2020-04-14 21:45:26

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

lima实在搞不定,折腾了几天。应该还是卡在drm那里。

kmscube离屏测试
./kmscube -d -D /dev/dri/renderD128
Using display 0x5b13d8 with EGL version 1.4
===================================
EGL information:
  version: "1.4"
  vendor: "Mesa Project"
  client extensions: "EGL_EXT_client_extensions EGL_EXT_device_base EGL_EXT_device_enumeration EGL_EXT_device_query EGL_EXT_platform_base EGL_KHR_client_get_all_proc_addresses EGL_KHR_debug EGL_EXT_platform_x11 EGL_MESA_platform_gbm EGL_MESA_platform_surfaceless EGL_EXT_platform_device"
  display extensions: "EGL_ANDROID_blob_cache EGL_ANDROID_native_fence_sync EGL_EXT_buffer_age EGL_EXT_image_dma_buf_import EGL_EXT_image_dma_buf_import_modifiers EGL_KHR_cl_event2 EGL_KHR_config_attribs EGL_KHR_create_context EGL_KHR_create_context_no_error EGL_KHR_fence_sync EGL_KHR_get_all_proc_addresses EGL_KHR_gl_colorspace EGL_KHR_gl_renderbuffer_image EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_3D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_image EGL_KHR_image_base EGL_KHR_image_pixmap EGL_KHR_no_config_context EGL_KHR_partial_update EGL_KHR_reusable_sync EGL_KHR_surfaceless_context EGL_EXT_pixel_format_float EGL_KHR_wait_sync EGL_MESA_configless_context EGL_MESA_drm_image EGL_MESA_image_dma_buf_export EGL_MESA_query_driver "
===================================
OpenGL ES 2.x information:
  version: "OpenGL ES 2.0 Mesa 19.3.2"
  shading language version: "OpenGL ES GLSL ES 1.0.16"
  vendor: "lima"
  renderer: "Mali400"
  extensions: "GL_EXT_blend_minmax GL_EXT_multi_draw_arrays GL_EXT_texture_format_BGRA8888 GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth24 GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_mapbuffer GL_OES_rgb8_rgba8 GL_OES_stencil8 GL_OES_texture_3D GL_OES_texture_npot GL_OES_vertex_half_float GL_OES_EGL_image GL_OES_depth_texture GL_OES_packed_depth_stencil GL_OES_get_program_binary GL_APPLE_texture_max_level GL_EXT_discard_framebuffer GL_EXT_read_format_bgra GL_EXT_frag_depth GL_NV_fbo_color_attachments GL_OES_EGL_image_external GL_OES_EGL_sync GL_OES_vertex_array_object GL_EXT_occlusion_query_boolean GL_EXT_unpack_subimage GL_NV_draw_buffers GL_NV_read_buffer GL_NV_read_depth GL_NV_read_depth_stencil GL_NV_read_stencil GL_EXT_draw_buffers GL_EXT_map_buffer_range GL_KHR_debug GL_KHR_texture_compression_astc_ldr GL_OES_required_internalformat GL_OES_surfaceless_context GL_EXT_separate_shader_objects GL_EXT_compressed_ETC1_RGB8_sub_texture GL_EXT_draw_elements_base_vertex GL_EXT_texture_border_clamp GL_KHR_context_flush_control GL_OES_draw_elements_base_vertex GL_OES_texture_border_clamp GL_KHR_no_error GL_KHR_texture_compression_astc_sliced_3d GL_KHR_parallel_shader_compile "
===================================
kmscube测试
./kmscube -d -D /dev/dri/renderD128
could not open drm device
failed to initialize legacy DRM
glmark2-drm 运行情况
Debug: Using Udev to detect the right DRM node to use
Debug: Looking for the main GPU DRM node...
Debug: Not found!
Debug: Looking for a concrete GPU DRM node...
Debug: Not found!?
Debug: Looking for a virtual GPU DRM node...
Debug: Not found.
Debug: Cannot find a single DRM node using UDEV...
Error: Can't determine the main graphic card DRM device node
Error: Tried to use '' but failed.
Error: Reason : Operation not supported
Debug: Failed to open DRM module 'i915'
Debug: Failed to open DRM module 'imx-drm'
Debug: Failed to open DRM module 'nouveau'
Debug: Failed to open DRM module 'radeon'
Debug: Failed to open DRM module 'vmgfx'
Debug: Failed to open DRM module 'omapdrm'
Debug: Failed to open DRM module 'exynos'
Debug: Failed to open DRM module 'pl111'
Debug: Failed to open DRM module 'vc4'
Debug: Failed to open DRM module 'msm'
Debug: Failed to open DRM module 'meson'
Debug: Failed to open DRM module 'rockchip'
Debug: Failed to open DRM module 'sun4i-drm'
Debug: Opened DRM module 'lima'
Error: drmModeGetResources failed
Error: main: Could not initialize canvas
Segmentation fault

最近编辑记录 yuemin3 (2020-04-14 21:45:52)

离线

#34 2020-04-26 10:56:03

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

搞定了,非常感谢“达克罗德”的帮助!
犯了个低级错误。缺少了 CONFIG_DRM_PANEL_SIMPLE=y
要选上这个就必须先选上以下这两个才行:
Graphics support  --->
    Backlight & LCD device support  ---
       <*> Lowlevel Backlight controls
要选上才能选下面的
    Display Panels  --->
       <*> support for simple panels

离线

#35 2020-04-26 12:02:57

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

A33主线5.6版本,debian 11,运行测试会遇到问题
glmark2-es2-drm
=======================================================
    glmark2 2017.07
=======================================================
    OpenGL Information
    GL_VENDOR:     lima
    GL_RENDERER:   Mali400
    GL_VERSION:    OpenGL ES 2.0 Mesa 19.3.2
=======================================================
[build] use-vbo=false: FPS: 65 FrameTime: 15.385 ms
[build] use-vbo=true: FPS: 65 FrameTime: 15.385 ms
[texture] texture-filter=nearest: FPS: 65 FrameTime: 15.385 ms
[texture] texture-filter=linear: FPS: 65 FrameTime: 15.385 ms
[texture] texture-filter=mipmap: FPS: 65 FrameTime: 15.385 ms
[shading] shading=gouraud: FPS: 65 FrameTime: 15.385 ms
[shading] shading=blinn-phong-inf: FPS: 65 FrameTime: 15.385 ms
[shading] shading=phong:Segmentation fault

最近编辑记录 yuemin3 (2020-04-26 12:14:35)

离线

#36 2020-04-26 12:58:42

shaoxi2010
会员
注册时间: 2019-06-13
已发帖子: 392
积分: 336

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

lima的bug还是太多,等稳定了后慢慢来吧,我之前测试了下QT的GL组建,有很多渲染直接报错,不过对xorg的性能提升还算很大的。

离线

#37 2020-04-26 14:55:19

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

晕哥 说:

继续记录聊天记录:

开mali的时候QGLWidget跑不了
开了mali之后用QGLWidget就不报错了,内容也可以显示

CPU占用率明显降低了
Widget跑,2层窗口半透明情况下CPU占用率可以高到40%多,连鼠标都能感觉到卡顿
一个窗口占用率20%左右
现在的CPU占用率区区5%

threadedqopenglwidget 这个Qt demo,你那里运行正常吗?我这边EGLFS全是黑,X11全蓝。
Wayland报错:
DRM_IOCTL_MODE_CREATE_DUMB failed: Cannot allocate memory
Segmentation fault

最近编辑记录 yuemin3 (2020-04-26 16:14:07)

离线

#38 2020-04-26 14:59:17

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

shaoxi2010 说:

lima的bug还是太多,等稳定了后慢慢来吧,我之前测试了下QT的GL组建,有很多渲染直接报错,不过对xorg的性能提升还算很大的。

确实,问题太多了。跟mesa3d的配合也是个问题。

离线

#39 2020-04-26 15:03:42

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

换了mesa3d 20.4之后,有不同的测试结果。glmark2-drm失败, glmark2-es2-drm成功

root@debian1:~/mesa-20.0.4# glmark2-drm
=======================================================
    glmark2 2017.07
=======================================================
    OpenGL Information
    GL_VENDOR:     lima
    GL_RENDERER:   Mali400
    GL_VERSION:    2.1 Mesa 20.0.4
=======================================================
[build] use-vbo=false: FPS: 65 FrameTime: 15.385 ms
[build] use-vbo=true: FPS: 65 FrameTime: 15.385 ms
[texture] texture-filter=nearest: FPS: 65 FrameTime: 15.385 ms
[texture] texture-filter=linear: FPS: 65 FrameTime: 15.385 ms
Segmentation fault


root@debian11:~/qt_examples# glmark2-es2-drm
=======================================================
    glmark2 2017.07
=======================================================
    OpenGL Information
    GL_VENDOR:     lima
    GL_RENDERER:   Mali400
    GL_VERSION:    OpenGL ES 2.0 Mesa 20.0.4
=======================================================
[build] use-vbo=false: FPS: 65 FrameTime: 15.385 ms
[build] use-vbo=true: FPS: 65 FrameTime: 15.385 ms
[texture] texture-filter=nearest: FPS: 65 FrameTime: 15.385 ms
[texture] texture-filter=linear: FPS: 65 FrameTime: 15.385 ms
[texture] texture-filter=mipmap: FPS: 65 FrameTime: 15.385 ms
[shading] shading=gouraud: FPS: 65 FrameTime: 15.385 ms
[shading] shading=blinn-phong-inf: FPS: 65 FrameTime: 15.385 ms
[shading] shading=phong: FPS: 65 FrameTime: 15.385 ms
[shading] shading=cel: FPS: 46 FrameTime: 21.739 ms
[bump] bump-render=high-poly: FPS: 46 FrameTime: 21.739 ms
[bump] bump-render=normals: FPS: 65 FrameTime: 15.385 ms
[bump] bump-render=height: FPS: 65 FrameTime: 15.385 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 32 FrameTime: 31.250 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 21 FrameTime: 47.619 ms
[pulsar] light=false:quads=5:texture=false: FPS: 65 FrameTime: 15.385 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 16 FrameTime: 62.500 ms
[desktop] effect=shadow:windows=4: FPS: 65 FrameTime: 15.385 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 32 FrameTime: 31.250 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 32 FrameTime: 31.250 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 32 FrameTime: 31.250 ms
[ideas] speed=duration: FPS: 42 FrameTime: 23.810 ms
[jellyfish] <default>: FPS: 32 FrameTime: 31.250 ms
Error: SceneTerrain requires Vertex Texture Fetch support, but GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS is 0
[terrain] <default>: Unsupported
[shadow] <default>: FPS: 32 FrameTime: 31.250 ms
[refract] <default>: FPS: 11 FrameTime: 90.909 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 65 FrameTime: 15.385 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 65 FrameTime: 15.385 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 65 FrameTime: 15.385 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 65 FrameTime: 15.385 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 65 FrameTime: 15.385 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 65 FrameTime: 15.385 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 65 FrameTime: 15.385 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 32 FrameTime: 31.250 ms
=======================================================
                                  glmark2 Score: 51
=======================================================

最近编辑记录 yuemin3 (2020-04-26 15:04:14)

离线

#40 2020-04-26 15:34:34

井蛙
会员
注册时间: 2019-09-11
已发帖子: 13
积分: 13

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

看来想用QML还要折腾很多,唉,放弃。





离线

#41 2020-04-26 15:45:38

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

井蛙 说:

看来想用QML还要折腾很多,唉,放弃。

你可用armhf的mali, arm公司的官方驱动,全志官方的openGL库。

离线

#42 2020-06-07 12:04:49

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

后续测试,以下几个qt的QML都报错:DRM_IOCTL_MODE_CREATE_DUMB failed: Cannot allocate memory
构建过程好像没有要配置显存的地方,现在内核都不需要另外配置显存区域大小了吗?

qt5/examples/quickcontrols/controls/touch/touch
qt5/examples/quickcontrols2/imagine/musicplayer/musicplayer
qt5/examples/quickcontrols2/chattutorial/chapter3-navigation/chapter3-navigation

Segmentation fault

离线

#43 2020-06-07 12:16:13

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

shaoxi2010 说:

lima的bug还是太多,等稳定了后慢慢来吧,我之前测试了下QT的GL组建,有很多渲染直接报错,不过对xorg的性能提升还算很大的。

我用树莓派4运行qt 的threadOpenGLWidget那个例子,也是同样有问题,这就奇怪了,到底是Qt对GLES支持不好还是什么问题。

离线

#44 2020-06-08 15:27:42

shaoxi2010
会员
注册时间: 2019-06-13
已发帖子: 392
积分: 336

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

yuemin3 说:

我用树莓派4运行qt 的threadOpenGLWidget那个例子,也是同样有问题,这就奇怪了,到底是Qt对GLES支持不好还是什么问题。

这个我没测试到,感觉目前问题还是集中在mesa3d上,这个的大版本升级很多功能就正常了。但这部分真的无能为力,只能等大佬更新了。

离线

#45 2020-06-15 13:37:45

tpu
会员
注册时间: 2020-06-15
已发帖子: 37
积分: 39.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

我在H3上试过,觉得还可以:
mainline uboot+kernel-4.14
mali kernel driver: https://github.com/retr0rangepi/sunxi-mali
mali user driver: https://github.com/bootlin/mali-blobs
mali有很多版本,这里统一选择r8p1 fbdev
然后跑了个glmark2, 1920x1080p能得52分

离线

#46 2020-06-15 13:50:41

tpu
会员
注册时间: 2020-06-15
已发帖子: 37
积分: 39.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

然后再H6上面尝试,就曲折多了.
H6用了T720, 比较少见吧. H6本身也比较新,内核用最新的5.7, 还是有很多补丁没合并的.
后来发现libreELEC的5.6.6的内核是比较全的,很多未合并的补丁都打上了.
LibreELEC还带了打好补丁的,最新的mali-T720(midgard)驱动. 编译好了可以直接使用.
用户空间的驱动,只找到一处: https://github.com/jernejsk/H6-mali-userspace
把这一套弄好了,整到板子上一跑, 出错退出了......

仔细看了出错信息, 大意是libmali.so检查了fbdev的参数, 发现是r8/g8/b8/a0, 但bpp是32, (8+8+8+0) != 32
对比H3平台的fbdev参数,完全是一样的,只能说这个版本的mali多此一举了。
怎么办呢? 我直接把.so里面检查的代码屏蔽掉后再跑,居然能行了!

但是看glmark2的分数,只有22分,觉得不应该啊。T720比400性能高才对啊。看了看各项测试的fps,发现fps基本限制到了21fps。不知道是哪里做妖了...

离线

#47 2021-06-04 15:55:17

zhang235hai
会员
注册时间: 2020-04-06
已发帖子: 212
积分: 165

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

# insmod ./lib/modules/3.10.105/mali.ko
[   65.522569] Mali: Set gpu frequency to 408 MHz
[   65.527481] Mali: Init Mali gpu clocks successfully
[   65.533468] gpu cooling callback register Success

这样是说明GPU驱动成功了吗?

离线

#48 2021-07-10 22:09:30

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

@tpu
应该是屏幕刷新率不对

离线

#49 2021-07-10 22:10:09

yuemin3
会员
注册时间: 2019-05-17
已发帖子: 24
积分: 17.5

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

zhang235hai 说:
# insmod ./lib/modules/3.10.105/mali.ko
[   65.522569] Mali: Set gpu frequency to 408 MHz
[   65.527481] Mali: Init Mali gpu clocks successfully
[   65.533468] gpu cooling callback register Success

这样是说明GPU驱动成功了吗?

貌似成功了,运行kmscub测试试试

离线

#50 2022-03-16 14:25:56

FakeBBA
会员
注册时间: 2022-02-25
已发帖子: 5
积分: 0

Re: 全志 A10/A20/A33/H3/A64/H5 等的主线Linux也可以使用 OpenGL ES, 有没有哪位朋友测试过?

@红白机
最近在弄全志H3 QT带 OpenGL的移植,看到你这个,里面一个license PDF的页眉写“copyright@2016 by Allwinner Technology Co., Ltd. ”,应该是全志公司发布的

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn