OperationRegion GNVS

Hm. This is interesting. The address of the OperationRegion (GNVS, SystemMemory, 0xDC227C18, 0xNNNN) in my vanilla factory DSDT changes when I boot from a USB memory stick. It is normally 0xDC227C18, but if I boot from a USB memory stick then it is 0xDC226C18. Odd. Isn’t it.

The reason for this 4 KB difference is unknown to me. Do you know why? If yes, then please let me know. Thanks!

Edit: I re-wrote a feature that I added to RevoBoot some time ago, which I lost with the SSD failure, but the new one should be fine. It is a bit different, but the new source code is already committed from dads computer. This way other developers – think Chameleon and Chimera devs – can use it for their boot loader. With a few changes of course 😉

5 thoughts on “OperationRegion GNVS

  1. I believe that GNVS stands for Global Non Volatile Storage (NVRAM).
    It is logical that this would be growing on adding of storage devices.
    It should be well-documented in the (U)EFI specifications and the ACPI specs.
    So as the NVRAM grows in contents, size parameter increases and also the reverse.

    • Yes. It’s short for Global Non Volatile Storage but the address only changes if I boot from the USB memory stick. Either with or without the SSD connected. That makes it so weird.

      • Hi Pike,
        Excuse me if I post here a question to you about the HD4600 but I saw you wrote a lot about it. I’m having problems with it when the monitor awakes from the sleep, in fact I randomly get a fuzzy screen for several seconds. https://www.dropbox.com/s/kn8rlt79a9c5mw6/IMAG0454.jpg?dl=0
        I’ve to say that my mobo (maximus vii gene) equipped only 1 hdmi port and every ig-platform-id fails except 0d220003. I’m trying everything but without success.

        What do you think about it?
        Thank you


      • Hi Fransesco,

        I am not at home right now (visiting my father) and don’t have a hack handy, so I can’t really help you right now, but what I would do is to run AppleIntelFramebufferAzul.sh and remove the unused ports. For this you first change the frame buffer index and port nibble to ff00 (like the VGA port). Then change the frame buffer memory bytes “0003 0303” to match the new setup. Sorry. Can’t recall what to use.

        Tip: Test it out on a properly booting USB memory stick. This way you don’t mess with your working setup.

  2. Maybe it’s due to the main boot pointer changing.
    It may be a little bigger…
    One may want to do 2 dumps of the address in order to examine the data…
    That would tell more.


    I do have another theory too:
    In case of any USB boot there is the requirement of legacy USB…
    You may want to check there too… this would load extra parts.
    Address may change because of that….

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s