1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 3 #ifndef __BASEBOARD_EC_H__ 4 #define __BASEBOARD_EC_H__ 5 6 #include <ec/ec.h> 7 #include <ec/google/chromeec/ec_commands.h> 8 #include <baseboard/gpio.h> 9 10 #define MAINBOARD_EC_SCI_EVENTS \ 11 (EC_HOST_EVENT_MASK(EC_HOST_EVENT_THERMAL_THRESHOLD) |\ 12 EC_HOST_EVENT_MASK(EC_HOST_EVENT_THROTTLE_START) |\ 13 EC_HOST_EVENT_MASK(EC_HOST_EVENT_THROTTLE_STOP) |\ 14 EC_HOST_EVENT_MASK(EC_HOST_EVENT_MKBP) |\ 15 EC_HOST_EVENT_MASK(EC_HOST_EVENT_PD_MCU) |\ 16 EC_HOST_EVENT_MASK(EC_HOST_EVENT_PANIC)) 17 18 #define MAINBOARD_EC_SMI_EVENTS 0 19 20 /* EC can wake from S5 with power button */ 21 #define MAINBOARD_EC_S5_WAKE_EVENTS \ 22 (EC_HOST_EVENT_MASK(EC_HOST_EVENT_POWER_BUTTON)) 23 24 /* EC can wake from S3/S0ix with power button */ 25 #define MAINBOARD_EC_S3_WAKE_EVENTS \ 26 (MAINBOARD_EC_S5_WAKE_EVENTS) 27 28 #define MAINBOARD_EC_S0IX_WAKE_EVENTS \ 29 (MAINBOARD_EC_S3_WAKE_EVENTS |\ 30 EC_HOST_EVENT_MASK(EC_HOST_EVENT_HANG_DETECT)) 31 32 /* Log EC wake events plus EC shutdown events */ 33 #define MAINBOARD_EC_LOG_EVENTS \ 34 (EC_HOST_EVENT_MASK(EC_HOST_EVENT_THERMAL_SHUTDOWN) |\ 35 EC_HOST_EVENT_MASK(EC_HOST_EVENT_PANIC)) 36 37 /* 38 * ACPI related definitions for ASL code. 39 */ 40 41 /* Enable MKBP for buttons and switches */ 42 #define EC_ENABLE_MKBP_DEVICE 43 44 /* Provide wake pin for EC */ 45 #define EC_ENABLE_WAKE_PIN GPE_EC_WAKE 46 47 /* Enable EC backed PD MCU device in ACPI */ 48 #define EC_ENABLE_PD_MCU_DEVICE 49 50 #define SIO_EC_MEMMAP_ENABLE /* EC Memory Map Resources */ 51 #define SIO_EC_HOST_ENABLE /* EC Host Interface Resources */ 52 53 /* Enable EC SYNC IRQ, EC_SYNC_IRQ is defined in baseboard/gpio.h */ 54 #define EC_ENABLE_SYNC_IRQ 55 56 #endif /* __BASEBOARD_EC_H__ */ 57