summaryrefslogtreecommitdiff
path: root/board/kodama
diff options
context:
space:
mode:
Diffstat (limited to 'board/kodama')
-rw-r--r--board/kodama/board.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/board/kodama/board.c b/board/kodama/board.c
index 03ecf1afe7..08a4eeeeae 100644
--- a/board/kodama/board.c
+++ b/board/kodama/board.c
@@ -229,8 +229,20 @@ int pd_snk_is_vbus_provided(int port)
return rt946x_is_vbus_ready();
}
+#define CHARGER_I2C_ADDR_FLAGS RT946X_ADDR_FLAGS
+
static void board_init(void)
{
+#ifdef SECTION_IS_RW
+ int val;
+
+ i2c_read8(I2C_PORT_CHARGER, CHARGER_I2C_ADDR_FLAGS,
+ RT946X_REG_CHGCTRL1, &val);
+ val &= RT946X_MASK_OPA_MODE;
+ i2c_write8(I2C_PORT_CHARGER, CHARGER_I2C_ADDR_FLAGS,
+ RT946X_REG_CHGCTRL1, (val | RT946X_MASK_STAT_EN));
+#endif
+
/* If the reset cause is external, pulse PMIC force reset. */
if (system_get_reset_flags() == EC_RESET_FLAG_RESET_PIN) {
gpio_set_level(GPIO_PMIC_FORCE_RESET_ODL, 0);