AppConfigHeaders: Update several additional user projects to use configuration header files, rather than makefile defines. Remove compile time warnings for projects lacking device serial support, remove incomplete StandaloneProgrammer project.

This commit is contained in:
Dean Camera 2012-05-12 15:32:53 +00:00
parent 33d9a75b03
commit 802910d49f
63 changed files with 420 additions and 4654 deletions

View file

@ -0,0 +1,68 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2012.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2012 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
without fee, provided that the above copyright notice appear in
all copies and that both that the copyright notice and this
permission notice and warranty disclaimer appear in supporting
documentation, and that the name of the author not be used in
advertising or publicity pertaining to distribution of the
software without specific, written prior permission.
The author disclaim all warranties with regard to this
software, including all implied warranties of merchantability
and fitness. In no event shall the author be liable for any
special, indirect or consequential damages or any damages
whatsoever resulting from loss of use, data or profits, whether
in an action of contract, negligence or other tortious action,
arising out of or in connection with the use or performance of
this software.
*/
/** \file
* \brief Application Configuration Header File
*
* This is a header file which is be used to configure some of
* the application's compile time options, as an alternative to
* specifying the compile time constants supplied through a
* makefile or build system.
*
* For information on what each token does, refer to the
* \ref Sec_Options section of the application documentation.
*/
#ifndef _APP_CONFIG_H_
#define _APP_CONFIG_H_
#define ENABLE_DHCP_CLIENT
#define ENABLE_DHCP_SERVER
#define ENABLE_TELNET_SERVER
#define MAX_URI_LENGTH 50
#define UIP_CONF_UDP (defined(ENABLE_DHCP_CLIENT) || defined(ENABLE_DHCP_SERVER))
#define UIP_CONF_BROADCAST 1
#define UIP_CONF_TCP 1
#define UIP_CONF_UDP_CONNS 1
#define UIP_CONF_MAX_CONNECTIONS 3
#define UIP_CONF_MAX_LISTENPORTS 5
#define UIP_CONF_BUFFER_SIZE 1514
#define UIP_CONF_LL_802154 0
#define UIP_CONF_LL_80211 0
#define UIP_CONF_ROUTER 0
#define UIP_CONF_ICMP6 0
#define UIP_CONF_ICMP_DEST_UNREACH 1
#define UIP_URGDATA 0
#define UIP_ARCH_CHKSUM 0
#define UIP_ARCH_ADD32 0
#define UIP_NEIGHBOR_CONF_ADDRTYPE 0
#endif

View file

@ -0,0 +1,93 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2012.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2012 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
without fee, provided that the above copyright notice appear in
all copies and that both that the copyright notice and this
permission notice and warranty disclaimer appear in supporting
documentation, and that the name of the author not be used in
advertising or publicity pertaining to distribution of the
software without specific, written prior permission.
The author disclaim all warranties with regard to this
software, including all implied warranties of merchantability
and fitness. In no event shall the author be liable for any
special, indirect or consequential damages or any damages
whatsoever resulting from loss of use, data or profits, whether
in an action of contract, negligence or other tortious action,
arising out of or in connection with the use or performance of
this software.
*/
/** \file
* \brief LUFA Library Configuration Header File
*
* This header file is used to configure LUFA's compile time options,
* as an alternative to the compile time constants supplied through
* a makefile.
*
* For information on what each token does, refer to the LUFA
* manual section "Summary of Compile Tokens".
*/
#ifndef _LUFA_CONFIG_H_
#define _LUFA_CONFIG_H_
#if (ARCH == ARCH_AVR8)
/* Non-USB Related Configuration Tokens: */
// #define DISABLE_TERMINAL_CODES
/* USB Class Driver Related Tokens: */
// #define HID_HOST_BOOT_PROTOCOL_ONLY
// #define HID_STATETABLE_STACK_DEPTH {Insert Value Here}
// #define HID_USAGE_STACK_DEPTH {Insert Value Here}
// #define HID_MAX_COLLECTIONS {Insert Value Here}
// #define HID_MAX_REPORTITEMS {Insert Value Here}
// #define HID_MAX_REPORT_IDS {Insert Value Here}
// #define NO_CLASS_DRIVER_AUTOFLUSH
/* General USB Driver Related Tokens: */
// #define ORDERED_EP_CONFIG
#define USE_STATIC_OPTIONS (USB_DEVICE_OPT_FULLSPEED | USB_OPT_REG_ENABLED | USB_OPT_AUTO_PLL)
// #define USB_DEVICE_ONLY
// #define USB_HOST_ONLY
// #define USB_STREAM_TIMEOUT_MS {Insert Value Here}
// #define NO_LIMITED_CONTROLLER_CONNECT
// #define NO_SOF_EVENTS
/* USB Device Mode Driver Related Tokens: */
// #define USE_RAM_DESCRIPTORS
#define USE_FLASH_DESCRIPTORS
// #define USE_EEPROM_DESCRIPTORS
// #define NO_INTERNAL_SERIAL
#define FIXED_CONTROL_ENDPOINT_SIZE 8
#define DEVICE_STATE_AS_GPIOR 0
#define FIXED_NUM_CONFIGURATIONS 1
// #define CONTROL_ONLY_DEVICE
#define INTERRUPT_CONTROL_ENDPOINT
// #define NO_DEVICE_REMOTE_WAKEUP
// #define NO_DEVICE_SELF_POWER
/* USB Host Mode Driver Related Tokens: */
#define HOST_STATE_AS_GPIOR 0
// #define USB_HOST_TIMEOUT_MS {Insert Value Here}
// #define HOST_DEVICE_SETTLE_DELAY_MS {Insert Value Here}
// #define NO_AUTO_VBUS_MANAGEMENT
// #define INVERTED_VBUS_ENABLE_LINE
#else
#error Unsupported architecture for this LUFA configuration file.
#endif
#endif

View file

@ -37,17 +37,6 @@
#include "Descriptors.h"
/* On some devices, there is a factory set internal serial number which can be automatically sent to the host as
* the device's serial number when the Device Descriptor's .SerialNumStrIndex entry is set to USE_INTERNAL_SERIAL.
* This allows the host to track a device across insertions on different ports, allowing them to retain allocated
* resources like COM port numbers and drivers. On demos using this feature, give a warning on unsupported devices
* so that the user can supply their own serial number descriptor instead or remove the USE_INTERNAL_SERIAL value
* from the Device Descriptor (forcing the host to generate a serial number for each device from the VID, PID and
* port location).
*/
#if (USE_INTERNAL_SERIAL == NO_DESCRIPTOR)
#warning USE_INTERNAL_SERIAL is not available on this AVR - please manually construct a device serial descriptor.
#endif
/** Device descriptor structure. This descriptor, located in FLASH memory, describes the overall
* device characteristics, including the supported USB version, control endpoint size and the

View file

@ -28,8 +28,6 @@
this software.
*/
#if defined(ENABLE_DHCP_CLIENT) || defined(__DOXYGEN__)
/** \file
*
* DHCP Client Application. When connected to the uIP stack, this will retrieve IP configuration settings from the
@ -39,6 +37,8 @@
#define INCLUDE_FROM_DHCPCLIENTAPP_C
#include "DHCPClientApp.h"
#if defined(ENABLE_DHCP_CLIENT) || defined(__DOXYGEN__)
/** Initialization function for the DHCP client. */
void DHCPClientApp_Init(void)
{

View file

@ -41,6 +41,7 @@
#include <uip.h>
#include "Config/AppConfig.h"
#include "../Webserver.h"
#include "DHCPCommon.h"

View file

@ -28,8 +28,6 @@
this software.
*/
#if defined(ENABLE_DHCP_CLIENT) || defined(ENABLE_DHCP_SERVER) || defined(__DOXYGEN__)
/** \file
*
* Common DHCP routines to manage DHCP packet data.
@ -37,6 +35,8 @@
#include "DHCPCommon.h"
#if defined(ENABLE_DHCP_CLIENT) || defined(ENABLE_DHCP_SERVER) || defined(__DOXYGEN__)
/** Sets the given DHCP option in the DHCP packet's option list. This automatically moves the
* end of options terminator past the new option in the options list.
*

View file

@ -41,6 +41,8 @@
#include <stdbool.h>
#include <string.h>
#include "Config/AppConfig.h"
#include <uip.h>
/* Macros: */

View file

@ -28,8 +28,6 @@
this software.
*/
#if defined(ENABLE_DHCP_SERVER) || defined(__DOXYGEN__)
/** \file
*
* DHCP Server Application. When connected to the uIP stack, this will send IP configuration settings to a
@ -39,6 +37,8 @@
#define INCLUDE_FROM_DHCPSERVERAPP_C
#include "DHCPServerApp.h"
#if defined(ENABLE_DHCP_SERVER) || defined(__DOXYGEN__)
struct uip_conn* BroadcastConnection;
uint8_t LeasedIPs[255 / 8];

View file

@ -41,6 +41,7 @@
#include <uip.h>
#include "Config/AppConfig.h"
#include "../Webserver.h"
#include "DHCPCommon.h"

View file

@ -41,6 +41,8 @@
#include <string.h>
#include <LUFA/Version.h>
#include "Config/AppConfig.h"
#include <uip.h>
#include <ff.h>

View file

@ -28,8 +28,6 @@
this software.
*/
#if defined(ENABLE_TELNET_SERVER) || defined(__DOXYGEN__)
/** \file
*
* TELNET Webserver Application. When connected to the uIP stack,
@ -39,6 +37,8 @@
#define INCLUDE_FROM_TELNETSERVERAPP_C
#include "TELNETServerApp.h"
#if defined(ENABLE_TELNET_SERVER) || defined(__DOXYGEN__)
/** Welcome message to send to a TELNET client when a connection is first made. */
const char PROGMEM WelcomeHeader[] = "********************************************\r\n"
"* LUFA uIP Webserver (TELNET) *\r\n"

View file

@ -43,6 +43,8 @@
#include <uip.h>
#include "Config/AppConfig.h"
/* Macros: */
/** TCP listen port for incoming TELNET traffic. */
#define TELNET_SERVER_PORT 23

View file

@ -62,6 +62,8 @@
#ifndef __UIPOPT_H__
#define __UIPOPT_H__
#include "Config/AppConfig.h"
#ifndef UIP_LITTLE_ENDIAN
#define UIP_LITTLE_ENDIAN 3412
#endif /* UIP_LITTLE_ENDIAN */

View file

@ -81,18 +81,18 @@
* </tr>
* <tr>
* <td>ENABLE_TELNET_SERVER</td>
* <td>Makefile LUFA_OPTS</td>
* <td>AppConfig.h</td>
* <td>When defined, this enables the TELNET server in addition to the HTTP webserver, which listens for incoming connections
* and processes user commands.</td>
* </tr>
* <tr>
* <td>ENABLE_DHCP_CLIENT</td>
* <td>Makefile LUFA_OPTS</td>
* <td>AppConfig.h</td>
* <td>When defined, this enables the DHCP client for dynamic IP allocation of the network settings from a DHCP server.</td>
* </tr>
* <tr>
* <td>ENABLE_DHCP_SERVER</td>
* <td>Makefile LUFA_OPTS</td>
* <td>AppConfig.h</td>
* <td>When defined, this enables the DHCP server for dynamic IP allocation of the network settings to a DHCP client.</td>
* </tr>
* <tr>
@ -113,7 +113,7 @@
* </tr>
* <tr>
* <td>MAX_URI_LENGTH</td>
* <td>Makefile LUFA_OPTS</td>
* <td>AppConfig.h</td>
* <td>Maximum length of a URI for the Webserver. This is the maximum file path, including subdirectories and separators.</td>
* </tr>
* </table>

View file

@ -120,34 +120,7 @@ LUFA_PATH = ../..
# LUFA library compile-time options and predefined tokens
LUFA_OPTS = -D FIXED_CONTROL_ENDPOINT_SIZE=8
LUFA_OPTS += -D FIXED_NUM_CONFIGURATIONS=1
LUFA_OPTS += -D DEVICE_STATE_AS_GPIOR=0
LUFA_OPTS += -D USE_FLASH_DESCRIPTORS
LUFA_OPTS += -D USE_STATIC_OPTIONS="(USB_DEVICE_OPT_FULLSPEED | USB_OPT_REG_ENABLED | USB_OPT_AUTO_PLL)"
LUFA_OPTS += -D INTERRUPT_CONTROL_ENDPOINT
LUFA_OPTS += -D ENABLE_DHCP_CLIENT
LUFA_OPTS += -D ENABLE_DHCP_SERVER
LUFA_OPTS += -D ENABLE_TELNET_SERVER
LUFA_OPTS += -D MAX_URI_LENGTH=50
LUFA_OPTS += -D UIP_CONF_UDP="defined(ENABLE_DHCP_CLIENT) || defined(ENABLE_DHCP_SERVER)"
LUFA_OPTS += -D UIP_CONF_BROADCAST=1
LUFA_OPTS += -D UIP_CONF_TCP=1
LUFA_OPTS += -D UIP_CONF_UDP_CONNS=1
LUFA_OPTS += -D UIP_CONF_MAX_CONNECTIONS=3
LUFA_OPTS += -D UIP_CONF_MAX_LISTENPORTS=5
LUFA_OPTS += -D UIP_CONF_BUFFER_SIZE=1514
LUFA_OPTS += -D UIP_CONF_LL_802154=0
LUFA_OPTS += -D UIP_CONF_LL_80211=0
LUFA_OPTS += -D UIP_CONF_ROUTER=0
LUFA_OPTS += -D UIP_CONF_ICMP6=0
LUFA_OPTS += -D UIP_CONF_ICMP_DEST_UNREACH=1
LUFA_OPTS += -D UIP_URGDATA=0
LUFA_OPTS += -D UIP_ARCH_CHKSUM=0
LUFA_OPTS += -D UIP_ARCH_ADD32=0
LUFA_OPTS += -D UIP_NEIGHBOR_CONF_ADDRTYPE=0
LUFA_OPTS = -D USE_LUFA_CONFIG_HEADER
# Create the LUFA source path variables by including the LUFA root makefile
@ -209,7 +182,7 @@ DEBUG = dwarf-2
# Each directory must be seperated by a space.
# Use forward slashes for directory separators.
# For a directory that has spaces, enclose it in quotes.
EXTRAINCDIRS = $(LUFA_PATH)/ Lib/uip/ Lib/uip/conf/ Lib/FATFs/
EXTRAINCDIRS = $(LUFA_PATH)/ Config/ Lib/uip/ Lib/uip/conf/ Lib/FATFs/
# Compiler flag to set the C Standard level.