There is some issue on Mali GPU. The core board is zynq ultrascale+ mpsoc, the motherboard is designed ourselves. Our solution is using logicvc IP core(bought from xylon) in PL as the display controller and abandon the DP(Display Port). So we can't use Xilinx drm driver directly. Instead, we use the xylon drm driver.
CONFIG_DRM_XILINX is not set
CONFIG_DRM_XLNX is not set
CONFIG_DRM_XYLON = y
As a result, the X window system don't start up. I find that X try to load armsoc module and fail to find /dev/dri/card0 device.
I alter the X configure file to load fbdev module, the Linux gui show up. However, once a Qt example run, the xinit shutdown immediately. I check the libraries the Qt example link to using ldd command and find that it link to libmali.so.8.0. Also, libGLESv2.so is linked to libmali.so, too.
lrwxrwxrwx 1 jinyu jinyu 14 11月 4 18:59 usr/lib/libGLESv2.so -> libGLESv2.so.2*lrwxrwxrwx 1 jinyu jinyu 16 11月 4 18:59 usr/lib/libGLESv2.so.2 -> libGLESv2.so.2.0*lrwxrwxrwx 1 jinyu jinyu 14 11月 4 18:59 usr/lib/libGLESv2.so.2.0 -> libMali.so.8.0*
In order to make sure applicaion that don't link to libmali won't cause the X come to a crash. I compile a simple cairo application which only use xlib and cairo. It run succefully on the board managed by the window manager.
The conclusion is that OpenGL application can't be run currently. One solution should be porting the GLES 2.0 to the board and recompile the Qt example. But we want to use the GPU to accelerate graphics processing.
In other words, X should load armsoc module and DRM is a must.
Any advice is highly appreciated.
Need more information on this, please let me know.
View all questions in Community Help forum