mb/google/dedede: Enable ACPI and add ACPI table

Enable ACPI configuration and add DSDT ACPI table.

BUG=b:144768001
TEST=Build Test

Change-Id: I0aa889cd52bff3e1e9ff7b7b93ec1000045bcfd2
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38279
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
This commit is contained in:
Karthikeyan Ramasubramanian 2020-01-06 22:21:37 -07:00 committed by Furquan Shaikh
parent 85c52c5d97
commit edad34b883
3 changed files with 52 additions and 1 deletions

View File

@ -1,5 +1,7 @@
config BOARD_GOOGLE_BASEBOARD_DEDEDE config BOARD_GOOGLE_BASEBOARD_DEDEDE
def_bool n def_bool n
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES
select SOC_INTEL_JASPERLAKE select SOC_INTEL_JASPERLAKE
if BOARD_GOOGLE_BASEBOARD_DEDEDE if BOARD_GOOGLE_BASEBOARD_DEDEDE

View File

@ -0,0 +1,41 @@
/*
* This file is part of the coreboot project.
*
* Copyright 2020 The coreboot project Authors.
*
* SPDX-License-Identifier: GPL-2.0-or-later
*/
#include <arch/acpi.h>
#include <variant/gpio.h>
DefinitionBlock(
"dsdt.aml",
"DSDT",
0x02, /* DSDT revision: ACPI v2.0 and up */
OEM_ID,
ACPI_TABLE_CREATOR,
0x20110725 /* OEM revision */
)
{
/* Some generic macros */
#include <soc/intel/tigerlake/acpi/platform.asl>
/* global NVS and variables */
#include <soc/intel/common/block/acpi/acpi/globalnvs.asl>
/* CPU */
#include <cpu/intel/common/acpi/cpu.asl>
Scope (\_SB) {
Device (PCI0)
{
#include <soc/intel/common/block/acpi/acpi/northbridge.asl>
#include <soc/intel/tigerlake/acpi/southbridge.asl>
}
}
/* Chipset specific sleep states */
#include <southbridge/intel/common/acpi/sleepstates.asl>
}

View File

@ -6,6 +6,7 @@
* SPDX-License-Identifier: GPL-2.0-or-later * SPDX-License-Identifier: GPL-2.0-or-later
*/ */
#include <arch/acpi.h>
#include <baseboard/variants.h> #include <baseboard/variants.h>
#include <device/device.h> #include <device/device.h>
@ -18,9 +19,16 @@ static void mainboard_init(void *chip_info)
gpio_configure_pads(pads, num); gpio_configure_pads(pads, num);
} }
static unsigned long mainboard_write_acpi_tables(
struct device *device, unsigned long current, acpi_rsdp_t *rsdp)
{
return current;
}
static void mainboard_enable(struct device *dev) static void mainboard_enable(struct device *dev)
{ {
/* TODO: Enable mainboard */ dev->ops->write_acpi_tables = mainboard_write_acpi_tables;
dev->ops->acpi_inject_dsdt_generator = NULL;
} }
struct chip_operations mainboard_ops = { struct chip_operations mainboard_ops = {