You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
513 lines
13 KiB
513 lines
13 KiB
# |
|
# For a description of the syntax of this configuration file, |
|
# see misc/tools/kconfig-language.txt. |
|
# |
|
|
|
menu "Device Controller Driver Options" |
|
|
|
config USBDEV_ISOCHRONOUS |
|
bool "Enable isochronous" |
|
default n |
|
---help--- |
|
Build in extra support for isochronous endpoints |
|
|
|
config USBDEV_DUALSPEED |
|
bool "Enable high and full speed" |
|
default n |
|
---help--- |
|
Hardware handles high and full speed operation (USB 2.0) |
|
|
|
choice USBDEV_POWERED |
|
prompt "Select USB device powered" |
|
default USBDEV_SELFPOWERED |
|
|
|
config USBDEV_SELFPOWERED |
|
bool "Self powered" |
|
---help--- |
|
Will cause USB features to indicate that the device is self-powered |
|
|
|
config USBDEV_BUSPOWERED |
|
bool "Bus powered" |
|
---help--- |
|
Will cause USB features to indicate that the device is self-powered |
|
|
|
endchoice |
|
|
|
config USBDEV_MAXPOWER |
|
int "Maximum power consumption in mA" |
|
default 100 |
|
depends on USBDEV_BUSPOWERED |
|
---help--- |
|
Maximum power consumption in mA |
|
|
|
config USBDEV_DMA |
|
bool "Enable DMA methods" |
|
default n |
|
---help--- |
|
Select this enable DMA-related methods in USB device controller driver |
|
interface. These methods include the DMA buffer allocation methods: |
|
allobuffer() and freebuffer(). |
|
|
|
The USB class driver allocates packet I/O buffers for data transfer by |
|
calling the driver allocbuffer() and freebuffer() methods. Those methods |
|
are only available if USBDEV_DMA is defined in the system configuration. |
|
|
|
config USBDEV_DMAMEMORY |
|
bool "Board DMA Allocation Hooks" |
|
default n |
|
depends on USBDEV_DMA |
|
---help--- |
|
The USB class driver allocates packet I/O buffers for data transfer by |
|
calling the driver allocbuffer() and freebuffer() methods. Those methods |
|
are only available if USBDEV_DMA is defined in the system configuration. |
|
|
|
If USBDEV_DMAMEMORY is also defined in the NuttX configuration, then |
|
the driver implementations of the allocbuffer() and freebuffer() |
|
methods may use board-specific usbdev_dma_alloc() and usbdev_dma_free(). |
|
If USBDEV_DMA and USBDEV_DMAMEMORY are both defined, then the board- |
|
specific logic must provide the functions usbdev_dma_alloc() and |
|
usbdev_dma_free(): usbdev_dma_alloc() will allocate DMA-capable |
|
memory of the specified size; usbdev_dma_free() is the corresponding |
|
function that will be called to free the DMA-capable memory. |
|
|
|
config USBDEV_TRACE |
|
bool "Enable USB tracing for debug" |
|
default n |
|
---help--- |
|
Enables USB tracing for debug |
|
|
|
config USBDEV_TRACE_NRECORDS |
|
int "Number of trace entries to remember" |
|
default 32 |
|
depends on USBDEV_TRACE |
|
---help--- |
|
Number of trace entries to remember |
|
|
|
endmenu |
|
|
|
menuconfig USBDEV_COMPOSITE |
|
bool "USB composite device support" |
|
default n |
|
---help--- |
|
Enables USB composite device support |
|
|
|
if USBDEV_COMPOSITE |
|
|
|
#config COMPOSITE_IAD |
|
# bool "" |
|
# default n |
|
# ---help--- |
|
# If one of the members of the composite has multiple interfaces |
|
# (such as CDC/ACM), then an Interface Association Descriptor (IAD) |
|
# will be necessary. Default: IAD will be used automatically if |
|
# needed. It should not be necessary to set this. |
|
|
|
config COMPOSITE_EP0MAXPACKET |
|
int "Max packet size for endpoint 0" |
|
default 64 |
|
---help--- |
|
Max packet size for endpoint 0 |
|
|
|
config COMPOSITE_VENDORID |
|
hex "Composite vendor ID" |
|
default 0 |
|
|
|
config COMPOSITE_VENDORSTR |
|
string "Composite vendor ID" |
|
default "Nuttx" |
|
---help--- |
|
The vendor ID code/string |
|
|
|
config COMPOSITE_PRODUCTID |
|
hex "Composite product id" |
|
default 0 |
|
|
|
config COMPOSITE_PRODUCTSTR |
|
string "Composite product string" |
|
default "Composite device" |
|
---help--- |
|
The product ID code/string |
|
|
|
config COMPOSITE_SERIALSTR |
|
string "Composite serial string" |
|
default "001" |
|
---help--- |
|
Device serial number string |
|
|
|
config COMPOSITE_CONFIGSTR |
|
string "Configuration string" |
|
default "Nuttx COMPOSITE config" |
|
---help--- |
|
Configuration string |
|
|
|
config COMPOSITE_VERSIONNO |
|
string "Composite version number" |
|
default "" |
|
---help--- |
|
Interface version number. |
|
endif |
|
|
|
menuconfig PL2303 |
|
bool "Prolific PL2303 serial/USB converter emulation" |
|
default n |
|
select SERIAL_REMOVABLE |
|
---help--- |
|
This logic emulates the Prolific PL2303 serial/USB converter |
|
|
|
if PL2303 |
|
|
|
config PL2303_CONSOLE |
|
bool "PL2303 console device" |
|
default n |
|
---help--- |
|
Register the USB device as /dev/console so that is will be used |
|
as the console device. |
|
|
|
config PL2303_EPINTIN |
|
int "Logical endpoint numbers" |
|
default 1 |
|
|
|
config PL2303_EPBULKOUT |
|
int "Endpoint Bulkout" |
|
default 2 |
|
|
|
config PL2303_EPBULKIN |
|
int "Endpoint Bulkin" |
|
default 3 |
|
|
|
config PL2303_EP0MAXPACKET |
|
int "Packet and request buffer sizes" |
|
default 64 |
|
|
|
config PL2303_NWRREQS |
|
int "Number of read requests that can be in flight" |
|
default 4 |
|
---help--- |
|
The number of read requests that can be in flight |
|
|
|
config PL2303_NRDREQS |
|
int "Number of write requests that can be in flight" |
|
default 4 |
|
---help--- |
|
The number of write/read requests that can be in flight |
|
|
|
config PL2303_RXBUFSIZE |
|
int "Receive buffer size" |
|
default 256 |
|
---help--- |
|
Size of the serial receive/transmit buffers |
|
|
|
config PL2303_TXBUFSIZE |
|
int "Transmit buffer size" |
|
default 256 |
|
---help--- |
|
Size of the serial receive/transmit buffers |
|
|
|
config PL2303_VENDORID |
|
hex "Vendor ID" |
|
default 0x067b |
|
|
|
config PL2303_PRODUCTID |
|
hex "Product ID" |
|
default 0x2303 |
|
|
|
config PL2303_VENDORSTR |
|
string "Vendor string" |
|
default "NuttX" |
|
|
|
config PL2303_PRODUCTSTR |
|
string "Product string" |
|
default "PL2303 Emulation" |
|
endif |
|
|
|
menuconfig CDCACM |
|
bool "USB Modem (CDC ACM) support" |
|
default n |
|
select SERIAL_REMOVABLE |
|
---help--- |
|
Enables USB Modem (CDC ACM) support |
|
|
|
if CDCACM |
|
|
|
config CDCACM_CONSOLE |
|
bool "CDC/ACM console device" |
|
default n |
|
---help--- |
|
Register the USB device as /dev/console so that is will be used |
|
as the console device. |
|
|
|
config CDCACM_COMPOSITE |
|
bool "CDC/ACM composite support" |
|
default n |
|
depends on USBDEV_COMPOSITE |
|
---help--- |
|
Configure the CDC serial driver as part of a composite driver |
|
(only if CONFIG_USBDEV_COMPOSITE is also defined) |
|
|
|
config CDCACM_IFNOBASE |
|
int "Offset the CDC/ACM interface numbers" |
|
default 0 |
|
depends on CDCACM_COMPOSITE |
|
---help--- |
|
If the CDC driver is part of a composite device, then this may need to |
|
be defined to offset the CDC/ACM interface numbers so that they are |
|
unique and contiguous. When used with the Mass Storage driver, the |
|
correct value for this offset is zero. |
|
|
|
config CDCACM_STRBASE |
|
int "Offset the CDC/ACM string numbers" |
|
default 0 |
|
depends on CDCACM_COMPOSITE |
|
---help--- |
|
If the CDC driver is part of a composite device, then this may need to |
|
be defined to offset the CDC/ACM string numbers so that they are |
|
unique and contiguous. When used with the Mass Storage driver, the |
|
correct value for this offset is four (this value actuallly only needs |
|
to be defined if names are provided for the Notification interface, |
|
config CDCACM_NOTIFSTR, or the data interface, CONFIG_CDCACM_DATAIFSTR). |
|
|
|
config CDCACM_EP0MAXPACKET |
|
int "Endpoint 0 max packet size" |
|
default 64 |
|
---help--- |
|
Endpoint 0 max packet size. Default 64. |
|
|
|
config CDCACM_EPINTIN |
|
int "Hardware endpoint that supports interrupt IN operation" |
|
default 1 |
|
---help--- |
|
The logical 7-bit address of a hardware endpoint that supports |
|
interrupt IN operation. Default 1. |
|
|
|
config CDCACM_EPINTIN_FSSIZE |
|
int "Endpoint in full speed size" |
|
default 64 |
|
---help--- |
|
Max package size for the interrupt IN endpoint if full speed mode. |
|
Default 64. |
|
|
|
config CDCACM_EPINTIN_HSSIZE |
|
int "Endpoint in high speed size" |
|
default 64 |
|
---help--- |
|
Max package size for the interrupt IN endpoint if high speed mode. |
|
Default 64. |
|
|
|
config CDCACM_EPBULKOUT |
|
int "Endpoint bulk out" |
|
default 3 |
|
---help--- |
|
The logical 7-bit address of a hardware endpoint that supports |
|
bulk OUT operation. Default: 3 |
|
|
|
config CDCACM_EPBULKOUT_FSSIZE |
|
int "Endpoint bulk out full speed size" |
|
default 64 |
|
---help--- |
|
Max package size for the bulk OUT endpoint if full speed mode. |
|
Default 64. |
|
|
|
config CDCACM_EPBULKOUT_HSSIZE |
|
int "Endpoint bulk out high speed size" |
|
default 512 |
|
---help--- |
|
Max package size for the bulk OUT endpoint if high speed mode. |
|
Default 512. |
|
|
|
config CDCACM_EPBULKIN |
|
int "Endpoint bulk in" |
|
default 2 |
|
---help--- |
|
The logical 7-bit address of a hardware endpoint that supports |
|
bulk IN operation. Default: 2 |
|
|
|
config CDCACM_EPBULKIN_FSSIZE |
|
int "Endpoint bulk in full speed size" |
|
default 64 |
|
---help--- |
|
Max package size for the bulk IN endpoint if full speed mode. |
|
Default 64. |
|
|
|
config CDCACM_EPBULKIN_HSSIZE |
|
int "Endpoint bulk in high speed size" |
|
default 512 |
|
---help--- |
|
Max package size for the bulk IN endpoint if high speed mode. |
|
Default 512. |
|
|
|
config CDCACM_NWRREQS |
|
int "Number of read requests that can be in flight" |
|
default 4 |
|
---help--- |
|
The number of read requests that can be in flight |
|
|
|
config CDCACM_NRDREQS |
|
int "Number of write requests that can be in flight" |
|
default 4 |
|
---help--- |
|
The number of write/read requests that can be in flight |
|
|
|
config CDCACM_RXBUFSIZE |
|
int "Receive buffer size" |
|
default 256 |
|
---help--- |
|
Size of the serial receive/transmit buffers |
|
|
|
config CDCACM_TXBUFSIZE |
|
int "Transmit buffer size" |
|
default 256 |
|
---help--- |
|
Size of the serial receive/transmit buffers |
|
|
|
config CDCACM_VENDORID |
|
hex "Vendor ID" |
|
default 0x0525 |
|
---help--- |
|
The vendor ID code/string. Default 0x0525 and "NuttX" |
|
0x0525 is the Netchip vendor and should not be used in any |
|
products. This default VID was selected for compatibility with |
|
the Linux CDC ACM default VID. |
|
|
|
config CDCACM_PRODUCTID |
|
hex "Product ID" |
|
default 0xa4a7 |
|
---help--- |
|
The product ID code/string. Default 0xa4a7 and "CDC/ACM Serial" |
|
0xa4a7 was selected for compatibility with the Linux CDC ACM |
|
default PID. |
|
|
|
config CDCACM_VENDORSTR |
|
string "Vendor string" |
|
default "NuttX" |
|
|
|
config CDCACM_PRODUCTSTR |
|
string "Product string" |
|
default "CDC/ACM Serial" |
|
endif |
|
|
|
menuconfig USBMSC |
|
bool "USB Mass storage class device" |
|
default n |
|
---help--- |
|
References: |
|
"Universal Serial Bus Mass Storage Class, Specification Overview," |
|
Revision 1.2, USB Implementer's Forum, June 23, 2003. |
|
|
|
"Universal Serial Bus Mass Storage Class, Bulk-Only Transport," |
|
Revision 1.0, USB Implementer's Forum, September 31, 1999. |
|
|
|
"SCSI Primary Commands - 3 (SPC-3)," American National Standard |
|
for Information Technology, May 4, 2005 |
|
|
|
"SCSI Primary Commands - 4 (SPC-4)," American National Standard |
|
for Information Technology, July 19, 2008 |
|
|
|
"SCSI Block Commands -2 (SBC-2)," American National Standard |
|
for Information Technology, November 13, 2004 |
|
|
|
"SCSI Multimedia Commands - 3 (MMC-3)," American National Standard |
|
for Information Technology, November 12, 2001 |
|
|
|
if USBMSC |
|
config USBMSC_COMPOSITE |
|
bool "Mass storage composite support" |
|
default n |
|
depends on USBDEV_COMPOSITE |
|
---help--- |
|
Configure the mass storage driver as part of a composite driver |
|
(only if CONFIG_USBDEV_COMPOSITE is also defined) |
|
|
|
config USBMSC_IFNOBASE |
|
int "Offset the mass storage interface number" |
|
default 2 |
|
depends on USBMSC_COMPOSITE |
|
---help--- |
|
If the CDC driver is part of a composite device, then this may need to |
|
be defined to offset the mass storage interface number so that it is |
|
unique and contiguous. When used with the CDC/ACM driver, the |
|
correct value for this offset is two (because of the two CDC/ACM |
|
interfaces that will precede it). |
|
|
|
config USBMSC_STRBASE |
|
int "Offset the mass storage string numbers" |
|
default 2 |
|
depends on USBMSC_COMPOSITE |
|
---help--- |
|
If the CDC driver is part of a composite device, then this may need to |
|
be defined to offset the mass storage string numbers so that they are |
|
unique and contiguous. When used with the CDC/ACM driver, the |
|
correct value for this offset is four (or perhaps 5 or 6, depending |
|
on if CONFIG_CDCACM_NOTIFSTR or CONFIG_CDCACM_DATAIFSTR are defined). |
|
|
|
config USBMSC_EP0MAXPACKET |
|
int "Max packet size for endpoint 0" |
|
default 64 |
|
---help--- |
|
Max packet size for endpoint 0 |
|
|
|
config USBMSC_EPBULKOUT |
|
int "Endpoint bulk out" |
|
default 0 |
|
---help--- |
|
The logical 7-bit address of a hardware endpoints that support |
|
bulk OUT and IN operations |
|
|
|
config USBMSC_EPBULKIN |
|
int "Endpoint bulk in" |
|
default 0 |
|
---help--- |
|
The logical 7-bit address of a hardware endpoints that support |
|
bulk OUT and IN operations |
|
|
|
config USBMSC_NWRREQS |
|
int "The number of write requests that can be in flight" |
|
default 4 |
|
---help--- |
|
The number of write/read requests that can be in flight |
|
config USBMSC_NRDREQS |
|
int "The number of read requests that can be in flight" |
|
default 4 |
|
---help--- |
|
The number of write/read requests that can be in flight |
|
|
|
config USBMSC_BULKINREQLEN |
|
int "Bulk in request size" |
|
default 512 |
|
|
|
config USBMSC_BULKOUTREQLEN |
|
int "Bulk out request size" |
|
default 512 |
|
---help--- |
|
The size of the buffer in each write/read request. This |
|
value needs to be at least as large as the endpoint |
|
maxpacket and ideally as large as a block device sector. |
|
|
|
config USBMSC_VENDORID |
|
hex "Mass stroage Vendor ID" |
|
default 0x00 |
|
|
|
config USBMSC_VENDORSTR |
|
string "Mass stroage vendor string" |
|
default "Nuttx" |
|
---help--- |
|
The vendor ID code/string |
|
|
|
config USBMSC_PRODUCTID |
|
hex "Mass stroage Product ID" |
|
default 0x00 |
|
|
|
config USBMSC_PRODUCTSTR |
|
string "Mass storage product string" |
|
default "Mass Storage" |
|
|
|
config USBMSC_VERSIONNO |
|
hex "USB MSC Version Number" |
|
default "0x399" |
|
|
|
config USBMSC_REMOVABLE |
|
bool "Mass stroage remove able" |
|
default n |
|
---help--- |
|
Select if the media is removable |
|
USB Composite Device Configuration |
|
endif
|
|
|