A38X Debian
Overview
As a proof of concept and for prototyping purposes we provide the option to run Debian on Armada 38x based devices. Please note that our images are not pure Debian - we made changes where necessary to enable our hardware.
Device Support Matrix
Reference Images
Readily usable images of Debian are available at images.solid-run.com. They are intended to be used with any block storage device, and do not come with a boot-loader Please refer to our A38X U-Boot page for installation instructions.
Default username and password are debian and debian - with sudo privileges.
Using a tool of choice our images can be decompressed and written to a microSD card. We suggest etcher.io which takes care of the decompression by itself. Alternatively an image can be written to an arbitrary drive on a Unix system:
Customizing the Reference Images
The debian images are produced from a custom build system. The sources are available on github. To add software packages, configuration files or any other modifications: Look at configs/sr-a38x-debian-stretch.inc
Pure Debian (upstream)
Getting the Files
All files required are available on the download page for buster and download page for debian-installer:
hd-media (other images → armhf → hd-media): hd-media.tar.gz
ISO (CD → armhf):
Preparing the block-device
Unpack hd-media.tar.gz to a partition on the drive
Copy the downloaded ISO to a (/the same) partition on the drive
Add U-Boot (optional)
U-Boot for the Clearfog devices is not part of Debian! That means it needs to be installed and managed seperately.
If the installation media is a microSD, then it can be wise to now install U-Boot to that card by following our instructions on the U-Boot page.
Otherwise U-Boot has to be loaded via UART or be already available on one of eMMC, microSD, SPI Flash and SSD.
Warning: If U-Boot is installed on the same disk that debian will be installed to, it may get overridden! Safe locations for U-Boot are SPI Flash and the boot partitions of eMMC.
Add a preseed.cfg (optional)
A preseed file can be used to fully automate the installation. The Debian project maintains a sample for its current stable release at https://www.debian.org/releases/stable/example-preseed.txt.
Below is a sample for installing Buster to an M.2 SSD:
Another method for acquiring a preseed.cfg file is to run the installer by hand, then ask debconf for the settings that the installer had been using:
The preseed.cfg file should be placed on the installation drive next to the iso image. In addition the automatic install has to be explicitly enabled through the kernel commandline from the U-Boot console:
Starting the Installation
All that is left to do is attaching the block storage to the Clearfog board and powering it up. The text based installer will show up on the serial console if boot succeeds.
The boot order is controlled by the boot_targets U-Boot environment variable. By default it says:
scsi0
mmc0
usb0
pxe
dhcp
In case the installer isn’t started automatically because an existing system is found and started first, booting from the installer drive can be forced by invoking the corresponding boot command on the U-Boot console:
Known Issues
EXPKEYSIG on repo.solid-build.xyz
Up to April 2018 we did not have a facility in place to update our repository signing key. While the key has been renewed on our build server, it did expire on any images from before October 22th 2017.
You know that you are affected when apt-get update shows an error message such as:
It is suggested that you install our solidrun-keyring package from our repos by hand. In the future this package will be used to roll out key extensions in the future. Navigate to stretch or jessie; Find the deb by name of solidrun-keyring_*_all.deb and install. Now apt should once again be happy about our key.
systemd[1]: Time has been changed
When the rtc has an invalid state, this error message can render debian unusable. In this case the rtc eneds to be reset. Enter u-boot console by pressing any key at the u-boot prompt, then reset the rtc twice and reboot:
Clearfog Base / Pro eMMC Software Installation
Installing software on a ClearFog SOM with eMMC is a little tricky. You can not use the eMMC and the SD card simultaneously. The software for both initial boot, and the eMMC installation must be loaded from some other interface. Fortunately, the Armada 388 chip can boot from UART, so we can use that for initial boot.
This section describes a relatively painless procedure for installing the SolidRun provided Debian image on the eMMC. You will need to following items:
USB storage device (Disk-on-Key), FAT formatted
x86 PC running any flavor of Linux
Installation instructions follow.
Download an installation images and utilities archive from here.
Connect your x86 PC host to the ClearFog UART console on the micro-USB
Copy the following files from the archive to the x86 PC:
kwboot
u-boot-clearfog-base-uart.kwb
Copy the following files from the archive to the USB storage device:
u-boot-clearfog-base-mmc.kwb
zImage
armada-388-clearfog.dtb
Create a directory named extlinux in the USB storage device
Copy the file extlinux.conf from the archive into the extlinux directory
Copy the latest Debian image (.img.*z suffix) from here to the USB storage device
Set the Clearfog boot select DIP switches to UART boot:
For Clearfog Pro set to 11110
For Clearfog Base set to 01001
Plug the USB storage device into the Clearfog
Run the following command on the x86 PC:
Power up the Clearfog
Wait a few minutes of the U-Boot image to download
Hit a key to stop autoboot
Configure the eMMC to boot from hardware boot partition:
Reset the RTC block
Boot initial installation Linux image
Type
rootat thebuildroot login:promptMount the USB storage device
Install the bootloader
Install the Debian filesystem
Unmount the USB storage device
Power off the Clearfog
Set the DIP switches back to boot from SD/eMMC: 00111
Power on the Clearfog
Debian should boot to the
login:prompt
Clearfog GTR eMMC Software Installation
This section describes a procedure for installing the SolidRun provided Debian image on the Clearfog GTR eMMC storage. You will need the following items:
USB storage device (Disk-on-Key), FAT formatted
x86 PC (64-bit) running any flavor of Linux
Installation instructions follow.
Download an installation images and utilities archive from here
Connect your x86 PC host to the ClearFog GTR UART console on the micro-USB
Copy the following files from the archive to the x86 PC:
kwboot
u-boot-spl.kwb
Copy the following files from the archive to the USB storage device:
u-boot-spl.kwb
zImage
armada-385-clearfog-gtr-l8.dtb
Create a directory named extlinux in the USB storage device
Copy the file extlinux.conf from the archive into the extlinux directory
Copy the latest Debian image (
.img.*zsuffix) from here to the USB storage deviceSet the Clearfog GTR boot select DIP switches to eMMC boot: 00111
Plug the USB storage device into the Clearfog
Run the following command on the x86 PC:
Power up the Clearfog GTR
Wait a few minutes of the U-Boot image to download
Hit a key to stop autoboot
Configure the eMMC to boot from hardware boot partition:
Boot initial installation Linux image:
Mount the USB storage device:
Install the bootloader:
Install the Debian filesystem:
Unmount the USB storage device:
Reset or power cycle the Clearfog GTR
Debian should boot to the
login:prompt
Last updated