RAM limit unlock fix for Asus N56VZ Ivy Bridge

Discussion in 'BIOS Mods' started by chrono10, Apr 21, 2023.

  1. chrono10

    chrono10 MDL Novice

    Apr 20, 2023

    The laptop works fine with 2x8GB DDR3L.
    I want to upgrade to 2x16GB DDR3L.
    Unfortunately that didn’t work. It refuses to boot when using 2x16GB of RAM. Just a black screen. Also black screen if I only try 1x16GB
    The official asus page says the limit is total 16 GB of RAM.
    But the oficial intel page for the CPU says it can support up to 32 GB of RAM.

    I've opened the N56VZAS.217 file with UEFItool
    I can see it's a `AMI Aptio capsule` and I found the following modules refering to memory:
    24CCD374-3DF6-4181-86F6-E3C66920A145 --- UpdateMemoryRecord --- Full size: 1076h (4214)
    3B42EF57-16D3-44CB-8632-9FDB06B41451 --- MemoryInit --- Full size: 26A42h (158274)
    I've tried finding a similar asus laptop model that supported 2x16GB of RAM but haven't found a perfect match. So far I found two interesting ones.

    The first is for K55VDAS411 which only supports 2x4GB-DDR3 (so half my laptop) and I can see:

    24CCD374-3DF6-4181-86F6-E3C66920A145 --- UpdateMemoryRecord --- Full size: 1076h (4214)
    3B42EF57-16D3-44CB-8632-9FDB06B41451 --- MemoryInit --- Full size: 26A42h (158274)
    They have the exact same size! I've extracted the bins and did a hex comparision.
    The UpdateMemoryRecord only differ on the PE header (timestamp field).
    But MemoryInit is a lot different. maybe 75% of it.

    Initially I was hoping to find a byte value with the max amount of memory allowed but that fantasy is now shattered.
    Then I wondered that maybe replacing those modules/functions in the bios could solve it, assuming I find a perfect match (a bios for a 2x16GB laptop).
    I've also installed IDA and efiXplorer plugin and opened `MemoryInit` PE body. But I can't conclude anything. The differences just keep on piling up.

    The second bios of interest is for N752VXAS which supports 2x16GB... but this laptop use DDR4, while my laptop is DDR3L :(

    24CCD374-3DF6-4181-86F6-E3C66920A145 --- UpdateMemoryRecord --- Full size: 120Ah (4618)
    EEEE611D-F78F-4FB9-B868-55907F169280 --- PlatformInitPreMem --- Full size: 2110Eh (135438)
    4A3CA68B-7723-48FB-803D-578CC1FEC44D --- SiInitPreMem --------- Full size: 5E0800h (6162432)
    Which doesn't even have a matching `MemoryInit` module. But looking from the size maybe the `PlatformInitPreMem` is equivalent to it.
    Assuming the hardware is the same, would copying the bios PE modules for memory init work? Or is this idea a pipe dream?
    What about when dealing with different memory type? DDR3L vs DDR4? SODIMM vs DIMM?

    Any comments or suggestions?
    Thanks for any help.

    PS: I just found out about TOLUD register in the BIOS. Could this be the cause of the problem and patching it would fix it?

    My laptop bios:

    Other bios I've tried to investigate:
  2. nXp

    nXp MDL Novice

    May 25, 2019
    Hi, i think you need to remap memory allocation tables written in the SM bios. Also check for throtteling. You can find your issues and memory alllocations by using software like siv, Aida etc.
    Most liklely your SM bios is not mapped for a 32gb memory area, you might solve this by enabling memory scrambling or memory hole funcrions in main bios settings, but i doubt it as you descrbe your issue to a no boot. Wich tells me your system is mapped for wrong sizes on the slots, you have 2banks with 2 slots each, so for 32gb memory area is 16gb on bank divided on two slots? Correct me if i am way out on this:)
  3. acer-5100

    acer-5100 MDL Guru

    Dec 8, 2018
    To me smells more like a single rank V.S. dual rank problem (aka you're using sodims unsupported by the PC)
  4. nXp

    nXp MDL Novice

    May 25, 2019
    Yes it Might be the rank is not mapped, but all this is still on the SMBus, where you either need to do changes to the SMBios, by extracting and changing PEI32 img from the Bios file and flash modded bios.. Or by using software on live system that gets direct acess to SMBus tables. from how I read the system boots on dual ram 16G, and halts on Dual32, problem can also be that the first 60 bits of the memory string is not supporting the new ram(there is higher density or more chips) and other values that can give this issues, anyhow, my whole idea was to tell that the problem should be easy to spot by using a program like SIV, Aida or taiphoon burner. And from there find best way to solve problem. , thaiphoon can also write changes to SMBus.
  5. pingu23

    pingu23 MDL Novice

    Apr 8, 2023
    Do you have tried, to make a full dump of the BIOS and reverse engineering the code?
    Remember to make a backup of the BIOS before you make any action.

    Are you sure if the RAM type, are correct and compatible, with the chipset of mainboard?
    I know for my experience, sometime on the bios, has the "sad" feature to block components with blacklisting technique.