summaryrefslogtreecommitdiff
path: root/apps/system/usbmsc/Kconfig
blob: 7be540e335b9a6f68fb12eeb1abdf10827e9ced0 (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
168
169
170
171
#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#

config SYSTEM_USBMSC
	bool "USB mass storage class controls"
	default n
	depends on USBMSC && !KERNEL_BUILD
	---help---
		Enable the USB mass storage class controls.  These controls include:

		msconn:  Connect the mass storage device to the host
		msdis :  Disconnect the mass storage device to the host

if SYSTEM_USBMSC

config SYSTEM_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 SYSTEM_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 SYSTEM_USBMSC_DEVPATH1
	string "LUN1 Device Path"
	default "/dev/mmcsd0"
	---help---
		The full path to the registered block driver.  Default is
		"/dev/mmcsd0"

config SYSTEM_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 SYSTEM_USBMSC_NLUNS < 2. Default is one.

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

config SYSTEM_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 SYSTEM_USBMSC_NLUNS < 2. Default is two.

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

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

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

if SYSTEM_USBMSC_TRACE

config SYSTEM_USBMSC_TRACEINIT
	bool "USB Trace Initialization"
	default n
	---help---
		If USBDEV_TRACE is enabled (or DEBUG and DEBUG_USB),
		then the add-on 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 SYSTEM_USBMSC_TRACECLASS
	bool "USB Trace Class"
	default n
	---help---
		If USBDEV_TRACE is enabled (or DEBUG and DEBUG_USB),
		then the add-on 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 SYSTEM_USBMSC_TRACETRANSFERS
	bool "USB Trace Transfers"
	default n
	---help---
		If USBDEV_TRACE is enabled (or DEBUG and DEBUG_USB),
		then the add-on 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 SYSTEM_USBMSC_TRACECONTROLLER
	bool "USB Trace Device Controller Events"
	default n
	---help---
		If USBDEV_TRACE is enabled (or DEBUG and DEBUG_USB),
		then the add-on 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 SYSTEM_USBMSC_TRACEINTERRUPTS
	bool "USB Trace Device Controller Interrupt Events"
	default n
	---help---
		If USBDEV_TRACE is enabled (or DEBUG and DEBUG_USB),
		then the add-on 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 # SYSTEM_USBMSC_TRACE

if NSH_BUILTIN_APPS

config SYSTEM_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 SYSTEM_USBMSC_CMD_PRIORITY
	int "Priority of the msconn and msdis commands"
	default 100
	---help---
		Priority of the small 'msconn' and 'msdis' command applications.

config SYSTEM_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 SYSTEM_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 # SYSTEM_USBMSC