Manjaro ARM for Odroid N2

mxmilkb
Posts: 61
Joined: Fri Apr 26, 2019 9:28 am
languages_spoken: English
ODROIDs: N2
Has thanked: 21 times
Been thanked: 19 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by mxmilkb » Sat Feb 29, 2020 5:08 am

Thanks. I see the repo but where might those patches be at? A request can be made in to get the Manjaro ARM linux-aarch64 patched.

Sav
Posts: 182
Joined: Mon Sep 02, 2019 2:33 am
languages_spoken: english
ODROIDs: odroid-n2
Has thanked: 31 times
Been thanked: 13 times
Contact:

Manjaro ARM for Odroid N2

Unread post by Sav » Sat Feb 29, 2020 7:42 am

Sorry I was wrong: the latest kernel version with sound support is 5.3. In 5.4 there is a workaround. Check the thread about the mainline development and the other titled "demistifing ....".
Sorry on Tapatalk I don't know how to link to other posts.


Inviato dal mio iPad utilizzando Tapatalk
These users thanked the author Sav for the post:
mxmilkb (Sat Feb 29, 2020 8:40 am)

MajesticMagistrate
Posts: 16
Joined: Fri Feb 21, 2020 8:22 am
languages_spoken: english, hungarian
ODROIDs: ODROID N2
Has thanked: 0
Been thanked: 3 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by MajesticMagistrate » Sun Mar 01, 2020 6:50 am

Alright, I think I found why Manjaro wouldn't boot from SD Card, and I don't know why I didn't notice it earlier, I even remember testing it out, but failing - there's a typo in the provided bootargs:

Code: Select all

setenv bootargs "root=/dev/mmcblk${devno}p2 rootwait rw ${condev} ${amlogic} no_console_suspend fsck.repair=yes net.ifnames=0 clk_ignore_unuse bootsplash.bootfile=bootsplash-themes/manjaro/bootsplash
d"
The d" part in the new line belonged to clk_ignore_unused, so the correct bootargs line is:

Code: Select all

setenv bootargs "root=/dev/mmcblk${devno}p2 rootwait rw ${condev} ${amlogic} no_console_suspend fsck.repair=yes net.ifnames=0 clk_ignore_unused bootsplash.bootfile=bootsplash-themes/manjaro/bootsplash"
Replacing the bootargs should make Manjaro boot on SD Cards as well, but now I am wondering why does it work on eMMC then.
NOTE: It still only boots when the little switch on my N2 is set to NOT use petitboot.

(I admit I did a little too much "workaroundings" before with replacing the provided kernels, and etc., when the simple solution was in the bootargs)

mxmilkb
Posts: 61
Joined: Fri Apr 26, 2019 9:28 am
languages_spoken: English
ODROIDs: N2
Has thanked: 21 times
Been thanked: 19 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by mxmilkb » Sun Mar 01, 2020 8:09 am

"<Strit[m]> Already tried those changes locally. Did not fix SD boot."

MajesticMagistrate
Posts: 16
Joined: Fri Feb 21, 2020 8:22 am
languages_spoken: english, hungarian
ODROIDs: ODROID N2
Has thanked: 0
Been thanked: 3 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by MajesticMagistrate » Sun Mar 01, 2020 8:26 am

That was the only line I changed, and if I switch it back, it does not boot. Today I've reflashed my sd card with the manjaro arm installer, and got a newer, 5.5.6 kernel instead of the 5.5.4 one I was trying earlier, maybe this also matters - and also not using petitboot.
These users thanked the author MajesticMagistrate for the post:
odroidn2user (Sun Mar 01, 2020 11:09 pm)

jgmdev
Posts: 25
Joined: Tue Jan 28, 2020 2:28 pm
languages_spoken: english, spanish
ODROIDs: U2, N2
Has thanked: 9 times
Been thanked: 5 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by jgmdev » Sun Mar 01, 2020 11:53 am

mxmilkb wrote:
Sun Mar 01, 2020 8:09 am
Already tried those changes locally. Did not fix SD boot.
The problem with spiboot is not booting, the system boots but in many displays it stays black (at least that is my experience), giving the impression that the system didn't boot... It seems the code that does the kexec is doing something wrong trying to reinitialize the display (for some displays disabling display_autodetect option works for others not), meanwhile the spi image boots perfectly but when it launches the second kernel from emmc/sd/usb the display hangs depending on your model which sucks... I got a hdmi to vga converter and that seems to be more compatible with different displays than using direct HDMI connection on SPI mode, the problem with this method on 4.9 kernel is you get image noise... Meanwhile on the mainline kernels (5.x) booting with a hdmi to vga converter works much better (no image noise) and unlike v4.9 it even detects the different supported display resolutions. Booting without SPI always works on any display, so again the issue may be on the spi code that initializes the boot process to another kernel using kexec, maybe the second kernel does another initialization of the display that breaks something... Now that I'm writing about this I remembered a kernel flag named "keep" which should keep the resolution of the display intact as set by the boot loader (in this case SPI), I will try to play with that :D

Also I have played around with kernel 5.4, 5.5 and 5.6RC on ArchLinux, but the experience with the cpu scheduler isn't good yet, sometimes it works and others it doesn't... Also if you plan on running arm32 applications on a aarch64 install you need a mainline kernel with CONFIG_COMPAT enabled. I took the linux-aarch64-rc (5.6RC3) kernel PKGBUILD and enabled 32bit arm support https://aur.archlinux.org/packages/linu ... rc-32bits/ One of the archlinuxarm maintainers didn't wanted to include this change directly on the linux-aarch64-rc package because some arm64 boards supposedly doesn't support this instructions set so compiling from AUR is needed.
These users thanked the author jgmdev for the post:
odroidn2user (Sun Mar 01, 2020 11:12 pm)

jgmdev
Posts: 25
Joined: Tue Jan 28, 2020 2:28 pm
languages_spoken: english, spanish
ODROIDs: U2, N2
Has thanked: 9 times
Been thanked: 5 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by jgmdev » Sun Mar 01, 2020 2:21 pm

Tested with Kernel parameters "keep" and "nomodeset" but no luck... petitboot is doing something that not all displays like :( I guess the best option is not using spi for boot and instead use the sd card as a boot selector by modifying the boot files on it and pointing boot.ini to the right root device, and just use SPI petitboot as a recovery console where you can access connected devices and modify boot files if something goes wrong. Also non-spi boot is way faster... I guess at least on Arch maybe one can write a hook into /usr/share/libalpm/hooks/ that updates the SD card boot files each time a kernel update is performed or just mount the sd on /etc/fstab to /boot, but it would be a good idea to keep both boot partitions updated...

While writing this I wrote the following hook based on 91-uboot-uimg.hook which seems to do the trick but rsync needs to be installed and the sd card boot paritition set to mount on the /etc/fstab of the root partition:

92-sdboot-update.hook

Code: Select all

[Trigger]
Type = File
Operation = Install
Operation = Upgrade
Target = boot/Image
Target = usr/lib/initcpio/*

[Action]
Description = Updating sd card boot partition...
When = PostTransaction
Exec = /usr/bin/rsync -a --delete /boot/ /mnt/sd_boot

odroidn2user
Posts: 162
Joined: Fri Oct 25, 2019 4:14 pm
languages_spoken: english
ODROIDs: N2
Has thanked: 29 times
Been thanked: 30 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by odroidn2user » Sun Mar 01, 2020 11:09 pm

MajesticMagistrate wrote:
Sun Mar 01, 2020 8:26 am
That was the only line I changed, and if I switch it back, it does not boot. Today I've reflashed my sd card with the manjaro arm installer, and got a newer, 5.5.6 kernel instead of the 5.5.4 one I was trying earlier, maybe this also matters - and also not using petitboot.
Hiya MajesticMagistrate! Thanks for your posting.
When you correct the boot.ini it does indeed work.
I can confirm this as a solution for that problem.

It should read:

Code: Select all

setenv bootargs "root=/dev/mmcblk${devno}p2 rootwait rw ${condev} ${amlogic} no_console_suspend fsck.repair=yes net.ifnames=0 clk_ignore_unused bootsplash.bootfile=bootsplash-themes/manjaro/bootsplash" 
All on one line, no lines with just: d"
It boots normally from the uSD card after that. With a nice bootsplash.
Easy fix.
Still no audio and no graphics acceleration though, as we'd expect give the state of mainline kernel now.

odroidn2user
Posts: 162
Joined: Fri Oct 25, 2019 4:14 pm
languages_spoken: english
ODROIDs: N2
Has thanked: 29 times
Been thanked: 30 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by odroidn2user » Sun Mar 01, 2020 11:16 pm

jgmdev wrote:
Sun Mar 01, 2020 11:53 am
It seems the code that does the kexec is doing something wrong trying to reinitialize the display (for some displays disabling display_autodetect option works for others not), meanwhile the spi image boots perfectly but when it launches the second kernel from emmc/sd/usb the display hangs depending on your model which sucks...
---8<--
Now that I'm writing about this I remembered a kernel flag named "keep" which should keep the resolution of the display intact as set by the boot loader (in this case SPI), I will try to play with that :D
Yeah, good diagnosis.
There is indeed a weird thing going on with the graphics settings / detecting in Petitboot. Would be awesome if that could be fixed!
I like the idea of petitboot: boot into a menu, scan for images / installation as boot options, show them as options to boot into, select, boot.
The execution is quite difficult, it appears. Experience quite a few issues myself with it. It just doesn't work well for me. But it does work, somewhat.
I find that turning off my monitor and turning it back on also seems to reset things, which in some situations gives me a working hdmi connection after the boot.
I wonder why we can't just use Grub or something, but OK.

I like your idea of configuring a uSD card and using that as boot menu.

jgmdev
Posts: 25
Joined: Tue Jan 28, 2020 2:28 pm
languages_spoken: english, spanish
ODROIDs: U2, N2
Has thanked: 9 times
Been thanked: 5 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by jgmdev » Mon Mar 02, 2020 6:00 am

odroidn2user wrote:
Sun Mar 01, 2020 11:16 pm
I like your idea of configuring a uSD card and using that as boot menu.
Maybe a small shellscript can be written that detects devices with a linux installation and copy boot files to sd and generate a proper boot.ini depending on kernel.

m8kbv
Posts: 48
Joined: Thu Nov 14, 2019 6:27 pm
languages_spoken: English
ODROIDs: 2x Odroid N2 4GB
Odroid Go Advance
Location: Poland
Has thanked: 13 times
Been thanked: 1 time
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by m8kbv » Fri Mar 13, 2020 6:47 am

I have a question that deviates from the topic:
At Manjaro we have something like AUR packages, how do I install the package of my choice? (I want to install teamviewer but there are many more interesting programs). After trying to install, I get information:
"Error: teamviewer is not available for the" aarch64 "architecture.
If they can't be installed, what's the option of adding Aur packages?

odroidn2user
Posts: 162
Joined: Fri Oct 25, 2019 4:14 pm
languages_spoken: english
ODROIDs: N2
Has thanked: 29 times
Been thanked: 30 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by odroidn2user » Tue Mar 17, 2020 3:39 am

m8kbv wrote:
Fri Mar 13, 2020 6:47 am
I have a question that deviates from the topic:
At Manjaro we have something like AUR packages, how do I install the package of my choice? (I want to install teamviewer but there are many more interesting programs). After trying to install, I get information:
"Error: teamviewer is not available for the" aarch64 "architecture.
If they can't be installed, what's the option of adding Aur packages?
You can add AUR as a source in the software installer, at least, that's how it work on x86 Manjaro.
It's in the add/remove software, in the ... menu, something called like preferences. There in a tab AUR you switch it on.

But I highly doubt, teamviewer in AUR will work on Manjaro ARM. Teamviewer is very likely just for x86. You'll have to look at alternatives...

m8kbv
Posts: 48
Joined: Thu Nov 14, 2019 6:27 pm
languages_spoken: English
ODROIDs: 2x Odroid N2 4GB
Odroid Go Advance
Location: Poland
Has thanked: 13 times
Been thanked: 1 time
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by m8kbv » Tue Mar 17, 2020 5:11 am

odroidn2user wrote:
Tue Mar 17, 2020 3:39 am
m8kbv wrote:
Fri Mar 13, 2020 6:47 am
I have a question that deviates from the topic:
At Manjaro we have something like AUR packages, how do I install the package of my choice? (I want to install teamviewer but there are many more interesting programs). After trying to install, I get information:
"Error: teamviewer is not available for the" aarch64 "architecture.
If they can't be installed, what's the option of adding Aur packages?
You can add AUR as a source in the software installer, at least, that's how it work on x86 Manjaro.
It's in the add/remove software, in the ... menu, something called like preferences. There in a tab AUR you switch it on.

But I highly doubt, teamviewer in AUR will work on Manjaro ARM. Teamviewer is very likely just for x86. You'll have to look at alternatives...
Yes, I have marked "enable aur support", thanks to which I have many "teamviewer" packages, but clicking "build" causes me to get the message "error: teamviewer is not available for the" aarch64 "architecture".
So why is it possible to mark AUR packages if you can't use them?
I didn't find alternatives to arm, no anydesk, teamviewer. I don't know other people who can connect so easily from outside the local network.

Sav
Posts: 182
Joined: Mon Sep 02, 2019 2:33 am
languages_spoken: english
ODROIDs: odroid-n2
Has thanked: 31 times
Been thanked: 13 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by Sav » Tue Mar 17, 2020 4:54 pm

Have you tried vnc?

odroidn2user
Posts: 162
Joined: Fri Oct 25, 2019 4:14 pm
languages_spoken: english
ODROIDs: N2
Has thanked: 29 times
Been thanked: 30 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by odroidn2user » Wed Mar 18, 2020 12:23 am

m8kbv wrote:
Tue Mar 17, 2020 5:11 am
Yes, I have marked "enable aur support", thanks to which I have many "teamviewer" packages, but clicking "build" causes me to get the message "error: teamviewer is not available for the" aarch64 "architecture".
So why is it possible to mark AUR packages if you can't use them?
I didn't find alternatives to arm, no anydesk, teamviewer. I don't know other people who can connect so easily from outside the local network.
Yeah, closed source solutions aren't a blessing. Open source is better.

And indeed, there are a couple of VNC alternatives, there is SSH, distro specific remote desktop sharing like on ubuntu, XRDP, X2Go, Guacamole....
Perhaps Jitsi / Jitsi Meet does some desktop sharing as well? Might be a nice solution!
Perhaps even Chrome Remote Desktop works on Chromium as well? Not sure.
You'd probably look at something like openVPN to secure things.
Last edited by odroidn2user on Thu Mar 26, 2020 4:17 am, edited 1 time in total.

odroidn2user
Posts: 162
Joined: Fri Oct 25, 2019 4:14 pm
languages_spoken: english
ODROIDs: N2
Has thanked: 29 times
Been thanked: 30 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by odroidn2user » Wed Mar 25, 2020 4:29 am

OK, a little status update on Manjaro ARM for the Odroid N2.

So, the 20.02 release is now working. It boots from both EMMC and SD card, when using the SPI-switch set to eMMC, using mainline kernel 5.5.8.
The Manjaro OS has seen a rough couple of updates, with the mirror and branch restructuring, but it it now in smoother waters.

The hardware support of the mainline kernel, however, isn't optimal.
No GPU support (obviously), but also no audio support, and you can't reboot or power it off.
And then there is a lot of glitches / visual flashes on screen.
I've tested two different devices, with 4 different hdmi cables on 3 different monitors. This isn't just me.

The 19.08 Manjaro release is still downloadable, and updateable, and has 4.9.177.
This is probably your best bet. The 19.08 as released does playing video files quite well, but then the updates regress is into almost unwatchable.
But otherwise 19.08 is your best bet.
https://forum.manjaro.org/t/manjaro-arm ... ased/99031

To update it, you have to update the mirrorlist, with something like:

Code: Select all

sudo pacman -U http://ftp-osl.osuosl.org/pub/manjaro-arm/repo/stable/core/aarch64/pacman-mirrorlist-20200225-1-any.pkg.tar.xz
Or whatever the current filename is (it changes with updates)
And also, perhaps first, before the above command, you have to manually update python to the most recent version:

Code: Select all

sudo pacman -U https://ftp-osl.osuosl.org/pub/manjaro-arm/repo/unstable/extra/aarch64/python-3.8.2-1-aarch64.pkg.tar.xz
With the old python the mirrors function won't work, it requires an updated python.
With these two commands, you should be able to bring a 19.08 up to date.
That all regresses the video playing a little, but works quite well otherwise.

Also, you can switch manjaro branches with "sudo pacman-mirrors -b unstable" and reconfigure your mirrors "sudo pacman-mirrors -g".
That's about all you should know to get the old and working manjaro arm up to date on the Odroid N2.

So, yeah. Manjaro ARM is pretty great, the hardware mainline support for the Odroid N2 isn't anywhere near ready.
I'll be focussing on other hardware and will check back in a couple of months when things have hopefully improved.
These users thanked the author odroidn2user for the post:
1917 (Mon Mar 30, 2020 5:44 am)

odroidn2user
Posts: 162
Joined: Fri Oct 25, 2019 4:14 pm
languages_spoken: english
ODROIDs: N2
Has thanked: 29 times
Been thanked: 30 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by odroidn2user » Mon Mar 30, 2020 8:44 pm

The Manjaro ARM mirrors have merged with Manjaro (x64) mirrors. This means all Manjaro mirrors now have Manjaro ARM packages. (!!)
That also means yet another manual intervention required with the mirrorlist:
https://forum.manjaro.org/t/another-mir ... red/132302
These users thanked the author odroidn2user for the post:
mxmilkb (Tue Mar 31, 2020 11:53 pm)

odroidn2user
Posts: 162
Joined: Fri Oct 25, 2019 4:14 pm
languages_spoken: english
ODROIDs: N2
Has thanked: 29 times
Been thanked: 30 times
Contact:

Re: Manjaro ARM for Odroid N2

Unread post by odroidn2user » Wed Apr 01, 2020 7:38 pm

Yeah, so they are not having a smooth switching to the new mirrors.
Find the latest pacman-mirrors package here:
https://manjaro.moson.eu/arm-unstable/core/aarch64/

And copy/paste the url of the package into the pacman software like this:

Code: Select all

sudo pacman -U https://manjaro.moson.eu/arm-unstable/core/aarch64/pacman-mirrors-4.16.5-1-aarch64.pkg.tar.xz
And redo the mirrors config:

Code: Select all

sudo pacman-mirrors -f
Also, if you are using a 2019 release, remember to update the Python first, using the instruction:

Code: Select all

sudo pacman -U https://ftp-osl.osuosl.org/pub/manjaro-arm/repo/stable/extra/aarch64/python-3.8.2-1-aarch64.pkg.tar.xz
More detailed instructions here:
https://forum.manjaro.org/t/another-mir ... red/132302

Post Reply

Return to “Other OS”

Who is online

Users browsing this forum: No registered users and 4 guests