incubator-nuttx/drivers/Kconfig

446 lines
11 KiB
Plaintext

#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#
config DISABLE_POLL
bool "Disable driver poll interfaces"
default n
---help---
The sizes of drivers can be reduced if the poll() method is not
supported. If you do not use poll() or select(), then you can
select DISABLE_POLL to reduce the code footprint by a small amount.
config DEV_NULL
bool "Enable /dev/null"
default y
config DEV_ZERO
bool "Enable /dev/zero"
default n
config ARCH_HAVE_RNG
bool
config DEV_RANDOM
bool "Enable /dev/random"
default n
depends on ARCH_HAVE_RNG
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.
menuconfig CAN
bool "CAN Driver 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
menuconfig PWM
bool "PWM Driver 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
menuconfig I2C
bool "I2C Driver Support"
default n
---help---
This selection enables building of the "upper-half" I2C driver.
See include/nuttx/i2c.h for further I2C driver information.
config I2C_SLAVE
bool "I2C Slave"
default n
depends on I2C
config I2C_TRANSFER
bool "Support the I2C transfer() method"
default n
depends on I2C
config I2C_WRITEREAD
bool "Support the I2C writeread() method"
default n
depends on I2C
config I2C_POLLED
bool "Polled I2C (no interrupts)"
default n
depends on I2C
config I2C_TRACE
bool "Enable I2C trace debug"
default n
depends on I2C
config I2C_NTRACE
bool "Enable I2C trace debug"
default n
depends on I2C_TRACE
config ARCH_HAVE_I2CRESET
bool
config I2C_RESET
bool "Support up_i2creset"
default n
depends on I2C && ARCH_HAVE_I2CRESET
menuconfig SPI
bool "SPI Driver Support"
default n
---help---
This selection enables selection of common SPI options. This option
should be enabled by all platforms that support SPI interfaces.
See include/nuttx/spi.h for further SPI driver information.
if SPI
config SPI_OWNBUS
bool "SPI single device"
default n
---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 n
---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
menuconfig RTC
bool "RTC Driver Support"
default n
---help---
This selection enables configuration of a real time clock (RTCdriver.
See include/nuttx/rtc.h for further watchdog timer driver information.
Most RTC drivers are MCU specific and may require other specific
settings.
config RTC_DATETIME
bool "Date/Time RTC Support"
default n
depends on RTC
---help---
There are two general types of RTC: (1) A simple battery backed
counter that keeps the time when power is down, and (2) a full
date / time RTC the provides the date and time information, often in
BCD format. If RTC_DATETIME is selected, it specifies this second kind
of RTC. In this case, the RTC is used to "seed" the normal NuttX timer
and the NuttX system timer provides for higher resolution time.
config RTC_HIRES
bool "Hi-Res RTC Support"
default n
depends on RTC && !RTC_DATETIME
---help---
If RTC_DATETIME not selected, then the simple, battery backed counter
is used. There are two different implementations of such simple
counters based on the time resolution of the counter: The typical RTC
keeps time to resolution of 1 second, usually supporting a 32-bit
time_t value. In this case, the RTC is used to "seed" the normal NuttX
timer and the NuttX timer provides for higherresoution time.
If RTC_HIRES is enabled in the NuttX configuration, then the RTC
provides higher resolution time and completely replaces the system
timer for purpose of date and time.
config RTC_FREQUENCY
int "Hi-Res RTC frequency"
default 1
depends on RTC && !RTC_DATETIME && RTC_HIRES
---help---
If RTC_HIRES is defined, then the frequency of the high resolution RTC
must be provided. If RTC_HIRES is not defined, RTC_FREQUENCY is
assumed to be one Hz.
config RTC_ALARM
bool "RTC Alarm Support"
default n
depends on RTC
---help---
Enable if the RTC hardware supports setting of an alarm. A callback
function will be executed when the alarm goes off.
menuconfig 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
menuconfig BCH
bool "Block-to-Character (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 Driver 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 Driver 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
depends on NET
---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 Support"
default n
---help---
Enable building of power-related devices (battery monitors, chargers,
etc).
if POWER
source drivers/power/Kconfig
endif
menuconfig SENSORS
bool "Sensor Device Support"
default n
---help---
Drivers for various sensors
if SENSORS
source drivers/sensors/Kconfig
endif
menuconfig SERCOMM_CONSOLE
bool "Osmocom-bb Sercomm Driver Support"
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 Driver 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 Driver 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 Driver 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 Device Support"
default n
---help---
Drivers for various wireless devices.
if WIRELESS
source drivers/wireless/Kconfig
endif
comment "System Logging Device Options"
source drivers/syslog/Kconfig