Update SDK or Add New DMP Packages - DigitalMediaProfessionals/dv-sdk GitHub Wiki
If the AI FPGA module is connected to the internet, one can update SDK or add new DMP packages from internet easily.
The entire SDK is open source on GitHub. To update the SDK source, run the following commands: (Please take backup of modification to the sub-repositories.)
$ cd dv-sdk
$ git submodule foreach --recursive git reset --hard HEAD
$ git checkout master --recurse-submodules
$ git pull --recurse-submodules
If you want to utilize SDK of newer version than ones the dv-sdk
repository designates, please update sub-repositories by the following command:
(Please take backup of modification to the sub-repositories.)
$ cd dv-sdk
$ git submodule foreach --recursive git reset --hard HEAD
$ git submodule foreach --recursive git checkout master
$ git submodule foreach --recursive git pull
For retrieve the dv-sdk
's version, run the next command:
$ cd dv-sdk
$ git submodule update --recursive
DMP has setup APT repository for packages provided by DMP. The updated driver, FPGA firmware and other new packages like kernel source can be installed using the Ubuntu APT utility. But first one needs to config the APT to use DMP APT repository.
Follow are the steps to config the APT to use DMP APT repository:
-
Create APT configuration file with login info:
$ sudo touch /etc/apt/auth.conf $ sudo chmod 0600 /etc/apt/auth.conf $ echo 'machine zia-download.dmprof.com login <user> password <password>' | sudo tee -a /etc/apt/auth.conf
One needs to use your username and password for
zia-download@dmprof.com
to fill the authentication info in the above command. -
Add DMP APT repository to the source list:
$ echo 'deb https://zia-download.dmprof.com/apt/ubu1804/ /' | sudo tee -a /etc/apt/sources.list.d/dmp.list
-
Update APT package list
$ sudo apt update
-
Upgrade or Install packages
$ sudo apt install <package> # install $ sudo apt upgrade # update all the package
-
Check if the required packages are installed. The installation succesed if the package name and its version are shown.
$ dpkg -l | grep zia
For changelog, see this page.
- NOTE: Multiple zia-firmware-* packages cannot be used simultaneously. Installing the package uninstalled zia-firmware-* that is already installed. This is not applied to dummy packages.
- NOTE: Installing zia-firmware-* installs other required packages.
Package | Description |
---|---|
zia-driver-c2 | Driver package |
zia-firmware-c2-sd-90mhz | Firmware package |
zia-kernel-source-c2 | Kernel source package |
Package | Description |
---|---|
zia-driver-c3 | Driver package |
zia-driver-c3-userspace | Driver package for Docker. Only contains user space driver libraries of the above package. |
zia-firmware-c3-emmc | Firmware package for boot from eMMC |
zia-firmware-c3-sd | Firmware package for boot from SD card |
linux-image-zia-c3 | Linux image and device tree |
zia-kernel-source-c3 | Kernel source package |
zia-firmware-c3-emmc-100mhz | Firmware package for boot from eMMC. Old version of zia-firmware-c3-emmc. Dynamic change of frequency is not available. This package of version 7.1.20190410 or newer is a dummy package and upgrading this package installs zia-firmware-c3-emmc of the same version. |
zia-firmware-c3-sd-100mhz | Firmware package for boot from SD card. Old version of zia-firmware-c3-emmc. Dynamic change of frequency is not available. This package of version 7.1.20190410 or newer is a dummy package and upgrading this package installs zia-firmware-c3-sd of the same version. |
zia-libtensorflow | C-API TensorFlow library |
zia-python3-tensorflow | Python TensorFlow package |
The below table shows correspondences of the packages. SDK works by using versions on the same row. Please use the latest version as much as possible.
Row is ordered by release date (upper row, recent release). The two table is independent so you can use version in different row over the tables.
zia-driver-c3 | zia-firmware-c3-emmc | zia-firmware-c3-sd | linux-image-zia-c3 | zia-kernel-source-c3 |
---|---|---|---|---|
7.21.20201106 | 7.21.20191213 | 7.21.20191213 | 4.14.0.20191021 | 4.14.0.20191213 |
7.21.20200826 | 7.21.20191213 | 7.21.20191213 | 4.14.0.20191021 | 4.14.0.20191213 |
7.21.20191223 | 7.21.20191213 | 7.21.20191213 | 4.14.0.20191021 | 4.14.0.20191213 |
7.21.20191021 | 7.21.20191213 | 7.21.20191213 | 4.14.0.20191021 | 4.14.0.20191213 |
7.21.20191021 | 7.21.20190729 | 7.21.20190729 | 4.14.0.20191021 | 4.14.0.20190308 |
7.21.20190904 | 7.21.20190729 | 7.21.20190729 | 4.14.0.20190328 | 4.14.0.20190308 |
7.21.20190729 | 7.21.20190729 | 7.21.20190729 | 4.14.0.20190328 | 4.14.0.20190308 |
7.2.20190621 | 7.2.20190621 | 7.2.20190621 | 4.14.0.20190328 | 4.14.0.20190308 |
7.1.20190410 | 7.1.20190410 | 7.1.20190410 | 4.14.0.20190328 | 4.14.0.20190308 |
zia-driver-c3 | zia-firmware-c3-emmc | zia-firmware-c3-sd |
---|---|---|
7.0.20190328 | 7.0.20190328 | 7.0.20190328 |
7.0.20190215 | 7.0.20190215 | 7.0.20190215 |
7.0.20190111 | 7.0.20190111 | 7.0.20190111 |
Factory-Configured | Factory-Configured |
linux-image-zia-c3 | zia-kernel-source-c3 |
---|---|
4.14.0.20191021 | 4.14.0.20190308 |
4.14.0.20190328 | 4.14.0.20190308 |
4.14.0.20190308 | 4.14.0.20190308 |
Factory-Configured | 4.14.0.20181010 |
Here describes how to update the FPGA firmware manually. If you do not need, do use not this but APT.
-
Prepare the FPGA firmware files(
BOOT.BIN
anduboot.env
in ZIA C3,soc_system.rbf
in ZIA C2). -
Mount a region for firmware files to
/media/card/
. You skip this operation when your AI FPGA module has default configuration.$ sudo mount <partition> /media/card
Please select <partition>
from the below according to your system.
- ZIA C3 boot from eMMC :
/dev/mmcblk0p1
- ZIA C3 boot from SD :
/dev/mmcblk1p1
- ZIA C2 :
/dev/mmcblk0p1
-
Copy the firmware files to
/media/card/
. Please create a backup of it in the case. -
Do
sudo sync
.