px4-firmware/nuttx/drivers
px4dev e214981d11 Merge branch 'NuttX/master'
Conflicts:
	apps/netutils/thttpd/thttpd_cgi.c
	nuttx/Documentation/NuttX.html
	nuttx/arch/8051/src/Makefile
	nuttx/arch/arm/src/lpc17xx/lpc17_usbhost.c
	nuttx/arch/avr/Kconfig
	nuttx/arch/avr/src/atmega/atmega_lowinit.c
	nuttx/arch/mips/Kconfig
	nuttx/arch/z80/src/Makefile.sdcc
	nuttx/configs/amber/README.txt
	nuttx/configs/amber/hello/defconfig
	nuttx/configs/avr32dev1/README.txt
	nuttx/configs/avr32dev1/nsh/defconfig
	nuttx/configs/avr32dev1/ostest/defconfig
	nuttx/configs/c5471evm/README.txt
	nuttx/configs/c5471evm/httpd/defconfig
	nuttx/configs/c5471evm/nettest/defconfig
	nuttx/configs/c5471evm/nsh/defconfig
	nuttx/configs/c5471evm/ostest/defconfig
	nuttx/configs/compal_e88/nsh_highram/defconfig
	nuttx/configs/compal_e99/nsh_compalram/defconfig
	nuttx/configs/compal_e99/nsh_highram/defconfig
	nuttx/configs/demo9s12ne64/README.txt
	nuttx/configs/demo9s12ne64/ostest/defconfig
	nuttx/configs/ea3131/nsh/defconfig
	nuttx/configs/ea3131/ostest/defconfig
	nuttx/configs/ea3131/pgnsh/defconfig
	nuttx/configs/ea3131/usbserial/defconfig
	nuttx/configs/ea3131/usbstorage/defconfig
	nuttx/configs/ea3152/ostest/defconfig
	nuttx/configs/eagle100/README.txt
	nuttx/configs/eagle100/httpd/defconfig
	nuttx/configs/eagle100/nettest/defconfig
	nuttx/configs/eagle100/nsh/defconfig
	nuttx/configs/eagle100/nxflat/defconfig
	nuttx/configs/eagle100/ostest/defconfig
	nuttx/configs/eagle100/thttpd/defconfig
	nuttx/configs/ekk-lm3s9b96/README.txt
	nuttx/configs/ekk-lm3s9b96/nsh/defconfig
	nuttx/configs/ekk-lm3s9b96/ostest/defconfig
	nuttx/configs/ez80f910200kitg/ostest/defconfig
	nuttx/configs/ez80f910200zco/dhcpd/defconfig
	nuttx/configs/ez80f910200zco/httpd/defconfig
	nuttx/configs/ez80f910200zco/nettest/defconfig
	nuttx/configs/ez80f910200zco/nsh/defconfig
	nuttx/configs/ez80f910200zco/ostest/defconfig
	nuttx/configs/ez80f910200zco/poll/defconfig
	nuttx/configs/hymini-stm32v/README.txt
	nuttx/configs/hymini-stm32v/buttons/defconfig
	nuttx/configs/hymini-stm32v/nsh/defconfig
	nuttx/configs/hymini-stm32v/nsh2/defconfig
	nuttx/configs/hymini-stm32v/nx/defconfig
	nuttx/configs/hymini-stm32v/nxlines/defconfig
	nuttx/configs/hymini-stm32v/usbserial/defconfig
	nuttx/configs/hymini-stm32v/usbstorage/defconfig
	nuttx/configs/kwikstik-k40/README.txt
	nuttx/configs/kwikstik-k40/ostest/defconfig
	nuttx/configs/lincoln60/README.txt
	nuttx/configs/lincoln60/nsh/defconfig
	nuttx/configs/lincoln60/ostest/defconfig
	nuttx/configs/lm3s6432-s2e/README.txt
	nuttx/configs/lm3s6432-s2e/nsh/defconfig
	nuttx/configs/lm3s6432-s2e/ostest/defconfig
	nuttx/configs/lm3s6965-ek/README.txt
	nuttx/configs/lm3s6965-ek/nsh/defconfig
	nuttx/configs/lm3s6965-ek/nx/defconfig
	nuttx/configs/lm3s6965-ek/ostest/defconfig
	nuttx/configs/lm3s8962-ek/README.txt
	nuttx/configs/lm3s8962-ek/nsh/defconfig
	nuttx/configs/lm3s8962-ek/nx/defconfig
	nuttx/configs/lm3s8962-ek/ostest/defconfig
	nuttx/configs/lpc4330-xplorer/README.txt
	nuttx/configs/lpc4330-xplorer/nsh/defconfig
	nuttx/configs/lpc4330-xplorer/ostest/defconfig
	nuttx/configs/lpcxpresso-lpc1768/README.txt
	nuttx/configs/lpcxpresso-lpc1768/dhcpd/defconfig
	nuttx/configs/lpcxpresso-lpc1768/nsh/defconfig
	nuttx/configs/lpcxpresso-lpc1768/nx/defconfig
	nuttx/configs/lpcxpresso-lpc1768/ostest/defconfig
	nuttx/configs/lpcxpresso-lpc1768/thttpd/defconfig
	nuttx/configs/lpcxpresso-lpc1768/usbstorage/defconfig
	nuttx/configs/m68332evb/defconfig
	nuttx/configs/mbed/README.txt
	nuttx/configs/mbed/hidkbd/defconfig
	nuttx/configs/mbed/nsh/defconfig
	nuttx/configs/mcu123-lpc214x/README.txt
	nuttx/configs/mcu123-lpc214x/composite/defconfig
	nuttx/configs/mcu123-lpc214x/nsh/defconfig
	nuttx/configs/mcu123-lpc214x/ostest/defconfig
	nuttx/configs/mcu123-lpc214x/usbserial/defconfig
	nuttx/configs/mcu123-lpc214x/usbstorage/defconfig
	nuttx/configs/micropendous3/README.txt
	nuttx/configs/micropendous3/hello/defconfig
	nuttx/configs/mirtoo/README.txt
	nuttx/configs/mirtoo/nsh/defconfig
	nuttx/configs/mirtoo/nxffs/defconfig
	nuttx/configs/mirtoo/ostest/defconfig
	nuttx/configs/mx1ads/ostest/defconfig
	nuttx/configs/ne64badge/README.txt
	nuttx/configs/ne64badge/ostest/defconfig
	nuttx/configs/ntosd-dm320/nettest/defconfig
	nuttx/configs/ntosd-dm320/nsh/defconfig
	nuttx/configs/ntosd-dm320/ostest/defconfig
	nuttx/configs/ntosd-dm320/poll/defconfig
	nuttx/configs/ntosd-dm320/thttpd/defconfig
	nuttx/configs/ntosd-dm320/udp/defconfig
	nuttx/configs/ntosd-dm320/uip/defconfig
	nuttx/configs/nucleus2g/README.txt
	nuttx/configs/nucleus2g/nsh/defconfig
	nuttx/configs/nucleus2g/ostest/defconfig
	nuttx/configs/nucleus2g/usbserial/defconfig
	nuttx/configs/nucleus2g/usbstorage/defconfig
	nuttx/configs/olimex-lpc1766stk/README.txt
	nuttx/configs/olimex-lpc1766stk/ftpc/defconfig
	nuttx/configs/olimex-lpc1766stk/hidkbd/defconfig
	nuttx/configs/olimex-lpc1766stk/nettest/defconfig
	nuttx/configs/olimex-lpc1766stk/nsh/defconfig
	nuttx/configs/olimex-lpc1766stk/nx/defconfig
	nuttx/configs/olimex-lpc1766stk/ostest/defconfig
	nuttx/configs/olimex-lpc1766stk/slip-httpd/defconfig
	nuttx/configs/olimex-lpc1766stk/thttpd/defconfig
	nuttx/configs/olimex-lpc1766stk/usbserial/defconfig
	nuttx/configs/olimex-lpc1766stk/usbstorage/defconfig
	nuttx/configs/olimex-lpc1766stk/wlan/defconfig
	nuttx/configs/olimex-lpc2378/nsh/defconfig
	nuttx/configs/olimex-lpc2378/ostest/defconfig
	nuttx/configs/olimex-stm32-p107/nsh/defconfig
	nuttx/configs/olimex-stm32-p107/ostest/defconfig
	nuttx/configs/olimex-strp711/nettest/defconfig
	nuttx/configs/olimex-strp711/nsh/defconfig
	nuttx/configs/olimex-strp711/ostest/defconfig
	nuttx/configs/pcblogic-pic32mx/README.txt
	nuttx/configs/pcblogic-pic32mx/nsh/defconfig
	nuttx/configs/pcblogic-pic32mx/ostest/defconfig
	nuttx/configs/pic32-starterkit/README.txt
	nuttx/configs/pic32-starterkit/nsh/defconfig
	nuttx/configs/pic32-starterkit/nsh2/defconfig
	nuttx/configs/pic32-starterkit/ostest/defconfig
	nuttx/configs/pic32mx7mmb/README.txt
	nuttx/configs/pic32mx7mmb/nsh/defconfig
	nuttx/configs/pic32mx7mmb/ostest/defconfig
	nuttx/configs/pjrc-8051/defconfig
	nuttx/configs/qemu-i486/nsh/defconfig
	nuttx/configs/qemu-i486/ostest/defconfig
	nuttx/configs/rgmp/arm/default/defconfig
	nuttx/configs/rgmp/arm/nsh/defconfig
	nuttx/configs/rgmp/x86/default/defconfig
	nuttx/configs/rgmp/x86/nsh/defconfig
	nuttx/configs/sam3u-ek/README.txt
	nuttx/configs/sam3u-ek/knsh/defconfig
	nuttx/configs/sam3u-ek/nsh/defconfig
	nuttx/configs/sam3u-ek/nx/defconfig
	nuttx/configs/sam3u-ek/ostest/defconfig
	nuttx/configs/sam3u-ek/touchscreen/defconfig
	nuttx/configs/sim/mount/defconfig
	nuttx/configs/sim/nettest/defconfig
	nuttx/configs/sim/nsh/defconfig
	nuttx/configs/sim/nsh2/defconfig
	nuttx/configs/sim/nx/defconfig
	nuttx/configs/sim/nx11/defconfig
	nuttx/configs/sim/nxffs/defconfig
	nuttx/configs/sim/nxwm/defconfig
	nuttx/configs/sim/ostest/defconfig
	nuttx/configs/sim/pashello/defconfig
	nuttx/configs/sim/touchscreen/defconfig
	nuttx/configs/skp16c26/ostest/defconfig
	nuttx/configs/stm3210e-eval/Kconfig
	nuttx/configs/stm3210e-eval/README.txt
	nuttx/configs/stm3210e-eval/RIDE/defconfig
	nuttx/configs/stm3210e-eval/buttons/defconfig
	nuttx/configs/stm3210e-eval/composite/defconfig
	nuttx/configs/stm3210e-eval/nsh/defconfig
	nuttx/configs/stm3210e-eval/nsh2/defconfig
	nuttx/configs/stm3210e-eval/nx/defconfig
	nuttx/configs/stm3210e-eval/nxconsole/defconfig
	nuttx/configs/stm3210e-eval/nxlines/defconfig
	nuttx/configs/stm3210e-eval/nxtext/defconfig
	nuttx/configs/stm3210e-eval/ostest/defconfig
	nuttx/configs/stm3210e-eval/pm/defconfig
	nuttx/configs/stm3210e-eval/src/up_idle.c
	nuttx/configs/stm3210e-eval/usbserial/defconfig
	nuttx/configs/stm3210e-eval/usbstorage/defconfig
	nuttx/configs/stm3220g-eval/Kconfig
	nuttx/configs/stm3220g-eval/README.txt
	nuttx/configs/stm3220g-eval/dhcpd/defconfig
	nuttx/configs/stm3220g-eval/include/board.h
	nuttx/configs/stm3220g-eval/nettest/defconfig
	nuttx/configs/stm3220g-eval/nsh/defconfig
	nuttx/configs/stm3220g-eval/nsh2/defconfig
	nuttx/configs/stm3220g-eval/nxwm/defconfig
	nuttx/configs/stm3220g-eval/ostest/defconfig
	nuttx/configs/stm3220g-eval/src/Makefile
	nuttx/configs/stm3220g-eval/src/stm3220g-internal.h
	nuttx/configs/stm3220g-eval/src/up_boot.c
	nuttx/configs/stm3220g-eval/src/up_nsh.c
	nuttx/configs/stm3220g-eval/telnetd/defconfig
	nuttx/configs/stm3240g-eval/Kconfig
	nuttx/configs/stm3240g-eval/README.txt
	nuttx/configs/stm3240g-eval/dhcpd/defconfig
	nuttx/configs/stm3240g-eval/include/board.h
	nuttx/configs/stm3240g-eval/nettest/defconfig
	nuttx/configs/stm3240g-eval/nsh/defconfig
	nuttx/configs/stm3240g-eval/nsh2/defconfig
	nuttx/configs/stm3240g-eval/nxconsole/defconfig
	nuttx/configs/stm3240g-eval/nxwm/defconfig
	nuttx/configs/stm3240g-eval/ostest/defconfig
	nuttx/configs/stm3240g-eval/telnetd/defconfig
	nuttx/configs/stm32f4discovery/README.txt
	nuttx/configs/stm32f4discovery/include/board.h
	nuttx/configs/stm32f4discovery/nsh/defconfig
	nuttx/configs/stm32f4discovery/nxlines/defconfig
	nuttx/configs/stm32f4discovery/ostest/defconfig
	nuttx/configs/stm32f4discovery/pm/defconfig
	nuttx/configs/sure-pic32mx/README.txt
	nuttx/configs/sure-pic32mx/nsh/defconfig
	nuttx/configs/sure-pic32mx/ostest/defconfig
	nuttx/configs/sure-pic32mx/usbnsh/defconfig
	nuttx/configs/teensy/README.txt
	nuttx/configs/teensy/hello/defconfig
	nuttx/configs/teensy/nsh/defconfig
	nuttx/configs/teensy/src/up_spi.c
	nuttx/configs/teensy/usbstorage/defconfig
	nuttx/configs/twr-k60n512/README.txt
	nuttx/configs/twr-k60n512/nsh/defconfig
	nuttx/configs/twr-k60n512/ostest/defconfig
	nuttx/configs/ubw32/README.txt
	nuttx/configs/ubw32/nsh/defconfig
	nuttx/configs/ubw32/ostest/defconfig
	nuttx/configs/us7032evb1/nsh/defconfig
	nuttx/configs/us7032evb1/ostest/defconfig
	nuttx/configs/vsn/README.txt
	nuttx/configs/vsn/nsh/defconfig
	nuttx/configs/xtrs/nsh/defconfig
	nuttx/configs/xtrs/ostest/defconfig
	nuttx/configs/xtrs/pashello/defconfig
	nuttx/configs/z16f2800100zcog/ostest/defconfig
	nuttx/configs/z16f2800100zcog/pashello/defconfig
	nuttx/configs/z80sim/nsh/defconfig
	nuttx/configs/z80sim/ostest/defconfig
	nuttx/configs/z80sim/pashello/defconfig
	nuttx/configs/z8encore000zco/ostest/defconfig
	nuttx/configs/z8f64200100kit/ostest/defconfig
2012-08-26 16:26:39 -07:00
..
analog Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
bch Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
input Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
lcd Move duplicate LCD orieations settings from configs/*/Kconfig to drivers/lcd/Kconfig 2012-08-18 22:57:17 +00:00
mmcsd Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
mtd Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
net Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
pipes Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
power Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
sensors Auto-configuration updates from Richard Cochran 2012-08-17 14:07:48 +00:00
sercomm Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
serial Merge branch 'NuttX/master' from git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@5027 7fd9a85b-ad96-42d3-883c-3090e2eb8679 2012-08-14 09:07:59 -07:00
syslog Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
usbdev Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
usbhost Update STM32 USB OTG FS host driver -- the driver is now marginally functional 2012-08-24 22:16:09 +00:00
wireless Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
Kconfig Progress on STM32 OTG FS host driver 2012-08-20 00:57:14 +00:00
Makefile Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
README.txt Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
can.c Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
dev_null.c Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
dev_zero.c Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
loop.c Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
pwm.c Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
ramdisk.c Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
rwbuffer.c Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00
watchdog.c Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00

README.txt

README
^^^^^^

This directory contains various device drivers -- both block and
character drivers as well as other more specialized drivers.

Contents:
  - Files in this directory
  - Subdirectories of this directory
  - Skeleton files

Files in this directory
^^^^^^^^^^^^^^^^^^^^^^^

can.c
  This is a CAN driver.  See include/nuttx/can.h for usage information.

dev_null.c and dev_zero.c
  These files provide the standard /dev/null and /dev/zero devices.
  See include/nuttx/fs/fs.h for functions that should be called if you
  want to register these devices (devnull_register() and
  devzero_register()).

loop.c
  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.

pwm.c
  Provides the "upper half" of a pulse width modulation (PWM) driver.
  The "lower half" of the PWM driver is provided by device-specific
  logic.  See include/nuttx/pwm.h for usage information.

ramdisk.c
  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.

ramlog.c
  This is a driver that was intended to support debugging output,
  aka syslogging, when the normal serial output is not available.
  For example, if you are using a telnet or USB serial console,
  the debug output will get lost.

  This driver is similar to a pipe in that it saves the debugging
  output in a FIFO in RAM.  It differs from a pipe in numerous
  details as needed to support logging.

  This driver is built when CONFIG_RAMLOG is defined in the Nuttx
  configuration.

rwbuffer.c
  A facility that can be use by any block driver in-order to add
  writing buffering and read-ahead buffering.

Subdirectories of this directory:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

analog/
  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.

bch/
  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.

input/
  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.

lcd/
  Drivers for parallel and serial LCD and OLED type devices.  These
  drivers support interfaces as defined in include/nuttx/lcd/lcd.h

mmcsd/
  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.

mtd/
  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).

net/
  Network interface drivers.  See also include/nuttx/net/net.h

pipes/
  FIFO and named pipe drivers.  Standard interfaces are declared
  in include/unistd.h

power/
  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.

sensors/
  Drivers for various sensors

sercomm/
  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 CONFIG_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.

serial/
  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

usbdev/
  USB device drivers.  See also include/nuttx/usb/usbdev.h

usbhost/
  USB host drivers.  See also include/nuttx/usb/usbhost.h

wireless/
  Drivers for various wireless devices.

Skeleton Files
^^^^^^^^^^^^^^

Skeleton files a "empty" frameworks for NuttX drivers.  They are provided to
give you a good starting point if you want to create a new NuttX driver.
The following skeleton files are available:

  drivers/lcd/skeleton.c -- Skeleton LCD driver
  drivers/mtd/skeleton.c -- Skeleton memory technology device drivers
  drivers/net/skeleton.c -- Skeleton network/Ethernet drivers
  drivers/usbhost/usbhost_skeleton.c -- Skeleton USB host class driver