I am attempting to enable Resizable BAR on my Dell Optiplex 7060 with the latest BIOS version (v1.28.0) running Ubuntu 22.04 in order to improve driver performance on my Intel Arc A380 GPU. Following a guide to enable hidden 4G decoding, I identified the VarOffset values in Setup for “CSM Support” and “Above 4GB MMIO BIOS assignment”:
0x55A2C One Of: CSM Support, VarStoreInfo (VarOffset/VarName): 0x11AD, VarStore: 0x1, QuestionId: 0x2805, Size: 1, Min: 0x0, Max 0x1, Step: 0x0 {05 91 BE 17 BF 17 05 28 01 00 AD 11 14 10 00 01 00}
0x55A3D Default: DefaultId: 0x0, Value (8 bit): 0x1 {5B 06 00 00 00 01}
0x55A43 One Of Option: Disabled, Value (8 bit): 0x0 {09 07 04 00 00 00 00}
0x55A4A One Of Option: Enabled, Value (8 bit): 0x1 (default MFG) {09 07 03 00 20 00 01}
0x55A51 End One Of {29 02}
0x566F3 One Of: Above 4GB MMIO BIOS assignment, VarStoreInfo (VarOffset/VarName): 0x8E1, VarStore: 0x1, QuestionId: 0x5A4, Size: 1, Min: 0x0, Max 0x1, Step: 0x0 {05 91 A4 08 A5 08 A4 05 01 00 E1 08 10 10 00 01 00}
0x56704 Default: DefaultId: 0x0, Value (8 bit): 0x1 {5B 06 00 00 00 01}
0x5670A One Of Option: Enabled, Value (8 bit): 0x1 {09 07 95 00 00 00 01}
0x56711 One Of Option: Disabled, Value (8 bit): 0x0 {09 07 96 00 00 00 00}
0x56718 End One Of {29 02}
I then disabled Secure Boot, booted into modGrubShell.efi from a flash drive, and ran the following commands:
setup_var 0x11ad 0x0
setup_var 0x8e1 0x1
exit
Resizable BAR was not enabled upon reboot so I tried again using setup_var_3
but it still did not work. After reading around this forum some more I found some Dell users had also set “Legacy Option ROMs” to enabled before running setup_var
. When I did this, I noticed that reading CSM Support offset 0x11ad prior to making any changes now returned “1” (Enabled) instead of “0” (Disabled), but frustratingly I still see messages that indicate my modifications have not taken effect: "[drm] Using a reduced BAR size of 256MiB. Consider enabling 'Resizable BAR' or similar, if available in the BIOS.
"
It seems like none of the variables I set persists upon reboot. If I make a change with setup_var
, exit, then boot back into modGrubShell.efi, the values read from offsets 0x11ad and 0x8e1 have been reset to their original values. This is my first time messing around with UEFI variables and I may be missing something obvious here…any guidance would be greatly appreciated. Thanks!
For reference, here are the extracted BIOS files and UEFITool / Universal IFR Extractor output I am working with: 22.83 MB file on MEGA