diff options
-rw-r--r-- | board/vell/usbc_config.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/board/vell/usbc_config.c b/board/vell/usbc_config.c index ee61614361..3831b13884 100644 --- a/board/vell/usbc_config.c +++ b/board/vell/usbc_config.c @@ -99,7 +99,7 @@ struct ppc_config_t ppc_chips[] = { }, [USBC_PORT_C3] = { .i2c_port = I2C_PORT_USB_C2_C3_PPC, - .i2c_addr_flags = SYV682X_ADDR3_FLAGS, + .i2c_addr_flags = SYV682X_ADDR0_FLAGS, .drv = &syv682x_drv, }, }; @@ -107,6 +107,12 @@ BUILD_ASSERT(ARRAY_SIZE(ppc_chips) == USBC_PORT_COUNT); unsigned int ppc_cnt = ARRAY_SIZE(ppc_chips); +struct ppc_config_t ppc_chips_old_c3 = { + .i2c_port = I2C_PORT_USB_C2_C3_PPC, + .i2c_addr_flags = SYV682X_ADDR3_FLAGS, + .drv = &syv682x_drv, +}; + /* USBC mux configuration - Alder Lake includes internal mux */ static const struct usb_mux usbc0_tcss_usb_mux = { .usb_port = USBC_PORT_C0, @@ -336,6 +342,9 @@ static void board_tcpc_init(void) for (i = 0; i < CONFIG_IO_EXPANDER_PORT_COUNT; ++i) ioex_init(i); + if (get_board_id() < 2) + ppc_chips[USBC_PORT_C3] = ppc_chips_old_c3; + /* Enable PPC interrupts. */ gpio_enable_interrupt(GPIO_USB_C0_PPC_INT_ODL); gpio_enable_interrupt(GPIO_USB_C1_PPC_INT_ODL); |