DebianOn is an effort to document how to install, configure and use Debian on some specific hardware. Therefore potential buyers would know if that hardware is supported and owners would know how get the best out of that hardware.

The purpose is not to duplicate the Debian Official Documentation, but to document how to install Debian on some specific hardware.

Translation(s): none

Models covered
APM Mustang (X-C1)

This was the first arm64 (ARMv8/Aarch64) hardware available in the world that would run Linux.

It is supported in Jessie.

Overall Status

Core Components

[ATTACH]

Boot Standard Kernel:

{OK}

Ethernet:

{OK}

Detect hard drives:

{OK}

Extra Features

USB

{X} (in jessie)

PCIe

{X} (in jessie)

CPU Frequency Scaling

{OK}

Hibernation

[?]

Sleep / Suspend

[?]

Mouse

{OK}

Keyboard

{OK}

Legend :
{OK} = OK ; {X} Unsupported(No Driver) ; /!\ = Error (Couldn't get it working); [?] Unknown, Not Test ; [-] Not-applicable
{i} = Configuration Required; X-( = Only works with a non-free driver and or firmware

Important Note

Booting

Installing with Debian-installer can work out of the box if you have UEFI firmware. However most of these machines are shipped with uboot, not UEFI. You can change this but this is a little involved, so documented here is how to boot with uboot.

Using UEFI

If your machine was not shipped with UEFI, you'll need to update the firmware.

Having done this you should be able to use standard UEFI methods to boot debian-installer from USB or over the network or from a hard-drive.

Using U-boot

If your uboot is recent enough (has a bootz command) it can boot the debian-installer kernel directly. If not then you need to convert the kernel and initrd to uboot uImage/uInitrd format.

mkimage -A arm -C none -T kernel -a 0x200000 -e 0x200000 -n "Linux" -d vmlinux.gz  uImage
mkimage -A arm -O linux -T ramdisk -C gzip -n "netboot image" -a 0x300000 -e 0x300000 -d initrd.gz uInitrd

Starting the installer

Connect a serial cable and connect to the serial console at 115200, 8n1. minicom or screen are typically used.

Power the machine and you should see boot messages: To get into the bootloader hit any key when it says

U-Boot 2013.04-mustang_sw_1.08.12-beta_rc (Oct 18 2013 - 15:19:00)
CPU0: APM ARM 64-bit Potenza Rev A2 2400MHz PCP 2400MHz
     32 KB ICACHE, 32 KB DCACHE
     SOC 2000MHz IOBAXI 500MHz AXI 200MHz AHB 200MHz GFC 125MHz
Boot from SPI-NOR
Board: Mustang - AppliedMicro APM883208-xNA24SPT Reference Board

To get into the bootloader hit any key when it says

Hit any key to stop autoboot:

which should give you a prompt:

Mustang# 

Assuming you already have files called dtb, uImage and uInitrd cpioed onto the first partition of the first hard drive you can start the installer with:

setenv fdt_addr_r 4003000000
setenv kern_addr_r 4002000000
setenv ramdisk_addr_r 4004000000
setenv bootargs root=/dev/ram0 console=ttyS0,115200 early_printk=uart8250-32bit,0x1c020000
setenv debian_fdt ext4load scsi 0 ${fdt_addr_r} dtb                                    
setenv debian_kernel ext4load scsi 0 ${kern_addr_r} uImage                             
setenv debian_ramdisk ext4load scsi 0 ${ramdisk_addr_r} uInitrd
scsi init
run debian_kernel debian_ramdisk debian_fdt                         
bootm ${kern_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}

After that installation is much as expected.

Configuration

Display

None - Headless Server

Networking

2 APM-designed 10Gb ethernet channels on the SoC

Power Management

Thermal management works

System Summary

lspci

lspci -nn
pcilib: Cannot open /proc/bus/pci
lspci: Cannot find any working access method

lsusb

Not supported in Jessie kernel. Supported in mainline

lsusb -v | grep -E '\<(Bus|iProduct|bDeviceClass|bDeviceProtocol)' 2>/dev/null
unable to initialize libusb: -99

Resources

Attachments

Some configuration files and sample outputs.

lsmod
Module                  Size  Used by
binfmt_misc             6950  1 
autofs4                30503  2 
ext4                  468756  3 
crc16                   1322  1 ext4
mbcache                 8145  1 ext4
jbd2                   80657  1 ext4
dm_mod                 87577  3 
sg                     21792  0 
sd_mod                 37277  4 
crc_t10dif              1402  1 sd_mod
crct10dif_generic       1723  1 
crct10dif_common        1383  2 crct10dif_generic,crc_t10dif
ahci_xgene              5343  0 
libahci_platform        5327  4 ahci_xgene
libahci                23321  2 libahci_platform,ahci_xgene
libata                159590  3 libahci,libahci_platform,ahci_xgene
realtek                 2243  0 
phy_xgene              13290  2 
xgene_enet             25315  0 
scsi_mod              191620  3 sg,libata,sd_mod
of_mdio                 2829  1 xgene_enet
libphy                 26050  3 realtek,of_mdio,xgene_enet

?CategoryServerComputer


CategoryDebianOn