• Announcements

    • 1. Check power supply, check SD card and check other people experiences

      Power supply issues are one of the three biggest issues you'll face when starting with Single Board Computers (SBCs). SD card issues, whether fake or faulty, are another and issues resulting from poor board design is the other common issues you can encounter.   Power supply issues can be tricky. You might have a noisy power supply that works with one board because it has extra filtering, but won't work with another. Or you're using that cheap phone charger because your board has a microUSB connector, and it is either erratic, or doesn't start up, or even becomes the cause of some SD card issues.    Some tips to avoid the most common causes of problems reported:   Don't power via micro USB  - unless you have optimised your setup for low power requirements. Micro USB is great for mobile phones because they are simply charging a battery. It's bad for SBCs. Yes, it does work for a lot of people, but it also causes more problems and headaches over time than it is worth, unless you know exactly what you are doing. If you have a barrel jack power connector on your SBC, use it instead! If there is an option for powering via header connections, use that option!
        Don't use mobile phone chargers. They might be convenient and cheap, but this is because they are meant for charging phones, not powering your SBC which has particular power requirements.
        When you are evaluating a power supply, make sure you run some stress tests on your system to ensure that it will not cause issues down the path.   (Micro) SD card issues can be sneaky. They might appear right at the start causing strange boot and login errors, or they might cause problems over time. It is best to run a test on any new SD card you use, to ensure that it really is what it is, and to ensure that isn't faulty. Armbian provides you a simple way to do this   --   armbianmonitor -c /path/to/device/to/test  
    • 2. Make sure to collect and provide all necessary information

      We can only help if you provide quality information for us to work with. All stable images from the download section are tested, most stable upgrades are tested and we have tens of thousands of users. Even with regular and extensive testings, bugs sometimes do slip through. This is a voluntary support service and is unrelated to board makers, and is not obligated to provide you any answers. Repeated asking the same questions because you're not happy with the answers will result in you being ignored.

      Before you post a question, use the forum search as someone else might have already had the same problem and resolved it. And make sure you've read the Armbian documentation. If you still haven't found an answer, make sure you include the following in your post:   1. Logs when you can boot the board: armbianmonitor -u (paste URL to your forum post)   2. If your board does not boot, provide a log from serial console or at least make a picture, where it stops.   3. Describe the problem the best you can and provide all necessary info that we can reproduce the problem. We are not clairvoyant or mind readers. Please describe your setup as best as possible so we know what your operating environment is like.     We will not help in cases you are not using stable official Armbian builds, you have a problem with 3rd party hardware or reported problem would not be able to reproduced.

GPU driver?
2 2

88 posts in this topic

Recommended Posts

On 4.11.2017 at 12:24 PM, Myy said:

./waf configure --with-flavors=drm-glesv2

 

Checking for header jpeglib.h            : not found 
The configuration failed
(complete log in /home/tido/glmark/glmark2/build/config.log)

Paket: libjpeg-turbo8-dev

 

Checking for program 'pkg-config'        : not found 
Checking for program 'pkg-config'        : not found 
Checking for program 'pkg-config'        : not found 
You need to install a supported version of libpng: (('libpng12', '1.2'), ('libpng15', '1.5'), ('libpng16', '1.6'))
(complete log in /home/tido/glmark/glmark2/build/config.log)

apt-get install libpng12-dev

apt-get install libpng16-dev

oh gosh, do I have to compile  PNG reference library: libpng    https://ubuntuforums.org/showthread.php?t=2138623          --> https://sourceforge.net/projects/libpng/?source=navbar

Share this post


Link to post
Share on other sites

I remember that I compiled it with only doing something like :

apt install libjpeg-dev libpng-dev libdrm-dev libgbm-dev libudev-dev libegl1-mesa-dev libgles2-mesa-dev

The error message is incorrect. The project only needs libpng 1.2 OR 1.5 OR 1.6. Not all at once.

 

Anyway, no need to compile the required libraries. You should be able to grab them through apt and standard Debian/Ubuntu repositories.

Just try to be as generic as possible when searching for the development headers.

Share this post


Link to post
Share on other sites

 

Spoiler

 


root@tinkerboard:~# dpkg -l libjpeg-dev libpng-dev libdrm-dev libgbm-dev libudev-dev libegl1-mesa-dev libgles2-mesa-dev
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                Version        Architecture   Description
+++-===================-==============-==============-===========================================
un  libjpeg-dev         <none>         <none>         (no description available)
dpkg-query: no packages found matching libpng-dev
dpkg-query: no packages found matching libdrm-dev
dpkg-query: no packages found matching libgbm-dev
dpkg-query: no packages found matching libudev-dev
dpkg-query: no packages found matching libegl1-mesa-dev
dpkg-query: no packages found matching libgles2-mesa-dev

 

Let's give it a try with your command:

Spoiler

 


Suggested packages:
  libxcb-doc libxext-doc
Recommended packages:
  libx11-doc
The following packages will be REMOVED:
  libpng16-dev libpng16-devtools

The following NEW packages will be installed:
  libdrm-dev libdrm-exynos1 libdrm-omap1 libdrm-tegra0 libegl1-mesa-dev libgbm-dev
  libgles2-mesa-dev libjpeg-dev libjpeg8-dev libmirclient-dev libmircommon-dev libmircookie-dev
  libmircookie2 libmircore-dev libpng12-dev libprotobuf-dev libprotobuf9v5 libpthread-stubs0-dev
  libudev-dev libwayland-bin libwayland-dev libx11-dev libx11-xcb-dev libxau-dev libxcb-dri2-0-dev
  libxcb-dri3-dev libxcb-glx0-dev libxcb-present-dev libxcb-randr0 libxcb-randr0-dev
  libxcb-render0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb1-dev
  libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxkbcommon-dev libxshmfence-dev
  libxxf86vm-dev x11proto-core-dev x11proto-damage-dev x11proto-dri2-dev x11proto-fixes-dev
  x11proto-gl-dev x11proto-input-dev x11proto-kb-dev x11proto-xext-dev x11proto-xf86vidmode-dev
  xorg-sgml-doctools xtrans-dev
0 upgraded, 53 newly installed, 2 to remove and 7 not upgraded.
Need to get 3457 kB/3631 kB of archives.

 

and finally:

Spoiler

 


root@tinkerboard:~# dpkg -l libjpeg-dev libpng-dev libdrm-dev libgbm-dev libudev-dev libegl1-mesa-dev libgles2-mesa-dev
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                Version        Architecture   Description
+++-===================-==============-==============-===========================================
ii  libdrm-dev:armhf    2.4.76-1~ubunt armhf          Userspace interface to kernel DRM services 
ii  libegl1-mesa-dev:ar 17.0.7-0ubuntu armhf          free implementation of the EGL API -- devel
ii  libgbm-dev:armhf    17.0.7-0ubuntu armhf          generic buffer management API -- developmen
ii  libgles2-mesa-dev:a 17.0.7-0ubuntu armhf          free implementation of the OpenGL|ES 2.x AP
ii  libjpeg-dev:armhf   8c-2ubuntu8    armhf          Independent JPEG Group's JPEG runtime libra
un  libpng-dev          <none>         <none>         (no description available)
ii  libudev-dev:armhf   229-4ubuntu21  armhf          libudev development files

 

Still doesn't configure:

Spoiler

 


root@tinkerboard:/home/tido/glmark/glmark2# ./waf configure --with-flavors=drm-glesv2
Setting top to                           : /home/tido/glmark/glmark2 
Setting out to                           : /home/tido/glmark/glmark2/build 
Checking for 'gcc' (C compiler)          : /usr/bin/gcc 
Checking for 'g++' (C++ compiler)        : /usr/bin/g++ 
Checking for header stdlib.h             : yes 
Checking for header string.h             : yes 
Checking for header unistd.h             : yes 
Checking for header stdint.h             : yes 
Checking for header stdio.h              : yes 
Checking for header jpeglib.h            : yes 
Checking for library m                   : yes 
Checking for library jpeg                : yes 
Checking for function memset             : yes 
Checking for function sqrt               : yes 
Checking for program 'pkg-config'        : not found 
Checking for program 'pkg-config'        : not found 
Checking for program 'pkg-config'        : not found 
You need to install a supported version of libpng: (('libpng12', '1.2'), ('libpng15', '1.5'), ('libpng16', '1.6'))
(complete log in /home/tido/glmark/glmark2/build/config.log)

 

 

Maybe it is only missing:

Checking for program 'pkg-config'
not found
find program=['pkg-config'] paths=['/usr/local/sbin', '/usr/local/bin', '/usr/sbin', '/usr/bin', '/sbin', '/bin', '/usr/games', '/usr/local/games'] var='PKGCONFIG' -> None
from /home/tido/glmark/glmark2: Could not find the program ['pkg-config']

 

root@tinkerboard:/home/tido/glmark/glmark2# apt install pkg-config
Reading package lists... Done
Building dependency tree        
Reading state information... Done
The following NEW packages will be installed:
  pkg-config
0 upgraded, 1 newly installed, 0 to remove and 7 not upgraded.
Need to get 42.2 kB of archives.

 

et voila  :-)

Spoiler

 


root@tinkerboard:/home/tido/glmark/glmark2# ./waf configure --with-flavors=drm-glesv2
Setting top to                           : /home/tido/glmark/glmark2 
Setting out to                           : /home/tido/glmark/glmark2/build 
Checking for 'gcc' (C compiler)          : /usr/bin/gcc 
Checking for 'g++' (C++ compiler)        : /usr/bin/g++ 
Checking for header stdlib.h             : yes 
Checking for header string.h             : yes 
Checking for header unistd.h             : yes 
Checking for header stdint.h             : yes 
Checking for header stdio.h              : yes 
Checking for header jpeglib.h            : yes 
Checking for library m                   : yes 
Checking for library jpeg                : yes 
Checking for function memset             : yes 
Checking for function sqrt               : yes 
Checking for program 'pkg-config'        : /usr/bin/pkg-config 
Checking for 'libpng12'                  : yes 
Checking for 'x11'                       : yes 
Checking for 'gl'                        : not found 
Checking for 'egl'                       : yes 
Checking for 'glesv2'                    : yes 
Checking for 'libdrm'                    : yes 
Checking for 'gbm'                       : yes 
Checking for 'libudev'                   : yes 
Checking for 'mirclient'                 : yes 
Checking for 'wayland-client'            : yes 
Checking for 'wayland-egl'               : yes 
Prefix                                   : /usr/local 
Data path                                : /usr/local/share/glmark2 
Including extras                         : No 
Building flavors                         : ['drm-glesv2'] 
'configure' finished successfully (2.010s)

It says for 'gl' = not found ?

 

I started compiling...

Waf: Leaving directory `/home/tido/glmark/glmark2/build'
'build' finished successfully (1m21.141s)

 

Waf: Leaving directory `/home/tido/glmark/glmark2/build'
'install' finished successfully (0.829s)

Edited by Tido
compiling

Share this post


Link to post
Share on other sites

I have the tinker board only attached to HDMI, no keyboard and tried to start it via SSH. Is this a no-go ?

Or is it just the missing driver ?

root@tinkerboard:/home/tido/glmark/glmark2# glmark2-es2-drm
gbm: failed to open any driver (search paths /usr/lib/arm-linux-gnueabihf/dri:${ORIGIN}/dri:/usr/lib/dri)
gbm: Last dlopen error: /usr/lib/dri/rockchip_dri.so: cannot open shared object file: No such file or directory
failed to load driver: rockchip
** Failed to set swap interval. Results may be bounded above by refresh rate.
=======================================================
    glmark2 2017.07
=======================================================
    OpenGL Information
    GL_VENDOR:     VMware, Inc.
    GL_RENDERER:   Gallium 0.4 on llvmpipe (LLVM 4.0, 128 bits)
    GL_VERSION:    OpenGL ES 3.0 Mesa 17.0.7
=======================================================
** Failed to set swap interval. Results may be bounded above by refresh rate.
[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
Segmentation fault

 

Will I have to copy your files into those folders - to get the driver ?

cp -r usr/* /usr/
cp -r lib/* /lib/

 

Share this post


Link to post
Share on other sites

No, you'll have to :

  • Reinstall the Mali drivers somehow, or get them in a folder and use the LD_LIBRARY_PATH trick.
  • If X11 is currently using the display, you'll have to type :
sudo chvt 1 # Equivalent of CTRL+ALT+F1 on a keyboard

To reattach the TTY 1, which will provide a non-locked CRTC, since the X11 CRTC, generally attached to TTY 7, is locked by the X11 process for various valid reasons.

 

The binary looks good though.

Share this post


Link to post
Share on other sites

OMG, so it was a must that it runs outside X11. Sorry,  I read about  'chvt 1'  the first time. I know how to get there.

With regard to performance: The SoC reached 75° , so it is possible that the CPU was throttling,   beside that I have this driver messages (box below).

I have never installed Mali drivers - this is a plain armbian nightly with updates:  Linux tinkerboard 4.14.0-rc7-rockchip #95 SMP PREEMPT Sun Nov 5 01:47:06 CET 2017 armv7l GNU/Linux

 on which I have tried your kernel, but didn't really work. So your kernel is the only thing I ever copied over and switched back to armbian kernel.

Spoiler

 


root@tinkerboard:~# chvt 1
root@tinkerboard:~# glmark2-es2-drm
gbm: failed to open any driver (search paths /usr/lib/arm-linux-gnueabihf/dri:${ORIGIN}/dri:/usr/lib/dri)
gbm: Last dlopen error: /usr/lib/dri/rockchip_dri.so: cannot open shared object file: No such file or directory
failed to load driver: rockchip
** Failed to set swap interval. Results may be bounded above by refresh rate.
=======================================================
    glmark2 2017.07
=======================================================
    OpenGL Information
    GL_VENDOR:     VMware, Inc.
    GL_RENDERER:   Gallium 0.4 on llvmpipe (LLVM 4.0, 128 bits)
    GL_VERSION:    OpenGL ES 3.0 Mesa 17.0.7
=======================================================
** Failed to set swap interval. Results may be bounded above by refresh rate.
[build] use-vbo=false: FPS: 26 FrameTime: 38.462 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[build] use-vbo=true: FPS: 27 FrameTime: 37.037 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[texture] texture-filter=nearest: FPS: 27 FrameTime: 37.037 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[texture] texture-filter=linear: FPS: 27 FrameTime: 37.037 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[texture] texture-filter=mipmap: FPS: 25 FrameTime: 40.000 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[shading] shading=gouraud: FPS: 27 FrameTime: 37.037 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[shading] shading=blinn-phong-inf: FPS: 23 FrameTime: 43.478 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[shading] shading=phong: FPS: 18 FrameTime: 55.556 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[shading] shading=cel: FPS: 18 FrameTime: 55.556 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[bump] bump-render=high-poly: FPS: 13 FrameTime: 76.923 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[bump] bump-render=normals: FPS: 29 FrameTime: 34.483 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[bump] bump-render=height: FPS: 27 FrameTime: 37.037 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 14 FrameTime: 71.429 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 9 FrameTime: 111.111 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[pulsar] light=false:quads=5:texture=false: FPS: 17 FrameTime: 58.824 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 1 FrameTime: 1000.000 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[desktop] effect=shadow:windows=4: FPS: 3 FrameTime: 333.333 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 13 FrameTime: 76.923 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 13 FrameTime: 76.923 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 13 FrameTime: 76.923 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[ideas] speed=duration: FPS: 13 FrameTime: 76.923 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[jellyfish] <default>: FPS: 3 FrameTime: 333.333 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[terrain] <default>: FPS: 0 FrameTime: inf ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[shadow] <default>: FPS: 13 FrameTime: 76.923 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[refract] <default>: FPS: 2 FrameTime: 500.000 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 24 FrameTime: 41.667 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 18 FrameTime: 55.556 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 23 FrameTime: 43.478 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[function] fragment-complexity=low:fragment-steps=5: FPS: 19 FrameTime: 52.632 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[function] fragment-complexity=medium:fragment-steps=5: FPS: 15 FrameTime: 66.667 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 20 FrameTime: 50.000 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 19 FrameTime: 52.632 ms
** Failed to set swap interval. Results may be bounded above by refresh rate.
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 17 FrameTime: 58.824 ms
=======================================================
                                  glmark2 Score: 16 
=======================================================

 

Share this post


Link to post
Share on other sites

If you read this when running glmark2 :

GL_RENDERER: Gallium 0.4 on llvmpipe (LLVM 4.0, 128 bits)

Then you're not using the Mali user-space binary drivers. You're using CPU-bound renderer provided by Mesa.

 

Now, the user-space binary drivers are a pain in the ass tricky to install, since they require a special snowflake X server from Rockchip.

 

What I'd suggest is to :

  • Create a folder
  • Download libmali-midgard-t76x-r14p0-r0p0-wayland.so from rockchip-linux/libmali repository
  • Copy the file in the folder you created, then open a shell in this folder and type
    mv libmali-midgard-* libmali.so
    for file_to_link in libGLESv1_CM.so{,.1} libGLESv2.so{,.2} libEGL.so{,.1} libgbm.so{,.1,.1.0.0} libOpenCL.so{,.1,.1.0.0}; do ln -s libmali.so $file_to_link; done
    LD_LIBRARY_PATH=. glmark2-es2-drm

    Be sure that your user have read-write access to /dev/mali0. Else the test might also fail.

This should recreate all the necessary library file names that are searched by the OpenGL ES 2.x binary and use the instructions stored in libmali.so.

 

Aren't you glad that these drivers are so easy to install... Yeah I should create a wrapper script for that thing... seriously.

Share this post


Link to post
Share on other sites

With your help, this sounds easy, a script(wrapper) might not work in every case.  I always login as root, so this shouldn't be a problem.

 

root@tinkerboard:/home/tido/myy-s/mali# for file_to_link in libGLESv1_CM.so{,.1} libGLESv2.so{,.2} libEGL.so{,.1} libgbm.so{,.1,.1.0.0} libOpenCL.so{,.1,.1.0.0}; do ln -s libmali.so $file_to_link; done
ln: failed to create symbolic link 'libGLESv1_CM.so': File exists
ln: failed to create symbolic link 'libGLESv1_CM.so.1': File exists
ln: failed to create symbolic link 'libGLESv2.so': File exists
ln: failed to create symbolic link 'libGLESv2.so.2': File exists
ln: failed to create symbolic link 'libEGL.so': File exists
ln: failed to create symbolic link 'libEGL.so.1': File exists
ln: failed to create symbolic link 'libgbm.so': File exists
ln: failed to create symbolic link 'libgbm.so.1': File exists
ln: failed to create symbolic link 'libgbm.so.1.0.0': File exists
ln: failed to create symbolic link 'libOpenCL.so': File exists
ln: failed to create symbolic link 'libOpenCL.so.1': File exists
ln: failed to create symbolic link 'libOpenCL.so.1.0.0': File exists

root@tinkerboard:/home/tido/myy-s/mali# LD_LIBRARY_PATH=. glmark2-es2-drm
glmark2-es2-drm: error while loading shared libraries: ./libgbm.so.1: invalid ELF header

 

and now let me try to start that beast again :unsure:

root@tinkerboard:~# chvt 1

root@tinkerboard:~# glmark2-es2-drm

 

Even a reboot and re-running of above commands didn't fix it

root@tinkerboard:/home/tido/glmark/glmark2# glmark2-es2-drm
gbm: failed to open any driver (search paths /usr/lib/arm-linux-gnueabihf/dri:${ORIGIN}/dri:/usr/lib/dri)
gbm: Last dlopen error: /usr/lib/dri/rockchip_dri.so: cannot open shared object file: No such file or directory
failed to load driver: rockchip
** Failed to set swap interval. Results may be bounded above by refresh rate.
=======================================================
    glmark2 2017.07
=======================================================
    OpenGL Information
    GL_VENDOR:     VMware, Inc.
    GL_RENDERER:   Gallium 0.4 on llvmpipe (LLVM 4.0, 128 bits)
    GL_VERSION:    OpenGL ES 3.0 Mesa 17.0.7
=======================================================
** Failed to set swap interval. Results may be bounded above by refresh rate.
[build] use-vbo=false:^C FPS: 25 FrameTime: 40.000 ms
=======================================================
                                  glmark2 Score: 25 
=======================================================

 

Edited by Tido
update

Share this post


Link to post
Share on other sites

hmm, sounds wrong. Did I download a html instead of the file

 file libmali.so 
libmali.so: HTML document, UTF-8 Unicode text, with very long lines

 

hmm, I got now a 16MB file instead of the 45Kb from yesterday.

By the way, the "file" command is great. Thank you for showing this to me - I was looking for something like that last time I wanted to proof that I copied over the kernel.

I will try again and report

Edited by Tido
the right one

Share this post


Link to post
Share on other sites

This is now different:

root@tinkerboard:/home/tido/myy-s/mali# LD_LIBRARY_PATH=. glmark2-es2-drm
Error: eglGetDisplay() failed with error: 0x3000
Error: eglGetDisplay() failed with error: 0x3000
Error: main: Could not initialize canvas
Error: Failed to restore original CRTC: -13

I try after  chvt 1, et voila:

root@tinkerboard:/home/tido/myy-s/mali# LD_LIBRARY_PATH=. glmark2-es2-drm
=======================================================
    glmark2 2017.07
=======================================================
    OpenGL Information
    GL_VENDOR:     ARM
    GL_RENDERER:   Mali-T760
    GL_VERSION:    OpenGL ES 3.2 v1.r14p0-01rel0-git(966ed26).810f535757d8c9adaaa72f5da29c688e
=======================================================
[build] use-vbo=false: FPS: 55 FrameTime: 18.182 ms
[build] use-vbo=true: FPS: 55 FrameTime: 18.182 ms
[texture] texture-filter=nearest: FPS: 55 FrameTime: 18.182 ms
[texture] texture-filter=linear: FPS: 55 FrameTime: 18.182 ms
[texture] texture-filter=mipmap: FPS: 55 FrameTime: 18.182 ms
[shading] shading=gouraud: FPS: 55 FrameTime: 18.182 ms
[shading] shading=blinn-phong-inf: FPS: 55 FrameTime: 18.182 ms
[shading] shading=phong: FPS: 55 FrameTime: 18.182 ms
[shading] shading=cel: FPS: 55 FrameTime: 18.182 ms
[bump] bump-render=high-poly: FPS: 55 FrameTime: 18.182 ms
[bump] bump-render=normals: FPS: 55 FrameTime: 18.182 ms
[bump] bump-render=height: FPS: 55 FrameTime: 18.182 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 55 FrameTime: 18.182 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 50 FrameTime: 20.000 ms
[pulsar] light=false:quads=5:texture=false: FPS: 55 FrameTime: 18.182 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 27 FrameTime: 37.037 ms
[desktop] effect=shadow:windows=4: FPS: 55 FrameTime: 18.182 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 55 FrameTime: 18.182 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 55 FrameTime: 18.182 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 55 FrameTime: 18.182 ms
[ideas] speed=duration: FPS: 55 FrameTime: 18.182 ms
[jellyfish] <default>: FPS: 55 FrameTime: 18.182 ms
[terrain] <default>: FPS: 13 FrameTime: 76.923 ms
[shadow] <default>: FPS: 55 FrameTime: 18.182 ms
[refract] <default>: FPS: 27 FrameTime: 37.037 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 55 FrameTime: 18.182 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 55 FrameTime: 18.182 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 55 FrameTime: 18.182 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 55 FrameTime: 18.182 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 55 FrameTime: 18.182 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 55 FrameTime: 18.182 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 55 FrameTime: 18.182 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 55 FrameTime: 18.182 ms
=======================================================
                                  glmark2 Score: 51 
=======================================================

 

Wow, in  htop  CPU is close to Zero !

Temperature: around 50° C  steady.

It does need more RAM than before, but not more than 352

 

TonyMac32 and Myy like this

Share this post


Link to post
Share on other sites

I don't like to read such.

 

Andy, have u seen that Tony liked it?

 

Do u know that u can be grateful, if he does add it and if not, u r free to fix that as well.

 

Share this post


Link to post
Share on other sites

@Tido Glad you make it through. As always, ugly terrain and crystal bunny are the most GPU intensive operations.

I guess that you're screen works at 55Hz ?

 

Anyway, scripting the Mali user-space binary drivers sound nice and all until you realize that, besides wayland (weston only I'd say), DRM (used by almost nobody currently) and fbdev (used only by mediacenter-like distros), they won't be very useful. The X11 ones require a specific X Server, or you'll get a terrific crash when X starts...


Anyway, something like :

mkdir -p ~/.local/lib
cd ~/.local/lib
wget https://github.com/rockchip-linux/libmali/raw/rockchip/lib/arm-linux-gnueabihf/libmali-midgard-t76x-r14p0-r1p0-wayland.so -O libmali.so
for file_to_link in libGLESv1_CM.so{,.1} libGLESv2.so{,.2} libEGL.so{,.1} libgbm.so{,.1,.1.0.0} libOpenCL.so{,.1,.1.0.0}; do ln -s libmali.so $file_to_link; done
echo "alias mali_exec LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:`echo ~/.local/lib`" >> ~/.bashrc

Might do the trick for now. This is actually untested though. This should add a "mali_exec" command that can be used like this :

mali_exec glmark2-es2-drm

Providing a Nvidia Optimus bumblebee-like execution mechanism.

Share this post


Link to post
Share on other sites

Thank you and Thank YOU very much for your support.
It was a pleasure seeing it drawing the patterns and do this easy @ 53°C and about 7% CPU load.

 

1 hour ago, Myy said:

I guess that you're screen works at 55Hz ?

I checked, 56Hz it says when the tinker board is connected on Windows I ran that Display at 60Hz.
Does this explain the FPS maxium, I saw you reached 59 ?

 

1 hour ago, Myy said:

besides wayland, DRM and fbdev, it won't be very useful.

I guess this reflects your comment about the link I provided you here: https://forum.armbian.com/topic/5416-gpu-driver/?do=findComment&comment=42374

Which means that this test is great for KODI or other applications like a Music-Player that runs with fbdev, but for nothing else. Could it be used in conjunction with a touch-screen ?

Share this post


Link to post
Share on other sites
10 hours ago, Tido said:

I checked, 56Hz it says when the tinker board is connected on Windows I ran that Display at 60Hz.
Does this explain the FPS maxium, I saw you reached 59 ?

Indeed, the DRM tests are VSync'ed by default. So you'll get ~1 FPS/Hz .

I got 59 on a cold boot but when using a proper power supply, it stays at 60 for most of the tests, beside crystal bunny and that ugly terrain.

 

Note that the special X server can be installed more easily if you have you use Zesty or Arftul repositories. However, I really doubt that any Armbian people could help you if that patched X Server becomes broken.

 

If I have the time, I'll try, once again, to use plasma-desktop + KWin Wayland/DRM with the Mali drivers and see how it goes... It will probably fail miserably though, with no useful error messages.

Share this post


Link to post
Share on other sites

Armbian currently uses XFCE (which has the biggest lag with regard to GTK+3), which is very light. Plasma-DE is not as heavy as always repeated from some people and tinker board comes with 2GB Ram.
I am not sure if what I heard was related to NEON (KDE) but KDE has taken big steps in direction Wayland.

However, I guess with the outlook to Ubuntu 18.04, more optimization are coming automatically.

Share this post


Link to post
Share on other sites

Not to be a demanding troll, but would it be possible to go through this thread, create a tutorial, and stick it in the tutorial section?  The parts that can be implemented can be over time, in the meantime a spoon-fed version would help those that have need of it.

Share this post


Link to post
Share on other sites

All I did was getting GLMARK installed to see if it works properly. Using the   libmali-midgard-t76x-r14p0-r1p0-wayland.so   is a walk in the park.

 

The tutorial has already been written by Myy.

Download the Nightly, in my case it was: Armbian_5.34._Tinkerboard_Ubuntu_xenial_dev_4.14.0-rc6_desktop.img -  https://dl.armbian.com/tinkerboard/nightly/

and apply above tutorial... in which are the drawbacks already outlined.

Share this post


Link to post
Share on other sites

Hello

  • Just to understand a little bit can we use the binary libmali with lastest kernel with patch (Myy) or it 's necessary to start from 4.4 kernel and port mainline patches to 4.4 kernel?
    I buy an rk3328 device only because it's seem there is an kernel - not prehistoric - with gpu available but after some read i find documentation poor and community less active (in number) than sunxi linux team. I hope to be able to compile QT5 webkit  with gpu mesa dependancy but maybe it's very early to dream about it :)

    A link to Myy tutorial (RK3288) if already exist need to be under light ^^
    Tks for what is sharing here

Share this post


Link to post
Share on other sites

To my understanding, did you go/read through that thread, I am asking, because just above your post it says: 4.14.0-rc6 .

So have you taken the time to read or not ?

Share this post


Link to post
Share on other sites
3 hours ago, Tido said:

To my understanding, did you go/read through that thread, I am asking, because just above your post it says: 4.14.0-rc6 .

So have you taken the time to read or not ?

The tutorial has already been written by Myy.

 

Well u are right, i misreading first page, sorrye
Plz share a link to the tutorial, i don't find it

 

Share this post


Link to post
Share on other sites
19 hours ago, boobypi said:

Plz share a link to the tutorial

Well, if you do all steps in this posting.. you should get this running:

=======================================================
    OpenGL Information
    GL_VENDOR:     ARM
    GL_RENDERER:   Mali-T760
    GL_VERSION:    OpenGL ES 3.2 v1.r14p0-01rel0-git(966ed26).810f535757d8c9adaaa72f5da29c688e
=======================================================

If this helps you - I simply don't know.

Share this post


Link to post
Share on other sites

Do you know your link with comment reference isn't working in firefox? I have to check the share button to see proposed url and find the tutorial
Maybe it's more simple to make an pdf or a quote like this :

On 11/8/2017 at 9:54 AM, Myy said:

@Tido Glad you make it through. As always, ugly terrain and crystal bunny are the most GPU intensive operations.

I guess that you're screen works at 55Hz ?

 

Anyway, scripting the Mali user-space binary drivers sound nice and all until you realize that, besides wayland (weston only I'd say), DRM (used by almost nobody currently) and fbdev (used only by mediacenter-like distros), they won't be very useful. The X11 ones require a specific X Server, or you'll get a terrific crash when X starts...


Anyway, something like :


mkdir -p ~/.local/lib
cd ~/.local/lib
wget https://github.com/rockchip-linux/libmali/raw/rockchip/lib/arm-linux-gnueabihf/libmali-midgard-t76x-r14p0-r1p0-wayland.so -O libmali.so
for file_to_link in libGLESv1_CM.so{,.1} libGLESv2.so{,.2} libEGL.so{,.1} libgbm.so{,.1,.1.0.0} libOpenCL.so{,.1,.1.0.0}; do ln -s libmali.so $file_to_link; done
echo "alias mali_exec LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:`echo ~/.local/lib`" >> ~/.bashrc

Might do the trick for now. This is actually untested though. This should add a "mali_exec" command that can be used like this :


mali_exec glmark2-es2-drm

Providing a Nvidia Optimus bumblebee-like execution mechanism.

Share this post


Link to post
Share on other sites
39 minutes ago, boobypi said:

Do you know your link with comment reference isn't working in firefox?

I know, but it does. The trick is: click on my Link.. wait, click in the addressbar - hit ENTER.  Bang !  B)

 

Share this post


Link to post
Share on other sites

@Myy, I am just reading about the new features of 4.14 release and come across this: Direct Rendering Manager (DRM)

When you wrote about it, I always thought, why does he care about Digital Rights Management :D

Share this post


Link to post
Share on other sites
3 hours ago, Tido said:

@Myy, I am just reading about the new features of 4.14 release and come across this: Direct Rendering Manager (DRM)

When you wrote about it, I always thought, why does he care about Digital Rights Management :D

 

Yeah, I only care about the the Direct Rendering Manager system (・ω・`;)

 

Now, I understand everyone requests for a better documentation on how to install and use the Mali user-space binary drivers. This has been asked on my repository too, and I just started and untested draft in the Wiki of my repository, until I find a better way to format and distribute such documentation.

Still, I repeat, this is untested for now.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

2 2

  • Support the project

    We need your help to stay focused on the project.

    Choose the amount and currency you would like to donate in below.