ASRock DeskMini X300 Owners Thread


You can possibly use my custom compiled version of flashrom since it can circumvent signing checks. But please use it at your own risk!

So Iā€™ve just installed a Noctua slim 12mm fan (NA-12x15) over their LH-N9a cooler, as the case and both NVME SSDā€™s were getting pretty warm under multi-core load (which is a problem as it will live embedded in foam in a camera-style case), and also to cool the memory and VRM better.

Fits perfectly (even with my Ebay USB2 bracket installed):



but to get it in you need to cut off at least half of a small metal piece (Dremel with cutting disc or similar, or hacksaw):



I secured it with zip ties. Took a while to find the best mounting points so that it sits straight. At the front I used the heatsink, and the back the case holes:






The fan comes with a long extension cable but itā€™s not needed, if you unclip where it enters the fan body (from the open notch), the short cable is long enough to reach the header: Then just ensure that the nearby zip tie pulls in its direction so the fan canā€™t move away and put strain on the cable.




Itā€™s super secure: https://r-i-l.net/_pics/x300/120mmfan/tight.mp4

Of course if I ever need access to the memory, I have to redo some ties. The fan has a pleasant noise profile, so even at 100% itā€™s loud, but not annoying. Very pleased.


EDIT: temp performance at 100% multi-core load (CPU-z non-AVX stresstest) after reaching steady state (CPU clock around 4.15 GHz):

1 Like



Yeah no luck, I cannot get reliable beyond 3466Mhz with my E-die kit. I can post and even get into the BIOS (sometimes) up to around 4000mHz with loose timings, but even that is unreliable, and even if it then does make it into MemTestx86+ (sometimes) it will randomly reboot during the later tests (6 onwards). Iā€™ve tried SOC up to 1.2v. As it always crashes near the end of a test, it seems one of my sticks is the limiting factor. More voltage would help.

@Monk , have you confirmed yours is B-die? If yes you lucked out. Thaiphoon reports mine as E, and from the performance that seems right:



well at least theyā€™re dual-rank.

Does anyone know how/if you can raise the APU STAPM limit? that seems to be my limiting factor (see last pic from my fan post). it also makes PBS pointless as it seems to hit the STAPM limit sooner & results in slightly lower perf at full multi-core load.

EDIT: after messing with the BIOSā€™ STAPM Boost (enable + super long time) it doesnā€™t really help a lot as then you hit EDC limit (95A). And at full multi-core load temperature drops the clock anyway regardless. I guess those settings can help bursty and lower-core loads (Iā€™m mainly interested in sustained perf).

Dear friend,
I appreciate your good idea with the reset button on the asrock deskmini X300 pc. I like it a lot.
When working with OC and debugging but also in other situations, I often had to use hw reset by shorting the pins on the header.
The w10pro system just froze.
I want to ask you, send me a picture of how you connected the button to the matherboard and arranged
inside.
Thank you in advance for your information.

mail: milan.strojnĆ½[email protected]
Sincerely
Milan StrojnĆ½



Connect the button to the Clear CMOS Jumper and the switch will now act like youā€™re shorting the pins when you have the switch on.

Dear friend,
Thank you for your reply. It is a good and quick tool for OC. I will definitely use it. But I also thought of another situation in which the windows OS freezes but the BIOS settings are OK and I donā€™t need it to change to the DEFAULT state.
Reset from PANEL1 header. Perimeter itā€™s clear, but how to do it best technically, especially since the reset button located on the rear panel of the chassis and I still need to disconnect the wires from PANEL1 when I open case X300.
Best Regards
Milan

Hi,

i recently bought a X300, and this thread is very interesting to me, as i also got a 3400g and iā€™m testing some oc on this (using latest bios). For memory i got some sk-hynix 2666v (2x8g) which is hynix cjr chips. They run fine at 3600 cl16 with 1.35v, but my 3400g is not stable at this clock.

I had to tweak the bios settings in order to achieve 3600 cl16 with the 3400g fairly stable (memtest/tm5 runs fine). Set ProcODT to 53.3, RttNom RZQ/7, RttWR off, RttPark RZQ/5. It still crashes in 3d benchmarks. Raising vsoc helps, but it may need more than this board can reliably give. 3533 runs fine, though.

I also had to undervolt the cpu, 3400g and 1.35v memory is a bit too much for this combo. I set to 3800mhz (38x), 1.2v vcore.

Trying to change to gfx clock results in severe throttlingā€¦ Also power consumption when benchmarking is very close to 120w.

I also got a 4600g as a loaner to test, and it seems to be a much better match. Temps and power are way lower (unigine heaven runs at 60w), cinebench r20 is similar to ryzen 5 3600. Also 3600mhz ddr with same settings was instant success. Benchmarks i tested give similar results as 3400g (Heaven 1366x768 gives 74.1 fps on 4600g@3600ddr vs 72 fps 3400g@3533ddr). I will now try to oc more.

Regards,
Tiago

yes Iā€™m really impressed with the 4750G overall, so Iā€™m not surprised the 4600G is equally good. itā€™s amazing we can have that kind of power in that size with the efficiency weā€™re getting.

Iā€™ve not really stressed the system for its intended purpose yet (live audio) as Iā€™m still building the portable rig around it. but it holds up very well under stress tests.

be interesting to see if we get up 5000 series APU support for another notch up.

It is really useful topic, thanks for share!




So Iā€™ve been trying to get this to work for a while on my A300 using the X300 Bioses.

Early A300 bioses gave you access to AMD CBS and PBS under the "Advanced" Tab, but it was removed at some point soon after release. I see the entries "AMD CBS" and "AMD PBS" in AMITSE, but I donā€™t see the corresponding FormSet hex value anywhere, even in the pre-removal bioses for the A300. I donā€™t know how the form was originally linked within the "Advanced" tab.



Can you please link to the last BIOS for A300 supporting "ACS Enable" and the next one not supporting it so I can compare the two?

1.70 BIOS is out: https://www.asrock.com/nettop/AMD/DeskMiā€¦/index.asp#BIOS

"Update AMD AM4 AGESA ComboBIOSv2 PI 1.2.0.3 Patch A"

(havenā€™t tried it yet)



While I havenā€™t been able to hack back the "AMD CBS" menu into the BIOS I have discovered some potential solutions. Iā€™ll share my findings in this post so you can give it a try.

There are two modules in the BIOS containing the "AMD CBS" menu. Theyā€™re both called "AmdSetup" and are located in CbsSetupDxeRV and CbsSetupDxeRN. The only one that contains "ACS Enable" is CbsSetupDxeRV and it does not appear to be included with the BIOS when itā€™s flashed.

The only options we have access to are located in the "NBIO Common Options" sub menu in CbsSetupDxeRN. Please note these offsets only apply to X3MSTX_1.70.

1
2
3
 
IOMMU                Name=AmdSetup VarOffset=0xC9   Disabled=0x0, Enabled=0x1, Auto=0xF (default)
PCIe ARI Support Name=AmdSetup VarOffset=0x14D Disabled=0x0, Enabled=0x1, Auto=0xF (default)
PCIe ARI Enumeration Name=AmdSetup VarOffset=0x1A7 Disabled=0x0, Enabled=0x1, Auto=0xF (default)
 


We can edit the UEFI variables using a tool called RU.efi:
1. Format a USB disk to FAT32 and install GRUB2 on it
a. Linux (Where /media/username/GRUB is your USB drive):
1
 
$ sudo grub-install --boot-directory=/media/username/GRUB --efi-directory=/media/username/GRUB --removable --target=x86_64-efi
 

b. Windows (Where G: is your USB drive):
1
 
> grub-install.exe --boot-directory=G:\ --efi-directory=G: --removable --target=x86_64-efi
 

2. Download RU.efi from https://ruexe.blogspot.com the latest is 5.28.0397.zip (Password: 3709180014499)
3. Download RuSmi driver from RuSmi.zip (Password: 10072767)
4. Copy RuSmiPi.efi and RU.efi to the root of your USB drive
5. Reboot the X300 and press F11 to get the boot menu and select the UEFI USB device
6. When it boots into GRUB you should see a grub prompt:
1
2
3
4
5
 
grub> ls -l
grub> ls -l (hd0)/
grub> chainloader (hd0)/RuSmiPi.efi
grub> chainloader (hd0)/RU.efi
grub> boot
 

7. You may have to try loading RU.efi one extra time. You should now be in RU.
Here are some useful shortcuts:
1
2
3
4
5
6
7
 
Alt-= to show a list of EFI modules
Press <enter> to edit EFI variable offsets
Ctrl-PgUp to go up a page of variables
Ctrl-PgDn to go down a page of variables
F12 for screenshot
Ctrl-W to write changes
Alt-Q Quit
 

8. You can select "AmdSetup" from the list and press <enter> to edit the variables. The reason we know it's CbsSetupDxeRN is because the size is 0x5A8 (whilst CbsSetupDxeRV is 0x5A7)

RU01.png


RU02.png


RU03.png


RU04.png


RU05.png



Unfortunately after these changes I see no changes in the IOMMU grouping. I donā€™t know if this is a limitation of the X300, my 4750G or the fact we donā€™t have access to the "ACS Enable" option. Iā€™m getting a 5700G tomorrow and will be installing it to see if the extra PCIe lanes changes anything.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
IOMMU Group 0:
00:01.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge [1022:1632]
00:01.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge [1022:1633]
01:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983 [144d:a808]
IOMMU Group 1:
00:02.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge [1022:1632]
00:02.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge [1022:1634]
00:02.3 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge [1022:1634]
00:02.4 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge [1022:1634]
02:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983 [144d:a808]
03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 15)
04:00.0 Network controller [0280]: Intel Corporation Wi-Fi 6 AX200 [8086:2723] (rev 1a)
IOMMU Group 2:
00:08.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge [1022:1632]
00:08.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus [1022:1635]
00:08.2 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus [1022:1635]
05:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Renoir [1002:1636] (rev d8)
05:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Device [1002:1637]
05:00.2 Encryption controller [1080]: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor [1022:15df]
05:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Renoir USB 3.1 [1022:1639]
05:00.4 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Renoir USB 3.1 [1022:1639]
05:00.6 Audio device [0403]: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller [1022:15e3]
06:00.0 SATA controller [0106]: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] [1022:7901] (rev 81)
IOMMU Group 3:
00:14.0 SMBus [0c05]: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller [1022:790b] (rev 51)
00:14.3 ISA bridge [0601]: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge [1022:790e] (rev 51)
IOMMU Group 4:
00:18.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 0 [1022:1448]
00:18.1 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 1 [1022:1449]
00:18.2 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 2 [1022:144a]
00:18.3 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 3 [1022:144b]
00:18.4 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 4 [1022:144c]
00:18.5 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 5 [1022:144d]
00:18.6 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 6 [1022:144e]
00:18.7 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 7 [1022:144f]
 

X3MSTX_1.70_CbsSetupDxeRN IFR.txt (229 KB)

X3MSTX_1.70_CbsSetupDxeRV IFR.txt (224 KB)

X3MSTX_1.70_Setup IFR.txt (442 KB)



It looks like we can change the DRAM voltage using RU.efi. Hereā€™s the relevant variable in Setup (X3MSTX_1.70)

1
2
3
4
5
6
7
 
0x28928 		Gray Out If {19 82}
0x2892A QuestionId: 0x1D4 equals value 0x1 {12 06 D4 01 01 00}
0x28930 One Of: DRAM Voltage, VarStoreInfo (VarOffset/VarName): 0x242, VarStore: 0x1, QuestionId: 0x2B33, Size: 2, Min: 0x4B0, Max 0x546, Step: 0x0 {05 94 F4 0A F5 0A 33 2B 01 00 42 02 14 11 B0 04 46 05 00 00}
0x28944 One Of Option: 1.200V, Value (16 bit): 0x4B0 (default) {09 08 F6 0A 31 01 B0 04}
0x2894C One Of Option: 1.350V, Value (16 bit): 0x546 {09 08 F7 0A 01 01 46 05}
0x28954 End One Of {29 02}
0x28956 End If {29 02}
 

Note that the value is arbitrarily set to 0x04B0 (1200) or 0x0546 (1350) so you should be able to go to the 0x242 offset in Setup and change these bytes. Just be aware the bytes are swapped.

RU06.png



Of course do it at your own risk!

FYI thereā€™s custom version of X3MSTX_1.70 available that contains the latest AMD drivers and microcode here

Unfortunately 1.70 includes AGESA 1.2.0.3a which has new security measures that renders the use of flashrom with a custom BIOS useless. More info here

So I wrote to ASRock Support to ask if "ACS Support" could be added to the 1.70 BIOS. I did not expect a response but I got one!





So they did send me a modified 1.70 BIOS with "PCIe ARI Support" and "PCIe ARI Enumeration" settings included. From my previous experiments with these two options it did not expand the IOMMU groups so Iā€™m not entirely sure the point of these two options?

Either way you can download this new BIOS from here

Iā€™ll keep a table here to keep track of ACS support that Iā€™ve found inside AMD BIOSā€™s

SeriesArchitectureCodenameModuleACS Support
Ryzen 1000ZenZeppelinCbsSetupDxeZPYes
Ryzen 2000GZenRaven RidgeCbsSetupDxeRVYes
Ryzen 3000GZen+Picasso??
Ryzen 4000GZen 2RenoirCbsSetupDxeRNNo
?Zen 2StarShipCbsSetupDxeSSPYes
Ryzen 5000GZen 3Cezanne??


EDIT: 1.70B also contains updated microcode (A50F00/A50000C)

Hello, I have tested for 3400G sleep mode S3 is enabled all across Bios
I tried in 4650G pro and 4750G pro both is not enabled
Anyone can help how to hack the bios settings to make the S3 Mode enabled for all CPU?

thatā€™s interesting. 5700G Sleep isnā€™t enabled either.

I wonder why - maybe 4000/5000 sleep requires more effort, and they never implemented the BIOS code for it (EDIT: or they require motherboard hardware support that they never built in). However from my recent BIOS splashscreen hacking (my instructions) I also found that thereā€™s only about 130KB of space left in the 1.72 BIOS image. Maybe they canā€™t fit the code in? They already use a 1 pixel black splashscreen (thatā€™s why thereā€™s no logo shown when you enable it).

BTW, the splashscreen hacking also worked on my MSI Tomahawk X570 BIOS, so this seems to be pretty universal for modern BIOSā€™.

once more (in case you missed it): my custom BIOS splashscreen hack (works on other systems too): https://smallformfactor.net/forum/threadā€¦106#post-256803