[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

This is an old revision of the document!


Considerations around Hardware Models

For the background and context, please see the Slackware ARM / AArch64 Development Model.

This document is intended to provide some guidance to choosing not only an ARM / AArch64 Hardware Model for the end-user, but also as a guide for Hardware Model Custodians to consider before committing to a particular Hardware Model.

Hardware Support within the Linux Kernel

The main hardware components are supported by the mainline Kernel (available on Kernel.org):

  • Storage
  • Wired wetwork
  • Video
  • Serial console support

If the Hardware Model is partly but not entirely supported by the mainline Kernel, you should check that the hardware vendor is actively working to merge any required patches into the mainline Kernel. You can ask them directly. Some are not interested, and these are poor targets for a distribution such as Slackware or any other of the mainstream distributions that work in the classic Open Source enthusiast/hobby development model.

It is acceptable for a few patches to be included for each Hardware Model - particularly if mainline Kernel support is forthcoming and there's a public roadmap. However, if this is not the case - this author advises you to steer clear.

Boot Loader

U-Boot is the industry standard Boot loader on the ARM and AArch64 platform.

Your Hardware Model should either have support within mainline U-Boot already, or there is an advertised roadmap that indicates that support will be merged within the near future.

Your Hardware Model should also use the Flattened Device Tree for mapping out the Hardware Model's characteristics.

Storage

Slackware can be used on, but is not aimed at embedded devices. Slackware ARM / AArch64 provides a full port of Slackware, and its aim is to be used as a Server or Desktop Operating System. In practical terms this means that the storage layer is going to be the recipient of ongoing reads and writes. Should the users be following the -current (development branch of Slackware), the number and size of package updates will cause storage such as SD cards and MMC storage to reach their intended read/write thresholds quickly, which would be catastrophic for the user.

It's therefore advisable that your choice of Hardware Model has the ability to install and run Slackware onto storage with a longer life span, such as spinning discs, SSDs and NVMe.

Real Time Clock (RTC)

 slackwarearm:development-hwmodelconsiderations ()