From measurements it looks like 64K L2 for the A520. We’ll see soon. Developer samples are on their way
I hope to publish findings with RTL8126 prior to tuesday (then O6 is expected to arrive here).
From measurements it looks like 64K L2 for the A520. We’ll see soon. Developer samples are on their way
I hope to publish findings with RTL8126 prior to tuesday (then O6 is expected to arrive here).
Correct me if I understand the kernel wrong about the kernel:
I am curious also. Are the NPU drivers available at launch? Are there any details about the NPU?
Working with the NPU under Rockchip has been a challenge, so interested to understand how we will work with the NPU on this board. Nothing on the CIX website that I can find either.
Edit: Anyone able to share a dmesg output?
- We can run mainline kernel for example via official debian/fedora/opensuse arm64 iso
Yes, the official debian 12 image has been tested in UEFI ACPI mode.
- Drivers of vpu/gpu/npu missing in mainline kernel is installed via extra dkms packages
These drivers do not exist upstream and Cix has not started upstreaming them. So DKMS or kernel patches are needed for now.
I’ve tried installing some distributions.
(Please keep in mind that this was done using current hardware and software.)
Select “Graphical install”.
No Ethernet card was detected.
You need to install GRUB this way.
The desktop environment has started.
There are several ways to use the NIC (RTL8126), but here I will explain how to use a new kernel from backports.
apt update
apt install -t bookworm-backports linux-image-6.12.9+bpo-arm64 firmware-realtek
/etc/defaults/grub
, enable GRUB_TERMINAL=console
, and run grub-mkconfig -o /boot/grub/grub.cfg
reboot
Fedora-Workstation-41-1.4.aarch64.raw.xz
Turn on the power and wait for a while until the setup program starts.
Just configure a few items and you’re done.
Fedora-Server-dvd-aarch64-41-1.4.iso
Launch the installer.
An error will occur during the bootloader installation, but you can continue anyway.
When the installation is complete, Fedora Server will start.
So far the installation has failed:
Hi all!
I see that EDKII sources have appeared on Github, but the repo references external submodules on gitlab.vamrs.org - which doesn’t resolve for me. Any luck anyone accessing it?
Would be great to start understanding the SoC a bit more: so far the information has been pretty scarce (even with the schematics published). There are binary releases in the repo, but starting at decompiled binaries is much less fun than at sources
Linux kernel in that tarball doesn’t work. Userland in that tarball works with Linux 6.13.0 compiled by myself.
If you think it’s working, then it’s working.
EDIT:
After I updated kernel package (and others) by pacman -Syu
, I could boot latest kernel from alarm.
[alarm@alarm ~]$ uname -a
Linux alarm 6.13.0-2-aarch64-ARCH #1 SMP PREEMPT_DYNAMIC Wed Jan 22 07:01:59 MST 2025 aarch64 GNU/Linux
So I think it’s working.
looks good, cant wait to get mine asap
ubuntu failed at grub install, which is nvram related.
opensuse failed at kernel load, I guess there are missing kernel configs.
I also tried debian weekly build iso, which failed at installer when choosing keyboard.
The EFI runtime is not available, so you cannot use the RTC in ACPI mode.
I also tried the official NixOS ISO a few weeks back with 6.6 kernel and it booted into the shell. A locally built ISO with 6.12 didn’t though.
Here are the steps I took to install Arch Linux.
Prepare your favorite Linux distribution and install the necessary packages. I used Fedora Workstation.
$ sudo dnf install gdisk bsdtar
The installation destination is NVMe SSD (/dev/nvme0n1).
$ sudo gdisk /dev/nvme0n1
GPT fdisk (gdisk) version 1.0.10
Partition table scan:
MBR: not present
BSD: not present
APM: not present
GPT: not present
Creating new GPT entries in memory.
Command (? for help): n
Partition number (1-128, default 1):
First sector (34-250069646, default = 2048) or {+-}size{KMGTP}:
Last sector (2048-250069646, default = 250068991) or {+-}size{KMGTP}: +1G
Current type is 8300 (Linux filesystem)
Hex code or GUID (L to show codes, Enter = 8300): ef00
Changed type of partition to 'EFI system partition'
Command (? for help): n
Partition number (2-128, default 2):
First sector (34-250069646, default = 2099200) or {+-}size{KMGTP}:
Last sector (2099200-250069646, default = 250068991) or {+-}size{KMGTP}:
Current type is 8300 (Linux filesystem)
Hex code or GUID (L to show codes, Enter = 8300):
Changed type of partition to 'Linux filesystem'
Command (? for help): p
Disk /dev/nvme0n1: 250069680 sectors, 119.2 GiB
Model: WTPCIe-SSD-128GB
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 01F7CCA7-411D-4EC9-8D55-BFB0B08EACF1
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 250069646
Partitions will be aligned on 2048-sector boundaries
Total free space is 2669 sectors (1.3 MiB)
Number Start (sector) End (sector) Size Code Name
1 2048 2099199 1024.0 MiB EF00 EFI system partition
2 2099200 250068991 118.2 GiB 8300 Linux filesystem
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/nvme0n1.
The operation has completed successfully.
$ sudo mkfs.fat -v /dev/nvme0n1p1
$ sudo mkfs.ext4 -v /dev/nvme0n1p2
$ sudo mount /dev/nvme0n1p2 /mnt
$ sudo mkdir -p /mnt/boot
$ sudo mount /dev/nvme0n1p1 /mnt/boot
$ sudo -i
# curl -JOL http://os.archlinuxarm.org/os/ArchLinuxARM-aarch64-latest.tar.gz
# bsdtar -xpf ArchLinuxARM-aarch64-latest.tar.gz -C /mnt
# ls -l /dev/disk/by-uuid/ | grep nvme0n1p2
lrwxrwxrwx. 1 root root 15 Jan 25 23:40 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -> ../../nvme0n1p2
# echo UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx / ext4 defaults 0 1 >> /mnt/etc/fstab
# ls -l /dev/disk/by-uuid/ | grep nvme0n1p1
lrwxrwxrwx. 1 root root 15 Jan 25 23:40 XXXX-XXXX -> ../../nvme0n1p1
# echo UUID=XXXX-XXXX /boot vfat defaults 0 1 >> /mnt/etc/fstab
# echo orion-o6 > /mnt/etc/hostname
# vi /mnt/etc/pacman.d/mirrorlist
# exit
Inside the chroot environment, update packages and configure the boot loader.
$ sudo mount -t devtmpfs devtmpfs /mnt/dev
$ sudo mount -t devpts devpts /mnt/dev/pts
$ sudo mount -t proc proc /mnt/proc
$ sudo mount -t tmpfs tmpfs /mnt/run
$ sudo mount -t sysfs sysfs /mnt/sys
$ sudo rm /mnt/etc/resolv.conf
$ sudo cp /etc/resolv.conf /mnt/etc/
$ sudo chroot /mnt
# pacman-key --init
# pacman-key --populate
# pacman -Syu
# pacman -Scc
# bootctl install
# echo default arch.conf >> /boot/loader/loader.conf
# vi /boot/loader/entries/arch.conf
----
title Arch Linux
linux /Image
initrd /initramfs-linux.img
options root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx rw efi=noruntime
----
# exit
That’s all.
The Linux 6.8 kernel in Ubuntu Server 24.04.1 has an issue where it does not recognize the RTL8126. This will be resolved in the Linux 6.11 kernel in Ubuntu Server 24.04.2 (however, installation via the installer will fail).
It is possible to install Ubuntu using commands just like Arch Linux.