Aarch64 Port to Slackware Linux

Stuart Winter of Slackware ARM has been an all around awesome guy by giving me access to his creation in order to test it on my own systems. Stuart chose the ROCKPro64 created by Pine64 as the first targeted hardware for the new Aarch64 port. The Rock Pro 64 is a single board computer that can be used for a number of tasks. As you might have guessed, it is a 64 bit computer. It can fit into many roles. Roles such as a gateway router at a home office, a daily driver with a desktop environment, or even a headless server for 10-15 users at a small business.

I am currently using my Rock Pro 64 as a desktop personal computer. Last week I was using it as a software development build server. It is common knowledge that single board computers similar to the Rock Pro are not 100% fit to be used as a daily driver. Despite how they are marketed, typically most boards cannot reliably run a graphical user interface. I am impressed. The Rock Pro 64 runs smoothly with the Xfce Desktop Environment as its interface.

Slackware Aarch64 Xfce Desktop

The Rock Pro 64 is comfortable for every day computing tasks. It is important to be realistc in my review. I know I will not be doing intensive video editing. Touching up family photos, making a personal youtube video, checking email, and browsing the web… those tasks can all be done wtih ease on the Rock Pro 64. It has a Rockchip RK3399 chipset and it has great specifications for the asking price. For example, you get 6 processor cores @ 2Ghz, 4GB of memory, a decent Mali T860 MP4 GPU, for $80. The 2GB model costs $60. I purchased the Pine64 WiFi + Bluetooth module and the Pine64 docking station for extra peripheral ports. Both work well. The most impressive feature is its PCIe slot that can use SATA or NVMe solid state disks. All in all, I have no complaints.

What exactly do I do to help out Stuart?

I started out strictly testing whatever updates were sent to my rsync server. I took those updates and did what I do best. Find broken software, look for a solution to the problem, and report it. I am becoming more and more immersed in the development process.

One of the things I did last week was test the kernel configuration. I helped modify the kernel configuration to fit the RockPro64 and my Pinebook Pro. I’ve only ever done this for my own systems and I learned quite a bit. Providing a kernel, modules, and firmware that will work across multiple machines, is harder than it looks. So I applaud the Slackware developers for providing such sane defaults within the kernel packages. I am getting off track here. Right. In a nutshell, I write and rewrite SD Cards. Test the boot process. I verify U-boot does what it should, then I verify the kernel has the hardware support for my system. Pending any instabilities, the last few days have been smooth on my the Rock and Pinebook Pro’s.

I am testing Slackware Aarch64 on my Pinebook Pro this weekend. Specifically, the video drivers. There are two options to use for the Mali GPU in Slackware. Fbturbo is one and the other is the open source Mali driver, panfrost. There are instabilities with Fbturbo. However, it provides better frame rates at 1920×1080 resolution. Panfrost is far more stable on the RockPro64 AND the Pinebook Pro. However, Panfrost maxes at around 60 FPS and Fbturbo around 250 FPS. There is a trade off between the two drivers. Slackware being Slackware provides a lot of room for users to customize and change their systems.

Day to day I need to know and learn quite a few things to be effective throughout this process. It is all very exciting to me. It is a lot of work to stay on task and remain motivated. Not all of what I do for Stuart is fun. For example, next week we will be working with the installer to write to SPI flash. That way it will be easier to control any dispairities. Providing sane defaults is always welcome to both users and developers. Stay tuned, an article on the subject may be in the works next week.

Finally, I want to briefly mention the Slackware ARM Podcast on YouTube. I recorded a couple episodes to discuss the Rock Pro with Stuart. Its aim is to foster a creative and technical environment for the Slackware community. Not everything is strictly business and we do joke around. I am looking forward to the next recording!

Disclaimer: I am operating in an unofficial capacity to aid the creator of Slackware ARM to bring Slackware to the Aarch64 architecture. I am not a Slackware developer.

That is all for now. Remember to keep on eye on the Slackware change logs! I am still working out the kinks on this site. Please be sure to post a comment if you have any questions or suggestions.

Author: Brenton Earl
Author of exitstatus.one.

4 thoughts on “Aarch64 Port to Slackware Linux

  1. Really looking forward to install it on my Pinebook Pro. Currently running Slarm64-current flawlessly.

    1. I have a snap shot working on the Pinebook of Slackwareaarch64-current. (official version) It works well. I am still working out the kinks with NVMe. I have the NVMe adapter for my disk.

    1. Yes, I am testing with glxgears. I leave it running for several hours. You an easily do the same by disabling /etc/X11/xorg.conf.d/xorg.conf. That file just tells xorg to use fbturbo by default and I comment everything out. Then relaunch my x session.

Leave a Reply

Your email address will not be published.