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.

AM3358: matrix_browser not working properly

Part Number: AM3358


Hi TI Team,

I am trying to build an image that has the minimum requirement for web-browser for a kiosk application.

SOC:  beaglebone black with external HDMI (no special HW).

SDK: Processor SDK Linux for AM335X  Ver. 07_03_00_005

I followed the instruction found  in here:  https://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Overview_Building_the_SDK.html

to build the yocto build for the SDK.

I managed to build it successfully. 

When I try to start the matrix_browser I always get white screen with the mouse pointer visible, with some complains as follows:

root@am335x-evm:~# /usr/bin/matrix_browser www.google.com
qt.qpa.input: xkbcommon not available, not performing key mapping
Attribute Qt::AA_ShareOpenGLContexts must be set before QCoreApplication is created.

I tried some other examples some of them work without any problem and some of them did not work.

Here is some examples of the examples I tried and the results.

A- Working Examples:

=============

root@am335x-evm:~# /usr/share/examples/opengl/2dpainting/2dpainting
qt.qpa.input: xkbcommon not available, not performing key mapping
Attribute Qt::AA_ShareOpenGLContexts must be set before QCoreApplication is created.
Cannot find EGLConfig, returning null config

root@am335x-evm:~# /usr/share/examples/opengl/hellogl2/hellogl2
qt.qpa.input: xkbcommon not available, not performing key mapping
Attribute Qt::AA_ShareOpenGLContexts must be set before QCoreApplication is created.
Cannot find EGLConfig, returning null config
This plugin does not support setParent!
This plugin does not support setParent!

root@am335x-evm:~# /usr/share/examples/opengl/contextinfo/contextinfo
qt.qpa.input: xkbcommon not available, not performing key mapping
Attribute Qt::AA_ShareOpenGLContexts must be set before QCoreApplication is created.
Requesting surface format QSurfaceFormat(version 3.1, options QFlags<QSurfaceFormat::FormatOption>(DebugContext), depthBufferSize 16, redBufferSize -1, greenBufferSize -1, blueBufferSize -1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::DefaultSwapBehavior, swapInterval 1, colorSpace QSurfaceFormat::DefaultColorSpace, profile QSurfaceFormat::CoreProfile)
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Requesting surface format QSurfaceFormat(version 3.1, options QFlags<QSurfaceFormat::FormatOption>(DebugContext), depthBufferSize 16, redBufferSize -1, greenBufferSize -1, blueBufferSize -1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::DefaultSwapBehavior, swapInterval 1, colorSpace QSurfaceFormat::DefaultColorSpace, profile QSurfaceFormat::CoreProfile)
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009

root@am335x-evm:~# /usr/share/examples/opengl/cube/cube
qt.qpa.input: xkbcommon not available, not performing key mapping
Attribute Qt::AA_ShareOpenGLContexts must be set before QCoreApplication is created.
Cannot find EGLConfig, returning null config

RESULT: BLACK SCREEN with mouse Pointer.


root@am335x-evm:~# /usr/share/examples/opengl/threadedqopenglwidget/threadedqopenglwidget
qt.qpa.input: xkbcommon not available, not performing key mapping
Attribute Qt::AA_ShareOpenGLContexts must be set before QCoreApplication is created.
Cannot find EGLConfig, returning null config
Cannot find EGLConfig, returning null config
Cannot find EGLConfig, returning null config
Cannot find EGLConfig, returning null config
Cannot find EGLConfig, returning null config

RESULT: NAVY BLUE SCREEN with mouse Pointer.

B- Non-working Examples:

=============== 

root@am335x-evm:~# /usr/share/examples/opengl/hellogles3/hellogles3
qt.qpa.input: xkbcommon not available, not performing key mapping
Requesting 3.0 context
Cannot find EGLConfig, returning null config
EGL Error : Could not create the egl surface: error = 0x3005

Aborted (core dumped)

root@am335x-evm:~# /usr/share/examples/opengl/computegles31/computegles31
qt.qpa.input: xkbcommon not available, not performing key mapping
Support for GL 2.0 noprof no
Support for GL 2.0 core no
Support for GL 2.0 compat no
QEGLPlatformContext: Failed to create context: 3009
Support for GL 2.1 noprof no
QEGLPlatformContext: Failed to create context: 3009
Support for GL 2.1 core no
QEGLPlatformContext: Failed to create context: 3009
Support for GL 2.1 compat no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 3.0 noprof no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 3.0 core no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 3.0 compat no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 3.1 noprof no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 3.1 core no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 3.1 compat no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 3.2 core no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 3.2 compat no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 3.3 core no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 3.3 compat no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 4.0 core no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 4.0 compat no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 4.1 core no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 4.1 compat no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 4.2 core no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 4.2 compat no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 4.3 core no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 4.3 compat no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 4.4 core no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 4.4 compat no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 4.5 core no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GL 4.5 compat no
Support for GLES 2.0 yes
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GLES 3.0 no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GLES 3.1 no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Support for GLES 3.2 no
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Cannot find EGLConfig, returning null config
QEGLPlatformContext: Failed to create context: 3009
Error: This system does not support OpenGL Compute Shaders! Exiting.

I would appreciate any help since I've spent may hours tying to find any fix on this form without any luck.

Thank you,

Mohamed

  • Hello Mohamed,

    Do you have weston enabled and if yes, do you see the weston screen?

    Regards,
    Krunal

  • Thank you Krunal for your reply.

    After booting my HDMI screen is black and I know there is an issue that the matrix gui is not starting up automatically.

    On HDMI screen I can see the matrix_gui after executing the following commands

    root@am335x-evm:~# export QT_QPA_PLATFORM=eglfs

    root@am335x-evm:~# /etc/init.d/matrix-gui-2.0 start

    Acording to this page:

    https://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Foundational_Components/Graphics/Graphics_and_Display.html

    After I exit weston using  Ctrl-Alt-Backspace  then  Ctrl-Alt-F1. 

    none of the demo apps is working, here is the output:

    root@am335x-evm:~# /usr/bin/SGX/demos/DRM/OGLES2Coverflow
    display failed to set mode: Invalid argument
    display failed to set mode: Invalid argument
    display failed to set mode: Invalid argument
    display failed to set mode: Invalid argument
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glClear: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawElements: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawArrays: Can't prepare to draw [0, ]
    eglSwapBuffers failed
    Segmentation fault (core dumped)

    Please let me know if you need more info.

    regards,

    Mohamed

  • Hi,

    Did you follow the instructions mentioned in the following page: https://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Foundational_Components/Graphics/AM3_Beagle_Bone_Black_Configuration.html?highlight=beagle . After adding the changes, try the command "/etc/init.d/weston restart"

    Also, before running any GPU application, try running kmstest to ensure display is functional. 

    Regards,

    Krunal

  • Hi Krunal,

    I executed these instructions and here is the results:

    Arago 2020.09 am335x-evm ttyS0

    am335x-evm login: root
    Last login: Mon Mar 21 12:21:09 UTC 2022
    root@am335x-evm:~# [ 46.240743] cryptd: max_cpu_qlen set to 1000
    [ 46.872548] Initializing XFRM netlink socket

    root@am335x-evm:~#
    root@am335x-evm:~#
    root@am335x-evm:~# /etc/init.d/weston restart
    Stopping Weston
    Starting Weston

    After restarting weston: The screen has white screen with mouse pointer and a title bare that has the current date and time

    Then I got this when I tried to execute kmstest


    root@am335x-evm:~# kmstest
    Could not get DRM master permission. Card already in use?
    root@am335x-evm:~# sudo kmstest
    Could not get DRM master permission. Card already in use?

    Regards,

    Mohamed

  • Hi Krunal,

    Here is more debugging info.

    root@am335x-evm:~# dmesg |grep -i pvr
    [ 15.291247] [drm] Initialized pvr 1.17.4948957 20110701 for 56000000.gpu on minor 1
    [ 30.351649] PVR_K: UM DDK-(4948957) and KM DDK-(4948957) match. [ OK ]
    root@am335x-evm:~#
    root@am335x-evm:~#
    root@am335x-evm:~# modetest
    trying to open device 'i915'...failed
    trying to open device 'amdgpu'...failed
    trying to open device 'radeon'...failed
    trying to open device 'nouveau'...failed
    trying to open device 'vmwgfx'...failed
    trying to open device 'omapdrm'...failed
    trying to open device 'exynos'...failed
    trying to open device 'tilcdc'...done
    Encoders:
    id crtc type possible crtcs possible clones
    33 32 TMDS 0x00000001 0x00000000

    Connectors:
    id encoder status name size (mm) modes encoders
    34 33 connected HDMI-A-1 520x290 47 33
    modes:
    index name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
    #0 1280x1024 60.02 1280 1328 1440 1688 1024 1025 1028 1066 108000 flags: phsync, pvsync; type: driver
    #1 1440x900 59.90 1440 1488 1520 1600 900 903 909 926 88750 flags: phsync, nvsync; type: driver
    #2 1280x960 60.00 1280 1376 1488 1800 960 961 964 1000 108000 flags: phsync, pvsync; type: driver
    #3 1280x800 59.91 1280 1328 1360 1440 800 803 809 823 71000 flags: phsync, nvsync; type: driver
    #4 1152x864 75.00 1152 1216 1344 1600 864 865 868 900 108000 flags: phsync, pvsync; type: driver
    #5 1280x720 60.00 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: driver
    #6 1280x720 60.00 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: driver
    #7 1280x720 59.94 1280 1390 1430 1650 720 725 730 750 74176 flags: phsync, pvsync; type: driver
    #8 1280x720 50.00 1280 1720 1760 1980 720 725 730 750 74250 flags: phsync, pvsync; type: driver
    #9 1440x576 50.00 1440 1464 1592 1728 576 581 586 625 54000 flags: nhsync, nvsync; type: driver
    #10 1440x576 50.00 1440 1464 1592 1728 576 581 586 625 54000 flags: nhsync, nvsync; type: driver
    #11 1024x768 75.03 1024 1040 1136 1312 768 769 772 800 78750 flags: phsync, pvsync; type: driver
    #12 1024x768 70.07 1024 1048 1184 1328 768 771 777 806 75000 flags: nhsync, nvsync; type: driver
    #13 1024x768 60.00 1024 1048 1184 1344 768 771 777 806 65000 flags: nhsync, nvsync; type: driver
    #14 1440x480 60.00 1440 1472 1596 1716 480 489 495 525 54054 flags: nhsync, nvsync; type: driver
    #15 1440x480 60.00 1440 1472 1596 1716 480 489 495 525 54054 flags: nhsync, nvsync; type: driver
    #16 1440x480 59.94 1440 1472 1596 1716 480 489 495 525 54000 flags: nhsync, nvsync; type: driver
    #17 1440x480 59.94 1440 1472 1596 1716 480 489 495 525 54000 flags: nhsync, nvsync; type: driver
    #18 832x624 74.55 832 864 928 1152 624 625 628 667 57284 flags: nhsync, nvsync; type: driver
    #19 800x600 75.00 800 816 896 1056 600 601 604 625 49500 flags: phsync, pvsync; type: driver
    #20 800x600 72.19 800 856 976 1040 600 637 643 666 50000 flags: phsync, pvsync; type: driver
    #21 800x600 60.32 800 840 968 1056 600 601 605 628 40000 flags: phsync, pvsync; type: driver
    #22 800x600 56.25 800 824 896 1024 600 601 603 625 36000 flags: phsync, pvsync; type: driver
    #23 720x576 50.00 720 732 796 864 576 581 586 625 27000 flags: nhsync, nvsync; type: driver
    #24 720x576 50.00 720 732 796 864 576 581 586 625 27000 flags: nhsync, nvsync; type: driver
    #25 720x576i 25.00 720 732 795 864 576 580 586 625 13500 flags: nhsync, nvsync, interlace, dblclk; type: driver
    #26 720x576i 25.00 720 732 795 864 576 580 586 625 13500 flags: nhsync, nvsync, interlace, dblclk; type: driver
    #27 720x480 60.00 720 736 798 858 480 489 495 525 27027 flags: nhsync, nvsync; type: driver
    #28 720x480 60.00 720 736 798 858 480 489 495 525 27027 flags: nhsync, nvsync; type: driver
    #29 720x480 59.94 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver
    #30 720x480 59.94 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver
    #31 720x480 59.94 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver
    #32 720x480i 30.00 720 739 801 858 480 488 494 525 13514 flags: nhsync, nvsync, interlace, dblclk; type: driver
    #33 720x480i 30.00 720 739 801 858 480 488 494 525 13514 flags: nhsync, nvsync, interlace, dblclk; type: driver
    #34 720x480i 29.97 720 739 801 858 480 488 494 525 13500 flags: nhsync, nvsync, interlace, dblclk; type: driver
    #35 720x480i 29.97 720 739 801 858 480 488 494 525 13500 flags: nhsync, nvsync, interlace, dblclk; type: driver
    #36 640x480 75.00 640 656 720 840 480 481 484 500 31500 flags: nhsync, nvsync; type: driver
    #37 640x480 72.81 640 664 704 832 480 489 492 520 31500 flags: nhsync, nvsync; type: driver
    #38 640x480 66.67 640 704 768 864 480 483 486 525 30240 flags: nhsync, nvsync; type: driver
    #39 640x480 60.00 640 656 752 800 480 490 492 525 25200 flags: nhsync, nvsync; type: driver
    #40 640x480 59.94 640 656 752 800 480 490 492 525 25175 flags: nhsync, nvsync; type: driver
    #41 640x480 59.94 640 656 752 800 480 490 492 525 25175 flags: nhsync, nvsync; type: driver
    #42 720x400 70.08 720 738 846 900 400 412 414 449 28320 flags: nhsync, pvsync; type: driver
    #43 720x240 60.12 720 739 801 858 240 244 247 262 13514 flags: nhsync, nvsync, dblclk; type: driver
    #44 720x240 60.12 720 739 801 858 240 244 247 262 13514 flags: nhsync, nvsync, dblclk; type: driver
    #45 720x240 60.05 720 739 801 858 240 244 247 262 13500 flags: nhsync, nvsync, dblclk; type: driver
    #46 720x240 60.05 720 739 801 858 240 244 247 262 13500 flags: nhsync, nvsync, dblclk; type: driver
    props:
    1 EDID:
    flags: immutable blob
    blobs:

    value:
    00ffffffffffff005a632ede01010101
    261c010380341d782e2cc5a45650a128
    0f5054bfef80b300a940a9c095009040
    818081408100023a801871382d40582c
    450009252100001e000000ff00545654
    3138333841313634390a000000fd0032
    4b0f5213000a202020202020000000fc
    0056583234353220536572696573011f
    020328f1559005040302070608090e0f
    1f1413121115161d1e0123097f078301
    000065030c001000023a801871382d40
    582c450009252100001e011d8018711c
    1620582c250009252100009e011d0072
    51d01e206e28550009252100001e8c0a
    d08a20e02d10103e9600092521000018
    0000000000000000000000000000003c
    2 DPMS:
    flags: enum
    enums: On=0 Standby=1 Suspend=2 Off=3
    value: 0
    5 link-status:
    flags: enum
    enums: Good=0 Bad=1
    value: 0
    6 non-desktop:
    flags: immutable range
    values: 0 1
    value: 0
    4 TILE:
    flags: immutable blob
    blobs:

    value:
    20 CRTC_ID:
    flags: object
    value: 32

    CRTCs:
    id fb pos size
    32 36 (0,0) (1024x768)
    #0 1024x768 75.03 1024 1040 1136 1312 768 769 772 800 78750 flags: phsync, pvsync; type: driver
    props:
    22 ACTIVE:
    flags: range
    values: 0 1
    value: 1
    23 MODE_ID:
    flags: blob
    blobs:

    value:
    9e330100000410047004200500000003
    01030403200300004b00000005000000
    40000000313032347837363800000000
    00000000000000000000000000000000
    00000000
    19 OUT_FENCE_PTR:
    flags: range
    values: 0 18446744073709551615
    value: 0
    24 VRR_ENABLED:
    flags: range
    values: 0 1
    value: 0

    Planes:
    id crtc fb CRTC x,y x,y gamma size possible crtcs
    31 32 36 0,0 0,0 0 0x00000001
    formats: RG16 BG24 XB24
    props:
    8 type:
    flags: immutable enum
    enums: Overlay=0 Primary=1 Cursor=2
    value: 1
    17 FB_ID:
    flags: object
    value: 36
    18 IN_FENCE_FD:
    flags: signed range
    values: -1 2147483647
    value: -1
    20 CRTC_ID:
    flags: object
    value: 32
    13 CRTC_X:
    flags: signed range
    values: -2147483648 2147483647
    value: 0
    14 CRTC_Y:
    flags: signed range
    values: -2147483648 2147483647
    value: 0
    15 CRTC_W:
    flags: range
    values: 0 2147483647
    value: 1024
    16 CRTC_H:
    flags: range
    values: 0 2147483647
    value: 768
    9 SRC_X:
    flags: range
    values: 0 4294967295
    value: 0
    10 SRC_Y:
    flags: range
    values: 0 4294967295
    value: 0
    11 SRC_W:
    flags: range
    values: 0 4294967295
    value: 67108864
    12 SRC_H:
    flags: range
    values: 0 4294967295
    value: 50331648

    Frame buffers:
    id size pitch


    root@am335x-evm:~#
    root@am335x-evm:~#

    KMS:

    root@am335x-evm:~# kmsprint
    Connector 0 (34) HDMI-A-1 (connected)
    Encoder 0 (33) TMDS
    Crtc 0 (32) 1024x768 78.750 1024/16/96/176 768/1/3/28 75 (75.03)
    Plane 0 (31) fb-id: 36 (crtcs: 0) 0,0 1024x768 -> 0,0 1024x768 (RG16 BG24 XB24)
    FB 36 1024x768
    root@am335x-evm:~# kmstest -f RG16
    Connector 0/@34: HDMI-A-1
    Crtc 0/@32: 1280x1024 108.000 1280/48/112/248/+ 1024/1/3/38/+ 60 (60.02) 0x5 0x40
    Plane 0/@31: 0,0-1280x1024
    Fb 40 1280x1024-RG16
    press enter to exit

    ==>> the screen shows colorful squares.

    root@am335x-evm:~# kmstest -f BG24
    Connector 0/@34: HDMI-A-1
    Crtc 0/@32: 1280x1024 108.000 1280/48/112/248/+ 1024/1/3/38/+ 60 (60.02) 0x5 0x40
    Plane 0/@31: 0,0-1280x1024
    Fb 40 1280x1024-BG24
    press enter to exit

    ==>> the screen shows colorful squares.


    root@am335x-evm:~# kmstest -f XB24
    Connector 0/@34: HDMI-A-1
    Crtc 0/@32: 1280x1024 108.000 1280/48/112/248/+ 1024/1/3/38/+ 60 (60.02) 0x5 0x40
    Plane 0/@31: 0,0-1280x1024
    Fb 38 1280x1024-XB24
    press enter to exit

    ==>> the screen shows colorful squares.

    pvrsrvctl

    root@am335x-evm:~# /usr/bin/pvrsrvctl --start
    Failed to load /lib/modules/5.4.20/extrapvrsrvkm.ko: No such file or directory

    root@am335x-evm:~# /usr/bin/pvrsrvctl --dump-debug
    [ 575.195584] PVR_K: User requested SGX debug info
    [ 575.200565] PVR_K: SGX debug (SGX_DDK sgxddk 1.17@4948957)
    [ 575.206103] PVR_K: Host Ctl flags= 00000006
    [ 575.211847] PVR_K: SGX Host control:
    [ 575.215577] PVR_K: (HC-0) 0x00000001 0x00000000 0x00000000 0x00000001
    [ 575.222944] PVR_K: (HC-10) 0x00000000 0x00000000 0x00000014 0x00030D40
    [ 575.230176] PVR_K: (HC-20) 0x00000000 0x00000004 0x00000004 0x00000000
    [ 575.236994] PVR_K: (HC-30) 0x00000000 0x0008500F 0xEFEEFE50 0x00000000
    [ 575.244378] PVR_K: (HC-40) 0x00000000 0x00000000 0x000000C8 0x00000000
    [ 575.251511] PVR_K: SGX TA/3D control:
    [ 575.255271] PVR_K: (T3C-0) 0x0F003000 0x0F003140 0x0F002000 0x00000000
    [ 575.262579] PVR_K: (T3C-10) 0x00000000 0x00000000 0x00000002 0x00000000
    [ 575.269813] PVR_K: (T3C-20) 0x00000000 0x00000000 0x00000000 0x00000000
    [ 575.276631] PVR_K: (T3C-30) 0x00000000 0x00000000 0x00000000 0x00000000
    [ 575.284034] PVR_K: (T3C-40) 0x00000000 0x00000000 0x00000000 0x00000000
    [ 575.291265] PVR_K: (T3C-50) 0x00000000 0x00000000 0x00000000 0x00000000
    [ 575.298508] PVR_K: (T3C-60) 0x00000000 0x00000000 0x00000000 0x00000000
    [ 575.305318] PVR_K: (T3C-70) 0x00000000 0x00000000 0x00000000 0x00000000
    [ 575.312710] PVR_K: (T3C-80) 0x00000000 0x00000000 0x00000000 0x0F000000
    [ 575.319971] PVR_K: (T3C-90) 0x9A3E4000 0x0F093A00 0x00000000 0x0F09E840
    [ 575.326716] PVR_K: (T3C-A0) 0x0F00AEA0 0x0F09D640 0x0F09E840 0x00000000
    [ 575.333965] PVR_K: (T3C-B0) 0x00000000 0x00000000 0x00000000 0x00000000
    [ 575.340954] PVR_K: (T3C-C0) 0x00000000 0x00000000 0x00000013 0x00000013
    [ 575.347687] PVR_K: (T3C-D0) 0x0F000000 0x8000B000 0x8004B000 0x0F004000
    [ 575.354875] PVR_K: (T3C-E0) 0x0F00A420 0x0F00A740 0x0F08B000 0x0F08B000
    [ 575.361902] PVR_K: (T3C-F0) 0x00000000 0x00000295 0x00000295 0x00000000
    [ 575.368891] PVR_K: (T3C-100) 0x00000003 0x00000000 0x00000000 0x00000004
    [ 575.375711] PVR_K: (T3C-110) 0x00000000 0x00000000 0x00000000 0x00000000
    [ 575.382894] PVR_K: (T3C-120) 0x0F00AEA0 0x0F093A00 0x00000000 0x00000000
    [ 575.389950] PVR_K: SGX Kernel CCB WO:0x66 RO:0x66
    [ 575.394714] PVR_K: Active syncs

    Hope these info help. 

    Regards,

    Mohamed

  • Hi Mohamed,

    I am confused with your setup because in the post you mentioned about using 07_03_00_005. However, in the following message "Failed to load /lib/modules/5.4.20/extrapvrsrvkm.ko: No such file or directory", it says Kernel 5.4.20 but that's not the version our SDK supports. 

    Also, you mentioned "After restarting weston: The screen has white screen with mouse pointer and a title bare that has the current date and time" and that tells me Weston loaded and GPU is working. If GPU was not functional, the Weston screen will never come up. As an experiment, try running glmark-drm-wayland in that white screen.

    Regards,
    Krunal

  • First I hit the resolve button by mistake. 

    I am using SDK 07_03_00_005 Here is the output of uname -a

    root@am335x-evm:~# root@am335x-evm:~# uname -a

    Linux am335x-evm 5.4.106-g023faefa70 #1 PREEMPT Fri Mar 11 23:21:14 UTC 2022 armv7l armv7l armv7l GNU/Linux

    I downloaded the SDK and built it without editing any file just to try it. So if the SDK does not support Kernel 5.4.20, Which version should I use.

    I used: MACHINE=am335x-evm bitbake  tisdk-default-image

    Also I tried to run  glmark-drm-wayland but it did not work

    I tried this: 

    root@am335x-evm:~# root@am335x-evm:~# glmark2-es2-wayland

    I can see 3d figure animation on  the screen started with a horse.

     

    No if I try to run the browser here is what I am getting a slightly different message:

    root@am335x-evm:~# /usr/bin/matrix_browser http://www.google.com
    qt.qpa.input: xkbcommon not available, not performing key mapping
    EGL Error : Could not create the egl surface: error = 0x300b

    Aborted (core dumped)
    root@am335x-evm:~#

    Appreciate taking the time to help,

    Mohamed

     

  • More debug info:

    root@am335x-evm:~# glmark2-es2-drm
    =======================================================
    glmark2 2017.07
    =======================================================
    OpenGL Information
    GL_VENDOR: Imagination Technologies
    GL_RENDERER: PowerVR SGX 530
    GL_VERSION: OpenGL ES 2.0 build 1.17@4948957
    =======================================================
    [build] use-vbo=false:Error: Failed to set crtc: -13
    Error: Failed to set crtc: -13
    Error: Failed to set crtc: -13
    Error: Failed to set crtc: -13
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glClear: Can't prepare to draw [0, ]
    PVRImageDrawableGetNativeInfo: Image get buffers call failed
    PVR:(Error): KEGLGetDrawableParameters: Couldn't recreate drawable
    [0, ]
    PVR:(Error): PrepareToDraw: Invalid drawable [0, ]
    PVR:(Error): glDrawArrays: Can't prepare to draw [0, ]
    Segmentation fault (core dumped)

  • Hi Mohamed,

    Okay, let's take a step back and burn a SD card using the default images present in the SDK. Here are the instructions: https://software-dl.ti.com/processor-sdk-linux/esd/docs/07_03_00_005/linux/Overview/Processor_SDK_Linux_create_SD_card_script.html

    After, booting the board, make the changes mentioned in the following document: https://software-dl.ti.com/processor-sdk-linux/esd/docs/07_03_00_005/linux/Foundational_Components/Graphics/AM3_Beagle_Bone_Black_Configuration.html?highlight=beagle%20bone and reboot the board. At this point, you should see a white screen (Weston) with a cursor and you should be able to run glmark-es2-wayland.

    Regards,
    Krunal

  • Hi Krunal,

    I  created an SD card from the TI-SD not from the yocto build.

    First, I got one complain about QT_WAYLAND_SHELL_INTEGRATION=wl-shell

    root@am335x-evm:~# matrix_browser www.google.com --windowed qt.qpa.wayland: "wl-shell" is a deprecated shell extension, prefer using "xdg-shell-v6" or "xdg-shell" if supported by the compositor by setting the environment variable QT_WAYLAND_SHELL_INTEGRATION

    So I switched to xdg-shell:  ~# export QT_WAYLAND_SHELL_INTEGRATION=xdg-shell     ==>> same result

    root@am335x-evm:~# echo $QT_WAYLAND_SHELL_INTEGRATION
    wl-shell

    root@am335x-evm:~# export QT_WAYLAND_SHELL_INTEGRATION=xdg-shell
    root@am335x-evm:~# echo $QT_WAYLAND_SHELL_INTEGRATION
    xdg-shell
    root@am335x-evm:~# matrix_browser www.google.com --windowed

     

    I tried also xdg-shell-v6: ~# export QT_WAYLAND_SHELL_INTEGRATION=xdg-shell-v6     ==>> same result

    root@am335x-evm:~# export QT_WAYLAND_SHELL_INTEGRATION=xdg-shell-v6
    root@am335x-evm:~# echo $QT_WAYLAND_SHELL_INTEGRATION
    xdg-shell-v6
    root@am335x-evm:~# matrix_browser www.google.com --windowed

    When I  click the right mouse button I got the box that says reload. Here is aa screen shot from the HDMI screen:

    glmark2-es2-wayland is working and I can see the 3d animations (It was also working with the SD card created from the yocto build).

    still getting the same error when I try glmark2-es2-drm

    Regards,

    Mohamed

  • HI Mohamed,

    Thank you for the confirmation! On my setup, I am able to run glmark2-es2-wayland but the drm test fails. I am not sure what your goals are but if you are just trying to run applications without weston you could try the following as an example: 

    1) root@am335x-evm:/usr/share/qt5/examples/opengl/hellogl2# ./hellogl2 --platform eglfs
    2) kmscube --format=RG16

    With regards to browser, the Yocto community removed all chromium based browsers because of Python2 dependency. I believe Python2 became EOL in 2020 and in Dunfell, any packages that depend on Python 2 were removed and not supported. The matrix browser is a non chromium based browser but I am not sure how much support is available from Qt community.  

    Regards,
    Krunal

  • Hi Krunal,

    I found out what was the problem the whole URL including hhtp:// should be provided.

     Thank for helping