Broken UEFI implementations: Difference between revisions
Jump to navigation
Jump to search
[unchecked revision] | [unchecked revision] |
Content added Content deleted
m (→BGRT Table) |
|||
Line 2: | Line 2: | ||
= BGRT Table = |
= BGRT Table = |
||
* BGRT is an ACPI table to tell us if and where UEFI firmware has drawn its logo on the screen. Technically the BGRT is an ACPI 5 table, but its use corresponds with UEFI 2.4 deployments, and it goes hand in hand with the EFI Graphics Output Protocol and ESRT + UEFI UpdateCapsule and [[https://msdn.microsoft.com/en-us/library/dn917814%28v=vs.85%29.aspx Microsoft's firmware update graphics capsule]]. In theory, "uint16_t version" (offset 0x24) should always be 1, and "uint8_t status" (offset |
* BGRT is an ACPI table to tell us if and where UEFI firmware has drawn its logo on the screen. Technically the BGRT is an ACPI 5 table, but its use corresponds with UEFI 2.4 deployments, and it goes hand in hand with the EFI Graphics Output Protocol and ESRT + UEFI UpdateCapsule and [[https://msdn.microsoft.com/en-us/library/dn917814%28v=vs.85%29.aspx Microsoft's firmware update graphics capsule]]. In theory, "uint16_t version" (offset 0x24) should always be 1, and "uint8_t status" (offset 0x26) with 0x1 set means "valid data" - that is, if the firmware displayed a splash graphic, it sets the values in the table and sets status to 1; if not, status should be 0. |
||
Here are some sample entries. These are from real machines, but the problems are common across lots of hardware from lots of vendors: |
Here are some sample entries. These are from real machines, but the problems are common across lots of hardware from lots of vendors: |