diff options
author | Tomasz Michalec <tm@semihalf.com> | 2022-07-20 11:38:49 +0200 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2022-09-13 11:12:36 +0000 |
commit | a085e97f2f15c697e05570de3bda7feaeb2541ed (patch) | |
tree | ed727b3af56381cbb1ff7ee6bbc88f534cf4ce47 | |
parent | 23205994cc48ccf59620c723bcedddddcf1134f6 (diff) | |
download | chrome-ec-a085e97f2f15c697e05570de3bda7feaeb2541ed.tar.gz |
asurada: usb_mux: Split struct usb_mux in asurada boards
Update asurada boards to use new struct usb_mux_chain.
BUG=b:236274003
TEST=make buildall
BRANCH=None
Cq-Depend: chromium:3748785
Signed-off-by: Tomasz Michalec <tm@semihalf.com>
Change-Id: I5a75f017a006137721d39162fcd44a1b0dcfc372
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3779626
Tested-by: Tomasz Michalec <tmichalec@google.com>
Reviewed-by: Keith Short <keithshort@chromium.org>
Commit-Queue: Tomasz Michalec <tmichalec@google.com>
-rw-r--r-- | baseboard/asurada/usbc_config.c | 52 | ||||
-rw-r--r-- | board/asurada/usbc_config.c | 6 | ||||
-rw-r--r-- | board/spherion/board.c | 4 |
3 files changed, 37 insertions, 25 deletions
diff --git a/baseboard/asurada/usbc_config.c b/baseboard/asurada/usbc_config.c index ed3a5d93f2..0be43d343a 100644 --- a/baseboard/asurada/usbc_config.c +++ b/baseboard/asurada/usbc_config.c @@ -227,33 +227,45 @@ static int board_ps8743_mux_set(const struct usb_mux *me, mux_state_t mux_state) return ps8743_write(me, PS8743_REG_MODE, reg); } -const struct usb_mux usbc0_virtual_mux = { - .usb_port = 0, - .driver = &virtual_usb_mux_driver, - .hpd_update = &virtual_hpd_update, +const struct usb_mux_chain usbc0_virtual_mux = { + .mux = + &(const struct usb_mux){ + .usb_port = 0, + .driver = &virtual_usb_mux_driver, + .hpd_update = &virtual_hpd_update, + }, }; -const struct usb_mux usbc1_virtual_mux = { - .usb_port = 1, - .driver = &virtual_usb_mux_driver, - .hpd_update = &virtual_hpd_update, +const struct usb_mux_chain usbc1_virtual_mux = { + .mux = + &(const struct usb_mux){ + .usb_port = 1, + .driver = &virtual_usb_mux_driver, + .hpd_update = &virtual_hpd_update, + }, }; -const struct usb_mux usb_muxes[CONFIG_USB_PD_PORT_MAX_COUNT] = { +const struct usb_mux_chain usb_muxes[CONFIG_USB_PD_PORT_MAX_COUNT] = { { - .usb_port = 0, - .i2c_port = I2C_PORT_USB_MUX0, - .i2c_addr_flags = IT5205_I2C_ADDR1_FLAGS, - .driver = &it5205_usb_mux_driver, - .next_mux = &usbc0_virtual_mux, + .mux = + &(const struct usb_mux){ + .usb_port = 0, + .i2c_port = I2C_PORT_USB_MUX0, + .i2c_addr_flags = IT5205_I2C_ADDR1_FLAGS, + .driver = &it5205_usb_mux_driver, + }, + .next = &usbc0_virtual_mux, }, { - .usb_port = 1, - .i2c_port = I2C_PORT_USB_MUX1, - .i2c_addr_flags = PS8743_I2C_ADDR0_FLAG, - .driver = &ps8743_usb_mux_driver, - .next_mux = &usbc1_virtual_mux, - .board_set = &board_ps8743_mux_set, + .mux = + &(const struct usb_mux){ + .usb_port = 1, + .i2c_port = I2C_PORT_USB_MUX1, + .i2c_addr_flags = PS8743_I2C_ADDR0_FLAG, + .driver = &ps8743_usb_mux_driver, + .board_set = &board_ps8743_mux_set, + }, + .next = &usbc1_virtual_mux, }, }; diff --git a/board/asurada/usbc_config.c b/board/asurada/usbc_config.c index 6cd124acd8..ba6461b0f8 100644 --- a/board/asurada/usbc_config.c +++ b/board/asurada/usbc_config.c @@ -17,11 +17,11 @@ __override int syv682x_board_is_syv682c(int port) void board_usb_mux_init(void) { if (board_get_sub_board() == SUB_BOARD_TYPEC) { - ps8743_tune_usb_eq(&usb_muxes[1], PS8743_USB_EQ_TX_12_8_DB, + ps8743_tune_usb_eq(usb_muxes[1].mux, PS8743_USB_EQ_TX_12_8_DB, PS8743_USB_EQ_RX_12_8_DB); - ps8743_write(&usb_muxes[1], PS8743_REG_HS_DET_THRESHOLD, + ps8743_write(usb_muxes[1].mux, PS8743_REG_HS_DET_THRESHOLD, PS8743_USB_HS_THRESH_NEG_10); - ps8743_field_update(&usb_muxes[1], PS8743_REG_DCI_CONFIG_2, + ps8743_field_update(usb_muxes[1].mux, PS8743_REG_DCI_CONFIG_2, PS8743_AUTO_DCI_MODE_MASK, PS8743_AUTO_DCI_MODE_FORCE_USB); } diff --git a/board/spherion/board.c b/board/spherion/board.c index 50691b6950..0170a8998e 100644 --- a/board/spherion/board.c +++ b/board/spherion/board.c @@ -104,9 +104,9 @@ DECLARE_HOOK(HOOK_CHIPSET_SUSPEND, kb_backlight_disable, HOOK_PRIO_DEFAULT); void board_usb_mux_init(void) { if (board_get_sub_board() == SUB_BOARD_TYPEC) { - ps8743_tune_usb_eq(&usb_muxes[1], PS8743_USB_EQ_TX_12_8_DB, + ps8743_tune_usb_eq(usb_muxes[1].mux, PS8743_USB_EQ_TX_12_8_DB, PS8743_USB_EQ_RX_12_8_DB); - ps8743_field_update(&usb_muxes[1], PS8743_REG_DCI_CONFIG_2, + ps8743_field_update(usb_muxes[1].mux, PS8743_REG_DCI_CONFIG_2, PS8743_AUTO_DCI_MODE_MASK, PS8743_AUTO_DCI_MODE_FORCE_USB); } |