Manjaro ARM for the VIM3

First of all, thank you all for your great work!
Manjaro on my VIM3 is superfast, no green screen problem, but:

  1. After doing full packages update system never boots again, had to reinstall from krescue SD.
    This problem caused by ¨boot-vim1¨ package.
    –> solved by adding ¨IgnorePkg = ¨boot-vim1¨ to pacman.conf

  2. sound over ALSA is working on 5.5.1-1 after removing pulseaudio and
    setting mixer:

Amlogic G12 HDMI to PCM0

mixer $card ‘FRDDR_A SINK 1 SEL’ ‘OUT 1’
mixer $card ‘FRDDR_A SRC 1 EN’ on
mixer $card ‘TDMOUT_B SRC SEL’ ‘IN 0’
mixer $card ‘TOHDMITX I2S SRC’ ‘I2S B’
mixer $card ‘TOHDMITX’ on

  1. cannot find 5.6.0-rc4 kernel even after switching to unstable.

Thank you, guys

1 Like

How did you get boot-vim1 in the first place. This is for vim1. I am still not sure how did you get that package maybe I should add each other in conflict so next time only 1 can be installed on a device.
Thank you for reporting.

Yes pulseaudio still have conflict with audio nods in kernel.
Setting is already available in khadas-utlis package it’s run on every boot.

Yes looks like it was discarded when snapping from unstable to stable.

I will look into this tomorrow and update it back to unstable and by the month end it will be available in stable.

Pleass try and let me know. You should have 5.6.0-rc4

Once again thanks for reporting everything in details, this gives me clear view of what’s causing it not to boot after the update, as I have not got time to test the img on vim3 as i have to take a backup and its time consuming.

1 Like

Thank you very much for reply.

  1. boot-vim1 is the only boot-vim package installed on my VIM3 after burning image [VIMx.Manjaro.linux.xfce.test.emmc.kresq] with krescue.
    boot-vim3 package is not installed by default. I was also confused, why vim1 package is installed on my VIM3.
    but after install my /boot dir contains only u-boot.VIM3* files (no VIM1)

and /boot/uboot.env contains fdtfile=amlogic/meson-g12b-a311d-khadas-vim3.dtb.

Until packages update is performed, system boots OK. After doing full package update, my VIM3 did not boot anymore and I had to burn the image again. I reproduced this behaviour three times. After inspecting list of packages for update i noticed the boot-vim1 package and did packages update without boot-vim1 package and after restart system boots correctly.
So it seems that only updating the boot-vim1 caused the problem. I will try to remove boot-vim1 and install boot-vim3

Thank you

btw. have a look at the description of boot-vim1 package: ** Required boot files for Khadas VIM 3**. looks strange

yes ! this testing krescue image for manjaro and can have some problems like this - will fixed on next build :wink:

Thank you for this Information. This means @hyphop is using my vim1 img on vim3 after changing its uenv which is not a right method.

This way users are using fbturbo driver instead of llvmpipe.

@hyphop please remove the vim3 krescue img so other users don’t get confused. This is not a good practice, this leads in frustrated/annoyed customers.

Also don’t make any manual changes to the boot files as Manjaro is a rolling release and the manual changes can either not let them upgrade or break the system after upgrade.

My imgs are stable releases and we don’t have any problem, manual changes are leading to this issues. Please remove the file temporarily until stable version is released or rename is to testing or alpha img.

Thanks.

krescue image can be universal and can have common base and overlays for every specific boads if necessery - same possible make special image for each boards but its not elegant

we have only two universal images like a demo and tests its not fully complited !!! VIMx - means universal for VIM1 VIM2 VIM3 VIM3L

  • VIMx.Manjaro.linux.kde.plasma.test.emmc.kresq
  • VIMx.Manjaro.linux.xfce.test.emmc.kresq

if anybody can maintain and improve manjaro-krescue image wellcome - initial project (scripts sample tools ) there

PS: @Spikerguy u was noticed about this one month ago :wink:

Vim 1, 2 and 3 do know follow common base anymore since the release of lima and panfrost so we handle the configuration accordingly to the boards soc and capacity.

Having a universal image for a rolling release is not possible as users like to update it time to time.

Thanks for this. I will look into this once I get time. Till then can you have a separate vim1 and vim3 img as per the img file I shared with you?

i think somebody still didn’t understand :wink: - krescue image can be universal and on same time write different content to emmc storage depend from specific device ( different content its bootloader and some specific packages … other content still same ) u can write right rules for krescue installation and can make cool installation images :wink: without usage extra images for every boards

PS: sure :wink: if content for every boards cardinally different - best chose is separate images

I know what you’re saying. This is also called building scripts. But you cannot make changes to packages until you have arch linux and use pacman.
You can write script to handle changes to each device but that’s will get overwritten once the package is updated so manual work will be lost after the update which will lead to system failure :frowning:
We also use a universal script with individual device and desktop profiles. But as your script is just manual changes to the files it can handle manipulation in files easily which is only good for one time installed os which does not update the boot content and are prone to future security flaws. Maybe we will have to use your script on arch based distro to make krescue img.
I appreciate your work though. You cannot maintain 1 universal image until you use our packaging methods in krescue, I can give you package names which are needed for individual devices to boot properly.

For boot scripts
boot-vim1, boot-vim2 and boot-vim3 for vim1, vim2 and vim2 respectively.

As for the krescue script you will have to install these packages and not just replace the content of this package.
Rolling release distro’s don’t do manual manipulation of contents instead handle’s content with the help of packages.

Yes the packages are different which is used for future updates in a rolling release distro’s.

I hope this clears your doubt.
Thanks.

I suggest to hyphop to give up momentarily in building kresq images for raspbian, corelec, libreelec and manjaro. please focus more on ubuntu and debian which are the distros built from source code by khadas’ own fenix scripts

sure ! fenix is main priority :wink: for example fenix already have initial debian buster support ! next is krescue integration

PS: building kresq images for raspbian, corelec, libreelec and manjaro its like a example and demonstration easy installation way for other distros developers !

Keep Manjaro on VIM alive, please.
You allready did great work on it.

I tried to remove boot-vim1 and installed boot-vim3 package.
System booted into rescue shell, because it could not mount new ROOT.
Problem was /boot/uEnv.ini bootargs=root=LABEL=ROOT_MNJRO instead of LABEL=ROOT, which was actual label of /dev/mmcblk2p2
So I mounted boot partition, corrected uEnv.ini LABEL=ROOT -> booted but in low resolution
added video=HDMI-A-1:1920x1080@60e to uEnv.ini
Now booting OK

I can test your modifications, but I have not enough knowledge to correct it alone. I am orthopaedic surgeon not IT guy, sorry
Thanks

Manjaro is Build and maintained by Manjaro ARM Team for Khadas Devices thanks to Khadas for sending the sample devices.
We will continue working on Khadas devices, Only krescue image is created by @hyphop Thanks to him for that.

This is a new partition structure which was recently introduced and the existing img’s are old, Also we have a package to automatically correct the LABEL in the uEnv.

Stay connected to the forum here or join Manjaro forum and you will get package updates and required knowledge.

I had planned and tested emmc installer which fails coz of green screen issue, as it depends on the uboot installed on emmc. In future we will test a fresh uboot to be flash on emmc so we dont have any dependencies on the emmc uboot.

Update:

This happened because boot-vim3 was freshly installed and the new package have ROOT_MNJRO as the label, We have provisioned to correct this on old installations to ignore this on update.

@Martin_B Can you share some information for me to debug your installation.
Please share the output of this command
inxi -Fzxi

Thanks.

1 Like

Of course…

System: Host: manjaro-arm Kernel: 5.5.1-1 aarch64 bits: 64 compiler: gcc v: 9.2.0 Desktop: Xfce 4.14.2
Distro: Manjaro ARM
Machine: Type: ARM Device System: Khadas VIM3 details: N/A
CPU: Topology: 6-Core (2-Die) model: ARMv8 v8l variant-1: cortex-a73 variant-2: cortex-a53 bits: 64
type: MCP MCM arch: v8l rev: 4
features: Use -f option to see features bogomips: 0
Speed: 250 MHz min/max: 100/1800:2208 MHz Core speeds (MHz): 1: 100 2: 100 3: 1200 4: 1200 5: 1200
6: 1200
Graphics: Device-1: meson-g12a-mali driver: N/A bus ID: N/A
Device-2: meson-g12a-dw-hdmi driver: meson_dw_hdmi v: N/A bus ID: N/A
Display: x11 server: X.org 1.20.7 driver: modesetting resolution:
OpenGL: renderer: llvmpipe (LLVM 9.0.1 128 bits) v: 3.3 Mesa 20.0.2 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: ALSA v: k5.5.1-1
Network: Device-1: meson-axg-dwmac driver: meson8b_dwmac v: N/A port: N/A bus ID: N/A
IF: eth0 state: up speed: 1000 Mbps duplex: full mac:
IP v4: type: dynamic noprefixroute scope: global
IP v6: type: noprefixroute scope: link
Device-2: pwm-clock driver: pwm_clock v: N/A port: N/A bus ID: N/A
WAN IP:
Drives: Local Storage: total: 29.12 GiB used: 6.10 GiB (21.0%)
ID-1: /dev/mmcblk2 model: BJTD4R size: 29.12 GiB
Partition: ID-1: / size: 28.38 GiB used: 6.06 GiB (21.4%) fs: ext4 dev: /dev/mmcblk2p2
ID-2: /boot size: 213.4 MiB used: 38.3 MiB (18.0%) fs: vfat dev: /dev/mmcblk2p1
Sensors: Message: No sensors data was found. Is sensors configured?
Info: Processes: 194 Uptime: 2h 23m Memory: 3.66 GiB used: 1.30 GiB (35.4%) Init: systemd Compilers: gcc: 9.2.0
Shell: bash v: 5.0.16 inxi: 3.0.37

Thank you for the information.

This explains that your making some use of panfrost which is a good thing.

Looks good to me. Enjoy your device with Manjaro. If you have any question in future then feel free to tag me in your post.

Cheers.

Thank you very much for your help

Panfrost does not (yet) support Bifrost hardware so you mean mali_kbase (and blob).

1 Like

This is a good news for aml device users.
https://www.phoronix.com/scan.php?page=news_item&px=Linux-5.7-Media-Updates

Can’t wait for bifrost support in panfrost. :star_struck:

1 Like

NB: The “HEVC” code that was merged for Linux 5.7 is some common code shared between the VP9 and HEVC drivers. VP9 is now merged. HEVC is still in development. The commit messages for the common code are misleading unless you kmow the details.

3 Likes