diff options
author | Daisuke Nojiri <dnojiri@chromium.org> | 2018-03-19 22:10:03 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2018-04-13 18:45:37 -0700 |
commit | 36ce967fce6d53c12b86a278d545cc41c1145ee4 (patch) | |
tree | 05ac74da4650a30f044cd19e362e488c0d718520 /board/nami/board.c | |
parent | 7824f5656d88f5d227cd1f4e06056ef40c606708 (diff) | |
download | chrome-ec-36ce967fce6d53c12b86a278d545cc41c1145ee4.tar.gz |
Nami: Enable Analogix USB-C port
Auto-toggling is currently disabled due to b/77544959.
BUG=b:73793947
CQ-DEPEND=CL:988414
BRANCH=none
TEST=Boot Nami. Verify PD power is negotiated and bettery is charged
with a Zinger through the Analogix port.
Change-Id: Ie817883027eb8623a8115aa8194fe4df50c3ce72
Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/969989
Reviewed-by: Scott Collyer <scollyer@chromium.org>
Diffstat (limited to 'board/nami/board.c')
-rw-r--r-- | board/nami/board.c | 30 |
1 files changed, 14 insertions, 16 deletions
diff --git a/board/nami/board.c b/board/nami/board.c index 120473e24b..e48b68dc79 100644 --- a/board/nami/board.c +++ b/board/nami/board.c @@ -7,6 +7,7 @@ #include "adc.h" #include "adc_chip.h" +#include "anx7447.h" #include "board_config.h" #include "button.h" #include "charge_manager.h" @@ -61,6 +62,9 @@ #define CPRINTS(format, args...) cprints(CC_USBCHARGE, format, ## args) #define CPRINTF(format, args...) cprintf(CC_USBCHARGE, format, ## args) +#define USB_PD_PORT_PS8751 0 +#define USB_PD_PORT_ANX7447 1 + static void tcpc_alert_event(enum gpio_signal signal) { if ((signal == GPIO_USB_C0_PD_INT_ODL) && @@ -80,7 +84,7 @@ static void tcpc_alert_event(enum gpio_signal signal) static void vbus_discharge_handler(void) { pd_set_vbus_discharge(0, gpio_get_level(GPIO_USB_C0_VBUS_WAKE_L)); - //pd_set_vbus_discharge(1, gpio_get_level(GPIO_USB_C1_VBUS_WAKE_L)); + pd_set_vbus_discharge(1, gpio_get_level(GPIO_USB_C1_VBUS_WAKE_L)); } DECLARE_DEFERRED(vbus_discharge_handler); @@ -92,7 +96,6 @@ void vbus0_evt(enum gpio_signal signal) hook_call_deferred(&vbus_discharge_handler_data, 0); } -#if 0 void vbus1_evt(enum gpio_signal signal) { /* VBUS present GPIO is inverted */ @@ -100,7 +103,6 @@ void vbus1_evt(enum gpio_signal signal) task_wake(TASK_ID_PD_C1); hook_call_deferred(&vbus_discharge_handler_data, 0); } -#endif void usb0_evt(enum gpio_signal signal) { @@ -183,35 +185,31 @@ const unsigned int i2c_ports_used = ARRAY_SIZE(i2c_ports); /* TCPC mux configuration */ const struct tcpc_config_t tcpc_config[CONFIG_USB_PD_PORT_COUNT] = { - { + [USB_PD_PORT_PS8751] = { .i2c_host_port = NPCX_I2C_PORT0_0, .i2c_slave_addr = PS8751_I2C_ADDR1, .drv = &ps8xxx_tcpm_drv, .pol = TCPC_ALERT_ACTIVE_LOW, }, - /* - { + [USB_PD_PORT_ANX7447] = { .i2c_host_port = NPCX_I2C_PORT0_1, - .i2c_slave_addr = PS8751_I2C_ADDR1, - .drv = &ps8xxx_tcpm_drv, + .i2c_slave_addr = AN7447_TCPC3_I2C_ADDR, /* Verified on v1.1 */ + .drv = &anx7447_tcpm_drv, .pol = TCPC_ALERT_ACTIVE_LOW, }, - */ }; struct usb_mux usb_muxes[CONFIG_USB_PD_PORT_COUNT] = { { - .port_addr = 0, + .port_addr = USB_PD_PORT_PS8751, .driver = &tcpci_tcpm_usb_mux_driver, .hpd_update = &ps8xxx_tcpc_update_hpd_status, }, - /* { - .port_addr = 1, - .driver = &tcpci_tcpm_usb_mux_driver, - .hpd_update = &ps8xxx_tcpc_update_hpd_status, + .port_addr = USB_PD_PORT_ANX7447, + .driver = &anx7447_usb_mux_driver, + .hpd_update = &anx7447_tcpc_update_hpd_status, } - */ }; struct pi3usb9281_config pi3usb9281_chips[] = { @@ -715,7 +713,7 @@ static void board_init(void) /* Enable VBUS interrupt */ gpio_enable_interrupt(GPIO_USB_C0_VBUS_WAKE_L); - //gpio_enable_interrupt(GPIO_USB_C1_VBUS_WAKE_L); + gpio_enable_interrupt(GPIO_USB_C1_VBUS_WAKE_L); /* Enable pericom BC1.2 interrupts */ gpio_enable_interrupt(GPIO_USB_C0_BC12_INT_L); |