soc/amd: Move SCI enable outside table creation

Preferably, coreboot tables creation is kept hardware-invariant.

Change-Id: Id7f79fc959766813d60f847482567579a02db124
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/36811
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Richard Spiegel <richard.spiegel@silverbackltd.com>
Reviewed-by: Marshall Dawson <marshalldawson3rd@gmail.com>
This commit is contained in:
Kyösti Mälkki 2019-10-08 19:25:57 +03:00
parent 0df1cccc0a
commit 27cb3e0d31
4 changed files with 18 additions and 4 deletions

View File

@ -98,7 +98,6 @@ void acpi_create_fadt(acpi_fadt_t *fadt, acpi_facs_t *facs, void *dsdt)
fadt->s4bios_req = 0; /* Not supported */
fadt->pstate_cnt = 0; /* Not supported */
fadt->cst_cnt = 0; /* Not supported */
acpi_disable_sci();
} else {
fadt->smi_cmd = 0; /* disable system management mode */
fadt->acpi_enable = 0; /* unused if SMI_CMD = 0 */
@ -106,7 +105,6 @@ void acpi_create_fadt(acpi_fadt_t *fadt, acpi_facs_t *facs, void *dsdt)
fadt->s4bios_req = 0; /* unused if SMI_CMD = 0 */
fadt->pstate_cnt = 0; /* unused if SMI_CMD = 0 */
fadt->cst_cnt = 0x00; /* unused if SMI_CMD = 0 */
acpi_enable_sci();
}
fadt->pm1a_evt_blk = ACPI_PM_EVT_BLK;

View File

@ -13,12 +13,14 @@
* GNU General Public License for more details.
*/
#include <arch/acpi.h>
#include <cpu/x86/mp.h>
#include <cpu/x86/msr.h>
#include <cpu/amd/msr.h>
#include <bootstate.h>
#include <timer.h>
#include <console/console.h>
#include <amdblocks/acpi.h>
static void per_core_finalize(void *unused)
{
@ -53,6 +55,13 @@ static void soc_finalize(void *unused)
{
finalize_cores();
if (!acpi_is_wakeup_s3()) {
if (CONFIG(HAVE_SMI_HANDLER))
acpi_disable_sci();
else
acpi_enable_sci();
}
post_code(POST_OS_BOOT);
}

View File

@ -100,7 +100,6 @@ void acpi_create_fadt(acpi_fadt_t *fadt, acpi_facs_t *facs, void *dsdt)
fadt->s4bios_req = 0; /* Not supported */
fadt->pstate_cnt = 0; /* Not supported */
fadt->cst_cnt = 0; /* Not supported */
acpi_disable_sci();
} else {
fadt->smi_cmd = 0; /* disable system management mode */
fadt->acpi_enable = 0; /* unused if SMI_CMD = 0 */
@ -108,7 +107,6 @@ void acpi_create_fadt(acpi_fadt_t *fadt, acpi_facs_t *facs, void *dsdt)
fadt->s4bios_req = 0; /* unused if SMI_CMD = 0 */
fadt->pstate_cnt = 0; /* unused if SMI_CMD = 0 */
fadt->cst_cnt = 0x00; /* unused if SMI_CMD = 0 */
acpi_enable_sci();
}
fadt->pm1a_evt_blk = ACPI_PM_EVT_BLK;

View File

@ -13,12 +13,14 @@
* GNU General Public License for more details.
*/
#include <arch/acpi.h>
#include <cpu/x86/mp.h>
#include <cpu/x86/msr.h>
#include <cpu/amd/msr.h>
#include <bootstate.h>
#include <timer.h>
#include <console/console.h>
#include <amdblocks/acpi.h>
static void per_core_finalize(void *unused)
{
@ -53,6 +55,13 @@ static void soc_finalize(void *unused)
{
finalize_cores();
if (!acpi_is_wakeup_s3()) {
if (CONFIG(HAVE_SMI_HANDLER))
acpi_disable_sci();
else
acpi_enable_sci();
}
post_code(POST_OS_BOOT);
}