[meta-freescale] [PATCH v2 04/19] imx-gpu-viv: Add i.MX 8 support

Ian Coolidge ian at boundarydevices.com
Wed Jun 27 16:48:07 PDT 2018


Just as a follow up...

core-image-weston is unbuildable due to some libdrm issue it looks like:

| ../git/libweston/compositor-drm.c: In function 'drm_fb_addfb':
| ../git/libweston/compositor-drm.c:907:23: error:
'DRM_FORMAT_MOD_AMPHION_TILED' undeclared (first use in this function); did
you mean 'DRM_FORMAT_MOD_VIVANTE_TILED'?
|    if (fb->modifier == DRM_FORMAT_MOD_AMPHION_TILED) {
|                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
|                        DRM_FORMAT_MOD_VIVANTE_TILED
| ../git/libweston/compositor-drm.c:907:23: note: each undeclared
identifier is reported only once for each function it appears in
| ../git/libweston/compositor-drm.c: In function 'drm_assign_planes':
| ../git/libweston/compositor-drm.c:3383:37: error: 'DRM_FORMAT_P010'
undeclared (first use in this function); did you mean 'DRM_FORMAT_R16'?
|      || dmabuf->attributes.format == DRM_FORMAT_P010)
|                                      ^~~~~~~~~~~~~~~
|                                      DRM_FORMAT_R16

Which I'm guessing can't be a coincidence.

On Wed, Jun 27, 2018 at 1:51 AM, Gary Bisson <
gary.bisson at boundarydevices.com> wrote:

> Hi Tom, Otavio,
>
> Sorry to insist but my previous comments have not been taken into
> account in this series.
>
> On Tue, Jun 26, 2018 at 02:37:13PM -0300, Otavio Salvador wrote:
> > From: Tom Hochstein <tom.hochstein at nxp.com>
> >
> > Signed-off-by: Tom Hochstein <tom.hochstein at nxp.com>
> > Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
> > ---
> >
> >  .../imx-gpu-viv/imx-gpu-viv-6.inc             | 37 ++++++++++++++++---
> >  .../imx-gpu-viv_6.2.4.p1.2-aarch64.bb         |  6 +++
> >  2 files changed, 37 insertions(+), 6 deletions(-)
> >  create mode 100644 recipes-graphics/imx-gpu-viv/i
> mx-gpu-viv_6.2.4.p1.2-aarch64.bb
> >
> > diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
> b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
> > index 6cc8cbb1..d5023bdf 100644
> > --- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
> > +++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
> > @@ -12,11 +12,11 @@ DEPENDS += " \
> >         bb.utils.contains('DISTRO_FEATURES',     'x11', 'virtual/libx11
> libxdamage libxext libxfixes', \
> >                                                         '', d), d)} \
> >  "
> > -DEPENDS += "libdrm"
> >  DEPENDS += " \
> >      ${@bb.utils.contains('DISTRO_FEATURES',     'x11', 'libxcb
> libxshmfence libxxf86vm', \
> >                                                         '', d)} \
> >  "
> > +DEPENDS_append_mx8 = " libdrm wayland"
> >
> >  # imx-gpu-viv does not provide everything it needs to for virtual/libgl
> >  # on x11 backend or on Wayland backend with XWayland support.
> > @@ -29,6 +29,8 @@ EXTRA_PROVIDES_append_imxgpu3d = " \
> >      virtual/libgles1 \
> >      virtual/libgles2 \
> >  "
> > +EXTRA_PROVIDES_append_mx8 = " \
> > +    virtual/libopenvx \
>
> This is wrong, only available for mx8qm.
>
> >  "
> >  PROVIDES += " \
> >      imx-gpu-viv \
> > @@ -51,6 +53,8 @@ inherit fsl-eula-unpack
> >  SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true"
> >
> >  # Note : If you add a package here, to prevent a naming conflict see
> the python_anonymous() futher below
> > +IMX_PACKAGES_GBM     = ""
> > +IMX_PACKAGES_GBM_mx8 = "libgbm-imx libgbm-imx-dev"
> >  PACKAGES =+ "libclc-imx libclc-imx-dev \
> >       libgl-imx libgl-imx-dev \
> >       libgles-imx libgles-imx-dev \
> > @@ -64,7 +68,7 @@ PACKAGES =+ "libclc-imx libclc-imx-dev \
> >       libgal-imx libgal-imx-dev \
> >       libvivante-dri-imx \
> >       libvsc-imx \
> > -     libgbm-imx libgbm-imx-dev \
> > +     ${IMX_PACKAGES_GBM} \
> >       libwayland-viv-imx libwayland-viv-imx-dev \
> >       libgc-wayland-protocol-imx libgc-wayland-protocol-imx-dev \
> >       libwayland-egl-imx-dev \
> > @@ -122,9 +126,19 @@ python __anonymous() {
> >  IS_MX6SL = "0"
> >  IS_MX6SL_mx6sl = "1"
> >
> > +IS_MX8 = "0"
> > +IS_MX8_mx8 = "1"
> > +
> >  PACKAGE_FP_TYPE = "hardfp"
> >
> > +HAS_GBM     = "false"
> > +HAS_GBM_mx8 = "true"
> > +
> > +# GLES 3.1 is supported for all i.MX 8
>
> Not true, i.MX 8M Mini is GLES 2.0 only according to NXP website.
>
> > +# GLES 3.2 is supported for i.MX 8QM only
> >  GLES3_HEADER_REMOVALS = "gl31.h gl32.h"
> > +GLES3_HEADER_REMOVALS_remove_mx8   = "gl31.h"
> > +GLES3_HEADER_REMOVALS_remove_mx8qm = "gl32.h"
> >
> >  do_install () {
> >      install -d ${D}${libdir}
> > @@ -140,6 +154,9 @@ do_install () {
> >      rm -rf ${D}${includedir}/vulkan/vulkan.h
> >
> >      install -d ${D}${libdir}/pkgconfig
> > +    if ${HAS_GBM}; then
> > +        install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/gbm.pc
> ${D}${libdir}/pkgconfig/gbm.pc
> > +    fi
> >
> >      # The preference order, based in DISTRO_FEATURES, is Wayland (with
> or without X11), X11 and fb
> >      if [ "${USE_WL}" = "yes" ]; then
> > @@ -212,6 +229,14 @@ do_install () {
> >      ln -sf libGLESv2.so.2.0.0 ${D}${libdir}/libGLESv2.so.2
> >      ln -sf libGLESv2.so.2.0.0 ${D}${libdir}/libGLESv2.so
> >
> > +    if [ "${IS_MX8}" = "1" ]; then
> > +        # Install the vulkan driver in a sub-folder. When installed in
> the same
> > +        # folder as the vulkan loader layer library, an incorrect
> linkage is
> > +        # created from libvulkan.so.1 to our library instead of the
> loader
> > +        # layer library.
> > +        install -d ${D}${libdir}/vulkan
> > +        mv ${D}${libdir}/libvulkan-${backend}.so ${D}${libdir}/vulkan/
> libvulkan_VSI.so
> > +    fi
>
> Therefore i.MX 8M Mini cannot support Vulkan.
>
> Let me know if I should offer follow-up patches.
>
> Regards,
> Gary
> --
> _______________________________________________
> meta-freescale mailing list
> meta-freescale at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-freescale
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-freescale/attachments/20180627/075b206a/attachment.html>


More information about the meta-freescale mailing list