blob: 58221513a177b0f0bec1b73171625c7bef94d5f2 [file] [log] [blame]
/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
* Utilities for SMM setup
*/
#include <acpi/acpi.h>
#include <arch/io.h>
#include <console/console.h>
#include <cpu/x86/smm.h>
#include <amdblocks/acpimmio.h>
#include <soc/southbridge.h>
#include <soc/smi.h>
/** Set the EOS bit and enable SMI generation from southbridge */
void global_smi_enable(void)
{
uint32_t reg = smi_read32(SMI_REG_SMITRIG0);
reg &= ~SMITRG0_SMIENB; /* Enable SMI generation */
reg |= SMITRG0_EOS; /* Set EOS bit */
smi_write32(SMI_REG_SMITRIG0, reg);
if (!acpi_is_wakeup_s3())
outb(APM_CNT_SMMINFO, APM_CNT);
}