summaryrefslogtreecommitdiff
path: root/baseboard
diff options
context:
space:
mode:
authorDiana Z <dzigterman@chromium.org>2020-01-30 15:30:06 -0700
committerCommit Bot <commit-bot@chromium.org>2020-02-04 22:10:57 +0000
commitd6db0a0c88b80b8505a3c139e06a63203433e8ea (patch)
tree24a3b7ab4ee8ef618328feb929c31bf26608108c /baseboard
parentccc649887ba991c82a338359c0e415e7e2d0698e (diff)
downloadchrome-ec-d6db0a0c88b80b8505a3c139e06a63203433e8ea.tar.gz
Charger: Convert boards to use new driver structure
This commit removes the temporary common charger chip configuration and instead puts the configuration in each board. BRANCH=none BUG=b:147672225 TEST=builds, runs on waddledoo and octopus Change-Id: If81aef31e48c65999a87e202494f286716114bbb Signed-off-by: Diana Z <dzigterman@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2031855 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Jett Rink <jettrink@chromium.org>
Diffstat (limited to 'baseboard')
-rw-r--r--baseboard/dragonegg/baseboard.c11
-rw-r--r--baseboard/grunt/baseboard.c13
-rw-r--r--baseboard/hatch/baseboard.c12
-rw-r--r--baseboard/kukui/baseboard.c26
-rw-r--r--baseboard/octopus/baseboard.c15
-rw-r--r--baseboard/volteer/baseboard.c14
-rw-r--r--baseboard/zork/baseboard.c10
7 files changed, 101 insertions, 0 deletions
diff --git a/baseboard/dragonegg/baseboard.c b/baseboard/dragonegg/baseboard.c
index 7414421c15..85c39296f6 100644
--- a/baseboard/dragonegg/baseboard.c
+++ b/baseboard/dragonegg/baseboard.c
@@ -9,6 +9,7 @@
#include "chipset.h"
#include "console.h"
#include "driver/bc12/max14637.h"
+#include "driver/charger/bq25710.h"
#include "driver/ppc/nx20p348x.h"
#include "driver/ppc/sn5s330.h"
#include "driver/ppc/syv682x.h"
@@ -79,6 +80,16 @@ const struct i2c_port_t i2c_ports[] = {
};
const unsigned int i2c_ports_used = ARRAY_SIZE(i2c_ports);
+/* Charger Chips */
+const struct charger_config_t chg_chips[] = {
+ {
+ .i2c_port = I2C_PORT_CHARGER,
+ .i2c_addr_flags = BQ25710_SMBUS_ADDR1_FLAGS,
+ .drv = &bq25710_drv,
+ },
+};
+const unsigned int chg_cnt = ARRAY_SIZE(chg_chips);
+
/******************************************************************************/
/* Chipset callbacks/hooks */
diff --git a/baseboard/grunt/baseboard.c b/baseboard/grunt/baseboard.c
index 7c79c2abf5..80ac9f14a6 100644
--- a/baseboard/grunt/baseboard.c
+++ b/baseboard/grunt/baseboard.c
@@ -19,6 +19,7 @@
#include "driver/accel_kx022.h"
#include "driver/accelgyro_bmi160.h"
#include "driver/bc12/max14637.h"
+#include "driver/charger/isl923x.h"
#include "driver/ppc/sn5s330.h"
#include "driver/tcpm/anx7447.h"
#include "driver/tcpm/anx74xx.h"
@@ -362,6 +363,18 @@ const struct max14637_config_t max14637_config[CONFIG_USB_PD_PORT_MAX_COUNT] = {
},
};
+/* Charger Chip Configuration */
+const struct charger_config_t chg_chips[] = {
+ {
+ .i2c_port = I2C_PORT_CHARGER,
+ .i2c_addr_flags = ISL923X_ADDR_FLAGS,
+ .drv = &isl923x_drv,
+ },
+};
+
+const unsigned int chg_cnt = ARRAY_SIZE(chg_chips);
+
+
const int usb_port_enable[USB_PORT_COUNT] = {
GPIO_EN_USB_A0_5V,
GPIO_EN_USB_A1_5V,
diff --git a/baseboard/hatch/baseboard.c b/baseboard/hatch/baseboard.c
index c1fb0e3939..8253f11239 100644
--- a/baseboard/hatch/baseboard.c
+++ b/baseboard/hatch/baseboard.c
@@ -11,6 +11,7 @@
#include "chipset.h"
#include "console.h"
#include "cros_board_info.h"
+#include "driver/charger/bq25710.h"
#include "driver/ppc/sn5s330.h"
#include "driver/tcpm/anx7447.h"
#include "driver/tcpm/ps8xxx.h"
@@ -87,6 +88,17 @@ const struct i2c_port_t i2c_ports[] = {
const unsigned int i2c_ports_used = ARRAY_SIZE(i2c_ports);
/******************************************************************************/
+/* Charger Chip Configuration */
+const struct charger_config_t chg_chips[] = {
+ {
+ .i2c_port = I2C_PORT_CHARGER,
+ .i2c_addr_flags = BQ25710_SMBUS_ADDR1_FLAGS,
+ .drv = &bq25710_drv,
+ },
+};
+const unsigned int chg_cnt = ARRAY_SIZE(chg_chips);
+
+/******************************************************************************/
/* Chipset callbacks/hooks */
__attribute__((weak)) bool board_has_kb_backlight(void)
diff --git a/baseboard/kukui/baseboard.c b/baseboard/kukui/baseboard.c
index adfa6ef8ce..0d88f21510 100644
--- a/baseboard/kukui/baseboard.c
+++ b/baseboard/kukui/baseboard.c
@@ -5,6 +5,7 @@
#include "adc.h"
#include "adc_chip.h"
+#include "charger.h"
#include "gpio.h"
#include "hooks.h"
#include "registers.h"
@@ -13,6 +14,31 @@
#define CPRINTS(format, args...) cprints(CC_USBCHARGE, format, ## args)
#define CPRINTF(format, args...) cprintf(CC_USBCHARGE, format, ## args)
+#ifndef CONFIG_CHARGER_RUNTIME_CONFIG
+#if defined(VARIANT_KUKUI_CHARGER_MT6370)
+#include "driver/charger/rt946x.h"
+const struct charger_config_t chg_chips[] = {
+ {
+ .i2c_port = I2C_PORT_CHARGER,
+ .i2c_addr_flags = RT946X_ADDR_FLAGS,
+ .drv = &rt946x_drv,
+ },
+};
+#elif defined(VARIANT_KUKUI_CHARGER_ISL9238)
+#include "driver/charger/isl923x.h"
+const struct charger_config_t chg_chips[] = {
+ {
+ .i2c_port = I2C_PORT_CHARGER,
+ .i2c_addr_flags = ISL923X_ADDR_FLAGS,
+ .drv = &isl923x_drv,
+ },
+};
+#endif /* VARIANT_KUKUI_CHARGER_* */
+
+const unsigned int chg_cnt = ARRAY_SIZE(chg_chips);
+
+#endif /* CONFIG_CHARGER_RUNTIME_CONFIG */
+
void board_reset_pd_mcu(void)
{
}
diff --git a/baseboard/octopus/baseboard.c b/baseboard/octopus/baseboard.c
index f263f4a97e..cd9296cd19 100644
--- a/baseboard/octopus/baseboard.c
+++ b/baseboard/octopus/baseboard.c
@@ -11,6 +11,7 @@
#include "common.h"
#include "console.h"
#include "driver/bc12/max14637.h"
+#include "driver/charger/isl923x.h"
#include "driver/ppc/nx20p348x.h"
#include "gpio.h"
#include "hooks.h"
@@ -78,6 +79,20 @@ const struct max14637_config_t max14637_config[CONFIG_USB_PD_PORT_MAX_COUNT] = {
};
/******************************************************************************/
+/* Charger Chip Configuration */
+#ifdef VARIANT_OCTOPUS_CHARGER_ISL9238
+const struct charger_config_t chg_chips[] = {
+ {
+ .i2c_port = I2C_PORT_CHARGER,
+ .i2c_addr_flags = ISL923X_ADDR_FLAGS,
+ .drv = &isl923x_drv,
+ },
+};
+
+const unsigned int chg_cnt = ARRAY_SIZE(chg_chips);
+#endif
+
+/******************************************************************************/
/* Chipset callbacks/hooks */
/* Called by APL power state machine when transitioning from G3 to S5 */
diff --git a/baseboard/volteer/baseboard.c b/baseboard/volteer/baseboard.c
index 5206ba9cc3..5205406660 100644
--- a/baseboard/volteer/baseboard.c
+++ b/baseboard/volteer/baseboard.c
@@ -10,6 +10,7 @@
#include "charge_state.h"
#include "cros_board_info.h"
#include "driver/bc12/pi3usb9201.h"
+#include "driver/charger/isl9241.h"
#include "driver/ppc/sn5s330.h"
#include "driver/ppc/syv682x.h"
#include "driver/tcpm/ps8xxx.h"
@@ -164,6 +165,19 @@ const struct i2c_port_t i2c_ports[] = {
const unsigned int i2c_ports_used = ARRAY_SIZE(i2c_ports);
/******************************************************************************/
+/* Charger Chip Configuration */
+const struct charger_config_t chg_chips[] = {
+ {
+ .i2c_port = I2C_PORT_CHARGER,
+ .i2c_addr_flags = ISL9241_ADDR_FLAGS,
+ .drv = &isl9241_drv,
+ },
+};
+
+const unsigned int chg_cnt = ARRAY_SIZE(chg_chips);
+
+
+/******************************************************************************/
/* PWM configuration */
const struct pwm_t pwm_channels[] = {
[PWM_CH_LED1_BLUE] = {
diff --git a/baseboard/zork/baseboard.c b/baseboard/zork/baseboard.c
index 8927b7a2a7..bd0af5fa43 100644
--- a/baseboard/zork/baseboard.c
+++ b/baseboard/zork/baseboard.c
@@ -19,6 +19,7 @@
#include "driver/accel_kx022.h"
#include "driver/accelgyro_bmi160.h"
#include "driver/bc12/pi3usb9201.h"
+#include "driver/charger/isl9241.h"
#include "driver/ppc/aoz1380.h"
#include "driver/ppc/nx20p348x.h"
#include "driver/retimer/pi3dpx1207.h"
@@ -231,6 +232,15 @@ struct ppc_config_t ppc_chips[] = {
BUILD_ASSERT(ARRAY_SIZE(ppc_chips) == USBC_PORT_COUNT);
unsigned int ppc_cnt = ARRAY_SIZE(ppc_chips);
+const struct charger_config_t chg_chips[] = {
+ {
+ .i2c_port = I2C_PORT_CHARGER,
+ .i2c_addr_flags = ISL9241_ADDR_FLAGS,
+ .drv = &isl9241_drv,
+ },
+};
+const unsigned int chg_cnt = ARRAY_SIZE(chg_chips);
+
void ppc_interrupt(enum gpio_signal signal)
{
switch (signal) {