blob: 57be78f6819af2bc03632930e3c35ebffa4bf304 [file] [log] [blame]
# USB-C stack configuration options
# Copyright (c) 2022 The Chromium OS Authors
# SPDX-License-Identifier: Apache-2.0
menuconfig USBC_STACK
bool "USB-C Stack Support"
select SMF
select SMF_ANCESTOR_SUPPORT
select USBC_TCPC_DRIVER
select USBC_VBUS_DRIVER
help
Enable the USB-C Stack. Note that each USB-C port gets its own thread.
if USBC_STACK
config USBC_THREAD_PRIORITY
int "USB-C thread priority"
default 0
help
Set thread priority of the USB-C
config USBC_STACK_SIZE
int "USB-C thread stack size"
default 1024
help
Stack size of thread created for each instance.
config USBC_STATE_MACHINE_CYCLE_TIME
int "USB-C state machine cycle time in milliseconds"
default 5
help
The USB-C state machine is run in a loop and the cycle time is the
delay before running the loop again.
config BUILD_OUTPUT_VIF
bool "Generate VIF policies of USB-C in XML format"
depends on DT_HAS_USB_C_CONNECTOR_ENABLED
help
Generate XML file containing VIF policies during project build.
config GENVIF_INPUT_VIF_XML_PATH
string "Path to input VIF file"
depends on BUILD_OUTPUT_VIF
help
Absolute path or relative path (w.r.to the application source
directory) of the GenVIF input VIF XML file.
choice USBC_CSM_TYPE
prompt "USB-C Connection State Machine"
default USBC_CSM_SINK_ONLY
config USBC_CSM_SINK_ONLY
bool "Sink USB-C Connection State Machine"
help
Allows the USB-C state machine to function as a Sink
config USBC_CSM_SOURCE_ONLY
bool "Source USBC Connection State Machine"
help
Allow the USB-C state machine to function as a Source
endchoice
module = USBC_STACK
module-str = usbc stack
source "subsys/logging/Kconfig.template.log_config"
endif # USBC_STACK