# USBC TCPC configuration options

# Copyright 2022 The Chromium OS Authors
# SPDX-License-Identifier: Apache-2.0

menuconfig USBC_TCPC_DRIVER
	bool "USB-C TCPC drivers"
	help
	  Enable USB TypeC Port Controller (TCPC) drivers

if USBC_TCPC_DRIVER

config USBC_TCPC_INIT_PRIORITY
	int "USB-C TCPC driver init priority"
	default 80
	help
	  USB-C device driver initialization priority.
	  Do not mess with it unless you know what you are doing.
	  Note that the priority needs to be lower than the USBC stack
	  so that it can start before the USBC sub-system.

config USBC_TCPC_SHELL
	bool "Shell commands for TCPC subsystem"
	help
	  Enable support for TCPC shell commands that helps with USB-C diagnostics.
	  Example functions are printing vbus, chip information and dumping registers.

source "drivers/usb_c/tcpc/Kconfig.tcpc_stm32"

module = USBC
module-str = usbc
source "subsys/logging/Kconfig.template.log_config"

endif # USBC_TCPC_DRIVER
