summaryrefslogtreecommitdiff
path: root/baseboard
diff options
context:
space:
mode:
authorVijay Hiremath <vijay.p.hiremath@intel.com>2020-08-20 20:28:52 -0700
committerCommit Bot <commit-bot@chromium.org>2020-08-25 18:54:34 +0000
commite8873c81d0ea3ee44a649ec8cbc362a44459d373 (patch)
treebb827fa67b32fa81d837f7b7c8c48ad07aefe25a /baseboard
parent81f396b4576d0ab6535dcbb0d06d76caa12d34ea (diff)
downloadchrome-ec-e8873c81d0ea3ee44a649ec8cbc362a44459d373.tar.gz
bb retimer: Use mutex to lock the access to shared NVM
If the BB retimer has a shared NVM we need 40ms delay after releasing the RESET line to synchronize, load and initialize both the retimers. On a non-shared NVM we need 20ms delay to load and initialize. In order to synchronize, instead of 40ms delay this CL uses a MUTEX to lock the access of another retimer by not releasing the RESET line until the first retimer completes initialization. BUG=b:165895649 BRANCH=none TEST=Tested on volteer(non shared NVM), tglrvpu_ite (shared NVM) Retimer is able to initialize (DP, USB, TBT, USB4 are detected) Change-Id: I709377c2e6401faa26871289143d71665ee516d1 Signed-off-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2368223 Reviewed-by: Keith Short <keithshort@chromium.org>
Diffstat (limited to 'baseboard')
-rw-r--r--baseboard/intelrvp/retimer.c2
-rw-r--r--baseboard/volteer/baseboard.c1
2 files changed, 0 insertions, 3 deletions
diff --git a/baseboard/intelrvp/retimer.c b/baseboard/intelrvp/retimer.c
index cf09c76d3e..c64ad64bcb 100644
--- a/baseboard/intelrvp/retimer.c
+++ b/baseboard/intelrvp/retimer.c
@@ -13,13 +13,11 @@
#ifdef CONFIG_USBC_RETIMER_INTEL_BB
const struct bb_usb_control bb_controls[] = {
[TYPE_C_PORT_0] = {
- .shared_nvm = USB_PORT0_BB_RETIMER_SHARED_NVM,
.usb_ls_en_gpio = GPIO_USB_C0_LS_EN,
.retimer_rst_gpio = GPIO_USB_C0_RETIMER_RST,
},
#ifdef HAS_TASK_PD_C1
[TYPE_C_PORT_1] = {
- .shared_nvm = USB_PORT1_BB_RETIMER_SHARED_NVM,
.usb_ls_en_gpio = GPIO_USB_C1_LS_EN,
.retimer_rst_gpio = GPIO_USB_C1_RETIMER_RST,
},
diff --git a/baseboard/volteer/baseboard.c b/baseboard/volteer/baseboard.c
index 94246aac05..59016b7f79 100644
--- a/baseboard/volteer/baseboard.c
+++ b/baseboard/volteer/baseboard.c
@@ -291,7 +291,6 @@ struct bb_usb_control bb_controls[] = {
/* USB-C port 0 doesn't have a retimer */
},
[USBC_PORT_C1] = {
- .shared_nvm = false,
.usb_ls_en_gpio = GPIO_USB_C1_LS_EN,
.retimer_rst_gpio = GPIO_USB_C1_RT_RST_ODL,
},