From 6dc2111008af964fa1521b1259d3da45cb7dbe73 Mon Sep 17 00:00:00 2001 From: Keith Short Date: Sun, 6 Dec 2020 11:42:54 -0700 Subject: Reland "zephyr: Add battery and smart battery options" This is a reland of ac4f512e60af42efe693e6955c110a7908090e56 Original change's description: > zephyr: Add battery and smart battery options > > Shim in battery and smart battery support. > > BUG=b:175248556 > BRANCH=none > TEST=boot on volteer, run 'battery' command. > TEST=run 'ninja menuconfig' and check KConfig help text. > 20-12-10 20:08:12.778 battery > 20-12-10 20:08:13.509 Status: 0x02c0 DCHG INIT RC > 20-12-10 20:08:13.529 Param flags:00000003 > 20-12-10 20:08:13.541 Temp: 0x0b63 = %.1d K (%.1d C) > 20-12-10 20:08:13.541 V: 0x2a1e = 10782 mV > 20-12-10 20:08:13.541 V-desired: 0x3390 = 13200 mV > 20-12-10 20:08:13.541 I: 0x0000 = 0 mA > 20-12-10 20:08:13.550 I-desired: 0x0a19 = 2585 mA > 20-12-10 20:08:13.550 Charging: Allowed > 20-12-10 20:08:13.550 Charge: 0 % > 20-12-10 20:08:13.550 Manuf: LG > 20-12-10 20:08:13.555 Device: AC17A8 > 20-12-10 20:08:13.573 Chem: LIO > 20-12-10 20:08:13.573 Serial: 0xb754 > 20-12-10 20:08:13.573 V-design: 0x2d1e = 11550 mV > 20-12-10 20:08:13.573 Mode: 0x6001 > 20-12-10 20:08:13.573 Abs charge:0 % > 20-12-10 20:08:13.573 Remaining: 0 mAh > 20-12-10 20:08:13.577 Cap-full: 4932 mAh (4833 mAh with 98 % compensation) > 20-12-10 20:08:13.585 Design: 5360 mAh > 20-12-10 20:08:13.594 Time-full: 0h:0 > 20-12-10 20:08:13.594 Empty: 0h:0 > > Change-Id: Ie782e75ee4027ab2a5c6a0ae7f4ad81e9c360711 > Signed-off-by: Simon Glass > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2575199 Bug: b:175248556 TEST=make buildall, which fails with: /opt/coreboot-sdk/lib/gcc/nds32le-elf/8.3.0/../../../../nds32le-elf/bin/ld: __flash_dma_size < IT83XX_ILM_BLOCK_SIZE BRANCH=none Change-Id: I318fb13ba91485cd7d876b2294f20d748f47e0fd Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2585931 Tested-by: Simon Glass Auto-Submit: Simon Glass Reviewed-by: Jack Rosenthal Commit-Queue: Jack Rosenthal --- zephyr/Kconfig.battery | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 zephyr/Kconfig.battery (limited to 'zephyr/Kconfig.battery') diff --git a/zephyr/Kconfig.battery b/zephyr/Kconfig.battery new file mode 100644 index 0000000000..916f731d20 --- /dev/null +++ b/zephyr/Kconfig.battery @@ -0,0 +1,54 @@ +# Copyright 2020 The Chromium OS Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +config PLATFORM_EC_BATTERY + bool "Support batteries" + help + Enables battery support on the board. Requires selection of a battery + and a charger IC. + + If using I2C batteries, you must define I2C_PORT_BATTERY in your + board's i2c_map.h file so that the EC code will know which I2C + port the battery is on. + +if PLATFORM_EC_BATTERY + +choice "Battery select" + prompt "Select the battery to use" + help + Select the battery used on the board. If you are ensure, select the + smart battery option. + +config PLATFORM_EC_BATTERY_SMART + bool "Support a smart battery" + depends on PLATFORM_EC_I2C + help + Many batteries support the Smart Battery Specification and therefore + have common registers which can be accessed to control and monitor + the battery. + + See here for the spec: http://sbs-forum.org/specs/sbdat110.pdf + +endchoice + +choice "Charger select" + prompt "Select the charger to use" + help + Select the battery charger IC used on the board. Only one charger may + be selected. + +config PLATFORM_EC_CHARGER_ISL9241 + bool "Use the ISL9241 charger" + depends on PLATFORM_EC_I2C + help + Enables a driver for the ISL9241 VCD Battery Charger. This is a + digitally-configurable, buck-boost battery charger that can support + both Narrow Voltage Direct Charging (NVDC) and Hybrid Power Buck Boost + (HPBB/Bypass) charging and switch between the modes under firmware + control. It supports an input voltage range of 3.9-23.4V and output + of 3.9-18.3V. It provides an I2C interace for configuration. + +endchoice + +endif # PLATFORM_EC_BATTERY -- cgit v1.2.1