Can Resizable BAR Support be ported to older Intel Chipsets?

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

1 Like

Anyone know if anyone had successfully gotten RBar working on an MSI X99a Raider MB? That is a Haswell-E CPU Board
The board does have Above 4G decoding. so in theory it should be able to.

@Nmbr5 X99 is pretty much guaranteed to work

I’m dev of ReBarUEFI and it’s been found to work on every motherboard with functioning 4G decode so far.

Try flash this bios, if flash successful, disable CSM and enable Above 4G Decoding, then Run this app as admin and set to 32, enter and reboot.
X99ARaiderMOD.rar (6.0 MB)

Hello, Ive got an asus maximus IXformula z270 board, is there anyway of being able to flash a modified bios of the maximus X formula board for the z370 to have resizeable bar, as the boards are almost identical, or will modifiying the current bios work. also, im a little stuck as its in a watercooled build and getting access to anything is a ballache, so can this just be flashed without any issues using bios flashback, as i guerss it will fail with bios utility ? ive already enabled most things needed just the bios now i guess ? thanks in advance

Hello @Danielwhitt,

ReBar can be added, see here for the mod guide.

See the Guide for Asus mainboards here

If you get stuck, i’m sure some kind person will help.

Best regards,

-68k

So i tried to modify the bios as per the instructions and everything went as per the the instructions, flashed via bios flashback, but how do i know it actually worked ? it still says resizable bar disabled ? the only odd thing was after the bios flash the pc restarted three times and then booted ? not sure if thats correct ? or does that mean its recovering from a bad flash ?

Hello @Danielwhitt,

Have you run ReBARState.exe to set the BAR Size?

Hello,

I’ve got it all sorted now. I think my issue was the original patches txt I was using, if I used the one that downloaded with all the other stuff, and came with the extra patches txt, it wouldn’t work. I downloaded the original from GitHub and it worked first time and I’ve have now got resizable bar working on my motherboard. i think the restarting issue as well was just memory training but either way its working perfectly now. thanks for your help.


My motherboard is Asus Maximus 9 Formula with 5700xt anniversary edition

1 Like

Hi all, I have this all working on ASUS Z97 Pro Gamer motherboard.

When I followed the normal process, once booting the system backup after the BIOS flash, and running ReBARState.exe I was always given errors related to not being able to write to UEFI or it would not post at all.

It’s been a long hard process but, in the end, I managed to get everything working.
I did the following:

  1. Updated Bios with UBU
  2. Then I followed the guide here:
    Adding FFS module · xCuri0/ReBarUEFI Wiki · GitHub

However, this process would constantly fail once I attempted to flash the BIOS.
The only work around that seemed to work for the Z97 Pro Gamer was Using the MMTool method to insert the ReBarDxe.ffs Unfortunately this was the last thing I tried after a week of troubleshooting the other method of UEFITool using the patching and following the DSDT patching, nothing would work without errors until I used MMTool to insert.

After that, I continued the process of UEFIPatch as the previous person stated (Danielwhitt I had to download the patches.txt from GitHub and not use the file that came with the zip archive.

I then needed to do this process:

  • Intel 9 Series Chipset (H97/Z97) will additionally need to apply BdwUSB3.txt for functioning USB 3 ports in BIOS with 4G Decoding enabled. Use .\UEFIPatch YOURBIOS.bin.patched .\BdwUSB3.txt -o YOURBIOS.bin.patched after downloading and placing it in the same folder as UEFIPatch.

There was no further patching required after this, I saved the file as patched_Z97PROG.ROM

In previous steps where I was having issues with the file using UEFITool.exe to insert the .ffs I looked into patching the DSTD but all the entries mentioned to change were already set in some form or another. It specified //Memory Size Externally Set or something along those lines and I could never compile the file after anyway.

After I had my file, I had to disable Secure Boot and enable CSM to boot Freedos from USB with AFUDOS.exe and my modified patched ROM.

I then typed: “afudos.exe patched_z97prog.rom /gan

The flashing process completed and my PC booted as it normally should. I disabled secure boot and csm.

I then went to ReBARState.exe and set 14 = 16GB.

Rebooted device = Failed to boot.
To resolve this, I removed my 4th 8GB memory module from the total of x 4 8GB and inserted a 4GB giving my system only 28GB if RAM, and the system booted for the first time with Resizable bar enabled in BIOS and GPU.

So just using MMTool for FFS insert, patching and Haswell further patching, flashing with AFUDOS and setting a bar to 14 = 16GB and sacrificing 4GB of total memory is the only way I was able to get this working as expected.

A few things to note, there is no option which appears in the BIOS for Resizable BAR like shown in some other Z97 bios images, 4G Decoding was also already a feature in the BIOS so nothing withing the actual BIOS GUI had changed or could be changed differently to before the flashing.
I enabled CPU multimonitor which seemed to related to if ReBARState.exe would write to the BIOS or not, but I cannot test this. Something prevented it from working originally, I just assumed it was the way I added the .ffs but it may not be.

I need to leave some keywords because finding this info for my motherboard was impossible. Thanks everyone for everything you do and taking the time to log it all. Without this I would be lost.

Regards

Keywords: Z97 PRO GAMER Resizable BAR enabled (Working)

P.S. Is there a current fix for 32GB RAM and Z97

@TenthLegacy As of now there is no fix for 32GB RAM + 16GB BAR on Haswell. It seems like some additional patching is needed to fully unlock the 39-bit physical addressing of Haswell.

Thank you, I did read you say that somewhere, but I thought it may have changed since then.

I did a little research on ChatGPT, but the information needed is not publicly available, but here is the vague info I have, I might mess around with some settings and see if I can get it to boot with 32GB RAM and 16GB Resize BAR;

Incorrect BIOS Settings: Certain BIOS settings related to memory allocation and PCIe settings could interfere with your system’s ability to boot. Resetting the BIOS to default settings might resolve the issue.

Virtualization Technology : Certain settings related to virtualization can also reserve memory. If you’re not using virtualization, you could consider disabling these settings to see if that resolves the issue.

  1. iGPU Memory: If you have an integrated GPU (iGPU), there’s often a BIOS setting to control how much system RAM is allocated to it. If this is set too high, it could potentially interfere with system memory allocation.
  2. PCIe settings: In some cases, the specific settings of the PCIe slots (like the speed or the generation of the slot) can influence how memory is allocated. Some motherboards provide options to manually configure these settings.

Indeed, the arrangement of PCIe lanes and the allocation of resources might impact the successful use of the Resizable BAR feature, especially on motherboards with multiple PCIe slots sharing the same resources. Here are a few specific points that you could consider related to the Asus Z97 Pro Gamer:

  1. PCIe Lane Allocation: The Asus Z97 chipset supports 16 PCIe 3.0 lanes directly from the CPU, which can be allocated differently depending on the number of GPUs and their respective slots. If you’re using more than one GPU, the 16 lanes are typically split between them, which could potentially cause an issue with the Resizable BAR feature. If you have multiple GPUs, try using Resizable BAR with only the primary GPU installed.
  2. Secondary PCIe Slots: As you mentioned, the Asus Z97 Pro Gamer also has additional PCIe 2.0 slots that are provided by the chipset itself. These slots share resources with other parts of the system. If these slots are in use, it might cause issues with the Resizable BAR feature. Try disabling or removing any devices connected to these slots to see if that resolves the issue.
  3. PCIe Generation Setting: In some BIOS, there’s a setting to manually set the PCIe generation (Gen1, Gen2, Gen3) used by the slots. If available, try setting this to Gen3 to ensure that your GPUs are using the maximum bandwidth available.

I will provide an update if I manage to get anything working without additional patching.

@TenthLegacy It’s not possible, the UEFI PCI DXE driver calls AddMemorySpace with 64GB (36-bit) as the maximum, patching to higher has been tried but for some reason (probably some leftover code from ivy Bridge) it causes 4G decoding to break entirely.

You CANNOT fit 32GB RAM and 16GB BAR within 64GB if Intel ME/HD Audio device are at top like the allocation is. The 16GB BAR address has to be aligned with 16GB (such as 32GB or 48GB)

1 Like

Thanks for the reply.

I have an RX 6800 so would I be better off with 8GB BAR and 32GB RAM?

This bios did not function properly. it did not give me an option to disable CSM in the bios. or if it did I could not find that option.

Hello @Nmbr5,

Can you not see an Advanced tab in the Setup ?

Advanced> CSM Configuration> Lots of CSM stuff here

It might be hidden?

@TenthLegacy If your games work with 8GB BAR yes because the performance is almost same as 16GB

But you’ll find alot of games (UE4 mostly) have issues if BAR is smaller than VRAM

1 Like

Yes I can see the Advanced tab. but I can not locate CSM anywhere. from what I found in my googleing it’s usually in the OS section, and it’s not there, but I have been in every screen

usually the easiest way to do this is by set the secure boot to user and install secure boot keys, cause secure boot is always UEFI

or find windows os configuration and set it to windows 8/8.1 or windows 10 (if available), usually it will give uefi boot.

Have you looked under boot options?

Mine wasn’t under Advanced, it was right at the end under Boot, Compatibility Support Module, then I could disable it and turn it on or off.

Hope that helps.