Can Resizable BAR Support be ported to older Intel Chipsets?

Asus have finally decided to take action, here are some Z370 Beta BIOS with Resizable BAR support;

Asus Z370 Rog Maximus X Apex BIOS Version 2603 Beta

Asus Z370 Rog Maximus X Hero BIOS Version 2603 Beta

Asus Z370 Rog Maximus X Hero (Wi-Fi AC) BIOS Version 2603 Beta

Asus Z370 Rog Maximus X Formula BIOS Version 2603 Beta

Asus Z370 Rog Maximus X Code BIOS Version 2603 Beta

[Edit] Asus have really stepped up , all Z370 boards appear to now have a Beta BIOS with Resizable BAR support;

Asus Rog Strix Z370-E Gaming BIOS Version 3003 Beta

Asus Rog Strix Z370-F Gaming BIOS Version 3003 Beta

Asus Rog Strix Z370-G Gaming BIOS Version 3003 Beta

Asus Rog Strix Z370-G Gaming (Wi-Fi AC) BIOS Version 3003 Beta

Asus Rog Strix Z370-H Gaming BIOS Version 2603 Beta

Asus Rog Strix Z370-I Gaming BIOS Version 3003 Beta

Asus Prime Z370-A BIOS Version 3003 Beta

Asus Prime Z370-P BIOS Version 3003 Beta

Asus Prime Z370-P II BIOS Version 3001 Beta

Asus TUF Z370-PLUS GAMING BIOS 3002 BETA
"Add Resizable BAR support for Nvidia RTX 30 series cards to potentially deliver more performance to gamers in select titles.

Got R-BAR working on a Gigabyte Z390-M 9700K + Sapphire 5700 XT setup. Confirmed by GPU-Z!

Win for team AMD!

More good news, MSI has rolled out Beta BIOS for more of their Z370 motherboards with resizable BAR;

MSI Z370M Mortar Bios Version 7B54v1A1 Beta

MSI Z370M Gaming Pro AC Bios Version 7B44v1B2 Beta

MSI Z370I Gaming Pro Carbon AC Bios Version 7B43v1B1 Beta

MSI Z370-A Pro Bios Version 7B48v2D2 Beta

MSI Z370 Tomahawk Bios Version 7B47v1B2 Beta

MSI Z370 SLI Plus Bios Version 7B46vAB2 Beta

MSI Z370 Krait Gaming Bios Version 7B46v1C2 Beta

MSI Z370 Godlike Gaming Bios Version 7A98vAC2 Beta

MSI Z370 Gaming Pro Carbon Bios Version 7B45vAC2 Beta

MSI Z370 Gaming Pro Carbon AC Bios Version 7B45vAC2 Beta

MSI Z370 Gaming Plus Bios Version 7B61v1B1 Beta

MSI Z370 Gaming M5 Bios Version 7B58v1B2 Beta

From the benchmarks I have seen so far it looks like you need a powerful CPU (i.e. +6 cores) and GPU to realise the most gains from Re-BAR so even if Z170/Z270 had support it may not give any gains and could even hurt performance.



That is pretty good. Didn’t know 5700xt supported it. How significant is the improvement on it?

Got Re-Bar working on my GB X299 UD4 Pro (Bios F8a) with an RTX3090.
AC Valhalla went from 76 to 82 average FPS in WQHD.




You can run a 9900K on a Z170 with a modded BIOS (Coffee Time).

@mooms Yep, you sure can → 9900K on Z170

I’m running a QQLS (9900K equivalent) on my Z170 Pro Gaming, with a RTX 3070, so resizable Bar would be great

Hello guys, when I was experimenting with a CoffeeMod BIOS on my Asrock Z170G K4, I erroneously flashed a BIOS from the similar Asrock board (B360 or something like this), strangely the PC booted and I noticed a few interesting things:
- Native Z170G K4 BIOS is laggy and has a tendency to hang from time to time in random places, being it the HW monitoring or any other tab, not even related to overclocking - while B360 one works smoothly and much faster than the original;
- There was a setting non-existing in native BIOS - not yet a ReBAR but some prerequisite to it, unfortunately don’t recall the name. Given the fact it works with my mobo, it should be somehow possible to extract and embed it into the older Z170 generation of motherboards. I see that most manufacturers started to add such settings to their Z370 series (Asus, Gigabyte, some other) so apparently when Asrock manages to deploy their Z370 BIOSes, it would worth giving it a try, especially if one’s mobo has dual BIOS so you can safely play with it not ruining the functioning system.

Interesting.

Was the BIOS fully functional?
Did the card boot Windows?

Now I’m wondering if I can boot my Z170 with a Z370 BIOS.

Well, BIOS itself ran awesome, all settings worked and were saved. Windows didn’t boot due to the fact NVMe controllers of my board and B360 are different hence there’s simply no module to support mine. I didn’t try to set up a system to SATA SSD (was quite limited on time) but when exiting BIOS it gave a message that “No bootable disk is found”, so I assume if I had a spare SSD to play with, it would boot just fine.
N.B. Please make backups before you try something like this as there’s absolutely no warranty it would even work, I was just lucky enough that it went up afterwards :slight_smile:

I created a DXE driver that gets Resizable BAR working on older chipsets (Ivy Bridge and newer). However these motherboards often have a BIOS which artificially limits the MMIOH size (PCI resources). This makes it not possible to get fully working Resizable BAR without further modification to fix that.

My Gigabyte B75M-D3H limits the MMIOH size to 16GB when in reality Ivy Bridge CPUs are capable of 64GB (Haswell and newer 512GB) - TOUUD which would be around 55GB of MMIOH size with 8GB RAM. In fact you can edit DSDT QWordMemory to increase its size and see Linux use the additional MMIOH space.

Here is the thread which has link to the open source DXE driver for anyone interested. I was only able to test 512mb BAR due to MMIOH size limitations but larger sizes should work.

[Experimental] Resizable BAR DXE driver

2 Likes

I have an Asus Z170 Deluxe Mobo. It is very close to the x99 and the x99 guide is out. Does anyone have any idea how this would work on a Z170? I have an Arc card that I want to try out and I do not have rebar on my test rig and i’m not taking apart my battlestation to test a GPU that can’t repeat the performance of my 3070. I have an Arc A750. I already asked in the Insider’s Discord and they have ZERO plans of making these cards work without ReBar as they were not designed to do so from jump. It is a completely forward looking GPU. Help.

You could try this, but you need to enable Above 4G Decoding. I dont enable it since it might defaults at CSM/Legacy, so it is better to flash this bios, then turn Off CSM, make everything in the bios UEFI (pure UEFI), and do the steps below to enable Above 4G. You need to use Bios Flashback. DWYOR
Z170-DELUXE-ASUS-3801.rar (7.1 MB)

Your Above 4G Decoding offset is at 0x7B9:

How to Enable:

GRUBShell.efi: Releases · datasone/grub-mod-setup_var · GitHub

RebarState.exe: https://github.com/xCuri0/ReBarUEFI/releases/download/0.2/ReBarState.exe (you would need to make sure that Above 4G Decoding is ENABLED before using this, if its enabled on gpuz, and you could see the bar size, you could proceed open this app and set it at 32, and reboot)

Source: Enabling hidden 4G decoding · xCuri0/ReBarUEFI Wiki · GitHub

If you do this, i’ll be waiting for your results.

1 Like

I am going to try this mod on my ASUS Maximus VIII Ranger (Z170) motherboard. Only one question, the ReBarState application that is there, since we are setting NVARs separately, will a CMOS reset need us to run the ReBarState application again?
If yes, is there a way to set the ReBarState variable to 32 always?

Will a CMOS reset need us to run the ReBarState application again

On most motherboards yes because they clear the NVRAM variables with CMOS reset. If it doesn’t clear NVRAM then you will most likely need to boot without GPU because CSM will be on and 4G will be off by default.

If yes, is there a way to set the ReBarState variable to 32 always?

By compiling it to always be 32. I wouldn’t recommend this because 4G decoding is disabled by default and CSM is enabled by default so you won’t be able to boot.

Still working on it.

Hi there, thanks for the info.
I have modded the BIOS using AMIBCP such that CSM is disabled, 4G decoding is enabled by default (and also some other parameters like TPM and Secure Boot for native Win11 support) and hence was wondering if I can set the ReBarState variable to 32 always. If yes, how can I set it?

@itsakjt you can build from source and remove the getvariable call and make it just read hardcoded rebarstate = 32 instead

1 Like