Using the DGX Station A100 FW Update Utility#
The DGX Station A100 System Firmware Update utility is provided in a tarball and also as a .run
file.
Forcefully Updating the VBIOS#
Important
Run the following command only in a TTY console or an SSH console. Do not run it in the GUI-based terminal screen because the command will shutdown the X windows system.
Run the following command:
$ sudo systemctl stop gdm3
Here are some examples:
NVSM
$ nvsm(/system/localhost/firmware/install)
Set
Flags
toupdate_fw\ VBIOS\ -f
When setting the flags, an escape is needed before blank spaces.
Docker
$ sudo docker run --rm --privileged -ti -v /:/hostfs nvfw-dgxstationa100:24.1.1 update_fw VBIOS -f
A .run file
$ sudo ./nvfw-dgxstationa100_24.1.1_240110.run update_fw VBIOS -f
Using NVSM#
Here is some information about how to use NVSM in the firmware.
The DGX Station A100 system software includes Docker software that is required to run the container.
Copy the tarball to a location on the DGX system.
From the directory where you copied the tarball, enter the following command to load the container image.
$ sudo docker load -i nvfw-dgxstationa100_24.1.1_240110.tar.gz
To verify that the container image is loaded, enter the following command.
$ sudo docker images REPOSITORY TAG nvfw-dgxstationa100 24.1.1
Using NVSM interactive mode, enter the firmware update module.
$ sudo nvsm nvsm-> cd systems/localhost/firmware/install
Set the flags that correspond to the action you want to take.
$ nvsm(/system/localhost/firmware/install)-> set Flags=<option>
See Command and Argument Summary for the list of common flags.
Set the container image to run.
$ nvsm(/system/localhost/firmware/install)-> set DockerImageRef=nvfw-dgxstationa100:24.1.1
Run the command.
$ nvsm(/system/localhost/firmware/install)-> start
Using docker run#
The DGX Station A100 system software includes Docker software required to run the container.
Copy the tarball to a location on the DGX system.
From the directory where you copied the tarball, enter the following command to load the container image.
$ sudo docker load -i nvfw-dgxstationa100_24.1.1_240110.tar.gz
To verify that the container image is loaded, enter the following.
$ sudo docker images REPOSITORY TAG nvfw-dgxstationa100 24.1.1
Use the following syntax to run the container image.
$ sudo docker run --rm --privileged -ti -v /:/hostfs nvfw-dgxstationa100:24.1.1 <command> <[arg1] [arg2] ... [argn]
See Commands/Argument Summary for the list of common commands and argument.
Note
If you do not have the tarball file, but you do have the .run file, you can extract the tarball from the .run
file by issuing the following:
$ sudo nvfw-dgxstationa100_24.1.1_240110.run -x
Using the .run File#
The update container is also available as a .run
file. The .run
file uses the Docker software, if the software is installed on the system, but the file can also be run without Docker.
After obtaining the .run file, make the file executable.
$ chmod +x ./nvfw-dgxstationa100_24.1.1_240110.run
Use the following syntax to run the container image.
$ sudo .nvfw-dgxstationa100_24.1.1_240110.run <command> <[arg1] [arg2] ... [argn]
See Command and Argument Summary for the list of common commands and arguments.
Command and Argument Summary#
Here are the most common commands and arguments:
To show the manifest:
show_fw_manifest
An NVSM example:
$ nvsm(/system/localhost/firmware/install)-> set Flags=show_fw_manifest
A Docker run example:
$ sudo docker run --rm --network host --privileged -ti -v /:/hostfs nvfw-dgxstationa100:24.1.1 show_fw_manifest
A
.run
file example:$ sudo ./nvfw-dgxstationa100_24.1.1_240110.run show_fw_manifest
To show the version information:
show_version
An NVSM example:
$ nvsm(/system/localhost/firmware/install)-> set Flags=show_version
A Docker run example:
$ sudo docker run --rm --network host --privileged -ti -v /:/hostfs nvfw-dgxstationa100:24.1.1 show_version
A
.run
file example:$ sudo ./nvfw-dgxstationa100_24.1.1_240110.run show_version
To check the onboard firmware against the manifest and update all down-level firmware:
update_fw all
An NVSM example:
$ nvsm(/system/localhost/firmware/install)-> set Flags=update_fw\ all
For NVSM, when setting the flags, an escape is needed before blank spaces.
A Docker run example:
$ sudo docker run --rm --network host --privileged -ti -v /:/hostfs nvfw-dgxstationa100:24.1.1 update_fw all
A
.run
file example:$ sudo ./nvfw-dgxstationa100_24.1.1_240110.run update_fw all
To check the specified onboard firmware against the manifest and update if down-level:
update_fw [fw]
Where
[fw]
corresponds to the specific firmware as listed in the manifest. Multiple components can be listed in the same command. The following are examples of updating the BMC and SBIOS.An NVSM example:
$ nvsm(/system/localhost/firmware/install)-> set Flags=update_fw\ BMC\ SBIOS
For NVSM, when setting the flags, an escape is needed before blank spaces.
A Docker run example:
$ sudo docker run --rm --network host --privileged -ti -v /:/hostfs nvfw-dgxstationa100:24.1.1 update_fw BMC SBIOS
A
.run
file example:$ sudo ./nvfw-dgxstationa100_24.1.1_240110.run update_fw BMC SBIOS
To update the VBIOS:
Important
Ensure that you run the following command in a TTY console or ssh console. Do not run it in the GUI based terminal screen because the command will shutdown the X windows system.
Run the following command.
$ sudo systemctl stop gdm3
Here are some additional examples:
An NVSM example:
$ nvsm(/system/localhost/firmware/install) -> set Flags=update_fw\ VBIOS
Note
When you set the flags, add an escape before the blank spaces.
A Docker run example:
$ sudo docker run --rm --network host --privileged -ti -v /:/hostfs nvfw-dgxstationa100:24.1.1 update_fw VBIOS
A
.run
file example:$ sudo ./nvfw-dgxstationa100_24.1.1_240110.run update_fw
To forcefully update the VBIOS:
Important
Run the following command only in the
tty
console or thessh
console. If you run the command in the GUI-based terminal screen, the X windows system will shut down.$ sudo systemctl stop gdm3
Here are some additional examples:
An NVSM example:
$ nvsm(/system/localhost/firmware/install) -> set Flags=update_fw\ VBIOS\ -f
Note
For NVSM, when setting the flags, an escape is needed before blank spaces.
A Docker run example:
$ sudo docker run --rm --network host --privileged -ti -v /:/hostfs nvfw-dgxstationa100:24.1.1 update_fw VBIOS -f
A
.run
file example:$ sudo ./nvfw-dgxstationa100_24.1.1_240110.run update_fw VBIOS -f
To update the FPGA, retimer, backplane, or PSU firmware:
Prerequisites
Updating the FPGA, retimer, backplane, or PSU firmware requires you to provide valid Redfish credentials to the firmware update container. If credentials are not provided and one of these components will be updated, the firmware update container will stop and display the following message:
Updating one of your selected components requires redfish authentication Please provide container flags "REDFISH_USER=<username>" and "REDFISH_PASS=<password>" in order to update
To update a component that requires Redfish authentication, such as the FPGA:
$ sudo ./nvfw-dgxstationa100_24.1.1_240110.run set_flags REDFISH_USER=<your_username> REDFISH_PASS=<your_password> update_fw FPGA