PM9A3 Firmware / ERRORMOD related to fw version

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

Shonk

Active Member
Nov 25, 2016
132
62
28
74
I have a Mid 2023 HP PM9A1 1TB in ERRORMOD showing as 1GB
anyone have any idea's

I can upload a hp firmware but it refuses to write i think down to hp signing
 

Citizen03212

New Member
Sep 7, 2018
14
8
3
Not directly related... but a story that may help others. I got a new PM9A3 7.68TB that wasn't being properly detected in Ubuntu... even though two other Inspur-branded U.2's of the same size did show up and work. It either didn't show up at all on boot (if installed with an Inspur), or it would delay the boot with a bunch of nvme-controller-timeout/retry errors and come up with a /dev entry... but fdisk refused to touch it (if booted as the only U.2). It came with GDC5A02Q... and I saw there was a "5B" available... so I figured it could be a firmware problem. Because of my setup it was easier to move it to a Windows desktop for that flash...

...and Windows detected the 9A3 properly?!? And could format and use it and flash it no problem. The difference was the Linux system had a PCIe-to-U.2 adapter (like this)... while Windows had a M.2-to-U.2 cable (like this). I would have guessed the PCIe card would be the more reliable option... but maybe because the cable had it's own SATA-power it was better?

As a final test I moved that 30cm M.2-to-U.2 cable into the Linux system... and the 9A3 was detected and worked perfectly!

I don't know where that leaves me: my PCIe card is still working properly for the Inspur drives... and I'd really like any new U.2's to live in a PCIe slot as well. If it is maybe power related... is there such thing as a PCIe-to-U.2 card with an extra power port? (this was all on an Asus TRX40 motherboard with working bifurcation)
 

stifler95

New Member
Sep 11, 2023
17
2
3
hello everyone. i have PM9A3 fw GDC5502Q Errormod . how to fix it
c:\>SS --disk 0:c --nvme-firmware-download --path c:/GDC5902Q.bin --action 1 --slot 1 --force

================================================================================================

Samsung SSD DC Toolkit Brand Version 3.0.0.2.0

Copyright (C) 2023 SAMSUNG Electronics Co. Ltd. All rights reserved.

================================================================================================

Magician is now configuring the environment for LSI MegaRAID SAS.

Magician is now configuring the environment for LSI SAS IT/IR Controller.

Magician is now configuring the environment for LSI SAS IT/IR2 Controller.

Magician is now configuring the environment for LSI SAS IT/IR3 Controller.

------------------------------------------------------------------------------------------------

Disk Number: 0:c | Model Name: SAMSUNG MZQL27T6HBLA-00A07 | Firmware Version: ERRORMOD

------------------------------------------------------------------------------------------------

[ERROR] Succeed to download the firmware image, but given slot is read only


-----------------------------------------------------------------------------------------------------------------------------------
i cant flash fw
 

TheDe1mos

New Member
Nov 6, 2024
4
0
1
Hi. Need help. I have a Samsung M.2 MZ1L21T9HCLS-00A07 fw GDC7202Q in ERRORMOD mode shows 1gb. Tried to write firmware 7302 and 7502 via DCToolkit:
[ERROR] Succed to download the firmware image, but firmware activation prohibited
[ERROR] Error returned from the device
If you flash via nve cli: nvme fw-download -f GDC7502Q.bin /dev/nvme0
Firmware download success
But there is no firmware in the list of slots.
 

Hubi

New Member
Aug 28, 2015
13
4
3
nvme list
nvme id-ctrl /dev/nvmeXnX
nvme fw-download /dev/nvmeXnX --fw='/path/to/firmware.bin'
nvme fw-activate /dev/nvmeXnX -s 0 -a 1

do a complete power cycle after this.
 

TheDe1mos

New Member
Nov 6, 2024
4
0
1
nvme list
nvme id-ctrl /dev/nvmeXnX
nvme fw-download /dev/nvmeXnX --fw='/path/to/firmware.bin'
nvme fw-activate /dev/nvmeXnX -s 0 -a 1

do a complete power cycle after this.
nvme list
Code:
Node                  Generic               SN                   Model                                    Namespace  Usage                      Format           FW Rev 
--------------------- --------------------- -------------------- ---------------------------------------- ---------- -------------------------- ---------------- --------
/dev/nvme0n1          /dev/ng0n1            S666NE0T240550       SAMSUNG MZ1L21T9HCLS-00A07               0x1          1.07  GB /   1.07  GB    512   B +  0 B   ERRORMOD
nvme id-ctrl /dev/nvme0n1

Code:
NVME Identify Controller:
vid       : 0x144d
ssvid     : 0x144d
sn        : S666NE0T240550     
mn        : SAMSUNG MZ1L21T9HCLS-00A07             
fr        : ERRORMOD
rab       : 2
ieee      : 002538
cmic      : 0
mdts      : 9
cntlid    : 0x6
ver       : 0x10400
rtd3r     : 0x7a1200
rtd3e     : 0x7a1200
oaes      : 0x300
ctratt    : 0x80
rrls      : 0
cntrltype : 1
fguid     : 00000000-0000-0000-0000-000000000000
crdt1     : 0
crdt2     : 0
crdt3     : 0
nvmsr     : 1
vwci      : 0
mec       : 1
oacs      : 0x5f
acl       : 7
aerl      : 3
frmw      : 0x17
lpa       : 0xe
elpe      : 63
npss      : 0
avscc     : 0x1
apsta     : 0
wctemp    : 350
cctemp    : 358
mtfa      : 0
hmpre     : 0
hmmin     : 0
tnvmcap   : 1073741824
unvmcap   : 0
rpmbs     : 0
edstt     : 35
dsto      : 1
fwug      : 0
kas       : 0
hctma     : 0
mntmt     : 0
mxtmt     : 0
sanicap   : 0x3
hmminds   : 0
hmmaxd    : 0
nsetidmax : 0
endgidmax : 0
anatt     : 0
anacap    : 0
anagrpmax : 0
nanagrpid : 0
pels      : 0
domainid  : 0
megcap    : 0
sqes      : 0x66
cqes      : 0x44
maxcmd    : 256
nn        : 32
oncs      : 0x5f
fuses     : 0
fna       : 0x4
vwc       : 0x6
awun      : 1023
awupf     : 7
icsvscc   : 1
nwpc      : 0
acwu      : 0
ocfs      : 0
sgls      : 0
mnan      : 0
maxdna    : 0
maxcna    : 0
oaqd      : 0
subnqn    : nqn.1994-11.com.samsung:nvme:PM9A3:M.2:S666NE0T240550     
ioccsz    : 0
iorcsz    : 0
icdoff    : 0
fcatt     : 0
msdbd     : 0
ofcs      : 0
ps      0 : mp:8.25W operational enlat:70 exlat:70 rrt:0 rrl:0
            rwt:0 rwl:0 idle_power:3.00W active_power:8.25W
            active_power_workload:80K 128KiB SW
nvme fw-download /dev/nvme0n1 -fw ./General_PM9A3_M.2_GDC7302Q_Noformat.bin
Code:
Firmware download success
nvme fw-activate /dev/nvme0n1 -s 0 -a 1 ( I tried different slots 1,2)
Code:
NVMe status: Invalid Firmware Image: The firmware image specified for activation is invalid and not loaded by the controller(0x107)
/Samsung_SSD_DC_Toolkit_Brand_for_Linux_V3.0 --disk 0:c -NG -f
Code:
================================================================================================
Samsung SSD DC Toolkit Brand Version 3.0.0.2.0
Copyright (C) 2023 SAMSUNG Electronics Co. Ltd. All rights reserved.
================================================================================================
Current activated firmware: slot(#1, GDC7202Q)
Next to be applied firmware: EMPTY

Firmware Slot Information:

  Slot #1: GDC7202Q
  Slot #2: EMPTY
  Slot #3: EMPTY
  Slot #4: EMPTY
  Slot #5: EMPTY
  Slot #6: EMPTY
  Slot #7: EMPTY
  Slot #8: EMPTY
------------------------------------------------------------------------------------------------
[Success] Get Log Page Feature completed successfully
------------------------------------------------------------------------------------------------
Cold reboot
Without results. Tried with firmware 7302, 7502
 

Hubi

New Member
Aug 28, 2015
13
4
3
seems correct for a MZ1L21T9HCLS-00A07
In that case, i guess it's bricked.
PM9A3 should be still under warranty.
 

TheDe1mos

New Member
Nov 6, 2024
4
0
1
seems correct for a MZ1L21T9HCLS-00A07
In that case, i guess it's bricked.
PM9A3 should be still under warranty.
Thx. So bad...
Do you think you can recover the data if you turn off trim and run the command:
nvme format /dev/nvme0n1
nvme reset /dev/nvme0
Use data recovery programs to retrieve the information.
 

stifler95

New Member
Sep 11, 2023
17
2
3
nvme list
Code:
Node                  Generic               SN                   Model                                    Namespace  Usage                      Format           FW Rev
--------------------- --------------------- -------------------- ---------------------------------------- ---------- -------------------------- ---------------- --------
/dev/nvme0n1          /dev/ng0n1            S666NE0T240550       SAMSUNG MZ1L21T9HCLS-00A07               0x1          1.07  GB /   1.07  GB    512   B +  0 B   ERRORMOD
nvme id-ctrl /dev/nvme0n1

Code:
NVME Identify Controller:
vid       : 0x144d
ssvid     : 0x144d
sn        : S666NE0T240550    
mn        : SAMSUNG MZ1L21T9HCLS-00A07            
fr        : ERRORMOD
rab       : 2
ieee      : 002538
cmic      : 0
mdts      : 9
cntlid    : 0x6
ver       : 0x10400
rtd3r     : 0x7a1200
rtd3e     : 0x7a1200
oaes      : 0x300
ctratt    : 0x80
rrls      : 0
cntrltype : 1
fguid     : 00000000-0000-0000-0000-000000000000
crdt1     : 0
crdt2     : 0
crdt3     : 0
nvmsr     : 1
vwci      : 0
mec       : 1
oacs      : 0x5f
acl       : 7
aerl      : 3
frmw      : 0x17
lpa       : 0xe
elpe      : 63
npss      : 0
avscc     : 0x1
apsta     : 0
wctemp    : 350
cctemp    : 358
mtfa      : 0
hmpre     : 0
hmmin     : 0
tnvmcap   : 1073741824
unvmcap   : 0
rpmbs     : 0
edstt     : 35
dsto      : 1
fwug      : 0
kas       : 0
hctma     : 0
mntmt     : 0
mxtmt     : 0
sanicap   : 0x3
hmminds   : 0
hmmaxd    : 0
nsetidmax : 0
endgidmax : 0
anatt     : 0
anacap    : 0
anagrpmax : 0
nanagrpid : 0
pels      : 0
domainid  : 0
megcap    : 0
sqes      : 0x66
cqes      : 0x44
maxcmd    : 256
nn        : 32
oncs      : 0x5f
fuses     : 0
fna       : 0x4
vwc       : 0x6
awun      : 1023
awupf     : 7
icsvscc   : 1
nwpc      : 0
acwu      : 0
ocfs      : 0
sgls      : 0
mnan      : 0
maxdna    : 0
maxcna    : 0
oaqd      : 0
subnqn    : nqn.1994-11.com.samsung:nvme:PM9A3:M.2:S666NE0T240550    
ioccsz    : 0
iorcsz    : 0
icdoff    : 0
fcatt     : 0
msdbd     : 0
ofcs      : 0
ps      0 : mp:8.25W operational enlat:70 exlat:70 rrt:0 rrl:0
            rwt:0 rwl:0 idle_power:3.00W active_power:8.25W
            active_power_workload:80K 128KiB SW
nvme fw-download /dev/nvme0n1 -fw ./General_PM9A3_M.2_GDC7302Q_Noformat.bin
Code:
Firmware download success
nvme fw-activate /dev/nvme0n1 -s 0 -a 1 ( I tried different slots 1,2)
Code:
NVMe status: Invalid Firmware Image: The firmware image specified for activation is invalid and not loaded by the controller(0x107)
/Samsung_SSD_DC_Toolkit_Brand_for_Linux_V3.0 --disk 0:c -NG -f
Code:
================================================================================================
Samsung SSD DC Toolkit Brand Version 3.0.0.2.0
Copyright (C) 2023 SAMSUNG Electronics Co. Ltd. All rights reserved.
================================================================================================
Current activated firmware: slot(#1, GDC7202Q)
Next to be applied firmware: EMPTY

Firmware Slot Information:

  Slot #1: GDC7202Q
  Slot #2: EMPTY
  Slot #3: EMPTY
  Slot #4: EMPTY
  Slot #5: EMPTY
  Slot #6: EMPTY
  Slot #7: EMPTY
  Slot #8: EMPTY
------------------------------------------------------------------------------------------------
[Success] Get Log Page Feature completed successfully
------------------------------------------------------------------------------------------------
Cold reboot
Without results. Tried with firmware 7302, 7502
for window. Can you give instructions?
 

Ultranium

New Member
Feb 28, 2021
1
0
1
Huge thanks to DarkServant and to all of you who shared firmware.

I was able to resurrect my unbranded M.2 3.84TB PM9A3 with ERRORMOD/1GB problem.
Flashing new firmware didn't work at first. Downloading went fine, but when I was trying to activate the new firmware with nvme fw-commit I was getting the Invalid Firmware Image: The firmware image specified for activation is invalid and not loaded by the controller(0x107) error, no matter what firmware I was flashing (I tried all 10 of them).

What helped me is formatting the namespace with nvme format --lbaf=1 /dev/nvme0n1.
After running this command, the drive immediately started to show its original FW version (GDC7302Q in my case) and correct size in SMART, and I was able to upgrade the FW to GDC7602Q, just in case.
 

stifler95

New Member
Sep 11, 2023
17
2
3
nvme list
Code:
Node                  Generic               SN                   Model                                    Namespace  Usage                      Format           FW Rev
--------------------- --------------------- -------------------- ---------------------------------------- ---------- -------------------------- ---------------- --------
/dev/nvme0n1          /dev/ng0n1            S666NE0T240550       SAMSUNG MZ1L21T9HCLS-00A07               0x1          1.07  GB /   1.07  GB    512   B +  0 B   ERRORMOD
nvme id-ctrl /dev/nvme0n1

Code:
NVME Identify Controller:
vid       : 0x144d
ssvid     : 0x144d
sn        : S666NE0T240550    
mn        : SAMSUNG MZ1L21T9HCLS-00A07            
fr        : ERRORMOD
rab       : 2
ieee      : 002538
cmic      : 0
mdts      : 9
cntlid    : 0x6
ver       : 0x10400
rtd3r     : 0x7a1200
rtd3e     : 0x7a1200
oaes      : 0x300
ctratt    : 0x80
rrls      : 0
cntrltype : 1
fguid     : 00000000-0000-0000-0000-000000000000
crdt1     : 0
crdt2     : 0
crdt3     : 0
nvmsr     : 1
vwci      : 0
mec       : 1
oacs      : 0x5f
acl       : 7
aerl      : 3
frmw      : 0x17
lpa       : 0xe
elpe      : 63
npss      : 0
avscc     : 0x1
apsta     : 0
wctemp    : 350
cctemp    : 358
mtfa      : 0
hmpre     : 0
hmmin     : 0
tnvmcap   : 1073741824
unvmcap   : 0
rpmbs     : 0
edstt     : 35
dsto      : 1
fwug      : 0
kas       : 0
hctma     : 0
mntmt     : 0
mxtmt     : 0
sanicap   : 0x3
hmminds   : 0
hmmaxd    : 0
nsetidmax : 0
endgidmax : 0
anatt     : 0
anacap    : 0
anagrpmax : 0
nanagrpid : 0
pels      : 0
domainid  : 0
megcap    : 0
sqes      : 0x66
cqes      : 0x44
maxcmd    : 256
nn        : 32
oncs      : 0x5f
fuses     : 0
fna       : 0x4
vwc       : 0x6
awun      : 1023
awupf     : 7
icsvscc   : 1
nwpc      : 0
acwu      : 0
ocfs      : 0
sgls      : 0
mnan      : 0
maxdna    : 0
maxcna    : 0
oaqd      : 0
subnqn    : nqn.1994-11.com.samsung:nvme:PM9A3:M.2:S666NE0T240550    
ioccsz    : 0
iorcsz    : 0
icdoff    : 0
fcatt     : 0
msdbd     : 0
ofcs      : 0
ps      0 : mp:8.25W operational enlat:70 exlat:70 rrt:0 rrl:0
            rwt:0 rwl:0 idle_power:3.00W active_power:8.25W
            active_power_workload:80K 128KiB SW
nvme fw-download /dev/nvme0n1 -fw ./General_PM9A3_M.2_GDC7302Q_Noformat.bin
Code:
Firmware download success
nvme fw-activate /dev/nvme0n1 -s 0 -a 1 ( I tried different slots 1,2)
Code:
NVMe status: Invalid Firmware Image: The firmware image specified for activation is invalid and not loaded by the controller(0x107)
/Samsung_SSD_DC_Toolkit_Brand_for_Linux_V3.0 --disk 0:c -NG -f
Code:
================================================================================================
Samsung SSD DC Toolkit Brand Version 3.0.0.2.0
Copyright (C) 2023 SAMSUNG Electronics Co. Ltd. All rights reserved.
================================================================================================
Current activated firmware: slot(#1, GDC7202Q)
Next to be applied firmware: EMPTY

Firmware Slot Information:

  Slot #1: GDC7202Q
  Slot #2: EMPTY
  Slot #3: EMPTY
  Slot #4: EMPTY
  Slot #5: EMPTY
  Slot #6: EMPTY
  Slot #7: EMPTY
  Slot #8: EMPTY
------------------------------------------------------------------------------------------------
[Success] Get Log Page Feature completed successfully
------------------------------------------------------------------------------------------------
Cold reboot
Without results. Tried with firmware 7302, 7502
when nvme id-ctrl /dev/nvme0n1 , error "/dev/nvme0n1: permission denied , usage nvme id-ctrl <device> [option]"
how to fix it ?
 

joerambo

New Member
Aug 30, 2023
24
6
3
when nvme id-ctrl /dev/nvme0n1 , error "/dev/nvme0n1: permission denied , usage nvme id-ctrl <device> [option]"
It means the command was run without root privileges.

*WARNING* -> I would not proceed with any of the commands without absolutely being sure what they do. Complete data loss will happen if wrong nvme device is selected and so on. please seek knowledgeable person.
 

Amironox

New Member
Dec 11, 2024
1
0
1
Hello all.

Thanks for all inputs, I were able to update one old PM9A3 to GDC5602Q. But what is the lates FW? It's not clear from HDDGuru share.
 

Durango77

New Member
Jan 22, 2025
2
0
1
Added Firmware for m.2 pm983 drives to the the repository.
Look always for the first four digits, which represents the hardware revision/type, after this comes the f/w revision or version from 0 to F, next the vendor code, then probably some capabilities like SED/non-SED, lastly Q for ...Q?
An EDA5**** is wrong for an EDA7**** or EDB5****. But i think it will not accept it anyway because of the vendor-lock.
In the SSD Manager software can be an option to get drives out of errormod, i think i saw something last time i used it with parameter /? or -help.
Hello, DarkServant - do you (or anyone else) know where to get the nvme-cli loadable firmware for the Samsung 990pro 4tbs? Having the same ERRORMOD 1tb problem with 2 of these drives.

1B2QJXD7_20230201.bin on Github is yielding (for me anyway) "The firmware image specified for activation is invalid and not loaded by the controller".

Can load the firmware to the controller OK, just cannot get it to commit.
 

DarkServant

Member
Apr 5, 2022
70
73
18
Hi

Added some firmwares to the repository (Samsung eSSD Firmwares), mostly copied from HDDGuru archive and thanks to napalm_atx who provided some bunch of them inclusive some changelogs.

sm883: HXM7A04Q
pm883: HXT7B04Q
pm983: EDA5702Q, EDB5502Q, EDA7902Q, EDB7902Q
and others...

-- first four alphanumeric letters/numbers = hardware-revision/model, fifth = version of firmware, sixth = vendor in most cases (look out to get a 0...), seventh = features like SED/ non-SED, Q... ask him ;)

Sorry, i don't have this much expertise or contacts, plus i try to resist Samsung SSD's because of this firmware crap.
PS: don't forget that NAND SSD's need enough OP to work nice, 14% isn't much.


1B2QJXD7_20230201.bin on Github is yielding (for me anyway) "The firmware image specified for activation is invalid and not loaded by the controller".

Can load the firmware to the controller OK, just cannot get it to commit.
for client drives try the Samsung consumer tools or try the SSDManager, BTW. the latest F/W seems to be "JXD73B2Q"