This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM4378: Building git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.git without Wayland

Part Number: AM4378

Hi, how can we build git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.git (branch ti-img-sgx/rocko/1.14.3699939) without Wayland?

As recommended in the instructions at , we have disabled Wayland with

`DISTRO_FEATURES_remove = "wayland"`

in the local.conf.

However we get the following error:
ERROR: libgles-sgx-0.1-r32 do_package_qa: QA Issue: /usr/bin/pvrsrvctl contained in package libgles-sgx requires libwayland-server.so.0, but no providers found in RDEPENDS_libgles-sgx? [file-rdeps]
ERROR: libgles-sgx-0.1-r32 do_package_qa: QA run found fatal errors. Please consider fixing them.
ERROR: libgles-sgx-0.1-r32 do_package_qa: Function failed: do_package_qa
ERROR: Logfile of failure stored in: /home/valentina_giusti/meta-sumup/poky/build-solo-masada-production/tmp/work/sumup_solo-poky-linux-gnueabi/libgles-sgx/0.1-r32/temp/log.do_package_qa.13736
ERROR: Task (/home/valentina_giusti/meta-sumup/poky/meta-sumup/meta-solo-bsp/recipes-graphics/libgles-sgx/libgles-sgx_0.1.bb:do_package_qa) failed with exit code '1'



It seems that the repository contains prebuilt binaries that link to wayland libs. Is there a way to rebuild them or can you provide binaries for our platform that don't require Wayland?

  • Hello,

    Could you please share your build instructions and the config version that you are using processor-sdk-<version>-config.txt?

    Regards,
    Krunal

  • hi Krunal, 

    thank you for your answer. 
    We build with Yocto, we have developed a recipe that fetches the sources with:

    BRANCH = "ti-img-sgx/rocko/1.14.3699939"
    
    SRC_URI = "git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.git;protocol=git;branch=${BRANCH}"
    SRCREV = "bc62c9d0c590dfbc801bf6b10176c3a8b6a39d98"
    

    and deploys the binaries on the target:

    do_install () {
        oe_runmake install DESTDIR=${D} TARGET_PRODUCT=${TARGET_PRODUCT}
        mkdir -p ${D}${libdir}/gbm
        ln -sf ../libpvrGBMWSEGL.so.${PV} ${D}${libdir}/gbm/gbm_pvr.so
        ln -sf libGLESv2.so.${PV} ${D}${libdir}/libGLESv2.so.1
    
        rm -f ${D}${libdir}/pkgconfig/wayland-egl.pc
    
        chown -R root:root ${D}
    }
    


    The config is processor-sdk-05.02.00.10-config.txt.

  • Hello,

    I am wondering if you could please try building the rootfs with the instructions mentioned in the following page. On my setup, I used the 05.02.00.10 config and added DISTRO_FEATURES_remove = "wayland" in the conf/local.conf file. The "tisdk-rootfs-image" built was successful and I do not see any Weston libraries in the rootfs/usr/lib folder.

    Regards,
    Krunal

  • Hi Krunal,

    those are the instructions that I have followed, and in fact  I have set DISTRO_FEATURES_remove = "wayland" in local.conf, as I have already written in my first post.

    What branch are you using? The binary "/usr/bin/pvrsrvctl" provided by git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.git (branch ti-img-sgx/rocko/1.14.3699939)  definitely links to libwayland-server.so.0, since I get the error:

    ERROR: libgles-sgx-0.1-r32 do_package_qa: QA Issue: /usr/bin/pvrsrvctl contained in package libgles-sgx requires libwayland-server.so.0, but no providers found in RDEPENDS_libgles-sgx? [file-rdeps]

  • Also please look at the output of "readelf -d" run on the binary file pvrsrvctl from the repository omap4-sgx-ddk-um-linux.git, branch ti-img-sgx/rocko/1.14.3699939:

    readelf -d ./targetfs/ti437x/bin/pvrsrvctl

    Dynamic section at offset 0x157c contains 34 entries:
    Tag Type Name/Value
    0x00000001 (NEEDED) Shared library: [libdrm.so.2]
    0x00000001 (NEEDED) Shared library: [libgbm.so.2]
    0x00000001 (NEEDED) Shared library: [libudev.so.1]
    0x00000001 (NEEDED) Shared library: [libwayland-server.so.0]
    0x00000001 (NEEDED) Shared library: [libdrm_omap.so.1]
    0x00000001 (NEEDED) Shared library: [libffi.so.6]
    0x00000001 (NEEDED) Shared library: [libsrv_init.so.1]
    0x00000001 (NEEDED) Shared library: [libsrv_um.so.1]
    0x00000001 (NEEDED) Shared library: [libc.so.6]
    0x0000000c (INIT) 0x9e0
    0x0000000d (FINI) 0x1164
    0x00000019 (INIT_ARRAY) 0x11570
    0x0000001b (INIT_ARRAYSZ) 4 (bytes)
    0x0000001a (FINI_ARRAY) 0x11574
    0x0000001c (FINI_ARRAYSZ) 4 (bytes)
    0x00000004 (HASH) 0x194
    0x00000005 (STRTAB) 0x5c8
    0x00000006 (SYMTAB) 0x2e8
    0x0000000a (STRSZ) 612 (bytes)
    0x0000000b (SYMENT) 16 (bytes)
    0x00000015 (DEBUG) 0x0
    0x00000003 (PLTGOT) 0x116ac
    0x00000002 (PLTRELSZ) 216 (bytes)
    0x00000014 (PLTREL) REL
    0x00000017 (JMPREL) 0x908
    0x00000011 (REL) 0x8a8
    0x00000012 (RELSZ) 96 (bytes)
    0x00000013 (RELENT) 8 (bytes)
    0x6ffffffb (FLAGS_1) Flags: PIE
    0x6ffffffe (VERNEED) 0x888
    0x6fffffff (VERNEEDNUM) 1
    0x6ffffff0 (VERSYM) 0x82c
    0x6ffffffa (RELCOUNT) 6
    0x00000000 (NULL) 0x0




  • Hello,

    Thank you for sharing the above information and as you mentioned, the driver requires the libwayland-server.so.0 library. I have attached the default GPU recipe and it has wayland defined in the section "DEPENDS" and "RDEPENDS". Based on my test, adding wayland will only generate the following shared libraries:

    libpvrws_WAYLAND.so
    libpvrws_WAYLAND.so.1
    libpvrws_WAYLAND.so.1.14.3699939
    libwayland-client.so.0
    libwayland-client.so.0.3.0
    libwayland-cursor.so.0
    libwayland-cursor.so.0.0.0
    libwayland-server.so.0
    libwayland-server.so.0.1.0

    Also, on our default SDK, we have enabled Weston (implementation of a Wayland) and setting "DISTRO_FEATURES_remove=wayland" will cause Weston to not build. I have also attached the tar ball of my generated rootfs.

    Regards,
    Krunal
    tisdk-rootfs-image-am437x-evm.tar.xz ti-sgx-ddk-um_1.14.3699939.bb

  • Hi Krunal,

    thank you for your answer.

    The recipe that you shared is the same one that we are using for building. Unfortunately the problem remains: the prebuilt binaries are linking to wayland. 

    Can we have pre-built binaries that do not require wayland shared libraries?

  • Hello,

    Let me check internally if that is possible and I will get back you within 48hours.

    Regards,
    Krunal

  • Hi,

    sounds good, thank you!

    Best,

    Valentina

  • Hello Valentina,

    Currently, I am discussing with our GPU vendor (Imagination) about the Wayland dependency. It seems like starting DDKv117(PSDK6.x), the dependency no longer exists. Once I hear back from Imagination, I will update the current ticket. Also, if possible, I would look into migrating to PSDK6.x.

    Regards,
    Krunal

  • Hi Krunal,

    if you can assure us that DDKv117(PSDK6.x) is compatible with AM4378 then we can consider using that one.

    Best,

    Valentina

  • Hi Valentina,

    It is compatible and here is the download page for AM437x: https://software-dl.ti.com/processor-sdk-linux/esd/AM437X/latest/index_FDS.html.

    Regards,
    Krunal

  • Hi Krunal,

    I have realized that I haven't indicated the correct component version because I could not find AM438x in the form suggestions when I opened the ticket.

    Could you please check again with Imagination which is the right version of git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.git and which SDK should we use for AM438x?

    Best 

    Valentina

  • Hi Krunal,

    I have tried to start a new thread with the right part number AM438x, and I can confirm that the part number that we have purchased can't be selected. See image below:

  • Hi Krunal,

    could you please get back to me on my latest request?

    Best,

    Valentina

  • Hello Valentina,

    I apologize for the delayed response and I was having internal discussions about the AM438x device. I did not know it was a secure device and the last release was PSDK5.2 (DDKv114).

    With regards to your initial Yocto recipe errors, could you please share the command you are using to build sgx libs. The recipe `libgles-sgx` name doesn’t sound familiar and is that your custom recipe? If yes, please add Wayland as a dependency and make sure you clean your build before executing a build command.

    Regards,
    Krunal

  • Hi Krunal,

    Thank you for getting back to me. Our recipe has a different name but it's basically identical to the one that you shared in your previous post:


    DESCRIPTION = "Userspace libraries for PowerVR SGX chipset on TI SoCs"
    HOMEPAGE = "https://git.ti.com/graphics/omap5-sgx-ddk-um-linux"
    LICENSE = "TI-TSPA"
    LIC_FILES_CHKSUM = "file://TI-Linux-Graphics-DDK-UM-Manifest.doc;md5=550702a031857e0426ef7d6f6cf2d9f4"

    PACKAGE_ARCH = "${MACHINE_ARCH}"

    BRANCH = "ti-img-sgx/rocko/1.14.3699939"

    SRC_URI = "git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.git;protocol=git;branch=${BRANCH}"
    SRCREV = "bc62c9d0c590dfbc801bf6b10176c3a8b6a39d98"

    # There's only hardfp version available
    python __anonymous() {
    tunes = d.getVar("TUNE_FEATURES")
    if not tunes:
    return
    pkgn = d.getVar("PN")
    pkgv = d.getVar("PV")
    if "callconvention-hard" not in tunes:
    bb.warn("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
    raise bb.parse.SkipPackage("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
    }

    INITSCRIPT_NAME = "rc.pvr"
    INITSCRIPT_PARAMS = "defaults 8"

    inherit update-rc.d

    PR = "r32"
    PROVIDES += "virtual/egl virtual/libgles1 virtual/libgles2 omap5-sgx-ddk-um-linux"

    DEPENDS += "libdrm udev libgbm wayland libffi"
    RDEPENDS_${PN} += "libdrm libudev libgbm wayland libffi libdrm-omap"

    RPROVIDES_${PN} = "libegl libgles1 libgles2 omap5-sgx-ddk-um-linux"
    RPROVIDES_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev omap5-sgx-ddk-um-linux-dev"
    RPROVIDES_${PN}-dbg = "libegl-dbg libgles1-dbg libgles2-dbg omap5-sgx-ddk-um-linux-dbg"

    RREPLACES_${PN} = "libegl libgles1 libgles2 omap5-sgx-ddk-um-linux"
    RREPLACES_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev omap5-sgx-ddk-um-linux-dev"
    RREPLACES_${PN}-dbg = "libegl-dbg libgles1-dbg libgles2-dbg omap5-sgx-ddk-um-linux-dbg"

    RCONFLICTS_${PN} = "libegl libgles1 libgles2 omap5-sgx-ddk-um-linux"
    RCONFLICTS_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev omap5-sgx-ddk-um-linux-dev"
    RCONFLICTS_${PN}-dbg = "libegl-dbg libgles1-dbg libgles2-dbg omap5-sgx-ddk-um-linux-dbg"

    # The actual SONAME is libGLESv2.so.2, so need to explicitly specify RPROVIDES for .so.1 here
    RPROVIDES_${PN} += "libGLESv2.so.1"

    S = "${WORKDIR}/git"

    do_install () {
    oe_runmake install DESTDIR=${D} TARGET_PRODUCT=${TARGET_PRODUCT}
    mkdir -p ${D}${libdir}/gbm
    ln -sf ../libpvrGBMWSEGL.so.${PV} ${D}${libdir}/gbm/gbm_pvr.so
    ln -sf libGLESv2.so.${PV} ${D}${libdir}/libGLESv2.so.1

    rm -f ${D}${libdir}/pkgconfig/wayland-egl.pc

    chown -R root:root ${D}
    }

    FILES_${PN} = "${bindir}/*"
    FILES_${PN} += " ${libdir}/*"
    FILES_${PN} += "${includedir}/*"
    FILES_${PN} += "${sysconfdir}/*"
    FILES_${PN}-dev = "${includedir}"

    PACKAGES =+ "${PN}-plugins"
    FILES_${PN}-plugins = "${libdir}/libsrv_init.so ${libdir}/libsrv_um.so ${libdir}/libglslcompiler.so ${libdir}/libPVRScopeServices.so ${libdir}/libGLESv2.so ${libdir}/libGLES_CM.so ${libdir}/libpvrDRMWSEGL.so ${libdir}/libpvrGBMWSEGL.so ${libdir}/libpvrws_WAYLAND.so"
    RDEPENDS_${PN} += "${PN}-plugins"

    ALLOW_EMPTY_${PN}-plugins = "1"

    INHIBIT_PACKAGE_STRIP = "1"
    INHIBIT_SYSROOT_STRIP = "1"

    INSANE_SKIP_${PN} += "dev-so ldflags useless-rpaths"
    INSANE_SKIP_${PN}-plugins = "dev-so"
    INSANE_SKIP_${PN} += "already-stripped"

    CLEANBROKEN = "1"

    COMPATIBLE_MACHINE = "ti43x"
    TARGET_PRODUCT_sumup-solo = "ti437x"

    Best,

    Valentina

  • Hello Valentina,

    Thank you for sharing your recipe. On my setup, if I remove wayland dependency, I am able to replicate the pvrsrvctl errors. Based on my internal discussion, pvrsrvctl binary has linked dependency to Wayland. After adding Wayland to my recipe, the build was successful. I am wondering if you could please try to build the recipe again with Wayland included. If you still observe Wayland errors, I would recommend to clean your current build and try building again. 

    Regards,
    Krunal 

  • Hi Krunal,

    thank you for your message.

    Of course I can build with Wayland enabled, but the point is that we must get rid of it, as our GUI doesn't use it at all, therefore it's a dependency that we don't need.
    When we purchased this product, we have been assured that the SGX/PVR engine can be used without Wayland.

    Best,

    Valentina

  • Hi Valentina,

    Thank you for the clarification and internally, I have also been discussing with Fred. I will need some time to discuss with our internal SW team and I will give you a status update by mid next week.

    Regards,
    Krunal

  • Hi Krunal,

    thank you! Looking forward to hearing back from you.

    Best,

    Valentina

  • Hello Valentina,

    Thank you for your patience. I have created an experimental libraries and shared with Fred. He will share them shortly and please run your GUI and let me know if you run into any errors.  

    Regards,
    Krunal

  • Hi Krunal,

    as you requested, below you can find the output of `eglinfo` after loading the kernel module `pvrsrvkm.ko` and starting the `pvr.service`. Please also note that at this point our application hasn't been launched.

    Do you think that the binaries that you have pre-compiled for us don't work in our system because they are not aligned with the kernel module that we are using?
    This is the info about our version of pvrsrvkm.ko:


    BRANCH = "ti-img-sgx/1.14.3699939/k4.14"

    SRC_URI = "git://git.ti.com/graphics/omap5-sgx-ddk-linux.git;protocol=git;branch=${BRANCH} \
    file://0001-srvkm-env-linux-osfunc.c-fix-gcc8-stringop-truncatio.patch \
    file://0001-buildvars.mk-pass-Wno-cast-function-type.patch"

    S = "${WORKDIR}/git"

    SRCREV = "76da7d73976f0a5dc04fdc84a3af899d6c2b1fe2"


    ################

    ~# eglinfo

    eglGetConfigs():
    ======================================================================

    **********************************
    EGL config number: 0
    EGL vendor string: Imagination Technologies
    EGL version string: 1.4 build 1.14@3699939 (MAIN)
    EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
    EGL client APIs are: OpenGL_ES

    EGL config Attributes:
    EGL_CONFIG_ID = 0x1
    EGL_BUFFER_SIZE = 0x20
    EGL_RED_SIZE = 0x8
    EGL_GREEN_SIZE = 0x8
    EGL_BLUE_SIZE = 0x8
    EGL_LUMINANCE_SIZE = 0x0
    EGL_ALPHA_SIZE = 0x8
    EGL_ALPHA_MASK_SIZE = 0x0
    EGL_BIND_TO_TEXTURE_RGB = 0x1
    EGL_BIND_TO_TEXTURE_RGBA = 0x1
    EGL_COLOR_BUFFER_TYPE = 0x308e
    EGL_CONFIG_CAVEAT = 0x3038
    EGL_CONFORMANT = 0x1
    EGL_DEPTH_SIZE = 0x18
    EGL_LEVEL = 0x0
    EGL_MAX_PBUFFER_WIDTH = 0x800
    EGL_MAX_PBUFFER_HEIGHT = 0x800
    EGL_MAX_PBUFFER_PIXELS = 0x400000
    EGL_MAX_SWAP_INTERVAL = 0xa
    EGL_MIN_SWAP_INTERVAL = 0x1
    EGL_NATIVE_RENDERABLE = 0x0
    EGL_NATIVE_VISUAL_ID = 0x0
    EGL_NATIVE_VISUAL_TYPE = 0x0
    EGL_RENDERABLE_TYPE = 0x1 EGL_OPENGL_ES_BIT
    EGL_SAMPLE_BUFFERS = 0x0
    EGL_SAMPLES = 0x0
    EGL_STENCIL_SIZE = 0x8
    EGL_SURFACE_TYPE = 0x5 EGL_PBUFFER_BIT EGL_WINDOW_BIT
    EGL_TRANSPARENT_TYPE = 0x3038
    EGL_TRANSPARENT_RED_VALUE = 0x0
    EGL_TRANSPARENT_GREEN_VALUE = 0x0
    EGL_TRANSPARENT_BLUE_VALUE = 0x0

    Creating Window surface..
    PVR:(Error): WSEGL_CreateWindowDrawable: Couldn't set CRTC: Permission denied [0, ]
    Unable to create surface
    egl error 'EGL_BAD_ALLOC' (0x3003)
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~#
    root@sumup-solo:~# eglinfo

    eglGetConfigs():
    ======================================================================

    **********************************
    EGL config number: 0
    EGL vendor string: Imagination Technologies
    EGL version string: 1.4 build 1.14@3699939 (MAIN)
    EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
    EGL client APIs are: OpenGL_ES

    EGL config Attributes:
    EGL_CONFIG_ID = 0x1
    EGL_BUFFER_SIZE = 0x20
    EGL_RED_SIZE = 0x8
    EGL_GREEN_SIZE = 0x8
    EGL_BLUE_SIZE = 0x8
    EGL_LUMINANCE_SIZE = 0x0
    EGL_ALPHA_SIZE = 0x8
    EGL_ALPHA_MASK_SIZE = 0x0
    EGL_BIND_TO_TEXTURE_RGB = 0x1
    EGL_BIND_TO_TEXTURE_RGBA = 0x1
    EGL_COLOR_BUFFER_TYPE = 0x308e
    EGL_CONFIG_CAVEAT = 0x3038
    EGL_CONFORMANT = 0x1
    EGL_DEPTH_SIZE = 0x18
    EGL_LEVEL = 0x0
    EGL_MAX_PBUFFER_WIDTH = 0x800
    EGL_MAX_PBUFFER_HEIGHT = 0x800
    EGL_MAX_PBUFFER_PIXELS = 0x400000
    EGL_MAX_SWAP_INTERVAL = 0xa
    EGL_MIN_SWAP_INTERVAL = 0x1
    EGL_NATIVE_RENDERABLE = 0x0
    EGL_NATIVE_VISUAL_ID = 0x0
    EGL_NATIVE_VISUAL_TYPE = 0x0
    EGL_RENDERABLE_TYPE = 0x1 EGL_OPENGL_ES_BIT
    EGL_SAMPLE_BUFFERS = 0x0
    EGL_SAMPLES = 0x0
    EGL_STENCIL_SIZE = 0x8
    EGL_SURFACE_TYPE = 0x5 EGL_PBUFFER_BIT EGL_WINDOW_BIT
    EGL_TRANSPARENT_TYPE = 0x3038
    EGL_TRANSPARENT_RED_VALUE = 0x0
    EGL_TRANSPARENT_GREEN_VALUE = 0x0
    EGL_TRANSPARENT_BLUE_VALUE = 0x0

    Creating Window surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x1
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x1e0
    EGL_HEIGHT = 0x1e0
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0xffffffff
    EGL_MIPMAP_TEXTURE = 0xffffffff
    EGL_MIPMAP_LEVEL = 0xffffffff
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x3094
    EGL_TEXTURE_FORMAT = 0x3094
    EGL_TEXTURE_TARGET = 0x3094
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 1 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x1
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x1
    EGL_RENDER_BUFFER = 0x3038

    Creating Pbuffer surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x1
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x800
    EGL_HEIGHT = 0x800
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0x1
    EGL_MIPMAP_TEXTURE = 0x0
    EGL_MIPMAP_LEVEL = 0x0
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x0
    EGL_TEXTURE_FORMAT = 0x305c
    EGL_TEXTURE_TARGET = 0x305c
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 1 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x1
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x1
    EGL_RENDER_BUFFER = 0x3038

    **********************************
    EGL config number: 1
    EGL vendor string: Imagination Technologies
    EGL version string: 1.4 build 1.14@3699939 (MAIN)
    EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
    EGL client APIs are: OpenGL_ES

    EGL config Attributes:
    EGL_CONFIG_ID = 0x2
    EGL_BUFFER_SIZE = 0x20
    EGL_RED_SIZE = 0x8
    EGL_GREEN_SIZE = 0x8
    EGL_BLUE_SIZE = 0x8
    EGL_LUMINANCE_SIZE = 0x0
    EGL_ALPHA_SIZE = 0x8
    EGL_ALPHA_MASK_SIZE = 0x0
    EGL_BIND_TO_TEXTURE_RGB = 0x1
    EGL_BIND_TO_TEXTURE_RGBA = 0x1
    EGL_COLOR_BUFFER_TYPE = 0x308e
    EGL_CONFIG_CAVEAT = 0x3038
    EGL_CONFORMANT = 0x1
    EGL_DEPTH_SIZE = 0x0
    EGL_LEVEL = 0x0
    EGL_MAX_PBUFFER_WIDTH = 0x800
    EGL_MAX_PBUFFER_HEIGHT = 0x800
    EGL_MAX_PBUFFER_PIXELS = 0x400000
    EGL_MAX_SWAP_INTERVAL = 0xa
    EGL_MIN_SWAP_INTERVAL = 0x1
    EGL_NATIVE_RENDERABLE = 0x0
    EGL_NATIVE_VISUAL_ID = 0x0
    EGL_NATIVE_VISUAL_TYPE = 0x0
    EGL_RENDERABLE_TYPE = 0x1 EGL_OPENGL_ES_BIT
    EGL_SAMPLE_BUFFERS = 0x0
    EGL_SAMPLES = 0x0
    EGL_STENCIL_SIZE = 0x0
    EGL_SURFACE_TYPE = 0x5 EGL_PBUFFER_BIT EGL_WINDOW_BIT
    EGL_TRANSPARENT_TYPE = 0x3038
    EGL_TRANSPARENT_RED_VALUE = 0x0
    EGL_TRANSPARENT_GREEN_VALUE = 0x0
    EGL_TRANSPARENT_BLUE_VALUE = 0x0

    Creating Window surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x2
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x1e0
    EGL_HEIGHT = 0x1e0
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0xffffffff
    EGL_MIPMAP_TEXTURE = 0xffffffff
    EGL_MIPMAP_LEVEL = 0xffffffff
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x3094
    EGL_TEXTURE_FORMAT = 0x3094
    EGL_TEXTURE_TARGET = 0x3094
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 1 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x2
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x1
    EGL_RENDER_BUFFER = 0x3038

    Creating Pbuffer surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x2
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x800
    EGL_HEIGHT = 0x800
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0x1
    EGL_MIPMAP_TEXTURE = 0x0
    EGL_MIPMAP_LEVEL = 0x0
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x0
    EGL_TEXTURE_FORMAT = 0x305c
    EGL_TEXTURE_TARGET = 0x305c
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 1 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x2
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x1
    EGL_RENDER_BUFFER = 0x3038

    **********************************
    EGL config number: 2
    EGL vendor string: Imagination Technologies
    EGL version string: 1.4 build 1.14@3699939 (MAIN)
    EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
    EGL client APIs are: OpenGL_ES

    EGL config Attributes:
    EGL_CONFIG_ID = 0x3
    EGL_BUFFER_SIZE = 0x20
    EGL_RED_SIZE = 0x8
    EGL_GREEN_SIZE = 0x8
    EGL_BLUE_SIZE = 0x8
    EGL_LUMINANCE_SIZE = 0x0
    EGL_ALPHA_SIZE = 0x8
    EGL_ALPHA_MASK_SIZE = 0x0
    EGL_BIND_TO_TEXTURE_RGB = 0x1
    EGL_BIND_TO_TEXTURE_RGBA = 0x1
    EGL_COLOR_BUFFER_TYPE = 0x308e
    EGL_CONFIG_CAVEAT = 0x3038
    EGL_CONFORMANT = 0x1
    EGL_DEPTH_SIZE = 0x18
    EGL_LEVEL = 0x0
    EGL_MAX_PBUFFER_WIDTH = 0x800
    EGL_MAX_PBUFFER_HEIGHT = 0x800
    EGL_MAX_PBUFFER_PIXELS = 0x400000
    EGL_MAX_SWAP_INTERVAL = 0xa
    EGL_MIN_SWAP_INTERVAL = 0x1
    EGL_NATIVE_RENDERABLE = 0x0
    EGL_NATIVE_VISUAL_ID = 0x0
    EGL_NATIVE_VISUAL_TYPE = 0x0
    EGL_RENDERABLE_TYPE = 0x1 EGL_OPENGL_ES_BIT
    EGL_SAMPLE_BUFFERS = 0x1
    EGL_SAMPLES = 0x4
    EGL_STENCIL_SIZE = 0x8
    EGL_SURFACE_TYPE = 0x5 EGL_PBUFFER_BIT EGL_WINDOW_BIT
    EGL_TRANSPARENT_TYPE = 0x3038
    EGL_TRANSPARENT_RED_VALUE = 0x0
    EGL_TRANSPARENT_GREEN_VALUE = 0x0
    EGL_TRANSPARENT_BLUE_VALUE = 0x0

    Creating Window surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x3
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x1e0
    EGL_HEIGHT = 0x1e0
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0xffffffff
    EGL_MIPMAP_TEXTURE = 0xffffffff
    EGL_MIPMAP_LEVEL = 0xffffffff
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x3094
    EGL_TEXTURE_FORMAT = 0x3094
    EGL_TEXTURE_TARGET = 0x3094
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 1 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x3
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x1
    EGL_RENDER_BUFFER = 0x3038

    Creating Pbuffer surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x3
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x800
    EGL_HEIGHT = 0x800
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0x1
    EGL_MIPMAP_TEXTURE = 0x0
    EGL_MIPMAP_LEVEL = 0x0
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x0
    EGL_TEXTURE_FORMAT = 0x305c
    EGL_TEXTURE_TARGET = 0x305c
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 1 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x3
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x1
    EGL_RENDER_BUFFER = 0x3038

    **********************************
    EGL config number: 3
    EGL vendor string: Imagination Technologies
    EGL version string: 1.4 build 1.14@3699939 (MAIN)
    EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
    EGL client APIs are: OpenGL_ES

    EGL config Attributes:
    EGL_CONFIG_ID = 0x4
    EGL_BUFFER_SIZE = 0x20
    EGL_RED_SIZE = 0x8
    EGL_GREEN_SIZE = 0x8
    EGL_BLUE_SIZE = 0x8
    EGL_LUMINANCE_SIZE = 0x0
    EGL_ALPHA_SIZE = 0x8
    EGL_ALPHA_MASK_SIZE = 0x0
    EGL_BIND_TO_TEXTURE_RGB = 0x1
    EGL_BIND_TO_TEXTURE_RGBA = 0x1
    EGL_COLOR_BUFFER_TYPE = 0x308e
    EGL_CONFIG_CAVEAT = 0x3038
    EGL_CONFORMANT = 0x3
    EGL_DEPTH_SIZE = 0x18
    EGL_LEVEL = 0x0
    EGL_MAX_PBUFFER_WIDTH = 0x800
    EGL_MAX_PBUFFER_HEIGHT = 0x800
    EGL_MAX_PBUFFER_PIXELS = 0x400000
    EGL_MAX_SWAP_INTERVAL = 0x1
    EGL_MIN_SWAP_INTERVAL = 0x1
    EGL_NATIVE_RENDERABLE = 0x0
    EGL_NATIVE_VISUAL_ID = 0x0
    EGL_NATIVE_VISUAL_TYPE = 0x3038
    EGL_RENDERABLE_TYPE = 0x3 EGL_OPENGL_ES_BIT
    EGL_SAMPLE_BUFFERS = 0x0
    EGL_SAMPLES = 0x0
    EGL_STENCIL_SIZE = 0x8
    EGL_SURFACE_TYPE = 0x1 EGL_PBUFFER_BIT
    EGL_TRANSPARENT_TYPE = 0x3038
    EGL_TRANSPARENT_RED_VALUE = 0x0
    EGL_TRANSPARENT_GREEN_VALUE = 0x0
    EGL_TRANSPARENT_BLUE_VALUE = 0x0

    Creating Pbuffer surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x4
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x800
    EGL_HEIGHT = 0x800
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0x1
    EGL_MIPMAP_TEXTURE = 0x0
    EGL_MIPMAP_LEVEL = 0x0
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x0
    EGL_TEXTURE_FORMAT = 0x305c
    EGL_TEXTURE_TARGET = 0x305c
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 1 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x4
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x1
    EGL_RENDER_BUFFER = 0x3038

    **********************************
    EGL config number: 4
    EGL vendor string: Imagination Technologies
    EGL version string: 1.4 build 1.14@3699939 (MAIN)
    EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
    EGL client APIs are: OpenGL_ES

    EGL config Attributes:
    EGL_CONFIG_ID = 0x5
    EGL_BUFFER_SIZE = 0x10
    EGL_RED_SIZE = 0x5
    EGL_GREEN_SIZE = 0x6
    EGL_BLUE_SIZE = 0x5
    EGL_LUMINANCE_SIZE = 0x0
    EGL_ALPHA_SIZE = 0x0
    EGL_ALPHA_MASK_SIZE = 0x0
    EGL_BIND_TO_TEXTURE_RGB = 0x1
    EGL_BIND_TO_TEXTURE_RGBA = 0x0
    EGL_COLOR_BUFFER_TYPE = 0x308e
    EGL_CONFIG_CAVEAT = 0x3038
    EGL_CONFORMANT = 0x3
    EGL_DEPTH_SIZE = 0x18
    EGL_LEVEL = 0x0
    EGL_MAX_PBUFFER_WIDTH = 0x800
    EGL_MAX_PBUFFER_HEIGHT = 0x800
    EGL_MAX_PBUFFER_PIXELS = 0x400000
    EGL_MAX_SWAP_INTERVAL = 0x1
    EGL_MIN_SWAP_INTERVAL = 0x1
    EGL_NATIVE_RENDERABLE = 0x0
    EGL_NATIVE_VISUAL_ID = 0x0
    EGL_NATIVE_VISUAL_TYPE = 0x3038
    EGL_RENDERABLE_TYPE = 0x3 EGL_OPENGL_ES_BIT
    EGL_SAMPLE_BUFFERS = 0x0
    EGL_SAMPLES = 0x0
    EGL_STENCIL_SIZE = 0x8
    EGL_SURFACE_TYPE = 0x1 EGL_PBUFFER_BIT
    EGL_TRANSPARENT_TYPE = 0x3038
    EGL_TRANSPARENT_RED_VALUE = 0x0
    EGL_TRANSPARENT_GREEN_VALUE = 0x0
    EGL_TRANSPARENT_BLUE_VALUE = 0x0

    Creating Pbuffer surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x5
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x800
    EGL_HEIGHT = 0x800
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0x1
    EGL_MIPMAP_TEXTURE = 0x0
    EGL_MIPMAP_LEVEL = 0x0
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x0
    EGL_TEXTURE_FORMAT = 0x305c
    EGL_TEXTURE_TARGET = 0x305c
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 1 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x5
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x1
    EGL_RENDER_BUFFER = 0x3038

    **********************************
    EGL config number: 5
    EGL vendor string: Imagination Technologies
    EGL version string: 1.4 build 1.14@3699939 (MAIN)
    EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
    EGL client APIs are: OpenGL_ES

    EGL config Attributes:
    EGL_CONFIG_ID = 0x6
    EGL_BUFFER_SIZE = 0x10
    EGL_RED_SIZE = 0x4
    EGL_GREEN_SIZE = 0x4
    EGL_BLUE_SIZE = 0x4
    EGL_LUMINANCE_SIZE = 0x0
    EGL_ALPHA_SIZE = 0x4
    EGL_ALPHA_MASK_SIZE = 0x0
    EGL_BIND_TO_TEXTURE_RGB = 0x1
    EGL_BIND_TO_TEXTURE_RGBA = 0x1
    EGL_COLOR_BUFFER_TYPE = 0x308e
    EGL_CONFIG_CAVEAT = 0x3038
    EGL_CONFORMANT = 0x3
    EGL_DEPTH_SIZE = 0x18
    EGL_LEVEL = 0x0
    EGL_MAX_PBUFFER_WIDTH = 0x800
    EGL_MAX_PBUFFER_HEIGHT = 0x800
    EGL_MAX_PBUFFER_PIXELS = 0x400000
    EGL_MAX_SWAP_INTERVAL = 0x1
    EGL_MIN_SWAP_INTERVAL = 0x1
    EGL_NATIVE_RENDERABLE = 0x0
    EGL_NATIVE_VISUAL_ID = 0x0
    EGL_NATIVE_VISUAL_TYPE = 0x3038
    EGL_RENDERABLE_TYPE = 0x3 EGL_OPENGL_ES_BIT
    EGL_SAMPLE_BUFFERS = 0x0
    EGL_SAMPLES = 0x0
    EGL_STENCIL_SIZE = 0x8
    EGL_SURFACE_TYPE = 0x1 EGL_PBUFFER_BIT
    EGL_TRANSPARENT_TYPE = 0x3038
    EGL_TRANSPARENT_RED_VALUE = 0x0
    EGL_TRANSPARENT_GREEN_VALUE = 0x0
    EGL_TRANSPARENT_BLUE_VALUE = 0x0

    Creating Pbuffer surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x6
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x800
    EGL_HEIGHT = 0x800
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0x1
    EGL_MIPMAP_TEXTURE = 0x0
    EGL_MIPMAP_LEVEL = 0x0
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x0
    EGL_TEXTURE_FORMAT = 0x305c
    EGL_TEXTURE_TARGET = 0x305c
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 1 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x6
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x1
    EGL_RENDER_BUFFER = 0x3038

    **********************************
    EGL config number: 6
    EGL vendor string: Imagination Technologies
    EGL version string: 1.4 build 1.14@3699939 (MAIN)
    EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
    EGL client APIs are: OpenGL_ES

    EGL config Attributes:
    EGL_CONFIG_ID = 0x7
    EGL_BUFFER_SIZE = 0x10
    EGL_RED_SIZE = 0x5
    EGL_GREEN_SIZE = 0x5
    EGL_BLUE_SIZE = 0x5
    EGL_LUMINANCE_SIZE = 0x0
    EGL_ALPHA_SIZE = 0x1
    EGL_ALPHA_MASK_SIZE = 0x0
    EGL_BIND_TO_TEXTURE_RGB = 0x1
    EGL_BIND_TO_TEXTURE_RGBA = 0x1
    EGL_COLOR_BUFFER_TYPE = 0x308e
    EGL_CONFIG_CAVEAT = 0x3038
    EGL_CONFORMANT = 0x3
    EGL_DEPTH_SIZE = 0x18
    EGL_LEVEL = 0x0
    EGL_MAX_PBUFFER_WIDTH = 0x800
    EGL_MAX_PBUFFER_HEIGHT = 0x800
    EGL_MAX_PBUFFER_PIXELS = 0x400000
    EGL_MAX_SWAP_INTERVAL = 0x1
    EGL_MIN_SWAP_INTERVAL = 0x1
    EGL_NATIVE_RENDERABLE = 0x0
    EGL_NATIVE_VISUAL_ID = 0x0
    EGL_NATIVE_VISUAL_TYPE = 0x3038
    EGL_RENDERABLE_TYPE = 0x3 EGL_OPENGL_ES_BIT
    EGL_SAMPLE_BUFFERS = 0x0
    EGL_SAMPLES = 0x0
    EGL_STENCIL_SIZE = 0x8
    EGL_SURFACE_TYPE = 0x1 EGL_PBUFFER_BIT
    EGL_TRANSPARENT_TYPE = 0x3038
    EGL_TRANSPARENT_RED_VALUE = 0x0
    EGL_TRANSPARENT_GREEN_VALUE = 0x0
    EGL_TRANSPARENT_BLUE_VALUE = 0x0

    Creating Pbuffer surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x7
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x800
    EGL_HEIGHT = 0x800
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0x1
    EGL_MIPMAP_TEXTURE = 0x0
    EGL_MIPMAP_LEVEL = 0x0
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x0
    EGL_TEXTURE_FORMAT = 0x305c
    EGL_TEXTURE_TARGET = 0x305c
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 1 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x7
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x1
    EGL_RENDER_BUFFER = 0x3038

    **********************************
    EGL config number: 7
    EGL vendor string: Imagination Technologies
    EGL version string: 1.4 build 1.14@3699939 (MAIN)
    EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
    EGL client APIs are: OpenGL_ES

    EGL config Attributes:
    EGL_CONFIG_ID = 0x8
    EGL_BUFFER_SIZE = 0x20
    EGL_RED_SIZE = 0x8
    EGL_GREEN_SIZE = 0x8
    EGL_BLUE_SIZE = 0x8
    EGL_LUMINANCE_SIZE = 0x0
    EGL_ALPHA_SIZE = 0x8
    EGL_ALPHA_MASK_SIZE = 0x0
    EGL_BIND_TO_TEXTURE_RGB = 0x0
    EGL_BIND_TO_TEXTURE_RGBA = 0x0
    EGL_COLOR_BUFFER_TYPE = 0x308e
    EGL_CONFIG_CAVEAT = 0x3038
    EGL_CONFORMANT = 0x4
    EGL_DEPTH_SIZE = 0x18
    EGL_LEVEL = 0x0
    EGL_MAX_PBUFFER_WIDTH = 0x800
    EGL_MAX_PBUFFER_HEIGHT = 0x800
    EGL_MAX_PBUFFER_PIXELS = 0x400000
    EGL_MAX_SWAP_INTERVAL = 0xa
    EGL_MIN_SWAP_INTERVAL = 0x1
    EGL_NATIVE_RENDERABLE = 0x0
    EGL_NATIVE_VISUAL_ID = 0x0
    EGL_NATIVE_VISUAL_TYPE = 0x0
    EGL_RENDERABLE_TYPE = 0x4 EGL_OPENGL_ES2_BIT
    EGL_SAMPLE_BUFFERS = 0x0
    EGL_SAMPLES = 0x0
    EGL_STENCIL_SIZE = 0x8
    EGL_SURFACE_TYPE = 0x5 EGL_PBUFFER_BIT EGL_WINDOW_BIT
    EGL_TRANSPARENT_TYPE = 0x3038
    EGL_TRANSPARENT_RED_VALUE = 0x0
    EGL_TRANSPARENT_GREEN_VALUE = 0x0
    EGL_TRANSPARENT_BLUE_VALUE = 0x0

    Creating Window surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x8
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x1e0
    EGL_HEIGHT = 0x1e0
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0xffffffff
    EGL_MIPMAP_TEXTURE = 0xffffffff
    EGL_MIPMAP_LEVEL = 0xffffffff
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x3094
    EGL_TEXTURE_FORMAT = 0x3094
    EGL_TEXTURE_TARGET = 0x3094
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 2 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x8
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x2
    EGL_RENDER_BUFFER = 0x3038

    Creating Pbuffer surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x8
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x800
    EGL_HEIGHT = 0x800
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0x1
    EGL_MIPMAP_TEXTURE = 0x0
    EGL_MIPMAP_LEVEL = 0x0
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x0
    EGL_TEXTURE_FORMAT = 0x305c
    EGL_TEXTURE_TARGET = 0x305c
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 2 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x8
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x2
    EGL_RENDER_BUFFER = 0x3038

    **********************************
    EGL config number: 8
    EGL vendor string: Imagination Technologies
    EGL version string: 1.4 build 1.14@3699939 (MAIN)
    EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
    EGL client APIs are: OpenGL_ES

    EGL config Attributes:
    EGL_CONFIG_ID = 0x9
    EGL_BUFFER_SIZE = 0x20
    EGL_RED_SIZE = 0x8
    EGL_GREEN_SIZE = 0x8
    EGL_BLUE_SIZE = 0x8
    EGL_LUMINANCE_SIZE = 0x0
    EGL_ALPHA_SIZE = 0x8
    EGL_ALPHA_MASK_SIZE = 0x0
    EGL_BIND_TO_TEXTURE_RGB = 0x0
    EGL_BIND_TO_TEXTURE_RGBA = 0x0
    EGL_COLOR_BUFFER_TYPE = 0x308e
    EGL_CONFIG_CAVEAT = 0x3038
    EGL_CONFORMANT = 0x4
    EGL_DEPTH_SIZE = 0x0
    EGL_LEVEL = 0x0
    EGL_MAX_PBUFFER_WIDTH = 0x800
    EGL_MAX_PBUFFER_HEIGHT = 0x800
    EGL_MAX_PBUFFER_PIXELS = 0x400000
    EGL_MAX_SWAP_INTERVAL = 0xa
    EGL_MIN_SWAP_INTERVAL = 0x1
    EGL_NATIVE_RENDERABLE = 0x0
    EGL_NATIVE_VISUAL_ID = 0x0
    EGL_NATIVE_VISUAL_TYPE = 0x0
    EGL_RENDERABLE_TYPE = 0x4 EGL_OPENGL_ES2_BIT
    EGL_SAMPLE_BUFFERS = 0x0
    EGL_SAMPLES = 0x0
    EGL_STENCIL_SIZE = 0x0
    EGL_SURFACE_TYPE = 0x5 EGL_PBUFFER_BIT EGL_WINDOW_BIT
    EGL_TRANSPARENT_TYPE = 0x3038
    EGL_TRANSPARENT_RED_VALUE = 0x0
    EGL_TRANSPARENT_GREEN_VALUE = 0x0
    EGL_TRANSPARENT_BLUE_VALUE = 0x0

    Creating Window surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x9
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x1e0
    EGL_HEIGHT = 0x1e0
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0xffffffff
    EGL_MIPMAP_TEXTURE = 0xffffffff
    EGL_MIPMAP_LEVEL = 0xffffffff
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x3094
    EGL_TEXTURE_FORMAT = 0x3094
    EGL_TEXTURE_TARGET = 0x3094
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 2 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x9
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x2
    EGL_RENDER_BUFFER = 0x3038

    Creating Pbuffer surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0x9
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x800
    EGL_HEIGHT = 0x800
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0x1
    EGL_MIPMAP_TEXTURE = 0x0
    EGL_MIPMAP_LEVEL = 0x0
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x0
    EGL_TEXTURE_FORMAT = 0x305c
    EGL_TEXTURE_TARGET = 0x305c
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 2 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0x9
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x2
    EGL_RENDER_BUFFER = 0x3038

    **********************************
    EGL config number: 9
    EGL vendor string: Imagination Technologies
    EGL version string: 1.4 build 1.14@3699939 (MAIN)
    EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
    EGL client APIs are: OpenGL_ES

    EGL config Attributes:
    EGL_CONFIG_ID = 0xa
    EGL_BUFFER_SIZE = 0x20
    EGL_RED_SIZE = 0x8
    EGL_GREEN_SIZE = 0x8
    EGL_BLUE_SIZE = 0x8
    EGL_LUMINANCE_SIZE = 0x0
    EGL_ALPHA_SIZE = 0x8
    EGL_ALPHA_MASK_SIZE = 0x0
    EGL_BIND_TO_TEXTURE_RGB = 0x0
    EGL_BIND_TO_TEXTURE_RGBA = 0x0
    EGL_COLOR_BUFFER_TYPE = 0x308e
    EGL_CONFIG_CAVEAT = 0x3038
    EGL_CONFORMANT = 0x4
    EGL_DEPTH_SIZE = 0x18
    EGL_LEVEL = 0x0
    EGL_MAX_PBUFFER_WIDTH = 0x800
    EGL_MAX_PBUFFER_HEIGHT = 0x800
    EGL_MAX_PBUFFER_PIXELS = 0x400000
    EGL_MAX_SWAP_INTERVAL = 0xa
    EGL_MIN_SWAP_INTERVAL = 0x1
    EGL_NATIVE_RENDERABLE = 0x0
    EGL_NATIVE_VISUAL_ID = 0x0
    EGL_NATIVE_VISUAL_TYPE = 0x0
    EGL_RENDERABLE_TYPE = 0x4 EGL_OPENGL_ES2_BIT
    EGL_SAMPLE_BUFFERS = 0x1
    EGL_SAMPLES = 0x4
    EGL_STENCIL_SIZE = 0x8
    EGL_SURFACE_TYPE = 0x4 EGL_WINDOW_BIT
    EGL_TRANSPARENT_TYPE = 0x3038
    EGL_TRANSPARENT_RED_VALUE = 0x0
    EGL_TRANSPARENT_GREEN_VALUE = 0x0
    EGL_TRANSPARENT_BLUE_VALUE = 0x0

    Creating Window surface..

    EGL surface Attributes:
    EGL_CONFIG_ID = 0xa
    EGL_VG_ALPHA_FORMAT = 0x308b
    EGL_VG_COLORSPACE = 0x3089
    EGL_WIDTH = 0x1e0
    EGL_HEIGHT = 0x1e0
    EGL_HORIZONTAL_RESOLUTION = 0xffffffff
    EGL_LARGEST_PBUFFER = 0xffffffff
    EGL_MIPMAP_TEXTURE = 0xffffffff
    EGL_MIPMAP_LEVEL = 0xffffffff
    EGL_PIXEL_ASPECT_RATIO = 0xffffffff
    EGL_RENDER_BUFFER = 0x3084
    EGL_SWAP_BEHAVIOR = 0x3094
    EGL_TEXTURE_FORMAT = 0x3094
    EGL_TEXTURE_TARGET = 0x3094
    EGL_VERTICAL_RESOLUTION = 0xffffffff

    Creating OpenGL ES 2 context..

    EGL context Attributes:
    EGL_CONFIG_ID = 0xa
    EGL_CONTEXT_CLIENT_TYPE = 0x30a0
    EGL_CONTEXT_CLIENT_VERSION = 0x2
    EGL_RENDER_BUFFER = 0x3038

    Printing API info..

    Creating Window surface..

    Creating OpenGL ES 2 context..

    OpenGL ES 2 Information:

    GLES 2 String Information :
    GL_VENDOR = Imagination Technologies
    GL_RENDERER = PowerVR SGX 530
    GL_VERSION = OpenGL ES 2.0 build 1.14@3699939 (MAIN)
    GL_SHADING_LANGUAGE_VERSION = OpenGL ES GLSL ES 1.00 build 1.14@3699939 (MAIN)
    GL_EXTENSIONS = GL_OES_rgb8_rgba8 GL_OES_depth24 GL_OES_vertex_half_float GL_OES_texture_float GL_OES_texture_half_float GL_OES_element_index_uint GL_OES_mapbuffer GL_OES_fragment_precision_high GL_OES_compressed_ETC1_RGB8_texture GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_required_internalformat GL_OES_depth_texture GL_OES_get_program_binary GL_OES_packed_depth_stencil GL_OES_standard_derivatives GL_OES_vertex_array_object GL_OES_egl_sync GL_OES_surfaceless_context GL_EXT_discard_framebuffer GL_EXT_blend_minmax GL_EXT_multi_draw_arrays GL_EXT_multisampled_render_to_texture GL_EXT_shader_texture_lod GL_EXT_texture_format_BGRA8888 GL_EXT_texture_rg GL_IMG_shader_binary GL_IMG_texture_compression_pvrtc GL_IMG_texture_npot GL_IMG_texture_format_BGRA8888 GL_IMG_read_format GL_IMG_program_binary GL_IMG_uniform_buffer_object GL_IMG_multisampled_render_to_texture GL_KHR_debug

    GLES 2 Boolean Information :
    GL_SHADER_COMPILER = 0x1
    GL_COLOR_WRITEMASK = 0x1 0x1 0x1 0x1
    GL_DEPTH_WRITEMASK = 0x1 0x1 0x1 0x1

    GLES 2 Integer Information :
    GL_SUBPIXEL_BITS = 0x4
    GL_MAX_TEXTURE_SIZE = 0x800
    GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x800
    GL_MAX_VIEWPORT_DIMS = 0x800 0x800
    GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x5
    GL_NUM_SHADER_BINARY_FORMATS = 0x1
    GL_MAX_VERTEX_ATTRIBS = 0x10
    GL_MAX_VERTEX_UNIFORM_VECTORS = 0x80
    GL_MAX_VARYING_VECTORS = 0x8
    GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8
    GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8
    GL_MAX_TEXTURE_IMAGE_UNITS = 0x8
    GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x40
    GL_MAX_RENDERBUFFER_SIZE = 0x800
    GL_IMPLEMENTATION_COLOR_READ_TYPE = 0x1401
    GL_IMPLEMENTATION_COLOR_READ_FORMAT = 0x80e1

    GLES 2 Float Information :
    GL_ALIASED_POINT_SIZE_RANGE = 1.000000 511.000000
    GL_ALIASED_LINE_WIDTH_RANGE = 1.000000 16.000000

    Creating Window surface..

    Creating OpenGL ES 1 context..

    OpenGL ES 1 Information:

    GLES String Information :
    GL_VENDOR = Imagination Technologies
    GL_RENDERER = PowerVR SGX 530
    GL_VERSION = OpenGL ES-CM 1.1
    GL_EXTENSIONS = GL_OES_byte_coordinates GL_OES_fixed_point GL_OES_single_precision GL_OES_matrix_get GL_OES_read_format GL_OES_compressed_paletted_texture GL_OES_point_sprite GL_OES_point_size_array GL_OES_matrix_palette GL_OES_draw_texture GL_OES_query_matrix GL_OES_texture_env_crossbar GL_OES_texture_mirrored_repeat GL_OES_texture_cube_map GL_OES_blend_subtract GL_OES_blend_func_separate GL_OES_blend_equation_separate GL_OES_stencil_wrap GL_OES_extended_matrix_palette GL_OES_framebuffer_object GL_OES_rgb8_rgba8 GL_OES_depth24 GL_OES_stencil8 GL_OES_compressed_ETC1_RGB8_texture GL_OES_mapbuffer GL_OES_EGL_image GL_OES_EGL_image_external GL_EXT_multi_draw_arrays GL_OES_required_internalformat GL_IMG_read_format GL_IMG_texture_compression_pvrtc GL_IMG_texture_format_BGRA8888 GL_EXT_texture_format_BGRA8888 GL_OES_egl_sync GL_IMG_vertex_array_object GL_APPLE_texture_2D_limited_npot

    GLES Integer Information :
    GL_MAX_LIGHTS = 0x8
    GL_MAX_CLIP_PLANES = 0x6
    GL_MAX_MODELVIEW_STACK_DEPTH = 0x10
    GL_MAX_PROJECTION_STACK_DEPTH = 0x2
    GL_MAX_TEXTURE_STACK_DEPTH = 0x4
    GL_SUBPIXEL_BITS = 0x4
    GL_MAX_TEXTURE_SIZE = 0x800
    GL_MAX_VIEWPORT_DIMS = 0x800 0x800
    GL_MAX_TEXTURE_UNITS = 0x4
    GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0xf

    GLES Float Information :
    GL_ALIASED_POINT_SIZE_RANGE = 1.000000 32.000000
    GL_SMOOTH_POINT_SIZE_RANGE = 1.000000 1.000000
    GL_ALIASED_LINE_WIDTH_RANGE = 1.000000 16.00000

  • Hi Valentina,

    Please correct me if I am wrong but eglinfo ran successfully the second time you executed the function. Could you please confirm that no other application was accessing the display when you ran eglinfo?

    Regards,
    Krunal

  • Hi Krunal,

    yes eglinfo ran successfully and no other application was accessing the display when I ran it.

  • Hello,

    Thank you for the confirmation and I believe that the libraries provided to you are correct. If there was a mismatch, you would not have been able to run eglinfo or your custom application. Since you are running a system without Wayland, you could only have one DRM master and if two applications try to access the display at the same time, the " Couldn't set CRTC: Permission denied" error is observed. 

    Based on our previous discussion, I believe you are writing a script to make sure the GPU is successfully initialized. I usually run the following commands:
    root@am335x-evm:~# /etc/init.d/rc.pvr stop
    Unloaded PowerVR consumer services.
    root@am335x-evm:~# /etc/init.d/rc.pvr start
    [ 1054.194292] [drm] Initialized pvr 1.17.4948957 20110701 for 56000000.sgx on minor 1
    [ 1054.255388] PVR_K: UM DDK-(4948957) and KM DDK-(4948957) match. [ OK ]
    Loaded PowerVR consumer services.

    As long as no "PVR:(Error)" messages are observed and the "Loaded ... services" message occurs, it gives me a good indication that the GPU is initialized and ready to be used. Please keep one thing in mind, if you have any application using the GPU, you will not be able to stop the service. Here is an example:

    root@am335x-evm:~# kmscube &
    [1] 1121
    root@am335x-evm:~# trying to load module omapdrm...failed.
    trying to load module tilcdc...success.
    ### Display [0]: CRTC = 29, Connector = 31, format = 0x34325258
    Mode chosen [800x480] : Clock => 30000, Vertical refresh => 62, Type => 72
    Horizontal => 800, 839, 886, 925, 0
    Vertical => 480, 493, 495, 524, 0
    ### Primary display => ConnectorId = 31, Resolution = 800x480
    Using display 0x1 with EGL version 1.4
    EGL Version "1.4 build 1.17@4948957"
    EGL Vendor "Imagination Technologies"
    EGL Extensions "EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EG"

    root@am335x-evm:~#
    root@am335x-evm:~#
    root@am335x-evm:~# /etc/init.d/rc.pvr stop
    rmmod: ERROR: Module pvrsrvkm is in use
    Couldn't unload modules

    Ideally, make sure that no one is using the pvrsrvkm module before closing it.
    root@am335x-evm:~# lsmod | grep pvrsrvkm
    pvrsrvkm 397312 2 <-- make sure it is 0

     

    Regards,
    Krunal