关于 allwinner mali: https://linux-sunxi.org/Mali
关于 allwinner cpu 使用 opengl: https://bootlin.com/blog/mali-opengl-support-on-allwinner-platforms-with-mainline-linux/
离线
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 配置
离线
本站一位网友用 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:
如果用qt的话还要配置qt的OpenGL ES等一大堆东西
而且内核工具链要用glibc,不能用uclibc,我折腾这么久就得出这些结论.
离线
离线
离线