From 9a373c409435796165b2f315b7e3d6fa303d5e4a Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Sun, 13 May 2012 17:17:45 +0000 Subject: AppConfigHeaders: Switch class driver Device mode demos to use LUFAConfig.h configuration header files. --- .../ClassDriver/RNDISEthernet/Config/LUFAConfig.h | 93 ++++++++++++++++++++++ .../RNDISEthernet/Config/NetworkConfig.h | 55 +++++++++++++ Demos/Device/ClassDriver/RNDISEthernet/Lib/IP.h | 7 +- .../RNDISEthernet/Lib/ProtocolDecoders.h | 1 + .../ClassDriver/RNDISEthernet/RNDISEthernet.txt | 14 ++-- Demos/Device/ClassDriver/RNDISEthernet/makefile | 16 +--- 6 files changed, 159 insertions(+), 27 deletions(-) create mode 100644 Demos/Device/ClassDriver/RNDISEthernet/Config/LUFAConfig.h create mode 100644 Demos/Device/ClassDriver/RNDISEthernet/Config/NetworkConfig.h (limited to 'Demos/Device/ClassDriver/RNDISEthernet') diff --git a/Demos/Device/ClassDriver/RNDISEthernet/Config/LUFAConfig.h b/Demos/Device/ClassDriver/RNDISEthernet/Config/LUFAConfig.h new file mode 100644 index 000000000..a1d748267 --- /dev/null +++ b/Demos/Device/ClassDriver/RNDISEthernet/Config/LUFAConfig.h @@ -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 {Insert Value Here} + #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 {Insert Value Here} +// #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 diff --git a/Demos/Device/ClassDriver/RNDISEthernet/Config/NetworkConfig.h b/Demos/Device/ClassDriver/RNDISEthernet/Config/NetworkConfig.h new file mode 100644 index 000000000..e6ac093ad --- /dev/null +++ b/Demos/Device/ClassDriver/RNDISEthernet/Config/NetworkConfig.h @@ -0,0 +1,55 @@ +/* + 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 Network Configuration Header File + * + * This header file is used to configure various portions of the + * network stack used by the application. + * + * For information on what each token does, refer to the LUFA + * manual section "Summary of Compile Tokens". + */ + +#ifndef _NETWORK_CONFIG_H_ +#define _NETWORK_CONFIG_H_ + + #define CLIENT_IP_ADDRESS { 10, 0, 0, 1} + #define SERVER_IP_ADDRESS { 10, 0, 0, 2} + + #define NO_DECODE_ETHERNET + #define NO_DECODE_ARP + #define NO_DECODE_IP + #define NO_DECODE_ICMP + #define NO_DECODE_TCP + #define NO_DECODE_UDP + #define NO_DECODE_DHCP + +#endif diff --git a/Demos/Device/ClassDriver/RNDISEthernet/Lib/IP.h b/Demos/Device/ClassDriver/RNDISEthernet/Lib/IP.h index 2ed173f57..2d89ad52f 100644 --- a/Demos/Device/ClassDriver/RNDISEthernet/Lib/IP.h +++ b/Demos/Device/ClassDriver/RNDISEthernet/Lib/IP.h @@ -43,14 +43,9 @@ #include "EthernetProtocols.h" #include "Ethernet.h" #include "ProtocolDecoders.h" + #include "Config/NetworkConfig.h" /* Macros: */ - /** Protocol IP address of the host (client) machine, once assigned by DHCP. */ - #define CLIENT_IP_ADDRESS { 10, 0, 0, 1} - - /** Protocol IP address of the virtual server machine. */ - #define SERVER_IP_ADDRESS { 10, 0, 0, 2} - /** Protocol IP address of the broadcast address. */ #define BROADCAST_IP_ADDRESS {0xFF, 0xFF, 0xFF, 0xFF} diff --git a/Demos/Device/ClassDriver/RNDISEthernet/Lib/ProtocolDecoders.h b/Demos/Device/ClassDriver/RNDISEthernet/Lib/ProtocolDecoders.h index 2807b6056..aadbed822 100644 --- a/Demos/Device/ClassDriver/RNDISEthernet/Lib/ProtocolDecoders.h +++ b/Demos/Device/ClassDriver/RNDISEthernet/Lib/ProtocolDecoders.h @@ -45,6 +45,7 @@ #include "EthernetProtocols.h" #include "Ethernet.h" + #include "Config/NetworkConfig.h" /* Function Prototypes: */ void DecodeEthernetFrameHeader(void* InDataStart); diff --git a/Demos/Device/ClassDriver/RNDISEthernet/RNDISEthernet.txt b/Demos/Device/ClassDriver/RNDISEthernet/RNDISEthernet.txt index 3099ac0a6..f05ec65c2 100644 --- a/Demos/Device/ClassDriver/RNDISEthernet/RNDISEthernet.txt +++ b/Demos/Device/ClassDriver/RNDISEthernet/RNDISEthernet.txt @@ -85,37 +85,37 @@ * * * NO_DECODE_ETHERNET - * Makefile LUFA_OPTS + * NetworkConfig.h * When defined, received Ethernet headers will not be decoded and printed to the device serial port. * * * NO_DECODE_ARP - * Makefile LUFA_OPTS + * NetworkConfig.h * When defined, received ARP headers will not be decoded and printed to the device serial port. * * * NO_DECODE_IP - * Makefile LUFA_OPTS + * NetworkConfig.h * When defined, received IP headers will not be decoded and printed to the device serial port. * * * NO_DECODE_ICMP - * Makefile LUFA_OPTS + * NetworkConfig.h * When defined, received ICMP headers will not be decoded and printed to the device serial port. * * * NO_DECODE_TCP - * Makefile LUFA_OPTS + * NetworkConfig.h * When defined, received TCP headers will not be decoded and printed to the device serial port. * * * NO_DECODE_UDP - * Makefile LUFA_OPTS + * NetworkConfig.h * When defined, received UDP headers will not be decoded and printed to the device serial port. * * * NO_DECODE_DHCP - * Makefile LUFA_OPTS + * NetworkConfig.h * When defined, received DHCP headers will not be decoded and printed to the device serial port. * * diff --git a/Demos/Device/ClassDriver/RNDISEthernet/makefile b/Demos/Device/ClassDriver/RNDISEthernet/makefile index 1062ccf56..4cc22a597 100644 --- a/Demos/Device/ClassDriver/RNDISEthernet/makefile +++ b/Demos/Device/ClassDriver/RNDISEthernet/makefile @@ -120,19 +120,7 @@ LUFA_PATH = ../../../.. # LUFA library compile-time options and predefined tokens -LUFA_OPTS = -D USB_DEVICE_ONLY -LUFA_OPTS += -D FIXED_CONTROL_ENDPOINT_SIZE=8 -LUFA_OPTS += -D FIXED_NUM_CONFIGURATIONS=1 -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 NO_DECODE_ETHERNET -LUFA_OPTS += -D NO_DECODE_ARP -LUFA_OPTS += -D NO_DECODE_IP -LUFA_OPTS += -D NO_DECODE_ICMP -LUFA_OPTS += -D NO_DECODE_TCP -LUFA_OPTS += -D NO_DECODE_UDP -LUFA_OPTS += -D NO_DECODE_DHCP +LUFA_OPTS = -D USE_LUFA_CONFIG_HEADER # Create the LUFA source path variables by including the LUFA root makefile @@ -187,7 +175,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)/ +EXTRAINCDIRS = $(LUFA_PATH)/ Config/ # Compiler flag to set the C Standard level. -- cgit v1.2.3