summaryrefslogtreecommitdiff
path: root/src/ec/starlabs/merlin/ite.c
diff options
context:
space:
mode:
authorSean Rhodes <sean@starlabs.systems>2022-10-28 08:37:22 +0100
committerFelix Held <felix-coreboot@felixheld.de>2022-11-07 14:19:24 +0000
commitb42ca4d0b2fafe7214396d30a1a833ac33cf85bc (patch)
tree910b28ff69188137c66a2faa8f837f405549ef72 /src/ec/starlabs/merlin/ite.c
parente477b0e8de6cd9cf97f381e9ff14934f8ccc33e1 (diff)
ec/starlabs/merlin: Add support for enabling the mirror flag
When enabled, the EC will mirror the firmware contained inside the coreboot ROM. This allows it to be updated at the same time as coreboot. Signed-off-by: Sean Rhodes <sean@starlabs.systems> Change-Id: Ief088e012b65be32648f581fc3190e1000bca241 Reviewed-on: https://review.coreboot.org/c/coreboot/+/68938 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Diffstat (limited to 'src/ec/starlabs/merlin/ite.c')
-rw-r--r--src/ec/starlabs/merlin/ite.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/ec/starlabs/merlin/ite.c b/src/ec/starlabs/merlin/ite.c
index 357c67cda5..d2d7c454d3 100644
--- a/src/ec/starlabs/merlin/ite.c
+++ b/src/ec/starlabs/merlin/ite.c
@@ -70,6 +70,7 @@ static void merlin_init(struct device *dev)
* trackpad_state
* kbl_brightness
* kbl_state
+ * mirror_flag
*/
/*
@@ -247,6 +248,25 @@ static void merlin_init(struct device *dev)
1,
kbl_state,
ARRAY_SIZE(kbl_state)));
+
+ /*
+ * Mirror Flag
+ *
+ * Setting: mirror_flag
+ *
+ * Values: Off, On
+ * Default: On
+ */
+ const uint8_t mirror_flag[] = {
+ MIRROR_DISABLED,
+ MIRROR_ENABLED
+ };
+ if (CONFIG(EC_STARLABS_MIRROR_FLAG))
+ ec_write(ECRAM_MIRROR_FLAG,
+ get_ec_value_from_option("mirror_flag",
+ 1,
+ mirror_flag,
+ ARRAY_SIZE(mirror_flag)));
}
static struct device_operations ops = {