summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernardo Perez Priego <bernardo.perez.priego@intel.corp-partner.google.com>2021-02-23 15:57:53 -0800
committerCommit Bot <commit-bot@chromium.org>2021-03-01 18:21:18 +0000
commit8103488dd890056fc5b6ee6f86050e42c1a0cdc4 (patch)
tree4855d58a8b1f0c020fd804f87e58a4d4d2f839c9
parentb1a2a884b98b80df1e891965c3921f188c71f27c (diff)
downloadchrome-ec-8103488dd890056fc5b6ee6f86050e42c1a0cdc4.tar.gz
terrador: add USB-A power enable and disable
Enable CONFIG_USB_PORT_POWER_DUMB for enabling/disabling charging from USB-A ports. This change also enables disables the USB1 low power limit by default. BUG=b:181152435 BRANCH=volteer TEST=make buildall TEST=Run "ectool usbchargemode 0 0" and verify USB VBUS turns off, then run "ectool usbchargemode 0 4" and verify USB VBUS turns back on. Signed-off-by: Bernardo Perez Priego <bernardo.perez.priego@intel.corp-partner.google.com> Change-Id: I54e76802a555652666f379eef32ac2407ec84e90 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2715679 Reviewed-by: Keith Short <keithshort@chromium.org>
-rw-r--r--board/terrador/board.c7
-rw-r--r--board/terrador/board.h5
-rw-r--r--board/terrador/gpio.inc2
3 files changed, 14 insertions, 0 deletions
diff --git a/board/terrador/board.c b/board/terrador/board.c
index 41aa79f804..7fc4694048 100644
--- a/board/terrador/board.c
+++ b/board/terrador/board.c
@@ -410,3 +410,10 @@ int ppc_get_alert_status(int port)
else
return gpio_get_level(GPIO_USB_C1_PPC_INT_ODL) == 0;
}
+
+/******************************************************************************/
+/* USB-A charging control */
+
+const int usb_port_enable[USB_PORT_COUNT] = {
+ GPIO_EN_PP5000_USBA,
+};
diff --git a/board/terrador/board.h b/board/terrador/board.h
index 0472207936..90e13a45aa 100644
--- a/board/terrador/board.h
+++ b/board/terrador/board.h
@@ -21,6 +21,9 @@
#undef CONFIG_UART_TX_BUF_SIZE
#define CONFIG_UART_TX_BUF_SIZE 4096
+/* Chipset features */
+#define CONFIG_POWER_PP5000_CONTROL
+
/* LED defines */
#define CONFIG_LED_PWM
/* Although there are 2 LEDs, they are both controlled by the same lines. */
@@ -77,6 +80,8 @@
#define USBC_PORT_C1_BB_RETIMER_I2C_ADDR 0x40
/* USB Type A Features */
+#define USB_PORT_COUNT 1
+#define CONFIG_USB_PORT_POWER_DUMB
/* USBC PPC*/
#define CONFIG_USBC_PPC_SYV682X /* USBC port C0/C1 */
diff --git a/board/terrador/gpio.inc b/board/terrador/gpio.inc
index 6208874533..3ec22924f9 100644
--- a/board/terrador/gpio.inc
+++ b/board/terrador/gpio.inc
@@ -77,6 +77,8 @@ GPIO(SYS_RST_ODL, PIN(C, 5), GPIO_ODR_HIGH)
GPIO(EC_PCH_INT_ODL, PIN(B, 0), GPIO_ODR_HIGH)
/* USB and USBC Signals */
+GPIO(EN_PP5000_USBA, PIN(C, 6), GPIO_OUT_LOW) /* Enable USB-A charging - all ports */
+GPIO(USB_A_LOW_PWR_OD, PIN(6, 6), GPIO_ODR_LOW) /* Don't limit USB-A charging by default - all ports */
/*
* USB_C1 moved from GPIO32 to GPIO83 on boards with board ID >=1.