Revision and Notes
Date | Owner | Revision | Notes | ||||||
---|---|---|---|---|---|---|---|---|---|
26/10/2021 | Josua Mayer | 1.0 | Initial release | ||||||
26/06/2023 | Josua Mayer | 1.1 | Production release | ||||||
Table of Contents |
|
Purpose
This guide provides basic instructions for operating the SolidRun AM64 HummingBoard-T and booting into Linux. Advanced usage scenarios are covered by separate technical documentation.
Hardware Setup
Connections
12V DC Power Adapter (12V recommended, HummingBoard-T supports 9V-36V)
microUSB cable for serial console
microSD card for storing bootable SW
TODO: photo showing relevant connectors, with microUSB console and power only, and dip switches
Boot Select
Configure the boot-mode for microSD using onboard DIP switch S1:
Switch | 1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|---|
microSD (FAT partition) | 0 | 0 | 0 | 1 | 0 | 1 |
microSD (RAW) | 1 | 0 | 0 | 0 | 1 | 1 |
eMMC | 1 | 0 | 0 | 1 | X | X |
Info |
---|
Note: 0 = OFF, 1 = ON, X = don't care. |
Console
Start an application for serial console - such as PuTTY or tio. Configure it for baud rate 115200 and the COMx or ttyUSBy interface representing the micro-USB console connection. For details also see Serial Connection.
Software Setup
Prepare bootable microSD Card
Download prebuilt sdcard image based on debian: microsd-222ee6241a660b-debian-bullseye.img.xz-bookworm-sr1
uncompress downloaded image file
write image file to microSD card to create a byte-for-byte copy. https://etcher.io/ is recommended, professionals may use unix “dd” command.
Attention: The AM64x SOM modules are programmed with critical identifying information, including the product name and SKU, stored in an EEPROM at I2C bus 0, address 0x50. This data is structured according to the ONIE TLV standard and is essential for initializing the product and aligning the software accordingly. The tlv_eeprom
command in U-Boot can be used to read this data.
Important: If this information is deleted or becomes corrupted, it will impact the correct initialization and functionality of the product. In such cases, please contact SolidRun support immediately for assistance.
First Steps with Debian reference system
Log-In
After inserting the programmed microSD card in the HummingBoard-T and after (re-)connecting the 12V power, the system should automatically boot to a login prompt displayed on the serial console:
...
Log in with user-name “root”, no password.
Networking
By default networking is not configured. For advanced or persistent configurations please refer to the Debian Documentation.
...
Code Block | ||
---|---|---|
| ||
root@3f60b4ebfc7f:~# dhclient eth0 root@3f60b4ebfc7f:~# ip addr show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 34:88:de:e3:c0:17 brd ff:ff:ff:ff:ff:ff inet 192.168.1.225/24 brd 192.168.1.255 scope global dynamic eth0 valid_lft 552sec preferred_lft 552sec inet 192.168.1.226/24 brd 192.168.1.255 scope global secondary dynamic eth0 valid_lft 552sec preferred_lft 552sec inet6 fe80::3688:deff:fee3:c017/64 scope link valid_lft forever preferred_lft forever |
Log-In via SSH
To log in via SSH, an ssh key must be installed first. Copy your favourite public key, e.g. from ~/.ssh/id_ed25519.pub
, into a new file in the root users home directory at ~/.ssh/authorized_keys
:
Code Block | ||
---|---|---|
| ||
root@e7c450f97e59:~# mkdir .ssh root@e7c450f97e59:~# cat > .ssh/authorized_keys << EOF ssh-ed25519 AAAAinsertyour pubkey@here EOF |
Expand Root Filesystem
After flashing the root filesystem is smaller than the eMMC. To utilize all space, resize both the rootfs partition - and then the filesystem:
inspect partitions:
Using fdisk, view the current partitions. Take note of the start sector for partition 12!
Code Block language bash root@e7c450f97e59root@3f60b4ebfc7f:~# fdisk /dev/mmcblk0mmcblk1 Welcome to fdisk (util-linux 2.36.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): p Disk /dev/mmcblk0mmcblk1: 7.2842 GiB, 78200832007969177600 bytes, 1527360015564800 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xcc3ec3d40xff9ddf85 Device Boot Start End Sectors Size Id Type /dev/mmcblk0p1 mmcblk1p1 8192 131071 122880 60M c W95 FAT32 (LBA) /dev/mmcblk1p2 49152 2690687131072 2048000 26415351916929 1.3G936M 83 Linux Command (m for help):
resize partition 1:
Drop and re-create partition 1 2 at the same starting sector noted before, keeping the ext4 signature when prompted:
Code Block language bash Command (m for help): d SelectedPartition partitionnumber (1,2, default 2): 2 Partition 12 has been deleted. Command (m for help): n Partition type p primary (01 primary, 0 extended, 43 free) e extended (container for logical partitions) Select (default p): p Partition number (12-4, default 12): 12 First sector (2048-1527359915564799, default 2048): 49152131072 Last sector, +/-sectors or +/-size{K,M,G,T,P} (49152131072-1527359915564799, default 1527359915564799): Created a new partition 12 of type 'Linux' and of size 7.34 GiB. Partition #1#2 contains a ext4 signature. Do you want to remove the signature? [Y]es/[N]o: N Command (m for help): p Disk /dev/mmcblk0mmcblk1: 7.2842 GiB, 78200832007969177600 bytes, 1527360015564800 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xcc3ec3d40xff9ddf85 Device Boot Start End Sectors Size Id Type /dev/mmcblk0p1mmcblk1p1 8192 131071 122880 60M c W95 FAT32 (LBA) /dev/mmcblk1p2 49152131072 1527359915564799 1522444815433728 7.3G4G 83 Linux Command (m for help): w The partition table has been altered. Syncing disks.
resize root filesystem:
Linux supports online-resizing for the ext4 filesystem. Invoke
resize2fs
on partition 1 to do so:Code Block language bash root@e7c450f97e59root@3f60b4ebfc7f:~# resize2fs /dev/mmcblk0p1mmcblk1p2