diff options
Diffstat (limited to 'zephyr/Kconfig.usbc_ss_mux')
-rw-r--r-- | zephyr/Kconfig.usbc_ss_mux | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/zephyr/Kconfig.usbc_ss_mux b/zephyr/Kconfig.usbc_ss_mux new file mode 100644 index 0000000000..5578deaa6b --- /dev/null +++ b/zephyr/Kconfig.usbc_ss_mux @@ -0,0 +1,63 @@ +# Copyright 2022 The Chromium OS Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +if PLATFORM_EC_USBC + +config PLATFORM_EC_USBC_SS_MUX + bool "SuperSpeed mux" + default y + help + Enable this to support the USB Type-C SuperSpeed Mux. If enabled, + the USB stack will call usb_mux_set() to change the mux settings. + The board must provide a driver in usb_muxes[] for each port so + that this can work. + +if PLATFORM_EC_USBC_SS_MUX + +config PLATFORM_EC_USB_MUX_RUNTIME_CONFIG + bool "USB mux runtime config" + default y + help + Allows the configuration of the USB mux to be set up at runtime. This + makes the usb_muxes[] array writable, i.e. not const. It should be + declared as such in the board config. + + This is useful when the board has runtime information that changes + the configuration, such as Chromium OS Board Info (CBI set in the + factory. Without this, multiple EC images would need to be installed + depending on the board. + +config PLATFORM_EC_USBC_SS_MUX_DFP_ONLY + bool "Use SuperSpeed mux only when DFP" + help + Only configure the USB Type-C SuperSpeed Mux when a port is a + Downstream Facing Port (DFP). This is needed for chipsets which + don't support being an Upstream Facing Port UFP). + +config PLATFORM_EC_USB_MUX_VIRTUAL + bool "USB Mux is virtual" + depends on PLATFORM_EC_USBC_SS_MUX + help + Enable this if a virtual USB mux is supported on the EC, which is + actually handled by the AP. In this case the AP gets an interrupt + and is is informed when status changes, via the + EC_CMD_USB_PD_MUX_INFO host command. + +config PLATFORM_EC_USBC_RETIMER_FW_UPDATE + bool "Support firmware update of USB Type-C retimers" + default y + depends on PLATFORM_EC_USBC_SS_MUX + help + Enable this to support USB Type-C retimer firmware update. Each + Type-C retimer indicates its capability of supporting firmware update + independently in its usb_mux_driver. + + During AP boot-up, the AP scans each PD port for retimers but only + if there are no Type-C devices attached to the port. The firmware + update can only be performed on retimers which show up in the AP + thunderbolt device entries. + +endif # PLATFORM_EC_USBC_SS_MUX + +endif # PLATFORM_EC_USBC |