summaryrefslogtreecommitdiff
path: root/baseboard/volteer
diff options
context:
space:
mode:
authorVijay Hiremath <vijay.p.hiremath@intel.com>2019-12-04 12:09:09 -0800
committerCommit Bot <commit-bot@chromium.org>2019-12-07 02:51:20 +0000
commitfdcc690ac4bd08bb28df5a88aee0a10ac5397e22 (patch)
tree835fb923871074c190790fc0074e62aa6276cbb0 /baseboard/volteer
parent41acb78745d413f0db6dfc95c00276b622802be7 (diff)
downloadchrome-ec-fdcc690ac4bd08bb28df5a88aee0a10ac5397e22.tar.gz
volteer: Enable BC1.2 charge ramp
BUG=b:145683021 BRANCH=none TEST=Able to charge ramp BC1.2 devices on both the ports Change-Id: Iccabb3a1cf51c2cf22c6620e560d7ab74415a2cf Signed-off-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1951426 Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
Diffstat (limited to 'baseboard/volteer')
-rw-r--r--baseboard/volteer/baseboard.c21
-rw-r--r--baseboard/volteer/baseboard.h2
2 files changed, 23 insertions, 0 deletions
diff --git a/baseboard/volteer/baseboard.c b/baseboard/volteer/baseboard.c
index 05c391e1c6..ee0765f65a 100644
--- a/baseboard/volteer/baseboard.c
+++ b/baseboard/volteer/baseboard.c
@@ -21,6 +21,7 @@
#include "keyboard_scan.h"
#include "pwm.h"
#include "pwm_chip.h"
+#include "task.h"
#include "temp_sensor.h"
#include "usbc_ppc.h"
#include "usb_mux.h"
@@ -387,6 +388,10 @@ static void baseboard_tcpc_init(void)
/* Enable TCPC interrupts. */
gpio_enable_interrupt(GPIO_USB_C0_TCPC_INT_ODL);
gpio_enable_interrupt(GPIO_USB_C1_TCPC_INT_ODL);
+
+ /* Enable BC1.2 interrupts. */
+ gpio_enable_interrupt(GPIO_USB_C0_BC12_INT_ODL);
+ gpio_enable_interrupt(GPIO_USB_C1_BC12_INT_ODL);
}
DECLARE_HOOK(HOOK_INIT, baseboard_tcpc_init, HOOK_PRIO_INIT_I2C + 1);
@@ -446,6 +451,22 @@ void tcpc_alert_event(enum gpio_signal signal)
schedule_deferred_pd_interrupt(port);
}
+void bc12_interrupt(enum gpio_signal signal)
+{
+ switch (signal) {
+ case GPIO_USB_C0_BC12_INT_ODL:
+ task_set_event(TASK_ID_USB_CHG_P0, USB_CHG_EVENT_BC12, 0);
+ break;
+
+ case GPIO_USB_C1_BC12_INT_ODL:
+ task_set_event(TASK_ID_USB_CHG_P1, USB_CHG_EVENT_BC12, 0);
+ break;
+
+ default:
+ break;
+ }
+}
+
int board_set_active_charge_port(int port)
{
/* TODO: b/140561826 - check correct operation for Volteer */
diff --git a/baseboard/volteer/baseboard.h b/baseboard/volteer/baseboard.h
index 38f29a3eac..295c885590 100644
--- a/baseboard/volteer/baseboard.h
+++ b/baseboard/volteer/baseboard.h
@@ -70,6 +70,7 @@
/* Common charger defines */
#define CONFIG_CHARGE_MANAGER
+#define CONFIG_CHARGE_RAMP_HW
#define CONFIG_CHARGER
#define CONFIG_CHARGER_DISCHARGE_ON_AC
#define CONFIG_CHARGER_INPUT_CURRENT 512
@@ -223,6 +224,7 @@ void board_reset_pd_mcu(void);
/* Common definition for the USB PD interrupt handlers. */
void ppc_interrupt(enum gpio_signal signal);
void tcpc_alert_event(enum gpio_signal signal);
+void bc12_interrupt(enum gpio_signal signal);
#endif /* !__ASSEMBLER__ */