Question:
Is there any API available to check SLP 1.0 values from the BIOS?
Answer:
Yes, you can use EnumSystemFirmwareTables API for that.
EnumSystemFirmwareTables API enumerates all system firmware tables of the specified type. It supports 3 types of firmware table provider.
Where, the raw firmware table provider ('FIRM') returns a list of DWORD table identifiers. Each identifier corresponds to the beginning of a physical address range. Currently, this provider returns 'C000' and 'E000'. These values correspond to physical memory from 0xC0000 to 0xDFFFF and 0xE0000 to 0xFFFFF, respectively.
To check values of SLP 1.0 from the BIOS we need to access data from the physical memory location 0xE0000 to 0xFFFFF.
We also have the following alternatives to read data from low physical memory:
Links:
EnumSystemFirmwareTables Function http://msdn.microsoft.com/en-us/library/ms724259(VS.85).aspx
GetSystemFirmwareTable Function http://msdn.microsoft.com/en-us/library/ms724379(VS.85).aspx