The IGX Orin Developer Kit includes a 500GB solid-state drive (SSD), though this drive is not partitioned or mounted by default. Since a complete installation of Holopack leaves about 40-50GB of storage remaining in the root 64GB, you can optionally configure the SSD as Docker storage to it to avoid filling up the root directory rapidly with Docker image pull operations.
Setting up the SSD Storage
This section outlines the steps to partition and format the drive for use after the initial Holopack installation.
If the developer kit is re-flashed with a new Holopack image, the partition table of the m.2 drive will not be modified and the contents of the partition will be retained. In this case, you can skip the steps described in the Create a Partition section.
However, you should still follow the steps described in the Mount the Partition section to remount the partition.
Create a Partition
This procedure assumes the m.2 drive is identified by the IGX Orin Developer Kit as /dev/nvme0n1. You can check the device name with the following command:
$ readlink /dev/disk/by-path/platform-14160000.pcie-pci-0004\:01\:00.0-nvme-1
If this symlink command outputs something other than ../../nvme0n1, replace all instances of nvme0n1 in these instruction with the identifier used by your system.
Create a partition table on the SSD device:
sudo parted -a optimal /dev/nvme0n1 mklabel gpt
Create a new primary partition:
sudo parted -a optimal /dev/nvme0n1 mkpart primary ext4 0% 100%
Initialize the ext4 filesystem on the new partition:
sudo mkfs -t ext4 /dev/nvme0n1p1
Mount the Partition
Create a directory for the mount point. These instructions will use the path /media/m2, but any path can be used.
sudo mkdir /media/m2
Determine the UUID of the new partition following output shows that the UUID of the /dev/nvme0n1p1 partition is 7f41ff99-6b67-4e5c-af16-7af409579440:
sudo blkid -s UUID -o value /dev/nvme0n1p1 7f41ff99-6b67-4e5c-af16-7af409579440
Add the fstab entry. Using the mount path and the UUID from the previous steps, add the following line to the end of /etc/fstab:
*# <file system> <mount point> <type> <options> <dump> <pass>* ... UUID=7f41ff99-6b67-4e5c-af16-7af409579440 /media/m2 ext4 defaults 0 2
Mount the partition. The /etc/fstab entry above will mount the partition automatically at boot time. Use the mount command to mount the partition immediately. Use df to verify the mount.
sudo mount –a df -h /dev/nvme0n1p1 Filesystem Size Used Avail Use% Mounted on /dev/nvme0n1p1 458G 73M 435G 1% /media/m2
Setting Up Docker Storage on the SSD
Install Docker and NVIDIA Container Toolkit if they have not been installed on your system.
Create a Docker data directory on the new m.2 SSD partition. This is where Docker will store build cache and container images. These instructions use the path /media/m2/docker-data, but you can use another directory name if preferred.
sudo mkdir /media/m2/docker-data
Configure Docker to use the new data root by writing the following to /etc/docker/daemon.json:
{ "runtimes": { "nvidia": { "path": "/usr/bin/nvidia-container-runtime", "runtimeArgs": [] } }, "default-runtime": "nvidia", "data-root": "/media/m2/docker-data" }
Restart the Docker daemon:
sudo systemctl daemon-reload sudo systemctl restart docker
Add the current user to the Docker group so Docker commands can run without sudo.
# Create the docker group. sudo groupadd docker # Add your user to the docker group. sudo usermod -aG docker $USER # Activate the changes to groups. Alternatively, reboot or re-login. newgrp docker
Verify that you can run a “hello world” container.
docker run hello-world
Before using the HDMI in device of your devkit, you should ensure that it has the latest firmware by first downloading the firmware files from Lontium website.
You will need to register an account and then download the following two files from the NVIDIA section:
Lontium_lt6911_flash_update
LT6911UXC_1080P_CSI_1Port_RGB_V2_9
First, extract the downloaded files with:
unrar e Lontium_lt6911_flash_update.rar unrar e LT6811UXC1080PCSI_1P_RGBV2_9.rar
Next, run the following to power the HDMI in chip and flash it with the firmware file:
v4l2-ctl -d /dev/video0 --stream-mmap & sudo ./lontium_lt6911_flash_update 2 0x2b LT6911UXC_1080P_CSI_1Port_RGB_V2_9.bin
If you do not have v4l2-ctl
, it can be installed with:
sudo apt-get install v4l-utils