diff --git a/common/ec_features.c b/common/ec_features.c index cab83df503..ff97df44cf 100644 --- a/common/ec_features.c +++ b/common/ec_features.c @@ -118,6 +118,9 @@ uint32_t get_feature_flags1(void) uint32_t result = EC_FEATURE_MASK_1(EC_FEATURE_UNIFIED_WAKE_MASKS) #ifdef CONFIG_HOST_EVENT64 | EC_FEATURE_MASK_1(EC_FEATURE_HOST_EVENT64) +#endif +#ifdef CONFIG_EXTERNAL_STORAGE + | EC_FEATURE_MASK_1(EC_FEATURE_EXEC_IN_RAM) #endif ; #ifdef CONFIG_EC_FEATURE_BOARD_OVERRIDE diff --git a/include/ec_commands.h b/include/ec_commands.h index 64b8193b93..15685b0ec2 100644 --- a/include/ec_commands.h +++ b/include/ec_commands.h @@ -1248,6 +1248,8 @@ enum ec_feature_code { EC_FEATURE_UNIFIED_WAKE_MASKS = 32, /* EC supports 64-bit host events */ EC_FEATURE_HOST_EVENT64 = 33, + /* EC runs code in RAM (not in place, a.k.a. XIP) */ + EC_FEATURE_EXEC_IN_RAM = 34, }; #define EC_FEATURE_MASK_0(event_code) (1UL << (event_code % 32)) diff --git a/util/ectool.c b/util/ectool.c index 83b263d74b..33c75ee17e 100644 --- a/util/ectool.c +++ b/util/ectool.c @@ -545,6 +545,7 @@ static const char * const ec_feature_names[] = { [EC_FEATURE_DEVICE_EVENT] = "Device events reporting", [EC_FEATURE_UNIFIED_WAKE_MASKS] = "Unified wake masks for LPC/eSPI", [EC_FEATURE_HOST_EVENT64] = "64-bit host events", + [EC_FEATURE_EXEC_IN_RAM] = "Execute code in RAM", }; int cmd_inventory(int argc, char *argv[])