ec/starlabs: Guard Max Charge in Kconfig
Guard Max Charge EC write in Kconfig so it's only used on
platforms that support it.
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: I7be39cd9543c8253d53070950edc6908a21e864a
Reviewed-on: https://review.coreboot.org/c/coreboot/+/62123
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Andy Pont <andy.pont@sdcsystems.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
diff --git a/src/ec/starlabs/merlin/Kconfig b/src/ec/starlabs/merlin/Kconfig
index 67582ac..93101b7 100644
--- a/src/ec/starlabs/merlin/Kconfig
+++ b/src/ec/starlabs/merlin/Kconfig
@@ -44,6 +44,13 @@
help
Select if the mainboard has a fan.
+config EC_STARLABS_MAX_CHARGE
+ bool
+ default n
+ depends on EC_STARLABS_ITE
+ help
+ Select if the mainboard supports limiting the maximum charge of the battery.
+
config EC_STARLABS_MERLIN
bool "Use open-source Merlin EC Firmware"
default n
diff --git a/src/ec/starlabs/merlin/ec.c b/src/ec/starlabs/merlin/ec.c
index 40be138..e8eaa22 100644
--- a/src/ec/starlabs/merlin/ec.c
+++ b/src/ec/starlabs/merlin/ec.c
@@ -130,11 +130,12 @@
CHARGE_60
};
- ec_write(ECRAM_MAX_CHARGE,
- get_ec_value_from_option("max_charge",
- 0,
- max_charge,
- ARRAY_SIZE(max_charge)));
+ if (CONFIG(EC_STARLABS_MAX_CHARGE))
+ ec_write(ECRAM_MAX_CHARGE,
+ get_ec_value_from_option("max_charge",
+ 0,
+ max_charge,
+ ARRAY_SIZE(max_charge)));
/*
* Fan Mode
diff --git a/src/mainboard/starlabs/labtop/Kconfig b/src/mainboard/starlabs/labtop/Kconfig
index 1700fb1..9bf4273 100644
--- a/src/mainboard/starlabs/labtop/Kconfig
+++ b/src/mainboard/starlabs/labtop/Kconfig
@@ -31,6 +31,7 @@
select DRIVERS_INTEL_USB4_RETIMER
select EC_STARLABS_KBL_LEVELS
select EC_STARLABS_FAN
+ select EC_STARLABS_MAX_CHARGE
select EC_STARLABS_NEED_ITE_BIN
select MAINBOARD_HAS_LPC_TPM
select MAINBOARD_HAS_TPM2