Skip to content

Instantly share code, notes, and snippets.

@al3xtjames
Last active April 2, 2024 10:35
Show Gist options
  • Star 24 You must be signed in to star a gist
  • Fork 9 You must be signed in to fork a gist
  • Save al3xtjames/e78884e719d7d53fbbf7b752e5db36d1 to your computer and use it in GitHub Desktop.
Save al3xtjames/e78884e719d7d53fbbf7b752e5db36d1 to your computer and use it in GitHub Desktop.
Dell XPS 15 9560 (1.2.5) NVRAM edits
# Set Intel(R) Speed Shift Technology to Enabled
setup_var 0x4BC 0x1
# Set CFG Lock to Disabled
setup_var 0x4ED 0x0
# Set Above 4GB MMIO BIOS assignment to Enabled
# setup_var 0x79A 0x1
# Set EHCI Hand-off to Disabled
# setup_var 0x2 0x0
# Set XHCI Hand-off to Disabled
# setup_var 0x1B 0x0
# Set Low Power S0 Idle Capability to Enabled
setup_var 0x13 0x1
# Set DVMT Total Gfx Mem to MAX
# setup_var 0x796 0x3
# Set Overclocking Lock to Disabled
# setup_var 0x59C 0x0
# Set OverClocking Feature to Enabled
setup_var 0x65C 0x1
# Set XTU Interface to Enabled
setup_var 0x65D 0x1
# Set Core Voltage Offset Prefix to Negative
setup_var 0x664 0x1
# Set Core Voltage Offset to -120 mV
setup_var 0x662 0x78
# Set Uncore Voltage Offset Prefix to Negative
setup_var 0x865 0x1
# Set Uncore Voltage Offset to -100 mV
setup_var 0x863 0x64
# Set GT Voltage Offset Prefix to Negative
setup_var 0x86D 0x1
# Set GT Voltage Offset to -100 mV
setup_var 0x86B 0x64
# Set GT Unsliced Voltage Offset Prefix to Negative
setup_var 0x876 0x1
# Set GT Unsliced Voltage Offset to -100 mV
setup_var 0x874 0x64
# Set PCI Express Root Port 13 to Disabled
setup_var 0x95A 0x0
# DCI killed in recent BIOS version?
# chipsec -m chipsec.modules.common.debugenabled reports DCI Debug is disabled even after setting these
# Set Debug Interface to Enabled
# setup_var 0x59D 0x1
# Set Debug Interface Lock to Disabled
# setup_var 0x59E 0x0
# Set Direct Connect Interface to Enabled
# setup_var 0x59F 0x1
# Set DCI enable (HDCIEN) to Enabled
# setup_var 0x899 0x1
# Set TraceHub Enable Mode to Host Debugger
# setup_var 0xEAF 0x2
@VGerris
Copy link

VGerris commented Nov 29, 2022

Still works for 1.30 BIOS for Precision 5520 , thank you. Needed factory defaults before it worked

@PeaceDont
Copy link

@philadawson All same here.

Actually without this real IGPU Unslice whole IGPU didn’t undervolt at all!
I manage to change it via throttlestop and it worked, but only before reboot.

GT Unsliced didn’t change any voltage, or change something other thing that I cannot see.

Maybe Dell broke it after some bios update?

@FPSUsername
Copy link

FPSUsername commented Jun 29, 2023

I'm trying to clean the ME region, as my laptop boots super slowly (see this).

I followed the rabbit hole down to figuring out the setup_var commands in order to unlock whatever I need to unlock (see this), but so far no luck finding these variables.

I extracted the BIOS with BIOSUtilities and went on from there. Any idea where I should be looking at?

Edit: I believe I found it by extracting the body of Setup/PE32 image section

0x399AA 		One Of: Me FW Image Re-Flash, VarStoreInfo (VarOffset/VarName): 0x68A, VarStore: 0x1, QuestionId: 0x2BF, Size: 1, Min: 0x0, Max 0x1, Step: 0x0 {05 91 3B 10 3C 10 BF 02 01 00 8A 06 10 10 00 01 00}
0x399BB 			One Of Option: Disabled, Value (8 bit): 0x0 (default) {09 07 04 00 30 00 00}
0x399C2 			One Of Option: Enabled, Value (8 bit): 0x1 {09 07 03 00 00 00 01}
# Set Me FW Image Re-Flash to Enabled
setup_var 0x68A 0x01
# Set Me FW Image Re-Flash to Disabled
setup_var 0x68A 0x00

@FPSUsername
Copy link

Unfortunately the bit is reset upon reboot. The only way would be via SPI flash with physical access to the chip using a programmer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment