I started putting together a custom Linux kernel for the ROCK Pi X.
- Is specifically tuned for Intel Silvermont processors, including Cherry Trail (Z8350)
- Is built with the newest version of GCC compiler (10.2.0)
- Is largely stripped down (tuned for embedded processors by removing server features like NUMA-awareness, only contains kernel modules for hardware components on this device, etc.)
- Is built from the latest stable Linux kernel source code to date (Linux 5.9.8)
In short, it is about as bleeding-edge as you can get and about as optimized as possible for this SBC. Based on community feedback and testing, I may add more things where sensible and as time permits.
I was able to drive a 4k display with it over HDMI, connect to my wireless router and play YouTube videos, view SBC power consumption via reading of the onboard AXP288 PMIC, launch a virtual machine (VM), etc… So, it supports most, if not all, directly embedded hardware components of the device.
You can download and install the kernel as follows:
wget https://www.cen64.com/uploads/rockpix/linux-image-5.9.8_5.9.8-1_amd64.deb wget https://www.cen64.com/uploads/rockpix/firmware-rockpix_20200907-1_amd64.deb dpkg -i linux-image-5.9.8_5.9.8-1_amd64.deb firmware-rockpix_20200907-1_amd64.deb
Known issues at this time:
- Bluetooth works, but performance is very “choppy”. If you use it for audio, it will stutter in and out, for example. Suspect firmware problem?
- [fix in progress] WLAN MAC changes often when soft rebooting the system. When the SBC is hard rebooted, it always defaults to the expected MAC address again. Suspect firmware problem? Can likely workaround by adminstratively setting the WLAN MAC using
iwif you need the MAC address to be consistent.
Reproducing builds (patches on top of prescribed kernel version from kernel.org):
- Please use kconfig from the deb. Just extract it and consume it.