summaryrefslogtreecommitdiff
path: root/src/mainboard/google/dedede/variants
diff options
context:
space:
mode:
authorReka Norman <rekanorman@chromium.org>2023-09-13 15:10:21 +1000
committerFelix Held <felix-coreboot@felixheld.de>2023-09-14 11:55:21 +0000
commitfb5b63bf0c515dc19f831fd7ae884a2b58163e30 (patch)
treebba217ac8b4ba9eae226f84690f1f7ee65b4226f /src/mainboard/google/dedede/variants
parentc2830c96616c689502401f31be7279e54a35d449 (diff)
mb/google/dedede: Use a separate ec.h for dibbi variants
Dibbi variants are chromeboxes, so they need different settings in ec.h. Add a new dibbi baseboard ec.h and use it for dibbi variants. For now it's identical to the dedede baseboard ec.h. It will be updated in the following CL. BUG=b:294963793 TEST=With the following CL, boot dibbi and check the APCI tables no longer contain lid and PS/2 keyboard devices. Change-Id: I4075041ab8f02026623d1a26a555bee5eb09e77b Signed-off-by: Reka Norman <rekanorman@chromium.org> Reviewed-on: https://review.coreboot.org/c/coreboot/+/77782 Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com> Reviewed-by: Sam McNally <sammc@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Sheng-Liang Pan <sheng-liang.pan@quanta.corp-partner.google.com>
Diffstat (limited to 'src/mainboard/google/dedede/variants')
-rw-r--r--src/mainboard/google/dedede/variants/baseboard/include/baseboard/dibbi/ec.h84
-rw-r--r--src/mainboard/google/dedede/variants/boxy/include/variant/ec.h2
-rw-r--r--src/mainboard/google/dedede/variants/dibbi/include/variant/ec.h2
-rw-r--r--src/mainboard/google/dedede/variants/taranza/include/variant/ec.h2
4 files changed, 87 insertions, 3 deletions
diff --git a/src/mainboard/google/dedede/variants/baseboard/include/baseboard/dibbi/ec.h b/src/mainboard/google/dedede/variants/baseboard/include/baseboard/dibbi/ec.h
new file mode 100644
index 0000000000..1e4ac0bbb7
--- /dev/null
+++ b/src/mainboard/google/dedede/variants/baseboard/include/baseboard/dibbi/ec.h
@@ -0,0 +1,84 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+#ifndef __BASEBOARD_EC_H__
+#define __BASEBOARD_EC_H__
+
+#include <ec/ec.h>
+#include <ec/google/chromeec/ec_commands.h>
+#include <baseboard/gpio.h>
+
+#define MAINBOARD_EC_SCI_EVENTS \
+ (EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_CLOSED) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_OPEN) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_AC_CONNECTED) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_AC_DISCONNECTED) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_BATTERY_LOW) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_BATTERY_CRITICAL) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_BATTERY) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_BATTERY_STATUS) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_THERMAL_THRESHOLD) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_THROTTLE_START) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_THROTTLE_STOP) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_MKBP) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_PD_MCU) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_MODE_CHANGE) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_PANIC))
+
+#define MAINBOARD_EC_SMI_EVENTS \
+ (EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_CLOSED))
+
+/* EC can wake from S5 with lid or power button */
+#define MAINBOARD_EC_S5_WAKE_EVENTS \
+ (EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_OPEN) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_POWER_BUTTON))
+
+/*
+ * EC can wake from S3/S0ix with:
+ * 1. Lid open
+ * 2. Power button
+ * 3. Key press
+ * 4. Mode change
+ * 5. AC Connect/Disconnect
+ * 6. Low battery
+ */
+#define MAINBOARD_EC_S3_WAKE_EVENTS \
+ (MAINBOARD_EC_S5_WAKE_EVENTS |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_AC_CONNECTED) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_AC_DISCONNECTED) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_KEY_PRESSED) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_MODE_CHANGE))
+
+#define MAINBOARD_EC_S0IX_WAKE_EVENTS \
+ (MAINBOARD_EC_S3_WAKE_EVENTS |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_BATTERY_CRITICAL) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_BATTERY_SHUTDOWN) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_HANG_DETECT))
+
+/* Log EC wake events plus EC shutdown events */
+#define MAINBOARD_EC_LOG_EVENTS \
+ (EC_HOST_EVENT_MASK(EC_HOST_EVENT_THERMAL_SHUTDOWN) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_BATTERY_SHUTDOWN) |\
+ EC_HOST_EVENT_MASK(EC_HOST_EVENT_PANIC))
+
+/*
+ * ACPI related definitions for ASL code.
+ */
+
+/* Enable MKBP for buttons and switches */
+#define EC_ENABLE_MKBP_DEVICE
+
+/* Enable LID switch and provide wake pin for EC */
+#define EC_ENABLE_LID_SWITCH
+#define EC_ENABLE_WAKE_PIN GPE_EC_WAKE
+
+/* Enable EC backed PD MCU device in ACPI */
+#define EC_ENABLE_PD_MCU_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 IRQ, EC_SYNC_IRQ is defined in baseboard/gpio.h */
+#define EC_ENABLE_SYNC_IRQ
+
+#endif /* __BASEBOARD_EC_H__ */
diff --git a/src/mainboard/google/dedede/variants/boxy/include/variant/ec.h b/src/mainboard/google/dedede/variants/boxy/include/variant/ec.h
index 08870e0627..039e46ba14 100644
--- a/src/mainboard/google/dedede/variants/boxy/include/variant/ec.h
+++ b/src/mainboard/google/dedede/variants/boxy/include/variant/ec.h
@@ -3,6 +3,6 @@
#ifndef MAINBOARD_EC_H
#define MAINBOARD_EC_H
-#include <baseboard/ec.h>
+#include <baseboard/dibbi/ec.h>
#endif
diff --git a/src/mainboard/google/dedede/variants/dibbi/include/variant/ec.h b/src/mainboard/google/dedede/variants/dibbi/include/variant/ec.h
index 08870e0627..039e46ba14 100644
--- a/src/mainboard/google/dedede/variants/dibbi/include/variant/ec.h
+++ b/src/mainboard/google/dedede/variants/dibbi/include/variant/ec.h
@@ -3,6 +3,6 @@
#ifndef MAINBOARD_EC_H
#define MAINBOARD_EC_H
-#include <baseboard/ec.h>
+#include <baseboard/dibbi/ec.h>
#endif
diff --git a/src/mainboard/google/dedede/variants/taranza/include/variant/ec.h b/src/mainboard/google/dedede/variants/taranza/include/variant/ec.h
index 08870e0627..039e46ba14 100644
--- a/src/mainboard/google/dedede/variants/taranza/include/variant/ec.h
+++ b/src/mainboard/google/dedede/variants/taranza/include/variant/ec.h
@@ -3,6 +3,6 @@
#ifndef MAINBOARD_EC_H
#define MAINBOARD_EC_H
-#include <baseboard/ec.h>
+#include <baseboard/dibbi/ec.h>
#endif