Re: OpenGL ES on i.MX8


Joshua Watt
 

On Mon, Sep 14, 2020 at 3:56 PM Peter Bergin <peter@...> wrote:

Hi Andy,

On 2020-09-14 13:20, Andy Pont wrote:
Trying to find an equivalent configuration for the i.MX8m I am unable
to find an equivalent method. The Vivante user space libraries don’t
seem to exist in a framebuffer or DRM form, instead they all seem to
require Wayland or X11.

Can someone more knowledgeable than I confirm whether that is the case
or whether I am missing something?

-Andy.
this is the statement from NXP
(https://source.codeaurora.org/external/imx/imx-manifest/tree/README?h=imx-linux-zeus#n53).
As seen they do not actively support the framebuffer distro for i.Mx8
targets on their official BSP.

The recipe for vivante user space lib imx-gpu-viv also have a guard for
mx8 that only builds it when wayland is enabled.
(https://github.com/Freescale/meta-freescale/blob/e0fa0255795ce584b3b5ad74c330cabeb0caa28d/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc#L60).

I'm also interested in the same question as you are as I'm in a start up
phase for a i.Mx8 project where we would like to run with OpenGL or
Vulkan directly against DRM and avoid display manager. Would be great to
hear someone from NXP give their picture of this. I have tried the NXP
community but without any info so far.
(https://community.nxp.com/t5/i-MX-Graphics/vulkan-without-display-server-Wayland-X11/m-p/1134083#M1)
FWIW, standing up a GLES/DRM/KMS application isn't terribly hard. I've
done it on an IMX8 before without too much trouble. kmscube is
probably the best place to start as it is a pretty complete example.

However, I would also highly recommend looking at running your
application under the weston (wayland) fullscreen shell. It's just as
powerful except you don't have to deal with all the twiddly DRM/KMS
APIs, and the "overhead" is pretty much non-existent because you
render directly to a DMA buf which weston presents to the display.


Best regards,
/Peter

Join {meta-freescale@lists.yoctoproject.org to automatically receive all group messages.