summaryrefslogtreecommitdiff
path: root/apps/examples
diff options
context:
space:
mode:
authorGregory Nutt <gnutt@nuttx.org>2013-09-25 17:23:03 -0600
committerGregory Nutt <gnutt@nuttx.org>2013-09-25 17:23:03 -0600
commit54cd9689cccad1949c067f40d500491851799221 (patch)
tree0413e3c52da1dafc9a3db7671b37ccc12d38c715 /apps/examples
parent55a34548ccc4fc7aa55ad585b007c7d77d8cf937 (diff)
downloadnuttx-54cd9689cccad1949c067f40d500491851799221.tar.gz
nuttx-54cd9689cccad1949c067f40d500491851799221.tar.bz2
nuttx-54cd9689cccad1949c067f40d500491851799221.zip
Move apps/examples/cdcacm to apps/system/cdcacm
Diffstat (limited to 'apps/examples')
-rw-r--r--apps/examples/Kconfig1
-rw-r--r--apps/examples/Make.defs4
-rw-r--r--apps/examples/Makefile4
-rw-r--r--apps/examples/README.txt44
-rw-r--r--apps/examples/cdcacm/.gitignore11
-rw-r--r--apps/examples/cdcacm/Kconfig74
-rw-r--r--apps/examples/cdcacm/Makefile117
-rw-r--r--apps/examples/cdcacm/cdcacm.h165
-rw-r--r--apps/examples/cdcacm/cdcacm_main.c147
9 files changed, 2 insertions, 565 deletions
diff --git a/apps/examples/Kconfig b/apps/examples/Kconfig
index adbb54a7e..3f699148d 100644
--- a/apps/examples/Kconfig
+++ b/apps/examples/Kconfig
@@ -7,7 +7,6 @@ source "$APPSDIR/examples/adc/Kconfig"
source "$APPSDIR/examples/buttons/Kconfig"
source "$APPSDIR/examples/can/Kconfig"
source "$APPSDIR/examples/cc3000/Kconfig"
-source "$APPSDIR/examples/cdcacm/Kconfig"
source "$APPSDIR/examples/composite/Kconfig"
source "$APPSDIR/examples/cxxtest/Kconfig"
source "$APPSDIR/examples/dhcpd/Kconfig"
diff --git a/apps/examples/Make.defs b/apps/examples/Make.defs
index a5e4dc087..944739a12 100644
--- a/apps/examples/Make.defs
+++ b/apps/examples/Make.defs
@@ -50,10 +50,6 @@ ifeq ($(CONFIG_EXAMPLES_CC3000BASIC),y)
CONFIGURED_APPS += examples/cc3000
endif
-ifeq ($(CONFIG_EXAMPLES_CDCACM),y)
-CONFIGURED_APPS += examples/cdcacm
-endif
-
ifeq ($(CONFIG_EXAMPLES_COMPOSITE),y)
CONFIGURED_APPS += examples/composite
endif
diff --git a/apps/examples/Makefile b/apps/examples/Makefile
index 584531ddf..daa944e89 100644
--- a/apps/examples/Makefile
+++ b/apps/examples/Makefile
@@ -37,7 +37,7 @@
# Sub-directories
-SUBDIRS = adc buttons can cc3000 cdcacm composite cxxtest dhcpd discover elf
+SUBDIRS = adc buttons can cc3000 composite cxxtest dhcpd discover elf
SUBDIRS += flash_test ftpc ftpd hello helloxx hidkbd igmp json keypadtest
SUBDIRS += lcdrw mm modbus mount mtdpart nettest nrf24l01_term nsh null
SUBDIRS += nx nxconsole nxffs nxflat nxhello nximage nxlines nxtext ostest
@@ -53,7 +53,7 @@ SUBDIRS += xmlrpc
CNTXTDIRS = pwm
ifeq ($(CONFIG_NSH_BUILTIN_APPS),y)
-CNTXTDIRS += adc can cc3000 cdcacm composite cxxtest dhcpd discover flash_test
+CNTXTDIRS += adc can cc3000 composite cxxtest dhcpd discover flash_test
CNTXTDIRS += ftpd hello helloxx json keypadtestmodbus lcdrw mtdpart nettest
CNTXTDIRS += nx nxhello nximage nxlines nxtext nrf24l01_term ostest relays
CNTXTDIRS += qencoder slcd smart_test tcpecho telnetd tiff touchscreen
diff --git a/apps/examples/README.txt b/apps/examples/README.txt
index 02e38061c..29dd6fa7d 100644
--- a/apps/examples/README.txt
+++ b/apps/examples/README.txt
@@ -131,50 +131,6 @@ examples/cc3000
This is a test for the TI CC3000 wireless networking module.
-examples/cdcacm
-^^^^^^^^^^^^^^^
-
- This very simple example shows how a USB CDC/ACM serial can be dynamically
- connected and disconnected from a host. This example can only be used as
- an NSH built-int command. If built-in, then two new NSH commands will be
- supported:
-
- 1. sercon - Connect the CDC/ACM serial device
- 2. serdis - Disconnect the CDC/ACM serial device
-
- Configuration prequisites (not complete):
-
- CONFIG_USBDEV=y : USB device support must be enabled
- CONFIG_CDCACM=y : The CDC/ACM driver must be built
- CONFIG_NSH_BUILTIN_APPS : NSH built-in application support must be enabled
-
- Configuration options specific to this example:
-
- CONFIG_EXAMPLES_CDCACM_DEVMINOR : The minor number of the CDC/ACM device.
- : i.e., the 'x' in /dev/ttyACMx
-
- If CONFIG_USBDEV_TRACE is enabled (or CONFIG_DEBUG and CONFIG_DEBUG_USB, or
- CONFIG_USBDEV_TRACE), then the example code will also initialize the USB trace
- output. The amount of trace output can be controlled using:
-
- CONFIG_EXAMPLES_CDCACM_TRACEINIT
- Show initialization events
- CONFIG_EXAMPLES_CDCACM_TRACECLASS
- Show class driver events
- CONFIG_EXAMPLES_CDCACM_TRACETRANSFERS
- Show data transfer events
- CONFIG_EXAMPLES_CDCACM_TRACECONTROLLER
- Show controller events
- CONFIG_EXAMPLES_CDCACM_TRACEINTERRUPTS
- Show interrupt-related events.
-
- Note: This example is only enables or disable USB CDC/ACM via the NSH
- 'sercon' and 'serdis' command. It will enable and disable tracing per
- the settings before enabling and after disabling the CDC/ACM device. It
- will not, however, monitor buffered trace data in the interim. If
- CONFIG_USBDEV_TRACE is defined (and the debug options are not), other
- application logic will need to monitor the buffered trace data.
-
examples/composite
^^^^^^^^^^^^^^^^^^
diff --git a/apps/examples/cdcacm/.gitignore b/apps/examples/cdcacm/.gitignore
deleted file mode 100644
index fa1ec7579..000000000
--- a/apps/examples/cdcacm/.gitignore
+++ /dev/null
@@ -1,11 +0,0 @@
-/Make.dep
-/.depend
-/.built
-/*.asm
-/*.obj
-/*.rel
-/*.lst
-/*.sym
-/*.adb
-/*.lib
-/*.src
diff --git a/apps/examples/cdcacm/Kconfig b/apps/examples/cdcacm/Kconfig
deleted file mode 100644
index fcb7a1e01..000000000
--- a/apps/examples/cdcacm/Kconfig
+++ /dev/null
@@ -1,74 +0,0 @@
-#
-# For a description of the syntax of this configuration file,
-# see misc/tools/kconfig-language.txt.
-#
-
-config EXAMPLES_CDCACM
- bool "CDC/ACM example"
- default n
- depends on CDCACM
- ---help---
- Enable the USB CDC/ACM class driver example
-
-if EXAMPLES_CDCACM
-
-config EXAMPLES_CDCACM_DEVMINOR
- int "CDC/ACM Minor Device Number"
- default 0
- ---help---
- The minor device number of the serial driver for the CDC/ACM device.
- For example, N in /dev/ttyACMN. Used for registering the serial
- driver. Default is zero.
-
-config EXAMPLES_CDCACM_TRACEINIT
- bool "USB Trace Initialization"
- default n
- depends on USBDEV_TRACE || DEBUG_USB
- ---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_CDCACM_TRACECLASS
- bool "USB Trace Class"
- default n
- depends on USBDEV_TRACE || DEBUG_USB
- ---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_CDCACM_TRACETRANSFERS
- bool "USB Trace Transfers"
- default n
- depends on USBDEV_TRACE || DEBUG_USB
- ---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_CDCACM_TRACECONTROLLER
- bool "USB Trace Device Controller Events"
- default n
- depends on USBDEV_TRACE || DEBUG_USB
- ---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_CDCACM_TRACEINTERRUPTS
- bool "USB Trace Device Controller Interrupt Events"
- default n
- depends on USBDEV_TRACE || DEBUG_USB
- ---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
-
diff --git a/apps/examples/cdcacm/Makefile b/apps/examples/cdcacm/Makefile
deleted file mode 100644
index 2cf3a107f..000000000
--- a/apps/examples/cdcacm/Makefile
+++ /dev/null
@@ -1,117 +0,0 @@
-############################################################################
-# apps/examples/cdcacm/Makefile
-#
-# Copyright (C) 2012 Gregory Nutt. All rights reserved.
-# Author: Gregory Nutt <gnutt@nuttx.org>
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-#
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in
-# the documentation and/or other materials provided with the
-# distribution.
-# 3. Neither the name NuttX nor the names of its contributors may be
-# used to endorse or promote products derived from this software
-# without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
-# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
-# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-# POSSIBILITY OF SUCH DAMAGE.
-#
-############################################################################
-
--include $(TOPDIR)/.config
--include $(TOPDIR)/Make.defs
-include $(APPDIR)/Make.defs
-
-# USB CDC/ACM serial mass storage example
-
-ASRCS =
-CSRCS = cdcacm_main.c
-
-AOBJS = $(ASRCS:.S=$(OBJEXT))
-COBJS = $(CSRCS:.c=$(OBJEXT))
-
-SRCS = $(ASRCS) $(CSRCS)
-OBJS = $(AOBJS) $(COBJS)
-
-ifeq ($(CONFIG_WINDOWS_NATIVE),y)
- BIN = ..\..\libapps$(LIBEXT)
-else
-ifeq ($(WINTOOL),y)
- BIN = ..\\..\\libapps$(LIBEXT)
-else
- BIN = ../../libapps$(LIBEXT)
-endif
-endif
-
-ROOTDEPPATH = --dep-path .
-
-# USB CDC/ACM built-in application info
-
-APPNAME1 = sercon
-PRIORITY1 = SCHED_PRIORITY_DEFAULT
-STACKSIZE1 = 2048
-
-APPNAME2 = serdis
-PRIORITY2 = SCHED_PRIORITY_DEFAULT
-STACKSIZE2 = 2048
-
-# Common build
-
-VPATH =
-
-all: .built
-.PHONY: context clean depend distclean
-
-$(AOBJS): %$(OBJEXT): %.S
- $(call ASSEMBLE, $<, $@)
-
-$(COBJS): %$(OBJEXT): %.c
- $(call COMPILE, $<, $@)
-
-.built: $(OBJS)
- $(call ARCHIVE, $(BIN), $(OBJS))
- @touch .built
-
-ifeq ($(CONFIG_NSH_BUILTIN_APPS),y)
-$(BUILTIN_REGISTRY)$(DELIM)$(APPNAME1)_main.bdat: $(DEPCONFIG) Makefile
- $(call REGISTER,$(APPNAME1),$(PRIORITY1),$(STACKSIZE1),$(APPNAME1)_main)
-
-$(BUILTIN_REGISTRY)$(DELIM)$(APPNAME2)_main.bdat: $(DEPCONFIG) Makefile
- $(call REGISTER,$(APPNAME2),$(PRIORITY2),$(STACKSIZE2),$(APPNAME2)_main)
-
-context: $(BUILTIN_REGISTRY)$(DELIM)$(APPNAME1)_main.bdat $(BUILTIN_REGISTRY)$(DELIM)$(APPNAME2)_main.bdat
-else
-context:
-endif
-
-.depend: Makefile $(SRCS)
- @$(MKDEP) $(ROOTDEPPATH) "$(CC)" -- $(CFLAGS) -- $(SRCS) >Make.dep
- @touch $@
-
-depend: .depend
-
-clean:
- $(call DELFILE, .built)
- $(call CLEAN)
-
-distclean: clean
- $(call DELFILE, Make.dep)
- $(call DELFILE, .depend)
-
--include Make.dep
-
diff --git a/apps/examples/cdcacm/cdcacm.h b/apps/examples/cdcacm/cdcacm.h
deleted file mode 100644
index 1b3b2511c..000000000
--- a/apps/examples/cdcacm/cdcacm.h
+++ /dev/null
@@ -1,165 +0,0 @@
-/****************************************************************************
- * examples/cdcacm/cdcacm.h
- *
- * Copyright (C) 2012 Gregory Nutt. All rights reserved.
- * Author: Gregory Nutt <gnutt@nuttx.org>
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * 3. Neither the name NuttX nor the names of its contributors may be
- * used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- ****************************************************************************/
-
-#ifndef __EXAMPLES_CDCACM_CDCACM_H
-#define __EXAMPLES_CDCACM_CDCACM_H
-
-/****************************************************************************
- * Included Files
- ****************************************************************************/
-
-#include <nuttx/config.h>
-
-#include <stdlib.h>
-
-#include <nuttx/usb/usbdev_trace.h>
-
-/****************************************************************************
- * Pre-Processor Definitions
- ****************************************************************************/
-/* Configuration ************************************************************/
-/* Prerequisites */
-
-#ifndef CONFIG_USBDEV
-# error "CONFIG_USBDEV is not defined"
-#endif
-
-#ifndef CONFIG_CDCACM
-# error "CONFIG_CDCACM is not defined"
-#endif
-
-#ifndef CONFIG_NSH_BUILTIN_APPS
-# error "This example can only be built as an NSH built-in application"
-#endif
-
-/* Default configuration values */
-
-#ifndef CONFIG_EXAMPLES_CDCACM_DEVMINOR
-# define CONFIG_EXAMPLES_CDCACM_DEVMINOR 0
-#endif
-
-/* Trace Configuration ******************************************************/
-
-#ifdef CONFIG_EXAMPLES_CDCACM_TRACEINIT
-# define TRACE_INIT_BITS (TRACE_INIT_BIT)
-#else
-# define TRACE_INIT_BITS (0)
-#endif
-
-#define TRACE_ERROR_BITS (TRACE_DEVERROR_BIT|TRACE_CLSERROR_BIT)
-
-#ifdef CONFIG_EXAMPLES_CDCACM_TRACECLASS
-# define TRACE_CLASS_BITS (TRACE_CLASS_BIT|TRACE_CLASSAPI_BIT|TRACE_CLASSSTATE_BIT)
-#else
-# define TRACE_CLASS_BITS (0)
-#endif
-
-#ifdef CONFIG_EXAMPLES_CDCACM_TRACETRANSFERS
-# define TRACE_TRANSFER_BITS (TRACE_OUTREQQUEUED_BIT|TRACE_INREQQUEUED_BIT|TRACE_READ_BIT|\
- TRACE_WRITE_BIT|TRACE_COMPLETE_BIT)
-#else
-# define TRACE_TRANSFER_BITS (0)
-#endif
-
-#ifdef CONFIG_EXAMPLES_CDCACM_TRACECONTROLLER
-# define TRACE_CONTROLLER_BITS (TRACE_EP_BIT|TRACE_DEV_BIT)
-#else
-# define TRACE_CONTROLLER_BITS (0)
-#endif
-
-#ifdef CONFIG_EXAMPLES_CDCACM_TRACEINTERRUPTS
-# define TRACE_INTERRUPT_BITS (TRACE_INTENTRY_BIT|TRACE_INTDECODE_BIT|TRACE_INTEXIT_BIT)
-#else
-# define TRACE_INTERRUPT_BITS (0)
-#endif
-
-#define TRACE_BITSET (TRACE_INIT_BITS|TRACE_ERROR_BITS|TRACE_CLASS_BITS|\
- TRACE_TRANSFER_BITS|TRACE_CONTROLLER_BITS|TRACE_INTERRUPT_BITS)
-
-/* Debug ********************************************************************/
-
-#ifdef CONFIG_CPP_HAVE_VARARGS
-# ifdef CONFIG_DEBUG
-# define message(...) lowsyslog(__VA_ARGS__)
-# define msgflush()
-# else
-# define message(...) printf(__VA_ARGS__)
-# define msgflush() fflush(stdout)
-# endif
-#else
-# ifdef CONFIG_DEBUG
-# define message lowsyslog
-# define msgflush()
-# else
-# define message printf
-# define msgflush() fflush(stdout)
-# endif
-#endif
-
-/****************************************************************************
- * Public Types
- ****************************************************************************/
-
-/* All global variables used by this example are packed into a structure in
- * order to avoid name collisions.
- */
-
-struct cdcacm_state_s
-{
- /* This is the handle that references to this particular USB storage driver
- * instance. It is only needed if the USB mass storage device example is
- * built using CONFIG_NSH_BUILTIN_APPS. In this case, the value
- * of the driver handle must be remembered between the 'sercon' and 'msdis'
- * commands.
- */
-
- FAR void *handle;
-};
-
-/****************************************************************************
- * Public Data
- ****************************************************************************/
-
-/* All global variables used by this example are packed into a structure in
- * order to avoid name collisions.
- */
-
-extern struct cdcacm_state_s g_cdcacm;
-
-/****************************************************************************
- * Public Functions
- ****************************************************************************/
-
-#endif /* __EXAMPLES_CDCACM_CDCACM_H */
diff --git a/apps/examples/cdcacm/cdcacm_main.c b/apps/examples/cdcacm/cdcacm_main.c
deleted file mode 100644
index aeb7a9e74..000000000
--- a/apps/examples/cdcacm/cdcacm_main.c
+++ /dev/null
@@ -1,147 +0,0 @@
-/****************************************************************************
- * examples/cdcacm/cdcacm_main.c
- *
- * Copyright (C) 2012 Gregory Nutt. All rights reserved.
- * Author: Gregory Nutt <gnutt@nuttx.org>
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * 3. Neither the name NuttX nor the names of its contributors may be
- * used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- ****************************************************************************/
-
-/****************************************************************************
- * Included Files
- ****************************************************************************/
-
-#include <nuttx/config.h>
-
-#include <sys/types.h>
-
-#include <stdio.h>
-#include <debug.h>
-
-#include <nuttx/usb/usbdev.h>
-#include <nuttx/usb/cdcacm.h>
-
-#include "cdcacm.h"
-
-/****************************************************************************
- * Definitions
- ****************************************************************************/
-
-/****************************************************************************
- * Private Data
- ****************************************************************************/
-
-/* All global variables used by this example are packed into a structure in
- * order to avoid name collisions.
- */
-
-struct cdcacm_state_s g_cdcacm;
-
-/****************************************************************************
- * Private Functions
- ****************************************************************************/
-
-/****************************************************************************
- * Public Functions
- ****************************************************************************/
-
-/****************************************************************************
- * sercon_main
- *
- * Description:
- * This is the main program that configures the CDC/ACM serial device.
- *
- ****************************************************************************/
-
-int sercon_main(int argc, char *argv[])
-{
- int ret;
-
- /* Check if there is a non-NULL USB mass storage device handle (meaning that the
- * USB mass storage device is already configured).
- */
-
- if (g_cdcacm.handle)
- {
- message("sercon:: ERROR: Already connected\n");
- return EXIT_FAILURE;
- }
-
- /* Then, in any event, enable trace data collection as configured BEFORE
- * enabling the CDC/ACM device.
- */
-
- usbtrace_enable(TRACE_BITSET);
-
- /* Initialize the USB CDC/ACM serial driver */
-
- message("sercon: Registering CDC/ACM serial driver\n");
- ret = cdcacm_initialize(CONFIG_EXAMPLES_CDCACM_DEVMINOR, &g_cdcacm.handle);
- if (ret < 0)
- {
- message("sercon: ERROR: Failed to create the CDC/ACM serial device: %d\n", -ret);
- return EXIT_FAILURE;
- }
-
- message("sercon: Successfully registered the CDC/ACM serial driver\n");
- return EXIT_SUCCESS;
-}
-
-/****************************************************************************
- * serdis_main
- *
- * Description:
- * This is a program entry point that will disconnect the CDC/ACM serial
- * device.
- *
- ****************************************************************************/
-
-int serdis_main(int argc, char *argv[])
-{
- /* First check if the USB mass storage device is already connected */
-
- if (!g_cdcacm.handle)
- {
- message("serdis: ERROR: Not connected\n");
- return EXIT_FAILURE;
- }
-
- /* Then, in any event, disable trace data collection as configured BEFORE
- * enabling the CDC/ACM device.
- */
-
- usbtrace_enable(0);
-
- /* Then disconnect the device and uninitialize the USB mass storage driver */
-
- cdcacm_uninitialize(g_cdcacm.handle);
- g_cdcacm.handle = NULL;
- message("serdis: Disconnected\n");
- return EXIT_SUCCESS;
-}