Updating NVMe Drive Firmware Using nvme-cli: Example with Samsung PM9A3 (How to update firmware?)
| F.A.Q. • SupportUpdating NVMe Drive Firmware Using nvme-cli: Example with Samsung PM9A3
How to update firmware?
Updating the firmware of an NVMe drive, such as the Samsung PM9A3 (HDS-SMN0-MZ1L2960HCJRA7), using the nvme-cli
tool can be relatively straightforward, as long as you have the appropriate update files and the drive is functioning properly. Below is a step-by-step guide on how to do it:
Step 1: Install the nvme-cli
Tool
If nvme-cli
is not yet installed, you will need to do so. On Debian/Ubuntu-based systems, you can install it with the following command:
sudo apt install nvme-cli
On Red Hat/CentOS/Fedora-based systems:
sudo yum install nvme-cli
Step 2: Verify the NVMe Drive is Detected
To ensure the NVMe drive is detected by the system, use the following command:
nvme list
This will return a list of all connected NVMe drives, for example:
Node SN Model Namespace Usage Format FW Rev
-------------- ------------------ --------------- --------- ------------------- ------------- -------
/dev/nvme0n1 S4XXXXXXXXXXXXXX SAMSUNG MZPLL1T9 PM9A3 1.92 TB / 1.92 TB 512 B + 0 B GDC7302Q
Note the device path, such as /dev/nvme0n1
, as you will need it in subsequent steps.
Step 3: Download the Firmware Update
Samsung provides firmware update files for NVMe drives like the PM9A3, usually in a binary format. You need to download the appropriate .bin
file from an official source (e.g., from the manufacturer’s website). An example file name could be something like General_PM9A3_M.2_GDC7502Q_Noformat.bin
.
Step 4: Check the Current Firmware Version
To check the current firmware version on your drive, use the following command:
nvme id-ctrl /dev/nvme0n1
Look for the line starting with FR
(Firmware Revision), which should look like this:
fr : GDC7302Q
Step 5: Perform the Firmware Update
After downloading the new firmware file and confirming it is correct, use the following command to update the firmware:
sudo nvme fw-download /dev/nvme0n1 --fw=./fw/General_PM9A3_M.2_GDC7502Q_Noformat.bin
Firmware download success
This command will upload the firmware to the drive but will not activate it yet. To activate it, you will need to reboot the drive.
Step 6: Activate the New Firmware
To activate the new firmware, run the following command:
sudo nvme fw-activate /dev/nvme0n1 -s 2 -a 1
Success committing firmware action:1 slot:2
If the update requires a system restart, you will receive a message indicating so. You can then issue the following command:
sudo reboot
After the reboot, the new firmware should be activated.
Step 7: Verify the Firmware After the Update
After the restart, check the firmware version again to ensure that the update was successful:
nvme id-ctrl /dev/nvme0n1
The new firmware version should be displayed.
Final Notes
- Backup Your Data: Before starting the update process, ensure you have a backup of all important data, as firmware updates can sometimes result in data loss.
- Compatibility: Ensure that the firmware file is compatible with your NVMe drive model.
- Safety: It is best to perform firmware updates on a stable and reliable system with minimal load.
That's it! This is how you update the firmware on the Samsung PM9A3 NVMe drive using nvme-cli
.
Related pages:
- Supermicro SYS-6029TR-DTR How to disable / enable ASPM?
- How to Enable VT-d (IOMMU) on Supermicro Motherboards Using the Example of X11SCZ-F?
- Installing Windows on an M.2 NVMe drive [AMI Native Support].
- The NVMe drive is marked as faulty by the BIOS on Supermicro motherboards (NVM Express Controller Failed)
- How to Format an NVMe Drive? How to Permanently Erase Data from an NVMe Drive?