Custom kernel 6.16.y for Arch Linux ARM

Hi,

I’ve made a little Github repo with all needed to build a kernel wich works on uConsole.

I’ve also made binary packages ready to install.

This kernel is based on the Raspberry kernel 6.16.y.

You can give a look at : GitHub - OuinOuin74/linux-clockwork-arch: Custom Linux kernel PKGBUILD with patches, drivers, and device tree overlays for ClockworkPi uConsole (Arch Linux ARM)

It was originaly for my personnal use but if it can help someone…

PS : I think I can make a complete Arch Linux ARM image for uConsole CM4 if someone is interested.

1 Like

This is what the arch crowd has been using since 6.12.y. I’m personally a fan because it’s based on @Rex’s kernel and therefore, avoids some fragmentation and is updated frequently. I prefer to build from source to keep it bleeding edge, but @PeterCxy does update the binary if you choose to use his repo.

1 Like

you need some gentoo in your life

1 Like

Everything in moderation. I’m not sure how you could even run Gentoo on a pi. I feel like it would just be compiling all day.

1 Like

THAT’S THE SPIRIT OF GENTOO USER!!!

(if you won’t compile browser it should be okay, otherwise cross compiling is a thing)

2 Likes

Greetings from kernel 6.16.

I upgraded from 6.12.y. I downloaded the files from the release and entered the following:

# pacman -U linux-rpi-clockwork-6.16.1-1-aarch64.pkg.tar.xz linux-rpi-clockwork-headers-6.16.1-1-aarch64.pkg.tar.xz

I was prompted and chose to replace the previous linux and linux-headers providers. I verified that my /boot/config.txt had the necessary content, and after a reboot my system worked.

Thank you very much for these packages.

1 Like

Yes I mainly used Rex’s work for my kernel. But I didn’t find a 6.16.y version from him or I missed something ?

I’m glad you enjoy it ! I made an update with speakers amp switch when headphones plugged in, give a try !

No, you didn’t. And I can see that the “it’s” there in my comment is ambiguous. I was more replying to the PS for making a whole system, and the it’s I was referring to was Peter’s system. Rex’s kernel is still on 6.12.y. I was saying it’s not really necessary to build a whole system when it’s just as easy to swap out the kernel. Perhaps a more helpful comment would have been, “how about setting up a repository to host the binaries?” But I’m on week three of a new born and no sleep, so clarity isn’t my strong point right this second lol

Ah it’s clearer now, thanks ! :slightly_smiling_face:

I have 2 kids, I understand and I wish you good luck !

1 Like

Yay, bleeding edge! I do fear how long this will keep up. :saluting_face:

The Github page says you “customized” the 6.16 kernel. Does this kernel include the Binder module needed for Android/Waydroid?

Also, your /boot/config.txt does not include a parameter for kernel. As in:

kernel=vmlinuz-linux-rpi-clockwork

Am I to assume the above does not apply or is not needed?

I’m giving your kernel a try as soon as possible.

2 Likes

I’m running Gentoo on an Ivy Bridge i7 laptop from 2012 that’s about as powerful as a CM5 and as long as you stick with Falkon as the browser compilations never take more than overnight. I think Gentoo would be workable with the CM5.

I’ve made some improvements on this kernel:
update battery driver so user can now write real accus capacity in config.txt

add a small driver to cut off HP when headphones plugged in

add F2FS compression support (lz4, zstd)

2 Likes

I wasn’t able to get this to work on my system. I built from source and used the updated cmdline and config files. The screen wouldn’t power on and I had to pull the battery to reboot. Adding a kernel parameter to config didn’t help. I was able to roll back no problem. I didn’t have enough time to play with it though. B”n I’ll sit down with it this weekend and do more careful testing.

Thank you very much for the kernel. I’m now running your latest version.

It seems you also made significant changes between minor versions. Please document them thoroughly (such as when manual interventions need to be made).

I would also like to add. Your kernel seems to have broken my 5.8GHz Wi-Fi connections. May I know what version of wpa_supplicant you recommend using? I still have the version from this thread.

It’s great, I’m happy for you !

About wpa_supplicant, I just use the one Côme with Arch ARM. it works great with 2.4G wifi, I can make a try this evening with my 5.0G wifi.

I would also like to report that my display had its screen rotated to portrait. I’ve had to adjust GNOME for the right orientation. Please see the previous kernels on how they implemented the display drivers.

I’m still having a hard time getting this to boot on a CM5. I built from source editing the PKGBUILD to build a CM5 kernel. I edited the cmdline.txt and config.txt as appropriate. I no longer need to pull the battery to shut down and the screen does power on, but nothing actually prints to screen. I tried a couple config.txt parameters that peter has different in his PKGBUILD. Specifically dtparam=pciex1=off and enable_uart=0 but it did not help. It resembles almost exactly the issue I had trying to update from 6.6y to 6.12y where I had not properly updated the display driver.

iwd(8) works well for me on Linux. Here are my software versions (latest as of this week or last).

$ uname -a; iwctl -h | head -n 2 | xargs echo; /usr/lib/iwd/iwd -v
Linux laika 6.16.1-1-rpi-clockwork-v8 #1 SMP PREEMPT Wed Aug 20 18:38:28 CEST 2025 aarch64 GNU/Linux
iwctl version 3.9 
3.9

So, I’m running 2.11-3 of wpa_supplicant. And still, not all networks appeared. Worse, my wireless coverage is poor. Perhaps I’m running off the CM4’s built-in antenna. (I checked. dtparam=ant2 is present in my config.txt) May I know what firmware you are using for the Wi-Fi, as well?

I haven’t had the best experience with iwd, historically. Maybe things will change in this kernel? :crossed_fingers: