summaryrefslogtreecommitdiff
path: root/nuttx/drivers/Kconfig
blob: a738bd102dab8137844b4dfa7dddc65f7759130c (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
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#

comment "Device Driver Configuration"

config DEV_NULL
	bool "Enable /dev/null"
	default y

config DEV_ZERO
	bool "Enable /dev/zero"
	default n

config LOOP
	bool "Enable loop device"
	default n
	---help---
		Supports the standard loop device that can be used to export a
		file (or character device) as a block device.  See losetup() and
		loteardown() in include/nuttx/fs/fs.h.

config RAMDISK
	bool "RAM disk support"
	default n
	---help---
		Can be used to set up a block of memory or (read-only) FLASH as
		a block driver that can be mounted as a files system.  See
		include/nuttx/ramdisk.h.

config CAN
	bool "CAN support"
	default n
	---help---
		This selection enables building of the "upper-half" CAN driver.
		See include/nuttx/can.h for further CAN driver information.

if CAN
config CAN_EXTID
	bool "CAN extended IDs"
	default n
	---help---
		Enables support for the 29-bit extended ID.  Default Standard 11-bit IDs.

config CAN_FIFOSIZE
	int "CAN driver I/O buffer size"
	default 8
	---help---
		The size of the circular buffer of CAN messages. Default: 8

config CAN_NPENDINGRTR
	int "Number of pending RTRs"
	default 4
	---help---
		The size of the list of pending RTR requests. Default: 4

config CAN_LOOPBACK
	bool "CAN extended IDs"
	default n
	---help---
		A CAN driver may or may not support a loopback mode for testing. If the
		driver does support loopback mode, the setting will enable it. (If the
		driver does not, this setting will have no effect).

endif

config PWM
	bool "PWM support"
	default n
	---help---
		This selection enables building of the "upper-half" PWM driver.
		See include/nuttx/pwm.h for further PWM driver information.

if PWM
config PWM_PULSECOUNT
	bool "PWM pulse count support"
	default n
	---help---
		Some hardware will support generation of a fixed number of pulses.  This
		might be used, for example to support a stepper motor.  If the hardware
		will support a fixed pulse count, then this configuration should be set to
		enable the capability.

endif

config I2C
	bool "I2C support"
	default n
	---help---
		This selection enables building of the "upper-half" I2C driver.
		See include/nuttx/i2c.h for further I2C driver information.

if I2C
endif

config SPI
	bool "SPI support"
	default n
	---help---
		This selection enables building of the "upper-half" SPI driver.
		See include/nuttx/spi.h for further SPI driver information.

if SPI
config SPI_OWNBUS
	bool "SPI single device"
	default y
	---help---
		Set if there is only one active device on the SPI bus.  No locking or SPI
		configuration will be performed. It is not necessary for clients to lock,
		re-configure, etc..

config SPI_EXCHANGE
	bool "SPI exchange"
	default y
	---help---
		Driver supports a single exchange method (vs a recvblock() and sndblock ()methods).

config SPI_CMDDATA
	bool "SPI CMD/DATA"
	default y
	---help---
		Devices on the SPI bus require out-of-band support to distinguish command
		transfers from data transfers.  Such devices will often support either 9-bit
		SPI (yech) or 8-bit SPI and a GPIO output that selects between command and data.

endif

config WATCHDOG
	bool "Watchdog timer support"
	default n
	---help---
		This selection enables building of the "upper-half" watchdog timer driver.
		See include/nuttx/watchdog.h for further watchdog timer driver information.

if WATCHDOG
endif

menuconfig ANALOG
	bool "Analog Device(ADC/DAC) support"
	default n
	---help---
		This directory holds implementations of analog device drivers.
		This includes drivers for Analog to Digital Conversion (ADC) as
		well as drivers for Digital to Analog Conversion (DAC).
		See include/nuttx/analog/*.h for registration information.

if ANALOG
source drivers/analog/Kconfig
endif

config BCH
	bool "BCH support"
	default n
	---help---
		Contains logic that may be used to convert a block driver into
		a character driver.  This is the complementary conversion as that
		performed by loop.c.  See include/nuttx/fs/fs.h for registration
		information.

if BCH
source drivers/bch/Kconfig
endif

menuconfig INPUT
	bool "Input device support"
	default n
	---help---
		This directory holds implementations of input device drivers.
		This includes such things as touchscreen and keypad drivers.
		See include/nuttx/input/*.h for registration information.

if INPUT
source drivers/input/Kconfig
endif

menuconfig LCD
	bool "LCD support"
	default n
	select NX_LCDDRIVER
	---help---
		Drivers for parallel and serial LCD and OLED type devices.  These
		drivers support interfaces as defined in include/nuttx/lcd/lcd.h

		This selection is necessary to enable support for LCD drivers in
		drivers/lcd as well as for board-specific LCD drivers in the configs/
		subdirectories.

if LCD
source drivers/lcd/Kconfig
endif

menuconfig MMCSD
	bool "MMC/SD support"
	default n
	---help---
		Support for MMC/SD block drivers.  MMC/SD block drivers based on
		SPI and SDIO/MCI interfaces are supported.  See include/nuttx/mmcsd.h
		and include/nuttx/sdio.h for further information.

if MMCSD
source drivers/mmcsd/Kconfig
endif
	
menuconfig MTD
	bool "Memory Technology Device (MTD) support"
	default n
	---help---
		Memory Technology Device (MTD) drivers.  Some simple drivers for
		memory technologies like FLASH, EEPROM, NVRAM, etc.  See
		include/nuttx/mtd.h

		(Note: This is a simple memory interface and should not be
		confused with the "real" MTD developed at infradead.org.  This
		logic is unrelated; I just used the name MTD because I am not
		aware of any other common way to refer to this class of devices).

if MTD
source drivers/mtd/Kconfig
endif

menuconfig NETDEVICES
	bool "Network Device support"
	default n
	---help---
		Network interface drivers.  See also include/nuttx/net/net.h

if NETDEVICES
source drivers/net/Kconfig
endif

menuconfig PIPES
	bool "FIFO and named pipe drivers"
	default n
	---help---
		FIFO and named pipe drivers.  Standard interfaces are declared
		in include/unistd.h

if PIPES
source drivers/pipes/Kconfig
endif

config PM
	bool "Power management (PM) driver interfaces"
	default n
	---help---
		Power management (PM) driver interfaces.  These interfaces are used
		to manage power usage of a platform by monitoring driver activity
		and by placing drivers into reduce power usage modes when the
		drivers are not active.

menuconfig POWER
	bool "Power management device support"
	default n
	---help---
		Enable building of power-related devices (battery monitors, chargers, etc).

if POWER
source drivers/power/Kconfig
endif

menuconfig SENSORS
	bool "Sensors support"
	default n
	---help---
		Drivers for various sensors

if SENSORS
source drivers/sensors/Kconfig
endif

menuconfig SERCOMM_CONSOLE
	bool "Osmocom-bb serial console"
	default n
	---help---
		Sercomm is the transport used by osmocom-bb that runs on top of serial.
		See http://bb.osmocom.org/trac/wiki/nuttx-bb/run for detailed the usage
		of nuttx with sercomm.

		drivers/sercomm is only built if SERCOMM_CONSOLE in the NuttX
		configuration file.  If you attempt to build this driver without
		osmocom-bb, you will get compilation errors because of header files
		that are needed from the osmocom-bb.

if SERCOMM
source drivers/sercomm/Kconfig
endif

menuconfig SERIAL
	bool "Serial support"
	default y
	---help---
		Front-end character drivers for chip-specific UARTs.  This provide
		some TTY-like functionality and are commonly used (but not required for)
		the NuttX system console.  See also include/nuttx/serial/serial.h

if SERIAL
source drivers/serial/Kconfig
endif

menuconfig USBDEV
	bool "USB device support"
	default n
	---help---
		USB device drivers.  See also include/nuttx/usb/usbdev.h

if USBDEV
source drivers/usbdev/Kconfig
endif

menuconfig USBHOST
	bool "USB Host support"
	default n
	---help---
		USB host drivers.  See also include/nuttx/usb/usbhost.h

if USBHOST
source drivers/usbhost/Kconfig
endif

menuconfig WIRELESS
	bool "Wireless support"
	default n
	---help---
		Drivers for various wireless devices.

if WIRELESS
source drivers/wireless/Kconfig
endif

source drivers/syslog/Kconfig