Open xCuri0 opened 1 year ago
@somexhey you're sure CSM is off and 4G decode is on ? And try connecting a monitor to your iGPU during boot because one user fixed this issue by doing that.
if those don't work you can try this patch which i made before but idk if it will help
# PciBus | Don't downgrade 64-bit BARs to 32-bit (Coffee Lake)
3C1DE39F-D207-408A-AACC-731CFB7F1DD7 10 P:A80274334038AF95:A802EB334038AF95
@somexhey you're sure CSM is off and 4G decode is on ? And try connecting a monitor to your iGPU during boot because one user fixed this issue by doing that.
if those don't work you can try this patch which i made before but idk if it will help
# PciBus | Don't downgrade 64-bit BARs to 32-bit (Coffee Lake) 3C1DE39F-D207-408A-AACC-731CFB7F1DD7 10 P:A80274334038AF95:A802EB334038AF95
Yup, CSM is off and 4G decode is on Sadly, I can't connect my current monitor to iGPU because there is no VGA port on the monitor itself, patch applied tho, will keep you updated, thanks
@somexhey you're sure CSM is off and 4G decode is on ? And try connecting a monitor to your iGPU during boot because one user fixed this issue by doing that.
if those don't work you can try this patch which i made before but idk if it will help
# PciBus | Don't downgrade 64-bit BARs to 32-bit (Coffee Lake) 3C1DE39F-D207-408A-AACC-731CFB7F1DD7 10 P:A80274334038AF95:A802EB334038AF95
No luck, sadly
Patch applied successfully, setting BAR size to 2GB leads to VGA debug (no POST), setting BAR size higher than 2GB leads to system boot, but no image (I know that system boots, because there is sound)
Any ideas what might cause that? I will try to get VGA -> HDMI cable soon to test the fix you mentioned earlier tho Maybe I should try enabling iGPU in BIOS at all? It's currently disabled because I don't use it
@somexhey
setting BAR size higher than 2GB leads to system boot, but no image (I know that system boots, because there is sound)
does this happen without using the patch too ? I see others with the same problem but they eventually get video output once Windows boots. What is your GPU ?
@somexhey
setting BAR size higher than 2GB leads to system boot, but no image (I know that system boots, because there is sound)
does this happen without using the patch too ? I see others with the same problem but they eventually get video output once Windows boots. What is your GPU ?
Yes, same happens with no patch applied. GPU: MSI Nvidia RTX 3060 12Gb
I have two monitors connected (one primary via HDMI and a TV via DisplayPort), both monitors are not showing any signs of life after setting BAR size higher than 1Gb
Test with ASUS Z170-A(PciBus patched), RX 580 works with 8GB BAR size, RTX 3060 Mobile(a desktop card with mobile chip for mining) works with 8GB BAR size(The card can not boot without Above 4G and the BAR size forced to 8GB even when I didn't use ReBarDxe), 5600 XT works with 8GB BAR(BAR0 8G and BAR1 256M) but can not wake from sleep in Windows(Set BAR size not higher than 1024M have normal sleep).
@dsanke Theres's an override in the module to fix 5600 XT's max BAR size being limited to 1GB. The module is heavily based on Linux kernel source adapted to UEFI so it includes the override from it. You can see more info about it here https://lore.kernel.org/lkml/20210305120859.501084746@linuxfoundation.org/
A REBAR size quirk for the Sapphire Radeon RX 5600 XT PULSE for AMD Smart Access Memory (Resizable BAR) as it only advertised 256MB/512MB/1GB but it also supports 2GB/4GB/8GB so a rebar size quirk is now added to fully access the BAR0.
Using a 5600 XT on a new motherboard with ReBar support will have the 1GB issue. But this module contains an override for it.
Since it appears to not work properly with Windows maybe I should remove it ? I guess the RX 580 and 3060 don't have any sleep issues.
If possible test a card with proper ReBar on it (RX 580 will work) to make sure that it's a issue with Windows and not the BIOS.
Running on the ASUS P8H61-M LX2 R2.0 motherboard, it was necessary to apply the patches, as it did not go pass the post after configuring the rebar in a size greater than 4gb. Now it works perfectly, but I can't configure it for values greater than 8gb.
I guess the RX 580 and 3060 don't have any sleep issues.
Yes the RX 580 and RTX 3060 have normal sleep. Will test it on official ReBar BIOS.
@originalm19 that's normal because it's 8GB VRAM GPU
@dsanke you can get a build without the override here https://github.com/xCuri0/ReBarUEFI/actions/runs/3667380099. i recommend using the windows built artifact but the linux one should also work if you want to test it.
@xCuri0
@Divin1ty666 try this improved pci allocation unlikely but could fix the usb issue
# PciHostBridge | Replace 32/48GB - 63GB MMIO region with full use of 64GB address space (Haswell). 8D6756B9-E55E-4D6A-A3A5-5E4D72DDF772 10 P:080000004823C1483BC3763C48BB000000000C000000483BC3762D48BB000000000E000000483BC3761E48BB000000000F000000483BC3760F48BB000000800F000000483BC3771548BE000000C00F000000482BF30F84D6FEFFFFEB1B48BE000000C00F000000483BC60F87C1FEFFFF488BDEBE00000020:010000004823C1483BC3480F47D86690669066906690669066906690669066906690669066906690669066906690669066906690669066906690669066906690669066906690669048BE0000000010000000482BF36690669066906690669066906690669066906690669066906690669066906690669090
If it doesn't find anything since you have applied the previous patch use the below
# PciHostBridge | Replace 32/48GB - 63GB MMIO region with full use of 64GB address space (Haswell). 8D6756B9-E55E-4D6A-A3A5-5E4D72DDF772 10 P:080000004823C1483BC3763C48BB000000000C000000483BC3762D48BB000000000E000000483BC3761E48BB000000000F000000483BC3760F48BB000000800F000000483BC3771548BE0000000010000000482BF30F84D6FEFFFFEB1B48BE000000C00F000000483BC60F87C1FEFFFF488BDEBE00000020:010000004823C1483BC3480F47D86690669066906690669066906690669066906690669066906690669066906690669066906690669066906690669066906690669066906690669048BE0000000010000000482BF36690669066906690669066906690669066906690669066906690669066906690669090
Hey, sorry was only able to try and test all this today.
So, the first patch can't be applied at all.
The second patch did apply, but mobo can't overclock RAM with it - with all my settings kept ram will always be 1333mhz and with default timing no matter what frequency\timings you set. That is before you apply any value with Rebarstate.exe. And after applying 14-value it wouldn't boot at all.
@Divin1ty666 thanks for testing it I'll try to fix that
Rebar working on GA-H77-DS3H Rev 1.1, must use Patch for PciHostBridge + PciBus + DSDT Patch. RX 590GME with Nimez Driver 22.11.2SE cause i love nimez <3
Also i tested my personal 3060Ti too, it worked, i dont have screenshot due to need to test the 590GME real quick :p
MSI B150M PRO-VDH with RTX 3080 confirm work(I am using the Linux compiled dxe file this time.) and do not need UEFIPatch. I think all MSI 100/200 series behave the same. And unlike ASUS, the ReBarState cleared with CMOS clear, so no need to tweak the default setting of Above 4G and CSM.
many thanks for the repo and the documentation!
Asus Z170-P, RTX3090, patched, 32GB, no difference from Asus Z170-P D3
Test on ASUS H110M-K with old BIOS 2003 which have a hidden Above 4GB MMIO BIOS assignment option(set it enabled by default). RTX 3080 works. Need UEFIPatch.
Huananzhi X99-F8 This Bios V11
RX 580 2048SP and RTX 3060 Ti
4096MB and 8192MB
No UEFI Patch
Thank you for your work.
Hey guys I have Huanan x79 motherboard just enabled the patch and after i forgot the turn off CSM, I turned off it then started the system, in gpuz it shows that resizable bar enabled but gpu/drivers suppot show "no".... My gpu rx580.... I have seen that some guys make it work on this gpu..... Does that i forget to turn off csm in first boot affected it somehow?
@retro-future the wiki page common issues shows how to enable it on RX 580. I have it working on my RX 580 using that method if it's working it will show enabled in Radeon Software. GPU-Z is wrong about RX 580 being unsupported
Please help me I need to mod a HP 600 G1 TWR bios to be able to have resizable bar enabled.
@captainmaged if you want help ask on win-raid or somewhere else not in GitHub issues.
@retro-future the wiki page common issues shows how to enable it on RX 580. I have it working on my RX 580 using that method if it's working it will show enabled in Radeon Software. GPU-Z is wrong about RX 580 being unsupported
Thanks for reply, I just tweaked Registry and it worked
Hi, new success here : 👍
asrock X99 taichi, GPU nvidia RTX3090 .
Bar sizes : 2Gb => no good, boot loop before bios 4Gb => OK Unlimited => OK
NOTES : 1) I needed to enable 4G decoding, disable CSM, and it was REQUIRED to NOT ENABLE the "above 4G decoding patch" setting in the bios, otherwise I would not get post/grub/display output until windows had booted 2) clear cmos does clear the rebarstate apparently
Edit : blender-benchmark results : 1) without rebar : 5613 (blender 3.3.0) 2) WITH rebar@Unlimited : 5762 (blender 3.3.0) => 2.65% perf increase
CPU: E3 1245 V3 MOBO: Gigabyte B85M-D3H(rev.1.2) Bios: F3AE GPU: ASUS 5600XT TUF
My Gigabyte B85M-D3H(rev.1.2) can enable the ReBar after adding ffs module(BAR size must<=1G ), even if Above 4G Decoding is not enable(more detail I've mentioned here: https://github.com/xCuri0/ReBarUEFI/issues/14#issuecomment-1364638770)
I try the UEFIPatching, only "# PciBus | Remove <16GB BAR size limit (Ivy Bridge/Haswell)" patch works. I also have a look at DSDT patching, but my DSDT.dsl is different from the wiki, I can't find the "CreateQWordField" keyword. DSDTMod.dsl.zip My modded bios: modded_bios_F3_ReBar_patched.zip
I've tried the other bios version, but all the bios I can find at Gigabyte official site have the same issue.
@magicalz DSDT Fix (as for now) are only needed for the PciHostBridge that got patched. If yours didnt have anything to patch at PciHostBridge then it is not necessary to fix anything.
Also for RX 5600 XT, its been an issue for addressing the memory, unless there is someone who could add/mod/patch the vbios itself to actually use 6GB, there has been no such solution.. so yeah.
@Koekieezz
Also for RX 5600 XT, its been an issue for addressing the memory, unless there is someone who could add/mod/patch the vbios itself to actually use 6GB, there has been no such solution.. so yeah.
ReBarUEFI has a workaround for it in the current release. I removed it now tho because dsanke reported it causes sleep to stop working.
First of all: a big thank you @xCuri0 and @Mak3rde! My config: Intel QQBZ (i9 9900 ES), Asus Maximus VIII Hero (z170 chipset + CoffeeTime Mod), Radeon RX 480 8Gb, 32 Gb of RAM. Everything works just fine. The only crucial thing is to use patch "Don't downgrade 64-bit BARs to 32-bit (by @Mak3rde)" - it seems like all Asus MoBos on Z170 demand this patch. Otherwise my computer doesn't go through POST initialization.
@GhoSt-1992 I didn't know Resizable BAR worked on Windows 7 too. Did you get any performance gain from it ?
@Koekieezz
Also for RX 5600 XT, its been an issue for addressing the memory, unless there is someone who could add/mod/patch the vbios itself to actually use 6GB, there has been no such solution.. so yeah.
ReBarUEFI has a workaround for it in the current release. I removed it now tho because dsanke reported it causes sleep to stop working.
I use the ver0.2 with 5600XT, windows sleep works well.
@Koekieezz
Also for RX 5600 XT, its been an issue for addressing the memory, unless there is someone who could add/mod/patch the vbios itself to actually use 6GB, there has been no such solution.. so yeah.
ReBarUEFI has a workaround for it in the current release. I removed it now tho because dsanke reported it causes sleep to stop working.
I use the ver0.2 with 5600XT, windows sleep works well.
All 6GB BAR is able to do with windows sleep? also what win ver did you use?
@Koekieezz
Also for RX 5600 XT, its been an issue for addressing the memory, unless there is someone who could add/mod/patch the vbios itself to actually use 6GB, there has been no such solution.. so yeah.
ReBarUEFI has a workaround for it in the current release. I removed it now tho because dsanke reported it causes sleep to stop working.
I use the ver0.2 with 5600XT, windows sleep works well.
All 6GB BAR is able to do with windows sleep? also what win ver did you use?
No, as I mentioned in the post, I can't enable Above 4G Decoding, only 1GB BAR size is able to set. Win10 22H2, 19045.2364
@magicalz you won't have sleep issues on 5600 XT unless you use more than 1GB BAR
@GhoSt-1992 I didn't know Resizable BAR worked on Windows 7 too.
@xCuri0, oh, I don't know too 😅. It is not Windows 7, but Windows 10 21h2 just in pair with WindowBlinds theme :D
@xCuri0 you are a legend! this works epicly on my Asus X99-A mobo
X79 Huananzhi "Green" RX580X 8GB N (NimeZ 22.11.2)
This works with the Gigabyte Aorus B550M Pro-P Revision 1.0 motherboard
ahh guys can i do this experiment in hp motherboard ?
Msi Z97 Gaming 3 with RX 6800 no patches were required but had to enable Above 4G Decoding with the second method since on this motherboard this option is hidden.
Working on the latest beta BIOS for my ASUS X99-S (4101) with a GeForce RTX 3070. BAR size set to unlimited in ReBarState.exe and showing up as 8GB as expected given the available VRAM.
UEFIPatch was required.
MB: Supermicro X9DRI-LN4F+ BIOS v3.4 GPU: Asrock Intel ARC A380 Tested 16GB REBAR UEFI Patch not required
It was an odyssey but it works on a dual E5-26XX V2 board (Supermicro X9DRI-LN4F+ BIOS v3.4) which is an Ivy Bridge-EP platform.
Deviation from the "official" instructions is required as there are issues with the padding in the firmware image that can't be resolved using UEFItool.
Instead of using UEFItool, I needed to use the official AMI tools, so while I was there, I added in an NVME module as well.
The board doesn't seem to have the capability to fully disable CSM, presumably because it has no concept of secure boot.
I tested up to 8GB rebar and it did not require any patching. They wouldn't have worked anyway as there's nothing for this platform.
EDIT - I just enabled 16GB REBAR but the GPU still only negotiated 8GB. On my Threadripper Pro based machine, it only set 4GB. Perhaps that's due to that platform having pcie4 vs pcie3 this one has.
Interestingly, I was doing this to setup an Intel ARC A380 for passthrough and with Native Windows it requires at least 8GB for rebar as otherwise the driver complains it's not supported even though GPU-Z suggests it is. I can confirm the driver wont use it with less than 8GB set on this platform.
@therealRandomGenericDude Arc A380 is a 6GB GPU so it doesn't need more than 8GB BAR and the maximum BAR size it supports is 8GB
I don't want to be that guy, but while the 2500k doesn't have enough lanes to run the full pcie 3 speed, the B75M-D3H is still a motherboard with native pcie 3 (trivia: despite what wikipedia likes to claim, there was actually a good number of 6 series chipsets supporting it too). So.. I guess in a sense we could still argue to have learned something (the CPU doesn't really count much) but it's def not that "2.0 systems" could be workable. Even though it could even be, I don't know.
@mirh On the 2500k GPU was still running Gen2 because it's connected directly to the CPU. Chipset doesn't really matter in this case.
Of course would be better to test on a fully Gen2 system but I'm sure it would work. Even one of the few P45 motherboards with UEFI should work probably limited to 1GB BAR though
TOLUD set to 1GB should allow 2GB BAR even without 64-bit BARs. It worked on my ASUS Z170-P D3 before the patch for downgrading BARs.
@SEt-t are they are side effects of setting TOLUD to 1GB ?
As far as I know, only limiting visible RAM to 1GB to 32-bit OS with artificial limitations (non-server Windows; server and Linux are not affected).
ASUS Z170-WS & Intel ARC A770, BAR size set to unlimited and the full 16GB worked
Also works on a ASUS Z170 Sabertooth MK1
Hi @latisleon, would you be so kind to tell me how toy managed to flash the modded cap files? Flashing via EzFlash refuses the modded bios, while Afuwinx64 returns an error in loading drivers. Thank you
@WillyTP Flashing ASUS MB's with modified cap files can be done with USB BIOS FlashBack. Any other official method will always fail since it checks checksum and that will differ after modification. USB BIOS FlashBack only needs cap file to be named correctly for your mb and that USB stick is formatted to FAT32 with only one partition.
@xCuri0 thank you very much for your awesome work. Asus Maximus VIII Hero (Z170) with RTX 4070 Ti, patched bios and ReBAR is working on unlimited setting via ReBarState
Hi @Feyd1364, Thanks for your advice. I read that via AI Suite it could have been possible to flash it by changing original bios file with the modded one after check. As it seems it didn't work even if something got flashed (I got Bios setup error on reboot). Unfortunately Z270a Prime doesn't support USB Flashback. Thank you anyway
Motherboards which don't support at least 2GB BAR size are considered not working.
If you're having any issues please see Common issues (and fixes) before replying.
Use this format in your comment:
lspci
(Linux) shows)