diff options
author | Mathew King <mathewk@chromium.org> | 2021-03-03 15:11:28 -0700 |
---|---|---|
committer | Martin Roth <martinroth@google.com> | 2021-03-13 02:37:30 +0000 |
commit | 1ab35a7f50a70b481c9d76ceed507cccfb881f06 (patch) | |
tree | f1eba29de7e08c7f29ab2099e53faec5339f7c04 /src/mainboard | |
parent | fc49adfe82b43145ce6984f30cd95afe6219cf08 (diff) |
mb/google/guybrush: Add ACPI support for Chrome EC
BUG=b:180507937
TEST=builds
Signed-off-by: Mathew King <mathewk@chromium.org>
Change-Id: Icb8aba87390475cad7a2a9911c3832a59c987b65
Reviewed-on: https://review.coreboot.org/c/coreboot/+/51240
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martinroth@google.com>
Diffstat (limited to 'src/mainboard')
-rw-r--r-- | src/mainboard/google/guybrush/dsdt.asl | 12 | ||||
-rw-r--r-- | src/mainboard/google/guybrush/variants/baseboard/include/baseboard/ec.h | 34 |
2 files changed, 45 insertions, 1 deletions
diff --git a/src/mainboard/google/guybrush/dsdt.asl b/src/mainboard/google/guybrush/dsdt.asl index 7b8982a645..9579ae36f9 100644 --- a/src/mainboard/google/guybrush/dsdt.asl +++ b/src/mainboard/google/guybrush/dsdt.asl @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: GPL-2.0-only */ #include <acpi/acpi.h> +#include <variant/ec.h> + DefinitionBlock ( "dsdt.aml", "DSDT", @@ -11,6 +13,14 @@ DefinitionBlock ( ) { #include <acpi/dsdt_top.asl> - #include <soc.asl> + + /* Chrome OS Embedded Controller */ + Scope (\_SB.PCI0.LPCB) + { + /* ACPI code for EC SuperIO functions */ + #include <ec/google/chromeec/acpi/superio.asl> + /* ACPI code for EC functions */ + #include <ec/google/chromeec/acpi/ec.asl> + } } diff --git a/src/mainboard/google/guybrush/variants/baseboard/include/baseboard/ec.h b/src/mainboard/google/guybrush/variants/baseboard/include/baseboard/ec.h index 7df8673698..0b51eb28ac 100644 --- a/src/mainboard/google/guybrush/variants/baseboard/include/baseboard/ec.h +++ b/src/mainboard/google/guybrush/variants/baseboard/include/baseboard/ec.h @@ -6,6 +6,7 @@ #include <ec/ec.h> #include <ec/google/chromeec/ec_commands.h> #include <baseboard/gpio.h> +#include <soc/gpio.h> #define MAINBOARD_EC_SCI_EVENTS \ (EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_CLOSED) \ @@ -45,4 +46,37 @@ | EC_HOST_EVENT_MASK(EC_HOST_EVENT_BATTERY_SHUTDOWN) \ | EC_HOST_EVENT_MASK(EC_HOST_EVENT_PANIC)) +/* + * ACPI related definitions for ASL code. + */ + +/* Set GPI for SCI */ +#define EC_SCI_GPI GEVENT_24 /* eSPI system event -> GPE 24 */ + +/* Enable EC backed ALS device in ACPI */ +#define EC_ENABLE_ALS_DEVICE + +/* Enable LID switch and provide wake pin for EC */ +#define EC_ENABLE_LID_SWITCH +#define EC_ENABLE_WAKE_PIN GEVENT_3 /* AGPIO 22 -> GPE 3 */ + +/* Enable Tablet switch */ +#define EC_ENABLE_TBMC_DEVICE + +#define SIO_EC_MEMMAP_ENABLE /* EC Memory Map Resources */ +#define SIO_EC_HOST_ENABLE /* EC Host Interface Resources */ +#define SIO_EC_ENABLE_PS2K /* Enable PS/2 Keyboard */ + +/* Enable EC sync interrupt */ +#define EC_ENABLE_SYNC_IRQ_GPIO + +/* EC sync irq */ +#define EC_SYNC_IRQ GPIO_84 + +/* Enable EC backed PD MCU device in ACPI */ +#define EC_ENABLE_PD_MCU_DEVICE + +/* Enable EC backed Keyboard Backlight in ACPI */ +#define EC_ENABLE_KEYBOARD_BACKLIGHT + #endif /* __MAINBOARD_EC_H__ */ |