Hi David, Marico, I've been developping a DRM/KMS driver for the Allwinner SoCs[1], with an additional patch to allocate GPU buffers [2]. Since those SoCs also use a Mali GPU, using the armsoc X11 plugin seemed like a logical choice.
I added support for the driver based on the 1.4 plugin [3], and started using it, which turned out pretty well, we get something displayed, GLES works, good. However, after testing it for a while, the first thing we noticed was that some (large) buffer allocations would start to fail. Indeed, the plugin seems to do a lot of rather small (and for most temporary ?) buffer allocations, which eventually depletes the reserved memory pool. The allocation then fails, and the application crashes. Then, we noticed (using xfce4, on debian jessie) that the systray icons were not displayed for some reason. There's also some game (alex4 [4]), that starts, runs, but the window content remains black (but it remains interactive, audio plays and if we take a screenshot, the content is on the image, but the screen remains black). The weird thing about it is that when using the X generic modesetting plugin, everything starts to work. It seems to be allocating only one buffer per plane, so we never have the memory allocation failures. Which raises my first question: why is the armsoc plugin behaving differently there? Then the graphics issues we were seeing are not there anymore, which seems to indicate that it's related to the plugin. I'm a bit oblivious to how X works exactly, and how applications interacts with it, but on the ioctl side, nothing really stands out. Let me know if you need any more tests or logs or anything. Thanks! Maxime 1: http://lists.infradead.org/pipermail/linux-arm-kernel/2016-March/417295.html 2: https://github.com/NextThingCo/CHIP-linux/commit/e37722eb32713611ff6800283a72c6d4784edf6a 3: https://github.com/mripard/xf86-video-armsoc/commit/37d1ed1d1e53e3b9e0c064913b7e3c40a4b071a9 4: https://sourceforge.net/p/allegator/alex4/ci/master/tree/ -- Maxime Ripard, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
signature.asc
Description: Digital signature
_______________________________________________ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: https://lists.x.org/mailman/listinfo/xorg-devel