summaryrefslogtreecommitdiff
path: root/apps/examples/usbmsc/Kconfig
blob: 4d366d89f6f9bb442a2e83d909568a2bfa1ccc53 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#

config EXAMPLES_USBMSC
	bool "USB mass storage class example"
	default n
	---help---
		Enable the USB mass storage class example

if EXAMPLES_USBMSC

config EXAMPLES_USBMSC_NLUNS
	int "Number of LUNs"
	default 1
	---help---
		Defines the number of logical units (LUNs) exported by the USB
		storage driver.  Each LUN corresponds to one exported block driver
		(or partition of a block driver).  May be 1, 2, or 3.  Default is 1.

config EXAMPLES_USBMSC_DEVMINOR1
	int "LUN1 Minor Device Number"
	default 0
	---help---
		The minor device number of the block driver for the first LUN. For
		example, N in /dev/mmcsdN.  Used for registering the block driver.
		Default is zero.

config EXAMPLES_USBMSC_DEVPATH1
	string "LUN1 Device Path"
	default "/dev/mmcsd0"
	---help---
		The full path to the registered block driver.  Default is
		"/dev/mmcsd0"

config EXAMPLES_USBMSC_DEVMINOR2
	int "LUN2 Minor Device Number"
	default 1
	---help---
		The minor device number of the block driver for the second LUN. For
		example, N in /dev/mmcsdN.  Used for registering the block driver.
		Ignored if EXAMPLES_USBMSC_NLUNS < 2. Default is one.

config EXAMPLES_USBMSC_DEVPATH2
	string "LUN2 Device Path"
	default "/dev/mmcsd1"
	---help---
		The full path to the registered block driver.  Ignored if
		EXAMPLES_USBMSC_NLUNS < 2. Default is "/dev/mmcsd1"

config EXAMPLES_USBMSC_DEVMINOR3
	int "LUN3 Minor Device Number"
	default 2
	---help---
		The minor device number of the block driver for the third LUN. For
		example, N in /dev/mmcsdN.  Used for registering the block driver.
		Ignored if EXAMPLES_USBMSC_NLUNS < 2. Default is two.

config EXAMPLES_USBMSC_DEVPATH3
	string "LUN3 Device Path"
	default "/dev/mmcsd2"
	---help---
		The full path to the registered block driver.  Ignored if
		EXAMPLES_USBMSC_NLUNS < 2. Default is "/dev/mmcsd2"

config EXAMPLES_USBMSC_DEBUGMM
	bool "USB MSC MM Debug"
	default n
	---help---
		Enables some debug tests to check for memory usage and memory leaks.

config EXAMPLES_USBMSC_TRACE
	bool "Trace USB activity"
	default n
	depends on (USBDEV_TRACE || DEBUG_USB) && !NSH_BUILTIN_APPS
	---help---
		If this example is built as a standalone task and if USB device tracing is
		enabled, then this example can be configured to unobtrusively monitor
		USB activity by selecting this option.

if EXAMPLES_USBMSC_TRACE

config EXAMPLES_USBMSC_TRACEINIT
	bool "USB Trace Initialization"
	default n
	---help---
		If USBDEV_TRACE is enabled (or DEBUG and DEBUG_USB),
		then the example code will also manage the USB trace output.  The
		amount of trace output can be controlled this configuration value:
		This setting will show USB initialization events

config EXAMPLES_USBMSC_TRACECLASS
	bool "USB Trace Class"
	default n
	---help---
		If USBDEV_TRACE is enabled (or DEBUG and DEBUG_USB),
		then the example code will also manage the USB trace output.  The
		amount of trace output can be controlled this configuration value:
		This setting will show USB class driver events

config EXAMPLES_USBMSC_TRACETRANSFERS
	bool "USB Trace Transfers"
	default n
	---help---
		If USBDEV_TRACE is enabled (or DEBUG and DEBUG_USB),
		then the example code will also manage the USB trace output.  The
		amount of trace output can be controlled this configuration value:
		This setting will show USB data transfer events

config EXAMPLES_USBMSC_TRACECONTROLLER
	bool "USB Trace Device Controller Events"
	default n
	---help---
		If USBDEV_TRACE is enabled (or DEBUG and DEBUG_USB),
		then the example code will also manage the USB trace output.  The
		amount of trace output can be controlled this configuration value:
		This setting will show USB device controller events

config EXAMPLES_USBMSC_TRACEINTERRUPTS
	bool "USB Trace Device Controller Interrupt Events"
	default n
	---help---
		If USBDEV_TRACE is enabled (or DEBUG and DEBUG_USB),
		then the example code will also manage the USB trace output.  The
		amount of trace output can be controlled this configuration value:
		This setting will show USB device controller interrupt-related events.

endif # EXAMPLES_USBMSC_TRACE

if NSH_BUILTIN_APPS

config EXAMPLES_USBMSC_CMD_STACKSIZE
	int "Stacksize of msconn and msdis commands"
	default 768
	---help---
		Size of the stack used by the small 'msconn' and 'msdis' command
		applications.  Warning, just because the applications are small,
		the stack usage could still be deep!

config EXAMPLES_USBMSC_CMD_PRIORITY
	int "Priority of the msconn and msdis commands"
	default 100
	---help---
		Priority of the small 'msconn' and 'msdis' command applications.

config EXAMPLES_USBMSC_DAEMON_STACKSIZE
	int "Stacksize of msconn daemon"
	default 2048
	---help---
		To avoid threading entanglements, the USB MSC class is initialized
		on a daemon thread.  This permits the msconn application to return
		to the NSH command line immediately.  This is the stack used for
		that short-lived USB MSC initialization daemon.

config EXAMPLES_USBMSC_DAEMON_PRIORITY
	int "Priority of the msconn daemon"
	default 100
	---help---
		To avoid threading entanglements, the USB MSC class is initialized
		on a daemon thread.  This permits the msconn application to return
		to the NSH command line immediately.  This is the priority used for
		that short-lived USB MSC initialization daemon.

endif # NSH_BUILTIN_APPS
endif # EXAMPLES_USBMSC