coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
ec.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef LINK_EC_H
4 #define LINK_EC_H
5 
7 
8 #define EC_SCI_GPI 23 /* GPIO7/GPE23 is EC_SCI# */
9 #define EC_SMI_GPI 8 /* GPIO8 is EC_SMI# */
10 
11 #define LINK_EC_SCI_EVENTS \
12  (EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_CLOSED) |\
13  EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_OPEN) |\
14  EC_HOST_EVENT_MASK(EC_HOST_EVENT_AC_CONNECTED) |\
15  EC_HOST_EVENT_MASK(EC_HOST_EVENT_AC_DISCONNECTED) |\
16  EC_HOST_EVENT_MASK(EC_HOST_EVENT_BATTERY_LOW) |\
17  EC_HOST_EVENT_MASK(EC_HOST_EVENT_BATTERY_CRITICAL) |\
18  EC_HOST_EVENT_MASK(EC_HOST_EVENT_BATTERY) |\
19  EC_HOST_EVENT_MASK(EC_HOST_EVENT_THERMAL_THRESHOLD) |\
20  EC_HOST_EVENT_MASK(EC_HOST_EVENT_USB_CHARGER))
21 
22 #define LINK_EC_SMI_EVENTS \
23  (EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_CLOSED))
24 
25 /* EC can wake from S5 with lid or power button */
26 #define LINK_EC_S5_WAKE_EVENTS \
27  (EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_OPEN) |\
28  EC_HOST_EVENT_MASK(EC_HOST_EVENT_POWER_BUTTON))
29 
30 /* EC can wake from S3 with lid or power button or key press */
31 #define LINK_EC_S3_WAKE_EVENTS \
32  (LINK_EC_S5_WAKE_EVENTS |\
33  EC_HOST_EVENT_MASK(EC_HOST_EVENT_KEY_PRESSED))
34 
35 /* Log EC wake events plus EC shutdown events */
36 #define LINK_EC_LOG_EVENTS \
37  (EC_HOST_EVENT_MASK(EC_HOST_EVENT_THERMAL_SHUTDOWN) |\
38  EC_HOST_EVENT_MASK(EC_HOST_EVENT_BATTERY_SHUTDOWN))
39 
40 #ifndef __ACPI__
41 extern void link_ec_init(void);
42 #endif
43 
44 #endif // LINK_EC_H