Manually Install Manjaro ARM can not boot

Hi, I just bought a phytium D2000 platform which supports the aarch64.

I firstly installed the fedora arm without issues: Just followed the instruction and go ahead,
it boots up correctly.

And then, I tried to install the ArchLinuxARM, I used the Manjaro latest stable minimal live image to manually install the ALARM, it boots up fine too.
But the package quality of manjaro on the ARM arch seems better than the ALARM such as fcitx.

So, I tried to install the Manjaro on it.

I made a graphical live image at first.
but it cannot enter the graphic decktop, and once it booted, it cannot boot up from that live image anymore.

So, I tried to use the minimal image to install.
It boots up and showed the Terminal UI of install steps. I followed these steps and rebooted this machine.
But it cannot boot up anymore (cannot enter this UEFI boot option)

Then, I tried to install Manjaro manually (like the installation steps of ArchLinux)
I used steps like below:

loadkeys colemak
fdisk /dev/nvme0n1 (created two parts, one for UEFI, another for btrfs)
mkfs.fat -F 32 /dev/nvme0n1p1
mkfs.btrfs -L Manjaro /dev/nvme0n1p2
mkdir /btrfs
mount /dev/nvme0n1p2 /btrfs
btrfs subvolume create /btrfs/subvol_root
btrfs subvolume create /btrfs/subvol_home
mount -o subvol=subvol_root,compress=zstd,discard=async /dev/nvme0n1p2 /mnt
mount --mkdir -o subvol=subvol_home,compress=zstd,discard=async /dev/nvme0n1p2 /mnt/home
mount --mkdir /dev/nvme0n1p1 /mnt/boot
pacstrap -K /mnt base linux linux-firmware nano man btrfs-progs grub efibootmgr networkmanager
genfstab -U /mnt >> /mnt/etc/fstab
arch-chroot /mnt
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc
(configered the locale)
(configered the hostname)
grub-install --target=arm64-efi --efi-directory=/boot --bootloader-id=GRUB
grub-mkconfig -o /boot/grub/grub.cfg
(Ctrl+D to exit)

Any then It booted into the GRUB and showed the boot option of Manjaro ARM Linux, and boot into it, and it just stucked at blank screen with one mark on the left top of the screen. I tried to use Ctrl + Alt + F2, F3... to switch session, but nothing happened.

Any idea about that?
THX for your help :slight_smile:

If I were you would try the generic arm image and boot with EFI-STUB.

yeap, I will try that. and I am using the generic EFI arm image and boot with GRUB.

I know it is an issue with efi stub not loading the kernel from rootfs as it needs the kernel and initramd to be in the efi partition.

I faced the same issue on a vm. I used generic image with startup.nsh script instead of efi.

I will make a new generic image with startup.nsh and share it with you so you can give it a try.

Btw I just read that you’re using btrfs which might not boot cause of the same reason mentioned above.

Efi stub expect files to be present on the boot partition and not the root partition’s /boot directory.