diff options
author | Andrew McRae <amcrae@google.com> | 2022-03-16 14:25:20 +1100 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2022-03-16 07:14:52 +0000 |
commit | 6ef756e3ddc8a07ab61e551119d406172c36ae2c (patch) | |
tree | 30d745b54cb79f96dc85969d1d157b300cd63b4f | |
parent | 11771d31e7c4c9cdbc8753f64e0c7e9f4eaf4e1f (diff) | |
download | chrome-ec-6ef756e3ddc8a07ab61e551119d406172c36ae2c.tar.gz |
nissa: nivviks: Enable port 1 redriver
Enable port 1 redriver for Nivviks
BUG=b:219898719
TEST=zmake build nivviks
BRANCH=none
Signed-off-by: Andrew McRae <amcrae@google.com>
Change-Id: I6012855cceb44efd34469b70199ccd70897ba6d4
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3527894
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
-rw-r--r-- | zephyr/projects/nissa/include/nissa_common.h (renamed from zephyr/projects/nissa/include/sub_board.h) | 12 | ||||
-rw-r--r-- | zephyr/projects/nissa/prj.conf | 1 | ||||
-rw-r--r-- | zephyr/projects/nissa/prj_nivviks.conf | 2 | ||||
-rw-r--r-- | zephyr/projects/nissa/src/common.c | 6 | ||||
-rw-r--r-- | zephyr/projects/nissa/src/nereid/board_config.c | 2 | ||||
-rw-r--r-- | zephyr/projects/nissa/src/nereid/charger.c | 2 | ||||
-rw-r--r-- | zephyr/projects/nissa/src/nereid/usbc.c | 2 | ||||
-rw-r--r-- | zephyr/projects/nissa/src/nivviks/board_config.c | 12 | ||||
-rw-r--r-- | zephyr/projects/nissa/src/nivviks/charger.c | 2 | ||||
-rw-r--r-- | zephyr/projects/nissa/src/nivviks/usbc.c | 2 |
10 files changed, 32 insertions, 11 deletions
diff --git a/zephyr/projects/nissa/include/sub_board.h b/zephyr/projects/nissa/include/nissa_common.h index b9a9527eb8..7ee9056a71 100644 --- a/zephyr/projects/nissa/include/sub_board.h +++ b/zephyr/projects/nissa/include/nissa_common.h @@ -3,10 +3,12 @@ * found in the LICENSE file. */ -/* Nissa sub board detection */ +/* Nissa common declarations */ -#ifndef __CROS_EC_NISSA_SUB_BOARD_H -#define __CROS_EC_NISSA_SUB_BOARD_H +#ifndef __CROS_EC_NISSA_NISSA_COMMON_H__ +#define __CROS_EC_NISSA_NISSA_COMMON_H__ + +#include "usb_mux.h" enum nissa_sub_board_type { NISSA_SB_UNKNOWN = -1, /* Uninitialised */ @@ -16,6 +18,8 @@ enum nissa_sub_board_type { NISSA_SB_HDMI_A = 3, /* HDMI, USB type A */ }; +extern struct usb_mux usb_muxes[CONFIG_USB_PD_PORT_MAX_COUNT]; + enum nissa_sub_board_type nissa_get_sb_type(void); -#endif /* __CROS_EC_NISSA_SUB_BOARD_H */ +#endif /* __CROS_EC_NISSA_NISSA_COMMON_H__ */ diff --git a/zephyr/projects/nissa/prj.conf b/zephyr/projects/nissa/prj.conf index 1757171a69..805f333b7c 100644 --- a/zephyr/projects/nissa/prj.conf +++ b/zephyr/projects/nissa/prj.conf @@ -106,6 +106,7 @@ CONFIG_PLATFORM_EC_USB_PID=0x505a CONFIG_PLATFORM_EC_USB_PD_PORT_MAX_COUNT=2 # TODO(b/216085548): configure USB retimers +CONFIG_PLATFORM_EC_USB_MUX_RUNTIME_CONFIG=y CONFIG_PLATFORM_EC_USB_MUX_VIRTUAL=y # ADL integrated muxes are slow: unblock PD CONFIG_PLATFORM_EC_USB_MUX_TASK=y diff --git a/zephyr/projects/nissa/prj_nivviks.conf b/zephyr/projects/nissa/prj_nivviks.conf index cb80286c6c..87d383e813 100644 --- a/zephyr/projects/nissa/prj_nivviks.conf +++ b/zephyr/projects/nissa/prj_nivviks.conf @@ -25,6 +25,8 @@ CONFIG_PLATFORM_EC_USB_PD_DISCHARGE_TCPC=y CONFIG_PLATFORM_EC_USB_PD_VBUS_DETECT_TCPC=y # RAA489000 uses TCPCI but not a separate PPC, so custom function is required CONFIG_PLATFORM_EC_USB_PD_5V_EN_CUSTOM=y +# type C port 1 redriver +CONFIG_PLATFORM_EC_USBC_RETIMER_ANX7483=y # Charger driver and configuration CONFIG_PLATFORM_EC_CHARGER_RAA489000=y diff --git a/zephyr/projects/nissa/src/common.c b/zephyr/projects/nissa/src/common.c index 1dd9d3f024..78116f9f7a 100644 --- a/zephyr/projects/nissa/src/common.c +++ b/zephyr/projects/nissa/src/common.c @@ -15,7 +15,7 @@ #include "usb_mux.h" #include "system.h" -#include "sub_board.h" +#include "nissa_common.h" #include <logging/log.h> LOG_MODULE_REGISTER(nissa, CONFIG_NISSA_LOG_LEVEL); @@ -30,6 +30,10 @@ struct usb_mux usb_muxes[CONFIG_USB_PD_PORT_MAX_COUNT] = { .usb_port = 1, .driver = &virtual_usb_mux_driver, .hpd_update = &virtual_hpd_update, + /* + * next_mux filled in by board config code + * if sub-board has type-C USB port. + */ }, }; diff --git a/zephyr/projects/nissa/src/nereid/board_config.c b/zephyr/projects/nissa/src/nereid/board_config.c index ac667d89ce..0292ca8753 100644 --- a/zephyr/projects/nissa/src/nereid/board_config.c +++ b/zephyr/projects/nissa/src/nereid/board_config.c @@ -16,7 +16,7 @@ #include "usb_pd.h" #include "task.h" -#include "sub_board.h" +#include "nissa_common.h" LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL); diff --git a/zephyr/projects/nissa/src/nereid/charger.c b/zephyr/projects/nissa/src/nereid/charger.c index 168179694c..eef49d1979 100644 --- a/zephyr/projects/nissa/src/nereid/charger.c +++ b/zephyr/projects/nissa/src/nereid/charger.c @@ -8,7 +8,7 @@ #include "driver/charger/sm5803.h" #include "extpower.h" #include "usb_pd.h" -#include "sub_board.h" +#include "nissa_common.h" const struct charger_config_t chg_chips[] = { { diff --git a/zephyr/projects/nissa/src/nereid/usbc.c b/zephyr/projects/nissa/src/nereid/usbc.c index 8a7dde4cc0..6ae6edba51 100644 --- a/zephyr/projects/nissa/src/nereid/usbc.c +++ b/zephyr/projects/nissa/src/nereid/usbc.c @@ -15,7 +15,7 @@ #include "driver/tcpm/ps8xxx_public.h" #include "driver/tcpm/tcpci.h" -#include "sub_board.h" +#include "nissa_common.h" LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL); diff --git a/zephyr/projects/nissa/src/nivviks/board_config.c b/zephyr/projects/nissa/src/nivviks/board_config.c index eddbcb1ff3..24531b62c6 100644 --- a/zephyr/projects/nissa/src/nivviks/board_config.c +++ b/zephyr/projects/nissa/src/nivviks/board_config.c @@ -11,15 +11,23 @@ #include <sys/printk.h> #include "driver/charger/isl923x_public.h" +#include "driver/retimer/anx7483_public.h" #include "gpio/gpio_int.h" #include "hooks.h" #include "usb_pd.h" #include "task.h" -#include "sub_board.h" +#include "nissa_common.h" LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL); +static const struct usb_mux usbc1_anx7483 = { + .usb_port = 1, + .i2c_port = I2C_PORT_USB_C1_TCPC, + .i2c_addr_flags = ANX7483_I2C_ADDR0_FLAGS, + .driver = &anx7483_usb_retimer_driver, +}; + static void nivviks_subboard_init(void) { enum nissa_sub_board_type sb = nissa_get_sb_type(); @@ -50,6 +58,8 @@ static void nivviks_subboard_init(void) gpio_pin_configure_dt( GPIO_DT_FROM_ALIAS(gpio_en_usb_a1_vbus), GPIO_OUTPUT_LOW); + /* Enable redriver */ + usb_muxes[1].next_mux = &usbc1_anx7483; } else { /* Disable the port 1 charger task */ task_disable_task(TASK_ID_USB_CHG_P1); diff --git a/zephyr/projects/nissa/src/nivviks/charger.c b/zephyr/projects/nissa/src/nivviks/charger.c index be29a2e183..969d9b9dfe 100644 --- a/zephyr/projects/nissa/src/nivviks/charger.c +++ b/zephyr/projects/nissa/src/nivviks/charger.c @@ -8,7 +8,7 @@ #include "charger/isl923x_public.h" #include "extpower.h" #include "usb_pd.h" -#include "sub_board.h" +#include "nissa_common.h" const struct charger_config_t chg_chips[] = { { diff --git a/zephyr/projects/nissa/src/nivviks/usbc.c b/zephyr/projects/nissa/src/nivviks/usbc.c index 40f60f2bf0..8cdd9852b6 100644 --- a/zephyr/projects/nissa/src/nivviks/usbc.c +++ b/zephyr/projects/nissa/src/nivviks/usbc.c @@ -13,7 +13,7 @@ #include "driver/tcpm/tcpci.h" #include "driver/tcpm/raa489000.h" -#include "sub_board.h" +#include "nissa_common.h" LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL); |