EU ASRock Rack B450D4U-V1LQ5 mATX AM4

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

dbram

Member
Mar 3, 2021
82
56
18
try to get rid of these 5700X
another long shot:
  • did you use the latest microcode updates ?
  • are you using bios 2.12 ?
it's a step i took when installing proxmox nodes, apply microcode updates, one of the proxmox community scripts, you never know :)
 

dbram

Member
Mar 3, 2021
82
56
18
actually the command we're supposed to use is this below, since the other also show the ECC of L1, L2, L3 cache of the cpu

Code:
dmidecode -t memory | grep -i 'error correction'
without ECC: Error Correction Type: None

Code:
dmidecode -t memory | grep -i 'error correction'
with ECC: Error Correction Type: Multi-bit ECC
 
  • Like
Reactions: luckylinux

dbram

Member
Mar 3, 2021
82
56
18
Isn't it just to install the amd64-microcode Package and possibly removing the Blacklisting in e.g. /etc/modprobe.d/amd64-microcode-blacklist.conf ?

Why do we need a custom Script just for that :oops: ?
it does more than that I think...
msg_info "Downloading AMD processor microcode package $microcode"
curl -fsSL "https://ftp.debian.org/debian/pool/non-free-firmware/a/amd64-microcode/$microcode" -o $(basename "https://ftp.debian.org/debian/pool/non-free-firmware/a/amd64-microcode/$microcode")
msg_ok "Downloaded AMD processor microcode package $microcode"

msg_info "Installing $microcode (this might take a while)"
dpkg -i $microcode &>/dev/null
msg_ok "Installed $microcode"
 
Last edited:

dbram

Member
Mar 3, 2021
82
56
18
FYI: the same memory module on the Gigabyte MC12LE0's using a 5600X
Code:
sudo dmidecode -t memory | grep -i 'error correction'
    Error Correction Type: Multi-bit ECC
 

azee

Member
Jan 7, 2017
54
16
8
Stockholm, Sweden
I received my 4 sticks of "ATP X4C16QE8BNRCSE-7-LI1" in the morning. I plugged the 2 stick and wanted to verify ECC, but I can't find any ECC menu at all.
I don't even see Advanced -> AMD CBS -> UMC Common Options

I am running on Ryzen 5600x at L2.11.

I don't have any good cooler at the moment for long testing, currently using an old AM3 based cooler for verification, temp jumped to mid 60C.

imgur link
 
Last edited:

RolloZ170

Well-Known Member
Apr 24, 2016
10,078
3,221
113
germany
microcode of BIOS can be updated with a Hex editor, but will not be accepted by AFU flash tools after mod. i guess.
the microcode are located in a padding after AmiNvramMainAreaGuid

Base: 57000h, Offset: 57000h
Full size: 8F8000h (9404416)
the microcodes have a size of 0xC80 or 0x15C0
the first microcode ( cpu00800F82_ver0800820D_2019-04-16_B0DE605C ) is located at 24D000h
 
  • Like
Reactions: luckylinux

gb00s

Well-Known Member
Jul 25, 2018
1,344
739
113
Poland
In my humble opinion and being retarded for life, why a motherboard shall support ECC w/3700x but won't with 5700X. If I'm not mistaken these were HETZNER boards for AX41 environments that were offered with Ryzen 5 3600 and 5600's with ECC. They are still in business .... with ECC.
 
  • Like
Reactions: b3rrytech and dbram

azee

Member
Jan 7, 2017
54
16
8
Stockholm, Sweden
OK, so it is like @RolloZ170 said.

You need a COMPLETE Poweroff (don't know for how long exactly, give it at least 30 Seconds with the Power Cord DETACHED).

I rebooted with the Graphics Card installed and it still works with ECC. And I still can't see these Menus that should exist in the BIOS ...

Note that I am on BIOS L2.12 now. But BIOS update alone did NOT fix this !

Code:
root@LiveUbuntu02:~# sudo dmidecode -t memory | grep -i 'error correction'
    Error Correction Type: Multi-bit ECC
root@LiveUbuntu02:~# dmesg | grep -i edac
[    0.650354] EDAC MC: Ver: 3.0.0
[    6.543072] EDAC MC0: Giving out device to module amd64_edac controller F19h_M20h: DEV 0000:00:18.3 (INTERRUPT)
[    6.543076] EDAC amd64: F19h_M20h detected (node 0).
[    6.543080] EDAC MC: UMC0 chip selects:
[    6.543082] EDAC amd64: MC: 0:     0MB 1:     0MB
[    6.543084] EDAC amd64: MC: 2:     0MB 3:     0MB
[    6.543088] EDAC MC: UMC1 chip selects:
[    6.543089] EDAC amd64: MC: 0:     0MB 1:     0MB
[    6.543091] EDAC amd64: MC: 2:  8192MB 3:  8192MB
I used the Scripts inside the SSP Subfolder. Boot into UEFI Shell. Run patch.nsh. Reboot with reset. Boot into UEFI Shell. Run read.nsh. Shutdown. Disconnect Power Cord for at least 30 Seconds. Boot into Debian/Ubuntu and check dmesg / dmidecode.

Note: feel free to download setup_var.efi from the Official Github Page, you don't need to use the one that I provided if you don't trust it. I just don't want starting to have to edit Subfolders and whatnot or Upload the 8 Patch + Read Scripts individually depending on what CPU we want to test against.

It still sucks that nothing shows up in the BIOS Menu. But I guess this is better than nothing, right :) ?

EDIT 1: maybe also worth trying with JUST the BIOS Update + Poweroff. But from what I recall from @ALinden, that didn't seem to work. Not sure if he did a complete Power Off though ...

EDIT 2: @ALinden, @azee: can you try the Procedure with the Poweroff as Indicated in this Post ? I'm NOT getting the Menu showing up in BIOS but ECC seems to have started working now !
will this file works with 5600X, or do i need to change any thing? i am quite new with bios mod, so i just want to be sure.
and i attached no graphic or lan card in either of pcie slots. with stock L2.11 (complete power off)
Code:
 sudo dmidecode -t memory | grep -i 'error correction'
output was
Code:
Error Correction Type: None
 

gb00s

Well-Known Member
Jul 25, 2018
1,344
739
113
Poland
AX41's with the 3000 & 5000 CPU's at Hetzner is available from the 'Auctions' section only as these systems are kind of 'EOL' in their terms. From an operation and financial risk perspective, I can't imagine Hetzner would offer ECC environments not functioning as advertised .... because of this 100 Million EUR database that may .... Finish it by yourself.
 
  • Like
Reactions: b3rrytech

ALinden

Member
Mar 21, 2025
41
21
8
Hey, so is this summary correct at the moment:

@luckylinux ECC started working with 5700X but it is not clear what was the final thing that made it work. One possibility is microcode update?

@dbram ECC just works with 3700X and bios 2.12

@azee ECC not working with 5600X, also tried setup_var.efi to change ECC bios setting to "Enable"

As for me:
I did not use any GPU while testing.
I think I did complete poweroff, but not 100% sure.
Will test today.
 

ALinden

Member
Mar 21, 2025
41
21
8
I found out that there is a utility by Ami to manage UEFI settings form linux command line. Its name is SCELNX. Googling that I found that someone uploaded a version to github: tools/SCELNX64 at master · doublechiang/tools
Running it like this: ./SCELNX_64 /o /s nvram.txt /a produces a text file with all settings and options. Interestingly variable (varstore_id) is not listed. Looking at the output I see that with 5700X "ECC Enable" has offset 0x11B. So this confirms that with Vermeer CPU CbsSetupDxeSSP is used.

First test today was the total power off for couple if minutes. No change.

Then I tried to change the installed 1x8Gb to 2x16Gb. Just to see that maybe the memory training or something the bios does upon detecting memory change will trigger ECC activation - no change.

Then I reviewed the offsets that @luckylinux used.
I could not see how the "Overclock" setting with 0xD4 offset could be "parent" or dependency for "ECC enable". However I tought I will try it.
So I did change it from 0xFF to 0x01 (manually with setup_var.efi and only that setting). Rebooted with uefi shell command reset (so no power off) and surprise surprise ECC is active :cool::cool::cool: dmidecode shows it and also there are many EDAC lines in dmesg log.

I made couple of reboots and ECC was working. Very nice I thought.

Then I thought I need to verify the procedure to get ECC working.
Rebooted to BIOS and selected "Load UEFI defaults".
Reboot to Linux, verified that ECC was not active.
Reboot to uefi shell, set AmdSetup:0x11B=0x01 and AmdSetup:0xD4=0x01
Reboot to Linux and . . . nothing . . . ECC not active :eek::eek::eek:
Tried total poweroff, change memory modules - still nothing.

Some setting or event will trigger activation of ECC but it is not simply changing these two settings.
 
Last edited:

ALinden

Member
Mar 21, 2025
41
21
8
When I got ECC active I did not set 0x20 to 0xFF -- just trying to set 0xD4 activated ECC

After "load defaults" and not getting ECC active I have tried setting 0x20 to 0xFF too but ECC still not activating.

If you say you can repeat this, do you mean:
1. load defaults
2. verify ECC not active
3. change the three settings
4. verify ECC active
?
 

ALinden

Member
Mar 21, 2025
41
21
8
Just for clarity: I did the reset to default only to verify that our thinking what is needed for ECC activation is correct.

And now I can't get ECC active again. And yes I have set 0xD4
 
  • Wow
Reactions: luckylinux