[REQUEST] ASRock 970m Pro3 - Max CPU/CPU-NB Offset Modification

Board: ASRock 970M Pro3
Bios: AMI APTIO IV - Version 1.60
Official Link: http://asrock.pc.cdn.bitgravity.com/BIOS…o3(1.60)ROM.zip
Modified bios: http://s000.tinyupload.com/index.php?fil…210691220917037

So, greetings everyone! Coming here hoping I can get some assistance with a single modification as this bios is a bit of a work in progress for myself. Was directed to ask for someone specific but that seems to not be advised. I’ve so far modified the current bios with updated uCodes and AHCI module thus far. Some additional menu options have been unhidden such as the Ram SubTimings with others adjusted. However, the one thing I cannot find how to do is to edit the Maximum CPU Voltage Offset [and possibly add offsets for the CPU-NB].

Currently, this board has a maximum CPU Offset of +150mv which only results in about 0.075v according to VCore reading. So, setting the CPU to 1.125v +150mv results in only 1.2v total. The last board I used (a GA-880GMA-USB3 v3.1) I was able to use offsets as far as +400mv without issues on both CPU and CPU-NB. This is currently the only thing holding me back from overclocking my Opteron 3380 to it’s potential from the last board as I need a higher offset to compensate for the P1-State voltage limit and this is a locked chip. The last board I ran 1.525v CPU/1.450v CPU-NB without issue.

Is there any way I can get a pointer to where to start looking to do this, be it by Hex editing the offset voltages itself or some other method? Otherwise, is there someone that can help add or adjust this in my current bios edit? What I need is the CPU-Offset to range from +100 to +450 and an addition of the ability to either unlock the max CPU-NB voltage from 1.3125v or an additional offset upwards of +100 to +450 as well.

@Chozo4 - I see CPU voltage up to 2.00V, same for CPU-NB voltage (Both of those direct voltage setting type options, not the offset types). Can you not see this manual option, and only see CPU Voltage Offset?

On offset types, I only see CPU voltage offset, which goes to +150 as you mentioned / Then I see only NB Offset, which goes to 1.4

Sorry, I tried a few ways to increase the CPU voltage offset option, but no luck. Maybe someone here knows how to do, but it’s above my skillset.
I can however, make the direct CPU Voltage setting, and the CPU-NB voltage visible for you if they’re not currently and you only have this offset option instead.


Yeah, The direct voltage settings are indeed available and it goes up to 2.0v in the bios itself but the voltages themselves on boot are being limited by the ‘max voltage’ reported by the CPU itself which is 1.3125v. Every P-State but P1 has a 1.3125v maximum through software whereas P1 is limited to 1.125v. As a result the CPU Direct voltage being set above 1.125v in bios also prevents the BIOS from posting. Had a similar P-State limitation on my other board but it was circumvented with a +300mv offset. The CPU-NB is also locked to 1.3125v respectively whereas my other board I could ramp up to 1.6v if I so wished (although ill advised). It almost sounds like it is something to do with AGESA or some other setup limitation.

CPU max voltage? I’ve never heard of such a thing in any CPU AMD or Intel, all CPU’s run what you feed them, which is only limited by BIOS settings - which you can do up to 2V

Maximum P-State through software? What software is limiting that? Remove that software, problem solved? Or, disable P-States?
I don’t use AMD, so not familiar with all these terms, but I know it’s similar to Intel power saving stuff, and even with those enabled/disabled on Intel, you can still set whatever voltage you want in BIOS and it will be applied, but lower if power saving features are enabled, except when heavy load is applied then max you set = max applied.
I see you left Cool&Quiet enabled, is this limiting you? Did you set Windows power to Max Performance in control panel?

Since I do not use AMD, and maybe not recognize something that would help, did you look through the debug folder in AMIBCP to be sure nothing is enabled there that’s holding you back? This is the no-name folder under Main
Did you have this same issue before you updated CPU microcodes?

@Lost_N_BIOS I’ll post a screenshot of it in bios in a moment. My last board the CPU would take whatever it was fed but this board caps it based on CPU in the BIOS. The Software is AMD MSR Tweaker which lets you change the voltages and multipliers of each of the P-States. However, being a locked chip I have to rely on Turbo thus requiring PStates. If I disable P-States/ APM / CnQ I am limited to 3.7ghz base (with 285BClk) whereas with PStates I can additionally push a Half-turbo of 4.1ghz and Single core turbo of 4.7ghz. Without a high enough offset on this board I will not be able to take advantage of that as Pstate overclocking (with the P1 voltage limit) will lower the voltage too low on half-turbo.

I looked under the debug folder and found nothing of relevance despite seeing a few other entries that weren’t otherwise found in other categories. The uCode being either old or new had no effect on this issue on either board.

I don’t need to see BIOS, can see everything in AMIBCP anyway I still don’t understand what you mean “Caps it based on CPU in the BIOS”
There is nothing to cap a CPU voltage to any limit in the BIOS, BIOS may show you each CPU"s VID or something, but that is not a limit only a value it reads burned into the CPU at manufacture

With P-States disabled, and not using that software, no matter what CPU Freq is, you can set 2V if you wanted and see that value in windows, correct?
Since the BIOS is missing expanded P-State settings, and this is how you are controlling with software, that seems to be the only option you have on this board (Or flash in some other higher tier boards BIOS that has similar layout but better BIOS options)


- With this board it will not boot above 1.125v when set as a direct voltage in BIOS. In another board this limit did not exist.
- In Windows, P-States in this case are required to set the voltage above up to 1.3125v excluding P1. Setting any voltage above will not stick and will default back to 1.3125v. Setting any voltage above 1.125v for P1 will also default back to 1.125v. This is also reflected in windows and based on the heat generated. Software used does not matter as even AMD’s own PSCheck exhibits the same behavior.
- All of the PStates do exist in this board and do work. It is however limited to a hard direct voltage cap. Only the offset can raise it further. The low voltage limit is a common issue with P-State #1 on other Bulldozer\Piledriver boards. P1 is for the half-load turbo.

What I mean by “caps based on CPU in the BIOS” is with this board if i had say an FX-8350 then the CPU Voltage limit would be upwards of 1.50v and could not be raised further directly. As it is a reported maximum of 1.3125v on my Opteron 3380 it is therefor limited and cannot in any way be adjusted higher without offsets. I know you can see it in the AMIBCP but seeing what I’m experiencing could help.




Sounds like a BIOS bug or something, there would be 100% return on this model and 1000’s of public complaints if BIOS was CPU voltage limited like that.

Heat generated limits I did see in the BIOS @ >> Debug >> Bottom of page >> CPU Thermal Throttle (Auto) + Same at Advanced >> CPU Config (Auto) - disable both and see if you still have thermal related issues.
I got what you meant about the P-States, but this BIOS has terrible/none of the related settings that many others I’ve seen have

I’ve never seen or heard of such a CPU limit in any AMD Board or any AMD CPU. None I have do this, I can set whatever BIOS allows for any CPU I have (This includes any AMD As well, but I don’t have many top end ones as I only pickup cheap ones for testing boards with, but have never seen such a limitation)
Googling around for this, it seems like that may be auto max voltage limit meant for turbo usages only, it shouldn’t be limiting you directly setting more (crap BIOS coding I think)

I don’t know what you meant by your last sentence >> I know you can see it in the AMIBCP but seeing what I’m experiencing could help.

Did you test this, with Cool and Quiet disabled too >> With P-States disabled, and not using that software, no matter what CPU Freq is, you can set 2V (don’t set that, but maybe 1.4v) if you wanted and see that value in windows, correct?

I checked the IFR from setup module too, nothing limited or suppressed, all same as AMIBCP and should be visible/selectable by you, except for this crap max voltage thing which I’ve never seen anytime I’ve played with AMD (even on 970 boards)
This must be an Asrock thing, since I’ve not seen it on Asus or Gigabyte AMD boards. Sorry, I can’t see anyway to remove this in BIOS , nor can I add to your offset amounts


What I meant by " I know you can see it in the AMIBCP but seeing what I’m experiencing could help." is that while you can see up to 2.0v in AMIBCP it doesn’t reflect that in actual usage. Sorry if I weren’t more clear. :frowning:

As for testing without CnQ and P-States disabled along with no software to adjust anything, etc - I cannot set 2v in any form. I will be restricted to 1.125v with the offset only pushing it to 1.20v and no higher. Again, attempting to set CPU Voltage higher than 1.125v in the bios for a direct voltage will not POST whatsoever and eventually recover with a POST Failure. Without P-State/CnQ,Software usage I’m limited to a maximum of 1.20v (1.125v+150mv) whereas with PState+software I’m limited to 1.4v (1.3125v+150mv) but no turbo due to not enough offset.

To touch on your mention of the CPU Thermal Throttle - this is purely related to the CPU temperature limits. It will throttle back clocks once it reaches the TJMax of the CPU (74c on this Opteron) and is unrelated to the issue. I have however reached that once when the CPU fan lost power during a stress test. At least that option works sufficiently.

It must be an ASRock thing as you said. My other board that I had no issues with and had plenty of offset options was indeed a Gigabyte 880gma-USB3 v3.1. I would love to go back to that board right now as I had no problem with and solve all of this but I had little choice to use this ASRock board due to the necessity of additional PCIe lanes and a UEFI Bios.

Yes, I see that now with your images, about the AMIBCP comment. Very weird how this is setup.

restricted to 1.125v with the offset only pushing it to 1.20v and no higher << What is this limitation, I thought you couldn’t go any higher than 1.3x in the BIOS?

I will dig into the setup in assembly and see if I can find what differentiates the CPU’s and this voltage selection limitation, but no promises as I’m not great at assembly and this is not something I know how to recognize either.
@CodeRush could possibly help if he’s around. Maybe @Mov_AX_0xDEAD @lordkag @dsanke @revlaay @svarmod @_haru @ket @Blossomcrown could offer some assembly skills or thoughts on this to help me locate it.
A few others I can’t think of know assembly and BIOS modding here too, if any of you guys could maybe tag someone while you’re here I’d appreciate it, thanks


"restricted to 1.125v with the offset only pushing it to 1.20v and no higher << What is this limitation, I thought you couldn’t go any higher than 1.3x in the BIOS?"

That limit is in the BIOS indirectly and P-State #1 which is adding more confusion. Bios shows 1.3125v maximum due to the maximum stated voltage for the CPU under maximum turbo. Set direct voltage over 1.125v in BIOS and it will not POST. In Windows, Set voltage above 1.1125v for p-State #1 and it will not go higher than 1.1125v. Turn off P-States, CnQ, Etc and there is no change to this effect. When attempting to POST and/or using P-State #1 the voltage max with 150mv is 1.20v. Using software the maximum for all other states (not including P-State #1) is ~1.40v due to 1.3125v +150mv.

My main issue is not so much the CPU voltage selection limitation but the limitation on the CPU Offset. With such a low offset, these issues exist and cannot be overcome. With a higher offset, they still exist (as in other boards) but can be overcome simply and easily.

No idea about AMD modding, but keep in mind the physical capabilities of your board when you mod for extra voltage.

Yes, still lost on me @Chozo4 - your explanation to my question above only directly poses the same statement that made me ask you that question.
If BIOS shows “Max voltage you can se = 1.3125 for that CPU” Why can you not directly set 1.3125, but have a limit of setting no more than 1.125? That seems in direct disagreement with itself, that is why I asked you… What?

My advice is, if no one can help, throw this board away and do not resell it, so no one else has to suffer the same, or relegate it to some non-OC usage system. Then get a different brand board for your AMD OC adventures

I tried to change that offset a few ways, nothing helped, I’m sure it can be done but for me to do it I need more info on where to look in assembly I couldn’t find it there.


Sorry for repeating things. It’s just the nature of the board it seems. It just wont POST over 1.1125v due to some link with power state 1. It shows settings up to the maximum capable (1.3125v for instance) but most of them aren’t usable to directly use in the BIOS as they are only tied to the turbo which is 1.3125v. Sad part is - this is the only board you can get with the 9xx series chipset for AM3+ that is microATX form factor.


Very true on that. This board is capable of handling 125watt CPUs and the VRM heatsink has already been upgraded with a better quality heatsink (Enzotech MST-81). The CPU itself is only 65watts and drawing up to 85watts at the moment according to the APM stats. It is well within the VRM capabilities.

It’s OK, I just didn’t understand due to being more of an Intel user, and this not normal functions even for any AMD I’ve ever used.
This can be changed, both things, but for sure the offset amounts, I just am not sure where it’s at in assembly Hopefully someone will chime in that knows how to do this in next few days

@Lost_N_BIOS you can “cheat” to provide more voltage than the board will technically allow. I do it all the time for HD7900 series vBIOSes and RX vBIOSes. You do this by skewing the VRM signal and sending a higher value than its supposed to be. Primarily you use this approach to compensate for vdroop - a poor mans LLC if you will, but theres nothing stopping you from setting way higer VRM signals that supply a lot more voltage you then either need to just remember what you are actually setting or changing the voltage values to match the new VRM signal values. Do note of course that doing so will naturally raise VRM temps as well as push the VRMs harder shortening their lifespan and you can push the VRMs past their technical limit when doing this so be sure to have the specifications of the VRMs so you know what you can and can’t get away with. You can also make most VRMs perform more efficiently by changing the VRM switching frequency but you’ll need VRMs that support this.

New modified bios version: http://s000.tinyupload.com/index.php?fil…337187883122284

fixed issue: graphics card started to work only at pcie v 1.1 after BCLK clock changed.
It seems it is known issue on ASRock… More info about this issue on ASRock motherboards:

OROM AMD RAID MISC 4392 updated to 3.3.1540.19 version
OROM AMD RAID MISC 4393 updated to 3.3.1540.19 version
EFI Realtek UNDI Driver updated to 2.050 version
OROM Realtek Boot Agent GE updated to 2.67 version

PS: On this modified bios you can not change pci bus clock.