Boot Linux faster!

Check our new training course

Boot Linux faster!

Check our new training course
and Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

# USB device stack configuration options

# Copyright (c) 2016 Wind River Systems, Inc.
# SPDX-License-Identifier: Apache-2.0

menuconfig USB_DEVICE_STACK
	bool "USB device stack"
	depends on USB_DEVICE_DRIVER || ARCH_POSIX
	select HWINFO
	help
	  Enable USB device stack.

if USB_DEVICE_STACK

module = USB_DEVICE
module-str = usb device
source "subsys/logging/Kconfig.template.log_config"

source "samples/subsys/usb/usb_pid.Kconfig"

config USB_DEVICE_VID
	hex "USB Vendor ID"
	default 0x2FE3
	help
	  USB device vendor ID. MUST be configured by vendor.

config USB_DEVICE_PID
	hex "USB Product ID"
	default 0x0100
	help
	  USB device product ID. MUST be configured by vendor.

config USB_DEVICE_MANUFACTURER
	string "USB manufacturer name"
	default "ZEPHYR"
	help
	  USB device Manufacturer string. MUST be configured by vendor.

config USB_DEVICE_PRODUCT
	string "USB product name"
	default "USB-DEV"
	help
	  USB device Product string. MUST be configured by vendor.

config USB_DEVICE_SN
	string "USB device Serial Number String"
	default "0123456789ABCDEF"
	help
	  Placeholder for USB device Serial Number String.
	  Serial Number String will be derived from
	  Hardware Information Driver (HWINFO).

config USB_COMPOSITE_DEVICE
	bool "Enable composite device driver"
	depends on USB
	help
	  Enable composite USB device driver.

config USB_REQUEST_BUFFER_SIZE
	int "Set buffer size for Standard, Class and Vendor request handlers"
	range 256 65536 if USB_DEVICE_NETWORK_RNDIS
	range 8 65536
	default 256 if USB_DEVICE_NETWORK_RNDIS
	default 1024 if USB_DEVICE_LOOPBACK
	default 128

config USB_NUMOF_EP_WRITE_RETRIES
	int "Number of endpoint write retries"
	default 3
	help
	  Number of endpoint write retries.

config USB_DEVICE_SOF
	bool "Enable Start of Frame processing in events"

config USB_DEVICE_REMOTE_WAKEUP
	bool "Enable support for remote wakeup"
	help
	  This option requires USBD peripheral driver to also support remote wakeup.

config USB_DEVICE_DISABLE_ZLP_EPIN_HANDLING
	bool
	help
	  Stack should not handle ZLP for Variable-length Data Stage
	  because it is taken over by the hardware.

config USB_DEVICE_BOS
	bool "Enable USB Binary Device Object Store (BOS)"

config USB_DEVICE_OS_DESC
	bool "Enable MS OS Descriptors support"

config USB_SELF_POWERED
	bool "Set Self-powered characteristic"
	default y
	help
	  Set Self-powered characteristic in bmAttributes to indicate
	  self powered USB device.

config USB_MAX_POWER
	int "Set bMaxPower value"
	default 50
	range 0 250
	help
	  Set bMaxPower value in the Standard Configuration Descriptor,
	  the result is 2mA times the value provided.

source "subsys/usb/class/Kconfig"

endif # USB_DEVICE_STACK