Installing Manjaro Arm on X96 Air P3 TV Box

Hi @Tiber,
Try setting xfwm to xpresent mode it might speed up your glmark2 score. Logout and re-login or reboot.

xfconf-query -c xfwm4 -p /general/vblank_mode -s xpresent

For the moment I use SD Card and USB 3.0 Flash Drives. My device is a quite unique, where the with the chainloader u-boot.ext the best option to boot up is SD Card or : Manjaro arm on Amlogic Tv box? - #748 by JFL

Just to give a complete picture of the “for_linux-vim-5101.tar u-boot.ext” ability to boot up on Beelink GT King Pro.

  1. Boot image on SD Card, it can boot up successfully with USB Flash or USB HDD connected to other USB 3.0 port.
  2. Boot image on USB Flash drive, it can only boot up successfully if USB Flash Boot image inserted on USB OTG port but without any other USB drive connected to any of the USB 3.0 ports.
  3. Boot image on USB Flash inserted on a USB 3.0 Hub and the USB 3.0 Hub connected to any of the USB 3.0 ports but No other USB drive connected any of the other USB ports. With this method, the USB Flash image drive will heat up fast on the USB 3.0 Hub.
  4. Boot image on USB Flash drive, it will NOT boot up if it is inserted into any of the USB 3.0 directly.
  5. Boot image on USB Flash drive, it will not boot up even if inserted on USB 3.0 Hub and USB 3.0 Hub connected to USB OTG port. Infinite Boot Loop.

So far the SD Card and USB 3.0 Flash Drive is reasoanbly fast but I suppose is not as fast as on emmc or SSD.

Similar but I have “boot.ini”. Interesting your device can boot up without “boot.ini”? We are using the same chainloader u-boot.ext.

The boot.ini is for odriod-n2 … so I deleted it … :grinning:
ODROIDN2-UBOOT-CONFIG
#ODROIDC2-UBOOT-CONFIG
if test “${devtype}” = “”; then setenv devtype “mmc”; fi
if fatload ${devtype} ${devnum} 0x1000000 u-boot.ext; then go 0x1000000; fi;

My box start from USB3-port with in this order:

  1. boot.ext
  2. aml_autoscript
    (2. aml_autoscript.zip) empty file
  3. s905_autoscript
  4. extlinux.conf
    4.1 initramfs-linux.img
    4.2 Image
    4.3 meson-sm1-x96-max-plus-100-vim2.dtb
  5. starting kernel
1 Like

@JFL wow, I would say not bad :grinning: :grinning: :grinning:

<pre>[tiber@X96AIRP3 ~]$ glmark2
=======================================================
    glmark2 2021.02
=======================================================
    OpenGL Information
    GL_VENDOR:     Panfrost
    GL_RENDERER:   Mali G31 (Panfrost)
    GL_VERSION:    3.1 Mesa 21.2.0-devel (git-17d7b0bb8f)
=======================================================
[build] use-vbo=false: FPS: 159 FrameTime: 6.289 ms
[build] use-vbo=true: FPS: 157 FrameTime: 6.369 ms
[texture] texture-filter=nearest: FPS: 283 FrameTime: 3.534 ms
[texture] texture-filter=linear: FPS: 291 FrameTime: 3.436 ms
[texture] texture-filter=mipmap: FPS: 293 FrameTime: 3.413 ms
[shading] shading=gouraud: FPS: 125 FrameTime: 8.000 ms
[shading] shading=blinn-phong-inf: FPS: 115 FrameTime: 8.696 ms
[shading] shading=phong: FPS: 101 FrameTime: 9.901 ms
[shading] shading=cel: FPS: 88 FrameTime: 11.364 ms
[bump] bump-render=high-poly: FPS: 47 FrameTime: 21.277 ms
[bump] bump-render=normals: FPS: 265 FrameTime: 3.774 ms
[bump] bump-render=height: FPS: 256 FrameTime: 3.906 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 176 FrameTime: 5.682 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 104 FrameTime: 9.615 ms</pre>

Thanks for the info.

Next step in optimization:
whatever the acceleration, FF and CHROMIUM are going to 100% cpuload.
FF:


CHROMIUM is doing better:

for comparition SMPlayer with recorded HD-file:

Both browsers with use hardware acceleration if available, but obviously they don’t use it. Any advices are warmly welcome :smiley:

FYI. Just installed the khadas ubuntu 20.04 lts with kernel 4.9 and sm1_s905x3_4g_1gbit.dtb (renamed to dtb.img) from last CE.
Burn my PSSD + first boot + first login to ubuntu in 15 min…

ubuntu with kernel 5.12 and meson-sm1-x96-air-1000 or something like that boots but with the well-known problems.

By the way, have you set in Firefox “about:config” and in Chromium “chrome://flags” settings for hardware acceleration? My experience at times it helps in Firefox and Chromium hardware acceleration helps a bit but not much so far. At times without hardware acceleration on Firefox or Chromium the video performance is better not necessarily in terms of CPU load but on dropped frame rates.

But if you use MPV to play the same video up to 1080p/30 hwdec=v4l2m2m-copy helps in my devices a fair bit. Example “mpv --hwdec=v4l2m2m-copy videofile”. With mpv vo=gpu alone help significantly on my device in terms of CPU usage.

FYI. Just installed the khadas ubuntu 20.04 lts with kernel 4.9 and sm1_s905x3_4g_1gbit.dtb (renamed to dtb.img) from last CE.
Burn my PSSD + first boot + first login to ubuntu in 15 min…

Try this khadas-Vim3 XFCE-4.9.24` image by @darkstar Beelink Forum. Yes, you should use the legacy dtb from CE for your device.

ubuntu with kernel 5.12 and meson-sm1-x96-air-1000 or something like that boots but with the well-known problems.

On my device LAN, Wifi, Bluetooth & Sound all working with Khadas-Vim3-5.12.0 just as I mentioned before at times kernel panic during boot up but overall runs well on Ubuntu-Wayland except Synaptic Package Manager which hog the one CPU core up 100% for awhile. So far the only Ubuntu-Wayland session that Synaptic Package Manager launch and works.

I did it and I would say FF is useless due dropped frames, but CHROMIUM with a little bit better performance:

Is the video file 60fps or 30fps? For 60 fps video sometimes without hardware acceleration plays better in terms of dropped frames.

I did it with both ubuntu & debian.
Conclusion: I will stay at Manjaro, it’s the best of all tested releases for my box! :wink: :grinning:

1 Like

Next step of optimization:
The X96AIRP3 is w/o fan cooling, so I’wd like to set the cpupower governor at persist start.
For me the governor conservative fits at best
Screenshot_2021-06-08_09-36-54

$ sudo cpupower frequency-info
analyzing CPU 0:
  driver: cpufreq-dt
  CPUs which run at the same hardware frequency: 0 1 2 3
  CPUs which need to have their frequency coordinated by software: 0 1 2 3
  maximum transition latency: 50.0 us
  hardware limits: 100.0 MHz - 1.91 GHz
  available frequency steps:  100.0 MHz, 250 MHz, 500 MHz, 667 MHz, 1000 MHz, 1.20 GHz, 1.40 GHz, 1.50 GHz, 1.61 GHz, 1.70 GHz, 1.80 GHz, 1.91 GHz
  available cpufreq governors: conservative ondemand userspace powersave performance schedutil
  current policy: frequency should be within 100.0 MHz and 1.91 GHz.
                  The governor "conservative" may decide which speed to use
                  within this range.
  current CPU frequency: 667 MHz (asserted by call to hardware)

There was discussion in an other topic @tripole and I did the

sudo systemctl enable cpupower --now

but after reboot the governor was set to performance.
I guess there must be create a service to do it on start, but how?

You can try edit the config file /etc/default/cpupower and set governor=‘conservative’ if this option is available.

1 Like

@JFL many thanks: this was it and so simple :wink:
Screenshot_2021-06-08_11-53-44

I changed a wrong .conf before…

@strit or @spikerguy
FYI. I just installed a fresh Manjaro installation:
https://github.com/manjaro-arm/vim3-images/releases/tag/20210607
and it seems that a user don"t get root-rights:
e.g.:

$ sudo cpupower frequency-info

sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set

Also with package manager, the authenfication window failed and closed.
User root works and I tried to set the user again as admin. Didn’t work.

Yeah, the latest dev images have an error with sudo. SHould be fixed with next dev image.

1 Like

Hi @Tiber,
I tried without the “boot.ini” (renamed it to boot.ini_backup), it does boot with mainline linux 5.12.9-1. Interesting. I thought it is the code that covert it to use the chainloader u-boot.ext to boot. Well it looks like in aml_autoscript and s905_autoscript already taken care of that.

if fatload ${devtype} ${devnum} 0x1000000 u-boot.ext; then go 0x1000000; fi;

s.a.

Whole start sequence:

Start up routine looks similar on my device with or without boot.ini. Thanks.

I tried out linux-vim 5.12.9-1 few hours ago and it still giving kernel panic on my device. While trying to reinstall the mainline linux 5.12.8-1, kernel panic strike during creation of new image. It corrupted the drive, rendering it not bootable anymore.

So this round wanted to try out Manjaro KDE Plasma-Wayland. Burned Manjaro-KDE 21.04 but I don’t seem to be able to find on the Greeter Login Screen the option to login to Plasma-Wayland (previously, on the Greeter Screen there is an option either to Login as Plasma Wayland or Plasma) now. May be missing on the config file. I am not familiar with KDE Plasma. Any idea how to start up KDE Plasma-Wayland?

I notice in KDE Plasma-Xorg/X11 with Panfrost enabled the glmark2-es2 score 326 is much lower than running on XFCE score 495.

I did some tests with my installation:


I stressed the CPU to 100% (s-tui) while glmark2 ist doing its job parallel. I would say a good result for my X96AIR and Mali G31… :grinning:

Your question regarding KDE Plasma can be answered in several minutes, I’m just downloading the Manjaro arm image…

I’m back on KDE Plasma:

[tiber@X96AIRP3 ~]$ inxi -Fxzi
System:    Kernel: 5.12.1-1-MANJARO-ARM aarch64 bits: 64 compiler: gcc v: 10.2.0 Desktop: KDE Plasma 5.21.5 
           Distro: Manjaro ARM base: Arch Linux 
Machine:   Type: ARM Device System: SEI Robotics SEI610 details: N/A 
CPU:       Info: Quad Core model: N/A variant: cortex-a55 bits: 64 type: MCP arch: ARMv8 rev: 0 
           features: Use -f option to see features bogomips: 0 
           Speed: 1908 MHz min/max: 100/1908 MHz Core speeds (MHz): 1: 1908 2: 1908 3: 1908 4: 1908 
Graphics:  Device-1: meson-g12a-vpu driver: meson_drm v: N/A bus-ID: N/A 
           Device-2: meson-g12a-mali driver: panfrost v: kernel bus-ID: N/A 
           Device-3: meson-g12a-dw-hdmi driver: meson_dw_hdmi v: N/A bus-ID: N/A 
           Display: x11 server: X.org 1.20.11 driver: loaded: modesetting resolution: <missing: xdpyinfo> 
           OpenGL: renderer: llvmpipe (LLVM 11.1.0 128 bits) v: 4.5 Mesa 21.1.0 direct render: Yes 
Audio:     Device-1: meson-g12a-dw-hdmi driver: meson_dw_hdmi bus-ID: N/A 
           Device-2: axg-sound-card driver: axg_sound_card bus-ID: N/A 
           Sound Server-1: ALSA v: k5.12.1-1-MANJARO-ARM running: yes 
           Sound Server-2: JACK v: 0.125.0 running: no 
           Sound Server-3: PulseAudio v: 14.2 running: no 
           Sound Server-4: PipeWire v: 0.3.27 running: yes 
Network:   Device-1: meson-axg-dwmac driver: meson8b_dwmac v: N/A port: N/A bus-ID: N/A 
           IF: eth0 state: up speed: 100 Mbps duplex: full mac: <filter> 
           IP v4: <filter> type: dynamic noprefixroute scope: global 
           IP v6: <filter> type: dynamic noprefixroute scope: global 
           IP v6: <filter> type: noprefixroute scope: link 
           Device-2: pwm-clock driver: pwm_clock v: N/A port: N/A bus-ID: N/A 
           IF-ID-1: ip6tnl0 state: down mac: <filter> 
           WAN IP: <filter> 
Bluetooth: Device-1: meson-gx-uart driver: meson_uart bus-ID: N/A 
           Report: rfkill ID: hci0 rfk-id: 0 state: up address: see --recommends 
Drives:    Local Storage: total: 170.03 GiB used: 4.37 GiB (2.6%) 
           ID-1: /dev/mmcblk2 vendor: Samsung model: CJNB4R size: 58.24 GiB 
           ID-2: /dev/sda type: USB model: SSD 120GB size: 111.79 GiB 
Partition: ID-1: / size: 109.76 GiB used: 4.3 GiB (3.9%) fs: ext4 dev: /dev/sda2 
           ID-2: /boot size: 213.4 MiB used: 69.4 MiB (32.5%) fs: vfat dev: /dev/sda1 
Swap:      ID-1: swap-1 type: zram size: 5.53 GiB used: 0 KiB (0.0%) dev: /dev/zram0 
Sensors:   System Temperatures: cpu: 69.5 C mobo: N/A 
           Fan Speeds (RPM): N/A 
Info:      Processes: 182 Uptime: 8m Memory: 3.69 GiB used: 1.4 GiB (37.9%) Init: systemd Compilers: gcc: N/A 
           Packages: 690 Shell: Bash v: 5.1.8 inxi: 3.3.04 

There is no selection nor wayland on the greeting login. Wayland is far far far away…
The package manager shows portions of installed wayland parts.