Project

General

Profile

Feature #583 » dump-me-status.diff

Bill XIE, 04/17/2025 09:52 AM

View differences:

src/mainboard/asus/p8x7x-series/mainboard.c
* Skip if ME is already unlocked or inoperable.
*/
union me_hfs hfs;
union me_gmes gmes;
int32_t me_sig = pci_s_read_config32(PCH_ME_DEV, PCI_VENDOR_ID);
hfs.raw = pci_s_read_config32(PCH_ME_DEV, PCI_ME_HFS);
gmes.raw = pci_s_read_config32(PCH_ME_DEV, PCI_ME_GMES);
intel_me_status(&hfs, &gmes);
if (me_sig != -1 &&
hfs.working_state != 4 &&
hfs.operation_mode != ME_HFS_MODE_DEBUG) {
printk(BIOS_INFO, "Unlocking ME, system will restart... ");
mainboard_unlock_me(1);
udelay(8);
hfs.raw = pci_s_read_config32(PCH_ME_DEV, PCI_ME_HFS);
gmes.raw = pci_s_read_config32(PCH_ME_DEV, PCI_ME_GMES);
intel_me_status(&hfs, &gmes);
full_reset();
} else {
printk(BIOS_INFO, "ME unlocked or inop. ");
(10-10/10)