Learn how to upgrade your NVMe Samsung PM9A1 firmware.
Routine firmware updates are pivotal in upholding your NVMe drives' performance, stability, and security. Such updates often encompass critical bug fixes, enhanced compatibility, and advanced security features that are indispensable for preserving your data integrity and maintaining optimal operational efficiency.
Use this link to view the firmware changelog.
Requirements
- An Advance Dedicated Server with NVMe Samsung PM9A1, from the following:
- Advance-1
- Advance-2
- Advance-3
- Advance-4
- Advance-5
- Advance-6
- Before attempting any firmware update, a backup of the data on the drive must be made. Our Getting Started - Backing Up a Bare Metal Server with Veeam Enterprise guide can guide you through the process of using S3 Object Storage as a backup and recovery solution.
- The firmware update does not format the data, but a firmware update failure may happen. Please do not power off the drive or the bare metal server during the firmware update process.
Topics
Instructions
Linux
Hardware/software configuration tested on the OVHcloud side
The tests have been performed without SED configuration.
Platform | Flash tool | Firmware | Result |
---|---|---|---|
Debian 11 OS + data in clear from disk | cli 1.12 | GXA7802Q | OK |
Ubuntu 22.04 OS + data in clear from disk | nvme-cli 1.16 | GXA7802Q | OK |
Rocky 8 OS + data in clear from disk | nvme-cli 1.16 | GXA7802Q | OK |
Debian 11 OS + data in clear from disk + RAID | nvme-cli 1.12 | GXA7802Q | OK |
Ubuntu 22.04 OS + data in clear from disk + RAID | nvme-cli 1.16 | GXA7802Q | OK |
Rocky 8 OS + data in clear from disk + RAID | nvme-cli 1.16 | GXA7802Q | OK |
Step 1 - Install nvme-cli
You can install nvme-cli from your distribution's package manager.
- For RHEL, CentOS, RockyLinux, AlmaLinux, Fedora, and similar:
sudo dnf install nvme-cli
- For Debian, Ubuntu, Mint, Proxmox, and similar:
sudo apt install nvme-cli
Step 2 - List NVMe drives
The nvme list command lists all NVMe devices on your server:
sudo nvme list | grep 'Node\|MZVL2512HCJQ-00B07' Node SN Model Namespace Usage Format FW Rev /dev/nvme0n1 S63CNX0T124339 SAMSUNG MZVL2512HCJQ-00B07 1 8.63 GB / 512.11 GB 512 B + 0 B GXA7602Q /dev/nvme1n1 S63CNX0RA09597 SAMSUNG MZVL2512HCJQ-00B07 1 11.06 GB / 512.11 GB 512 B + 0 B GXA7602Q
SAMSUNG MZVL2512HCJQ-00B07 NVME
, because the firmware update only concerns this NVMe reference and your server may have other disks connected to it.
Step 3 - Check if a firmware update is needed
The firmware of each drive is displayed in the FW Rev
column.
If the firmware version for all your drives is already version GXA7802Q, your firmware is up to date and you do not need to continue this process.
On the other hand, if at least one firmware is different from version GXA7802Q, you must proceed to the update detailed in step 4.
Step 4 - Firmware update
Download the firmware binary on your server:
wget https://last-public-ovh-baremetal.snap.mirrors.ovh.us/hardware/PM9A1/GXA7802Q_Noformat.bin
Execute the following command for each identified drive with firmware different from version GXA7802Q:
X
with the NVME node listed in Step 2.sudo nvme fw-download --fw GXA7802Q_Noformat.bin /dev/nvmeX sudo nvme fw-activate --slot 0x1 --action 0x1 /dev/nvmeX
- Example:
In our previous example, both NVMe drives need a firmware update to the latest version GXA7802Q. Here's how we update the two NVMe drives and the command line returns:
root@labo:/home/ubuntu# sudo nvme fw-download --fw GXA7802Q_Noformat.bin /dev/nvme0 Firmware download success root@labo:/home/ubuntu# sudo nvme fw-activate --slot 0x1 --action 0x1 /dev/nvme0 Success committing firmware action:1 slot:1 Multiple Update Detected (MUD) Value: 0 root@labo:/home/ubuntu# sudo nvme fw-download --fw GXA7802Q_Noformat.bin /dev/nvme1 Firmware download success root@labo:/home/ubuntu# sudo nvme fw-activate --slot 0x1 --action 0x1 /dev/nvme1 Success committing firmware action:1 slot:1 Multiple Update Detected (MUD) Value: 0
At this point the firmware update is complete, please reboot your server.
Step 5 - Check the firmware version after the server reboot
You can use the same NVMe list command which lists all NVMe drives on your server:
sudo nvme list | grep 'Node\|MZVL2512HCJQ-00B07' Node SN Model Namespace Usage Format FW Rev /dev/nvme0n1 S63CNX0T124339 SAMSUNG MZVL2512HCJQ-00B07 1 8.63 GB / 512.11 GB 512 B + 0 B GXA7802Q /dev/nvme1n1 S63CNX0RA09597 SAMSUNG MZVL2512HCJQ-00B07 1 11.06 GB / 512.11 GB 512 B + 0 B GXA7802Q
Your NVMe drive now should have the firmware version GXA7802Q.
ESXi
Hardware/software configuration tested on the OVHcloud side
The tests have been performed without SED configuration.
Platform | Flash tool | Firmware | Result |
---|---|---|---|
ESXi 7.0 U3j OS + data in clear from disk | esxcli 7.0.0 | GXA7802Q | OK |
ESXi 7.0 U3j OS + data in clear from disk + RAID | esxcli 7.0.0 | GXA7802Q | OK |
Step 1 - List NVMe drives
The nvme controller list
command lists all NVMe devices on your server:
esxcli nvme controller list | grep -i 'PM9A1\|Adapter' Name Controller Number Adapter Transport Type Is Online nqn.1994-11.com.samsung:nvme:PM9A1:M.2:S63CNX0TC10818 256 vmhba2 PCIe true nqn.1994-11.com.samsung:nvme:PM9A1:M.2:S63CNX0TC10816 257 vmhba1 PCIe true
Step 2 - Check if a firmware update is needed
For each NVMe in the previous list, we have to check the firmware version :
X
with the NVME node listed in Step 2.esxcli nvme device get -A vmhbaX | egrep "Model Number|Firmware Revision"
- Example:
[root@labo:~] esxcli nvme device get -A vmhba2 | egrep "Model Number|Firmware Revision" Model Number: SAMSUNG MZVL2512HCJQ-00B07 Firmware Revision: GXA7602Q [root@labo:~] esxcli nvme device get -A vmhba1 | egrep "Model Number|Firmware Revision" Model Number: SAMSUNG MZVL2512HCJQ-00B07 Firmware Revision: GXA7602Q
If the Firmware Revision
for all your NVMe is already version GXA7802Q, your firmware is up to date and you do not need to continue this process.
On the other hand, if at least one firmware is different from version GXA7802Q, you must proceed to the update detailed in step 3.
Step 3 - Firmware update
Download the firmware binary on your server :
wget https://last-public-ovh-baremetal.snap.mirrors.ovh.us/hardware/PM9A1/GXA7802Q_Noformat.bin
Execute the following command for each identified drive with firmware different from version GXA7802Q:
- Replace
X
with the NVME node listed in Step 2. - Replace
[path-to-firmware]
with the actual firmware image path.
esxcli nvme device firmware download -A vmhbaX -f /[path-to-firmware]/GXA7802Q_Noformat.bin esxcli nvme device firmware activate -a 1 -A vmhbaX -s 1
- Example:
In our previous example, both NVMe drives needed a firmware update to the latest version GXA7802Q.
Here's how we updated the two NVMe drives and the command line returns:
[root@labo:~] esxcli nvme device firmware download -A vmhba2 -f /GXA7802Q_Noformat.bin Download firmware successfully. [root@labo:~] esxcli nvme device firmware activate -a 1 -A vmhba2 -s 1 Commit firmware successfully, but activation requires reboot. [root@labo:~] esxcli nvme device firmware download -A vmhba1 -f /GXA7802Q_Noformat.bin Download firmware successfully. [root@labo:~] esxcli nvme device firmware activate -a 1 -A vmhba1 -s 1 Commit firmware successfully, but activation requires reboot.
At this point the firmware update is complete, you need to reboot your server.
Step 4 - Check the firmware version after the server reboot
You can use the same command as in Step 2 to check the firmware versions on your server:
[root@labo:~] esxcli nvme device get -A vmhba2 | egrep "Model Number|Firmware Revision" Model Number: SAMSUNG MZVL2512HCJQ-00B07 Firmware Revision: GXA7802Q [root@labo:~] esxcli nvme device get -A vmhba1 | egrep "Model Number|Firmware Revision" Model Number: SAMSUNG MZVL2512HCJQ-00B07 Firmware Revision: GXA7802Q
Your NVMe drive now should have the firmware version GXA7802Q.
Windows
Hardware/software configuration tested on the OVHcloud side
The tests have been performed without SED configuration.
Platform | Flash tool | Firmware | Result |
---|---|---|---|
Windows 2016 + data in clear from disk | Samsung DC Toolkit 2.1.W.Q.0 | GXA7802Q | OK |
Windows 2019 + data in clear from disk | Samsung DC Toolkit 2.1.W.Q.0 | GXA7802Q | OK |
Windows 2022 + data in clear from disk | Samsung DC Toolkit 2.1.W.Q.0 | GXA7802Q | OK |
Windows 2016 + data in clear from disk + RAID | Samsung DC Toolkit 2.1.W.Q.0 | GXA7802Q | OK |
Windows 2019 + data in clear from disk + RAID | Samsung DC Toolkit 2.1.W.Q.0 | GXA7802Q | OK |
Windows 2022 + data in clear from disk + RAID | Samsung DC Toolkit 2.1.W.Q.0 | GXA7802Q | OK |
Step 1 - Download Samsung DC Toolkit for Windows
Download the Samsung DC Toolkit via this link.
Tool version: Samsung DC Toolkit Version 2.1.W.Q.0
Step 2 - List drives and firmware versions
Open Windows Command Prompt as Administrator, then use the following command in the directory where the DC Toolkit was downloaded:
Samsung_SSD_DC_Toolkit_for_Windows_1.exe -L
Step 3 - Check if a firmware update is needed
The following command lists all the devices on your server:
C:\Users\admin\DownloadsSamsung_SSD_DC_Toolkit_for_Windows_1.exe -L ================================================================================================ Samsung DC Toolkit Version 2.1.W.Q.0 Copyright (C) 2017 SAMSUNG Electronics Co. Ltd. All rights reserved. ================================================================================================ ----------------------------------------------------------------------------------------------------------------------------------------------------------- | Disk | Path | Model | Serial | Firmware | Optionrom | Capacity | Drive | Total Bytes | NVMe Driver | | Number | | | Number | | Version | | Health | Written | | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | 0:c | \\.\PHYSICALDRIVE0 | SAMSUNG MZVL2512HCJQ-00B07 | S63CNF0T114133 | GXA7602Q | N/A | 476 GB | GOOD | 0.00 TB | Windows Inbox Driver | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | 1:c | \\.\PHYSICALDRIVE1 | SAMSUNG MZVL2512HCJQ-00B07 | S63CNF0T114205 | GXA7602Q | N/A | 476 GB | GOOD | 0.00 TB | Windows Inbox Driver | -----------------------------------------------------------------------------------------------------------------------------------------------------------
SAMSUNG MZVL2512HCJQ-00B07
have to be checked.The firmware of each drive is displayed in the Firmware
column.
If the firmware version for all your drives is already version GXA7802Q, your firmware is up to date and you do not need to continue this process.
On the other hand, if at least one firmware is different from version GXA7802Q, you must proceed to the update detailed in step 4.
Step 4 - Firmware update
Download the firmware binary on your server.
Execute the following command for each identified drive with firmware different from version GXA7802Q:
- Replace
<X>
with the Disk Number listed in Step 3. - Replace
<firmware directory>
with the directory where the firmware is located.
Samsung_SSD_DC_Toolkit_for_Windows_1.exe --disk <X> ---firmware-download --path <firmware directory>GXA7802Q_Noformat.bin --action 1 --slot 1
- Example:
In our previous example, both NVMe drives needed a firmware update to the latest version GXA7802Q. Here's how we updated the two NVMe drives and the command line returns:
C:\Users\admin\DownloadsSamsung_SSD_DC_Toolkit_for_Windows_1.exe --disk 0:c --nvme-firmware-download --path C:\Users\admin\Downloads\GXA7802Q_Noformat.bin --action 1 --slot 1 ================================================================================================ Samsung DC Toolkit Version 2.1.W.Q.0 Copyright (C) 2017 SAMSUNG Electronics Co. Ltd. All rights reserved. ================================================================================================ ------------------------------------------------------------------------------------------------ Disk Number: 0:c | Model Name: SAMSUNG MZVL2512HCJQ-00B07 | Firmware Version: GXA7602Q ------------------------------------------------------------------------------------------------ [[ WARNING ]] Please Note that Firmware Update may format the disk and you will lose your data Please Ensure that data backup is taken before proceeding to Firmware Update If you are sure then only proceed, otherwise restart the application after taking a backup Continue Firmware image download ? [ yes ]: yes ------------------------------------------------------------------------------------------------ [SUCCESS] Downloaded firmware image successfully ------------------------------------------------------------------------------------------------ C:\Users\admin\DownloadsSamsung_SSD_DC_Toolkit_for_Windows_1.exe --disk 1:c --nvme-firmware-download --path C:\Users\admin\Downloads\GXA7802Q_Noformat.bin --action 1 --slot 1 ================================================================================================ Samsung DC Toolkit Version 2.1.W.Q.0 Copyright (C) 2017 SAMSUNG Electronics Co. Ltd. All rights reserved. ================================================================================================ ------------------------------------------------------------------------------------------------ Disk Number: 1:c | Model Name: SAMSUNG MZVL2512HCJQ-00B07 | Firmware Version: GXA7602Q ------------------------------------------------------------------------------------------------ [[ WARNING ]] Please Note that Firmware Update may format the disk and you will lose your data Please Ensure that data backup is taken before proceeding to Firmware Update If you are sure then only proceed, otherwise restart the application after taking a backup Continue Firmware image download ? [ yes ]: yes ------------------------------------------------------------------------------------------------ [SUCCESS] Downloaded firmware image successfully ------------------------------------------------------------------------------------------------
At this point the firmware update is complete, you need to reboot your server.
Step 5 - Check the firmware version after the server reboot
You can use the same command as in Step 2 to list all NVMe drives on your server:
C:\Users\admin\DownloadsSamsung_SSD_DC_Toolkit_for_Windows_1.exe -L ================================================================================================ Samsung DC Toolkit Version 2.1.W.Q.0 Copyright (C) 2017 SAMSUNG Electronics Co. Ltd. All rights reserved. ================================================================================================ ----------------------------------------------------------------------------------------------------------------------------------------------------------- | Disk | Path | Model | Serial | Firmware | Optionrom | Capacity | Drive | Total Bytes | NVMe Driver | | Number | | | Number | | Version | | Health | Written | | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | 0:c | \\.\PHYSICALDRIVE0 | SAMSUNG MZVL2512HCJQ-00B07 | S63CNF0T114133 | GXA7802Q | N/A | 476 GB | GOOD | 0.00 TB | Windows Inbox Driver | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | 1:c | \\.\PHYSICALDRIVE1 | SAMSUNG MZVL2512HCJQ-00B07 | S63CNF0T114205 | GXA7802Q | N/A | 476 GB | GOOD | 0.00 TB | Windows Inbox Driver | -----------------------------------------------------------------------------------------------------------------------------------------------------------
Your NVMe drive now should have the firmware version GXA7802Q.
Go further
For more information and tutorials, please see our other Dedicated Servers support guides or explore the guides for other OVHcloud products and services.
If you need training or technical assistance to implement our solutions, contact your sales representative or click on this link to get a quote and ask our Professional Services experts for a custom analysis of your project.