summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Marheine <pmarheine@chromium.org>2022-10-14 12:50:05 +1100
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-10-17 22:59:42 +0000
commite106509017e2cfd7a297bebf16547f88b4afb19e (patch)
treeba20e265905983a32e6817dd0adfd82580cdd193
parent4f320abaf6c88861573830284fec79c1f356ae44 (diff)
downloadchrome-ec-e106509017e2cfd7a297bebf16547f88b4afb19e.tar.gz
nissa: enable SB type-A power if sub-board is unconfigured
It's safe to enable this output with every sub-board, and it's useful to have functioning type-A USB on the sub-board even if CBI isn't fully configured yet; in particular for factory provisioning. BUG=b:251055188 TEST=SB type-A now works with unprovisioned fw_config BRANCH=none Signed-off-by: Peter Marheine <pmarheine@chromium.org> Change-Id: Ia73bb09c37fac0d633d55ec78662fd474431ca1c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3954782 Commit-Queue: Andrew McRae <amcrae@google.com> Reviewed-by: Andrew McRae <amcrae@google.com> Code-Coverage: Andrew McRae <amcrae@google.com>
-rw-r--r--zephyr/projects/nissa/src/sub_board.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/zephyr/projects/nissa/src/sub_board.c b/zephyr/projects/nissa/src/sub_board.c
index 89a9954037..3ccbcd9325 100644
--- a/zephyr/projects/nissa/src/sub_board.c
+++ b/zephyr/projects/nissa/src/sub_board.c
@@ -154,8 +154,15 @@ static void nereid_subboard_config(void)
* if this port is not present. VBUS enable must be configured if
* needed and is controlled by the usba-port-enable-pins driver.
*/
- if (sb == NISSA_SB_C_A || sb == NISSA_SB_HDMI_A) {
- /* Configure VBUS enable, default off */
+ if (sb == NISSA_SB_C_A || sb == NISSA_SB_HDMI_A ||
+ sb == NISSA_SB_NONE) {
+ /*
+ * Configure VBUS enable, default off.
+ * SB_NONE indicates missing fw_config; it's safe to enable VBUS
+ * control in this case since all that will happen is we turn
+ * off power to LTE, and it's useful to allow USB-A to work in
+ * such a configuration.
+ */
gpio_pin_configure_dt(GPIO_DT_FROM_ALIAS(gpio_en_usb_a1_vbus),
GPIO_OUTPUT_LOW);
} else {