include ./boards/stm32-p103/examples/usbkeyboard/usbkeyboard.mk
include ./boards/ek-lm3s1968/examples/gps/gps.mk
include ./boards/at91sam7x-ek/examples/sd_fat/sd_fat.mk
-#include ./boards/at91sam7x-ek/examples/tcp_server/tcp_server.mk
+include ./boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/at91sam7x-ek_tcp_server.mk
include bertos/rules.mk
#
# Wizard autogenerated makefile.
-# DO NOT EDIT, use the tcp_server_user.mk file instead.
+# DO NOT EDIT, use the at91sam7x-ek_tcp_server_user.mk file instead.
#
# Constants automatically defined by the selected modules
-tcp_server_DEBUG = 1
+at91sam7x-ek_tcp_server_DEBUG = 1
# Our target application
-TRG += tcp_server
+TRG += at91sam7x-ek_tcp_server
-tcp_server_PREFIX = "arm-none-eabi-"
+at91sam7x-ek_tcp_server_PREFIX = "arm-none-eabi-"
-tcp_server_SUFFIX = ""
+at91sam7x-ek_tcp_server_SUFFIX = ""
-tcp_server_SRC_PATH = boards/at91sam7x-ek/examples/tcp_server
+at91sam7x-ek_tcp_server_SRC_PATH = boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server
-tcp_server_HW_PATH = boards/at91sam7x-ek
+at91sam7x-ek_tcp_server_HW_PATH = boards/at91sam7x-ek
-# Files automatically generated by the wizard. DO NOT EDIT, USE tcp_server_USER_CSRC INSTEAD!
-tcp_server_WIZARD_CSRC = \
- bertos/cpu/arm/drv/timer_arm.c \
- bertos/mware/event.c \
- bertos/kern/sem.c \
+# Files automatically generated by the wizard. DO NOT EDIT, USE at91sam7x-ek_tcp_server_USER_CSRC INSTEAD!
+at91sam7x-ek_tcp_server_WIZARD_CSRC = \
+ at91sam7x-ek_tcp_server/hw/hw_eth.c \
+ bertos/cpu/arm/drv/eth_at91.c \
+ bertos/cpu/arm/drv/ser_arm.c \
+ bertos/cpu/arm/drv/ser_at91.c \
bertos/cpu/arm/drv/sysirq_at91.c \
- bertos/struct/heap.c \
- bertos/io/kfile.c \
- bertos/mware/hex.c \
+ bertos/cpu/arm/drv/timer_arm.c \
bertos/cpu/arm/drv/timer_at91.c \
- bertos/cpu/arm/drv/ser_at91.c \
- bertos/cpu/arm/drv/eth_at91.c \
+ bertos/drv/ser.c \
bertos/drv/timer.c \
- bertos/kern/signal.c \
+ bertos/io/kfile.c \
+ bertos/kern/monitor.c \
bertos/kern/proc.c \
+ bertos/kern/sem.c \
+ bertos/kern/signal.c \
+ bertos/mware/event.c \
bertos/mware/formatwr.c \
- bertos/drv/ser.c \
- bertos/kern/monitor.c \
+ bertos/mware/hex.c \
bertos/net/lwip.c \
- bertos/cpu/arm/drv/ser_arm.c \
+ bertos/struct/heap.c \
#
-# Files automatically generated by the wizard. DO NOT EDIT, USE tcp_server_USER_PCSRC INSTEAD!
-tcp_server_WIZARD_PCSRC = \
+# Files automatically generated by the wizard. DO NOT EDIT, USE at91sam7x-ek_tcp_server_USER_PCSRC INSTEAD!
+at91sam7x-ek_tcp_server_WIZARD_PCSRC = \
\
#
-# Files automatically generated by the wizard. DO NOT EDIT, USE tcp_server_USER_CPPASRC INSTEAD!
-tcp_server_WIZARD_CPPASRC = \
+# Files automatically generated by the wizard. DO NOT EDIT, USE at91sam7x-ek_tcp_server_USER_CPPASRC INSTEAD!
+at91sam7x-ek_tcp_server_WIZARD_CPPASRC = \
bertos/cpu/arm/hw/switch_ctx_arm.S \
#
-# Files automatically generated by the wizard. DO NOT EDIT, USE tcp_server_USER_CXXSRC INSTEAD!
-tcp_server_WIZARD_CXXSRC = \
+# Files automatically generated by the wizard. DO NOT EDIT, USE at91sam7x-ek_tcp_server_USER_CXXSRC INSTEAD!
+at91sam7x-ek_tcp_server_WIZARD_CXXSRC = \
\
#
-# Files automatically generated by the wizard. DO NOT EDIT, USE tcp_server_USER_ASRC INSTEAD!
-tcp_server_WIZARD_ASRC = \
+# Files automatically generated by the wizard. DO NOT EDIT, USE at91sam7x-ek_tcp_server_USER_ASRC INSTEAD!
+at91sam7x-ek_tcp_server_WIZARD_ASRC = \
\
#
-tcp_server_CPPFLAGS = -D'CPU_FREQ=(48054857UL)' -D'ARCH=(ARCH_DEFAULT)' -D'WIZ_AUTOGEN' -I$(tcp_server_HW_PATH) -I$(tcp_server_SRC_PATH) $(tcp_server_CPU_CPPFLAGS) $(tcp_server_USER_CPPFLAGS)
+at91sam7x-ek_tcp_server_CPPFLAGS = -D'CPU_FREQ=(48054857UL)' -D'ARCH=(ARCH_DEFAULT)' -D'WIZ_AUTOGEN' -I$(at91sam7x-ek_tcp_server_HW_PATH) -I$(at91sam7x-ek_tcp_server_SRC_PATH) $(at91sam7x-ek_tcp_server_CPU_CPPFLAGS) $(at91sam7x-ek_tcp_server_USER_CPPFLAGS)
# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-tcp_server_LDFLAGS = $(tcp_server_CPU_LDFLAGS) $(tcp_server_WIZARD_LDFLAGS) $(tcp_server_USER_LDFLAGS)
+at91sam7x-ek_tcp_server_LDFLAGS = $(at91sam7x-ek_tcp_server_CPU_LDFLAGS) $(at91sam7x-ek_tcp_server_WIZARD_LDFLAGS) $(at91sam7x-ek_tcp_server_USER_LDFLAGS)
# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-tcp_server_CPPAFLAGS = $(tcp_server_CPU_CPPAFLAGS) $(tcp_server_WIZARD_CPPAFLAGS) $(tcp_server_USER_CPPAFLAGS)
+at91sam7x-ek_tcp_server_CPPAFLAGS = $(at91sam7x-ek_tcp_server_CPU_CPPAFLAGS) $(at91sam7x-ek_tcp_server_WIZARD_CPPAFLAGS) $(at91sam7x-ek_tcp_server_USER_CPPAFLAGS)
# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-tcp_server_CSRC = $(tcp_server_CPU_CSRC) $(tcp_server_WIZARD_CSRC) $(tcp_server_USER_CSRC)
+at91sam7x-ek_tcp_server_CSRC = $(at91sam7x-ek_tcp_server_CPU_CSRC) $(at91sam7x-ek_tcp_server_WIZARD_CSRC) $(at91sam7x-ek_tcp_server_USER_CSRC)
# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-tcp_server_PCSRC = $(tcp_server_CPU_PCSRC) $(tcp_server_WIZARD_PCSRC) $(tcp_server_USER_PCSRC)
+at91sam7x-ek_tcp_server_PCSRC = $(at91sam7x-ek_tcp_server_CPU_PCSRC) $(at91sam7x-ek_tcp_server_WIZARD_PCSRC) $(at91sam7x-ek_tcp_server_USER_PCSRC)
# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-tcp_server_CPPASRC = $(tcp_server_CPU_CPPASRC) $(tcp_server_WIZARD_CPPASRC) $(tcp_server_USER_CPPASRC)
+at91sam7x-ek_tcp_server_CPPASRC = $(at91sam7x-ek_tcp_server_CPU_CPPASRC) $(at91sam7x-ek_tcp_server_WIZARD_CPPASRC) $(at91sam7x-ek_tcp_server_USER_CPPASRC)
# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-tcp_server_CXXSRC = $(tcp_server_CPU_CXXSRC) $(tcp_server_WIZARD_CXXSRC) $(tcp_server_USER_CXXSRC)
+at91sam7x-ek_tcp_server_CXXSRC = $(at91sam7x-ek_tcp_server_CPU_CXXSRC) $(at91sam7x-ek_tcp_server_WIZARD_CXXSRC) $(at91sam7x-ek_tcp_server_USER_CXXSRC)
# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-tcp_server_ASRC = $(tcp_server_CPU_ASRC) $(tcp_server_WIZARD_ASRC) $(tcp_server_USER_ASRC)
+at91sam7x-ek_tcp_server_ASRC = $(at91sam7x-ek_tcp_server_CPU_ASRC) $(at91sam7x-ek_tcp_server_WIZARD_ASRC) $(at91sam7x-ek_tcp_server_USER_ASRC)
# CPU specific flags and options, defined in the CPU definition files.
# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-tcp_server_CPU_CPPASRC = bertos/cpu/arm/hw/crt_arm7tdmi.S bertos/cpu/arm/hw/vectors_at91.S
-tcp_server_CPU_CPPAFLAGS = -g -gdwarf-2
-tcp_server_CPU_CPPFLAGS = -O0 -g3 -gdwarf-2 -fverbose-asm -Ibertos/cpu/arm/ -D__ARM_AT91SAM7X256__
-tcp_server_CPU_CSRC = bertos/cpu/arm/hw/init_at91.c
-tcp_server_PROGRAMMER_CPU = at91sam7
-tcp_server_CPU_LDFLAGS = -nostartfiles -Wl,--no-warn-mismatch -T bertos/cpu/arm/scripts/at91sam7_256_rom.ld
-tcp_server_STOPFLASH_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
-tcp_server_CPU = arm7tdmi
-tcp_server_STOPDEBUG_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
-tcp_server_DEBUG_SCRIPT = bertos/prg_scripts/arm/debug.sh
-tcp_server_FLASH_SCRIPT = bertos/prg_scripts/arm/flash.sh
-
-include $(tcp_server_SRC_PATH)/tcp_server_user.mk
+at91sam7x-ek_tcp_server_CPU_CPPASRC = bertos/cpu/arm/hw/crt_arm7tdmi.S bertos/cpu/arm/hw/vectors_at91.S
+at91sam7x-ek_tcp_server_CPU_CPPAFLAGS = -g -gdwarf-2
+at91sam7x-ek_tcp_server_CPU_CPPFLAGS = -O0 -g3 -gdwarf-2 -fverbose-asm -Ibertos/cpu/arm/ -D__ARM_AT91SAM7X256__
+at91sam7x-ek_tcp_server_CPU_CSRC = bertos/cpu/arm/hw/init_at91.c
+at91sam7x-ek_tcp_server_PROGRAMMER_CPU = at91sam7
+at91sam7x-ek_tcp_server_CPU_LDFLAGS = -nostartfiles -Wl,--no-warn-mismatch -Wl,-dT bertos/cpu/arm/scripts/at91sam7_256_rom.ld
+at91sam7x-ek_tcp_server_STOPFLASH_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
+at91sam7x-ek_tcp_server_CPU = arm7tdmi
+at91sam7x-ek_tcp_server_STOPDEBUG_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
+at91sam7x-ek_tcp_server_DEBUG_SCRIPT = bertos/prg_scripts/arm/debug.sh
+at91sam7x-ek_tcp_server_FLASH_SCRIPT = bertos/prg_scripts/arm/flash.sh
+
+include $(at91sam7x-ek_tcp_server_SRC_PATH)/at91sam7x-ek_tcp_server_user.mk
#
# Programmer interface configuration, see http://dev.bertos.org/wiki/ProgrammerInterface for help
-tcp_server_PROGRAMMER_TYPE = none
-tcp_server_PROGRAMMER_PORT = none
+at91sam7x-ek_tcp_server_PROGRAMMER_TYPE = none
+at91sam7x-ek_tcp_server_PROGRAMMER_PORT = none
# Files included by the user.
-tcp_server_USER_CSRC = \
- $(tcp_server_SRC_PATH)/main.c \
+at91sam7x-ek_tcp_server_USER_CSRC = \
+ $(at91sam7x-ek_tcp_server_SRC_PATH)/main.c \
#
# Files included by the user.
-tcp_server_USER_PCSRC = \
+at91sam7x-ek_tcp_server_USER_PCSRC = \
#
# Files included by the user.
-tcp_server_USER_CPPASRC = \
+at91sam7x-ek_tcp_server_USER_CPPASRC = \
#
# Files included by the user.
-tcp_server_USER_CXXSRC = \
+at91sam7x-ek_tcp_server_USER_CXXSRC = \
#
# Files included by the user.
-tcp_server_USER_ASRC = \
+at91sam7x-ek_tcp_server_USER_ASRC = \
#
# Flags included by the user.
-tcp_server_USER_LDFLAGS = \
+at91sam7x-ek_tcp_server_USER_LDFLAGS = \
#
# Flags included by the user.
-tcp_server_USER_CPPAFLAGS = \
+at91sam7x-ek_tcp_server_USER_CPPAFLAGS = \
#
# Flags included by the user.
-tcp_server_USER_CPPFLAGS = \
+at91sam7x-ek_tcp_server_USER_CPPFLAGS = \
-Os \
-fno-strict-aliasing \
-fwrapv \
+ -Wno-cast-qual \
+ #
+
+# Silence very annoying lwip warnings
+lwip_CFLAGS = \
+ -Wno-cast-align \
+ -Wno-cast-qual \
+ -Wno-sign-compare \
+ -Wno-format \
+ -Wno-unused-value \
+ -Wno-conversion \
+ -Wno-missing-noreturn \
#
*/
#define CONFIG_ADC_STROBE 0
+
+/**
+ * Start up timer[s] = startup value / ADCClock [Hz]
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "sam3_adc_sut"
+ * $WIZ$ supports = "sam3"
+ */
+#define CONFIG_ADC_SUT ADC_SUT512
+
+/**
+ * Analog Settling Time[s] = settling value / ADCClock[Hz]
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "sam3_adc_stt"
+ * $WIZ$ supports = "sam3"
+ */
+#define CONFIG_ADC_STTLING ADC_AST17
+
+/**
+ * Tracking Time[s] = (TRACKTIM + 1) / ADCClock[Hz]
+ *
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 0
+ * $WIZ$ supports = "sam3"
+ */
+#define CONFIG_ADC_TRACKTIM 0
+
+/**
+ * Transfer Period[s] = (TRANSFER * 2 + 3) ADCClock[Hz]
+ *
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 0
+ * $WIZ$ supports = "sam3"
+ */
+#define CONFIG_ADC_TRANSFER 1
+
#endif /* CFG_ADC_H */
--- /dev/null
+/**
+ * \file
+ * <!--
+ * This file is part of BeRTOS.
+ *
+ * Bertos is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * As a special exception, you may use this file as part of a free software
+ * library without restriction. Specifically, if other files instantiate
+ * templates or use macros or inline functions from this file, or you compile
+ * this file and link it with other files to produce an executable, this
+ * file does not by itself cause the resulting executable to be covered by
+ * the GNU General Public License. This exception does not however
+ * invalidate any other reasons why the executable file might be covered by
+ * the GNU General Public License.
+ *
+ * Copyright 2011 Develer S.r.l. (http://www.develer.com/)
+ * All Rights Reserved.
+ * -->
+ *
+ * \brief Configuration file for DAC module.
+ *
+ *
+ * \author Daniele Basile <asterix@develer.com>
+ */
+
+#ifndef CFG_DAC_H
+#define CFG_DAC_H
+
+/**
+ * Module logging level.
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "log_level"
+ */
+#define DAC_LOG_LEVEL LOG_LVL_WARN
+
+/**
+ * Module logging format.
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "log_format"
+ */
+#define DAC_LOG_FORMAT LOG_FMT_TERSE
+
+/**
+ * DAC Refresh Period = 1024*REFRESH/DACC Clock
+ *
+ * $WIZ$ type = "int"
+ * $WIZ$ supports = "sam3x"
+ * $WIZ$ min = 0
+ * $WIZ$ max = 65536
+ */
+#define CONFIG_DAC_REFRESH 16
+
+/**
+ * DAC Startup Time Selection.
+ * see datasheet table.
+ *
+ * $WIZ$ type = "int"
+ * $WIZ$ supports = "sam3x"
+ * $WIZ$ min = 0
+ * $WIZ$ max = 63
+ */
+#define CONFIG_DAC_STARTUP 0
+
+/**
+ * DAC Trigger Selection.
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "sam3x_dac_tc"
+ * $WIZ$ supports = "sam3x"
+ */
+#define CONFIG_DAC_TIMER DACC_TRGSEL_TIO_CH0
+
+#endif /* CFG_DAC_H */
--- /dev/null
+/**
+ * \file
+ * <!--
+ * This file is part of BeRTOS.
+ *
+ * Bertos is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * As a special exception, you may use this file as part of a free software
+ * library without restriction. Specifically, if other files instantiate
+ * templates or use macros or inline functions from this file, or you compile
+ * this file and link it with other files to produce an executable, this
+ * file does not by itself cause the resulting executable to be covered by
+ * the GNU General Public License. This exception does not however
+ * invalidate any other reasons why the executable file might be covered by
+ * the GNU General Public License.
+ *
+ * Copyright 2010 Develer S.r.l. (http://www.develer.com/)
+ *
+ * -->
+ *
+ * \brief Configuration file for the Eeprom module.
+ *
+ * \author Daniele Basile <asterix@develer.com>
+ */
+
+#ifndef CFG_EEPROM_H
+#define CFG_EEPROM_H
+
+/**
+ * Module logging level.
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "log_level"
+ */
+#define EEPROM_LOG_LEVEL LOG_LVL_INFO
+
+/**
+ * Module logging format.
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "log_format"
+ */
+#define EEPROM_LOG_FORMAT LOG_FMT_TERSE
+
+/**
+ * Check this to disable Eeprom deprecated API support.
+ *
+ * $WIZ$ type = "boolean"
+ */
+#define CONFIG_EEPROM_DISABLE_OLD_API 0
+
+#endif /* CFG_EEPROM_H */
--- /dev/null
+/**
+ * \file cfg_led_7seg.h
+ * <!--
+ * This file is part of BeRTOS.
+ *
+ * Bertos is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * As a special exception, you may use this file as part of a free software
+ * library without restriction. Specifically, if other files instantiate
+ * templates or use macros or inline functions from this file, or you compile
+ * this file and link it with other files to produce an executable, this
+ * file does not by itself cause the resulting executable to be covered by
+ * the GNU General Public License. This exception does not however
+ * invalidate any other reasons why the executable file might be covered by
+ * the GNU General Public License.
+ *
+ * Copyright 2010 Develer S.r.l. (http://www.develer.com/)
+ * -->
+ *
+ * \brief Configuration file for led 7 segment display.
+ *
+ * \author Fabio Bizzi <fbizzi@bizzi.org>
+ *
+ * \addtogroup SevenSegDisplay 7 Segments LED Displays Driver
+ * \{
+ *
+ */
+
+#ifndef CFG_LED_7SEG_H
+#define CFG_LED_7SEG_H
+
+/**
+ * Use a Common Cathode display.
+ * $WIZ$ type = "boolean"
+ */
+#define CONFIG_LED_7SEG_CCAT 0
+
+/**
+ * Number of digit present in the LED display.
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 1
+ * $WIZ$ max = 8
+ */
+#define CONFIG_LED_7SEG_DIGIT 4
+
+/**
+ * Max lenght of the string to be displayed.
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 16
+ * $WIZ$ max = 255
+ */
+#define CONFIG_LED_7SEG_STRLEN 255
+
+/**
+ * Default scrolling speed (ms * CONFIG_LED_7SEG_RTIME).
+ * $WIZ$ type = "int"
+ */
+#define CONFIG_LED_7SEG_SSPEED 10
+
+/**
+ * Default refresh time (ms).
+ * $WIZ$ type = "int"
+ */
+#define CONFIG_LED_7SEG_RTIME 5
+
+#endif /* CFG_LED_7SEG_H */
+ /** \} */ //defgroup drivers
+
/**
* MEM_ALIGNMENT: should be set to the alignment of the CPU
+ * \verbatim
* 4 byte alignment -> #define MEM_ALIGNMENT 4
* 2 byte alignment -> #define MEM_ALIGNMENT 2
+ * \endverbatim
*/
#ifndef MEM_ALIGNMENT
#define MEM_ALIGNMENT 4
---------------------------------
*/
/**
- * Enable ARP functionality.
- *
- * $WIZ$ type = "boolean"
+ * LWIP_ARP==1: Enable ARP functionality.
*/
+#ifndef LWIP_ARP
#define LWIP_ARP 1
+#endif
/**
* ARP_TABLE_SIZE: Number of active MAC-IP address pairs cached.
/** DNS_LOCAL_HOSTLIST: Implements a local host-to-address list. If enabled,
* you have to define
+ * \code
* #define DNS_LOCAL_HOSTLIST_INIT {{"host1", 0x123}, {"host2", 0x234}}
+ * \endcode
* (an array of structs name/address, where address is an u32_t in network
* byte order).
*
* Instead, you can also use an external function:
+ * \code
* #define DNS_LOOKUP_LOCAL_EXTERN(x) extern u32_t my_lookup_function(const char *name)
+ * \endcode
* that returns the IP address or INADDR_NONE if not found.
*/
#ifndef DNS_LOCAL_HOSTLIST
* $WIZ$ type = "boolean"
*/
#define LWIP_SOCKET 0
+#if LWIP_SOCKET
+ /*
+ * The sockets.c file requires this macro to be defined to really
+ * set errno on errors.
+ */
+ #define ERRNO
+#endif
/**
* Enable BSD-style sockets functions names.
#endif
/**
- * Enable POSIX-style sockets functions names.
- *
- * $WIZ$ type = "boolean"
+ * LWIP_POSIX_SOCKETS_IO_NAMES==1: Enable POSIX-style sockets functions names.
+ * Disable this option if you use a POSIX operating system that uses the same
+ * names (read, write & close). (only used if you use sockets.c)
*/
+#ifndef LWIP_POSIX_SOCKETS_IO_NAMES
#define LWIP_POSIX_SOCKETS_IO_NAMES 0
+#endif
/**
* LWIP_TCP_KEEPALIVE==1: Enable TCP_KEEPIDLE, TCP_KEEPINTVL and TCP_KEEPCNT
--- /dev/null
+/**
+ * \file
+ * <!--
+ * This file is part of BeRTOS.
+ *
+ * Bertos is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * As a special exception, you may use this file as part of a free software
+ * library without restriction. Specifically, if other files instantiate
+ * templates or use macros or inline functions from this file, or you compile
+ * this file and link it with other files to produce an executable, this
+ * file does not by itself cause the resulting executable to be covered by
+ * the GNU General Public License. This exception does not however
+ * invalidate any other reasons why the executable file might be covered by
+ * the GNU General Public License.
+ *
+ * Copyright 2011 Develer S.r.l. (http://www.develer.com/)
+ * -->
+ *
+ * \author Stefano Fedrigo <aleph@develer.com>
+ *
+ * \brief Configuration file for NAND driver module.
+ */
+
+#ifndef CFG_NAND_H
+#define CFG_NAND_H
+
+/**
+ * Page data size
+ *
+ * Size of the data section of a programmable page in bytes.
+ *
+ * $WIZ$ type = "int"
+ */
+#define CONFIG_NAND_DATA_SIZE 2048
+
+/**
+ * Page spare area size
+ *
+ * Size of the spare section of a programmable page in bytes.
+ *
+ * $WIZ$ type = "int"
+ */
+#define CONFIG_NAND_SPARE_SIZE 64
+
+/**
+ * Pages per block
+ *
+ * Number of pages in a erase block.
+ *
+ * $WIZ$ type = "int"
+ */
+#define CONFIG_NAND_PAGES_PER_BLOCK 64
+
+/**
+ * Number of blocks
+ *
+ * Total number of erase blocks in one NAND chip.
+ *
+ * $WIZ$ type = "int"
+ */
+#define CONFIG_NAND_NUM_BLOCK 2048
+
+/**
+ * Number of reserved blocks
+ *
+ * Blocks reserved for remapping defective NAND blocks.
+ *
+ * $WIZ$ type = "int"
+ */
+#define CONFIG_NAND_NUM_REMAP_BLOCKS 128
+
+/**
+ * NAND operations timeout
+ *
+ * How many milliseconds the cpu waits for
+ * completion of NAND operations.
+ *
+ * $WIZ$ type = "int"
+ */
+#define CONFIG_NAND_TMOUT 100
+
+/**
+ * Module logging level
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "log_level"
+ */
+#define CONFIG_NAND_LOG_LEVEL LOG_LVL_WARN
+
+/**
+ * Module logging format
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "log_format"
+ */
+#define CONFIG_NAND_LOG_FORMAT LOG_FMT_TERSE
+
+#endif /* CFG_NAND_H */
#ifndef CFG_PARSER_H
#define CFG_PARSER_H
+/**
+ * Max number of arguments and results for each command
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 0
+ */
+#define CONFIG_PARSER_MAX_ARGS 4
+
+/**
+ * Max number of commands
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 8
+ */
+#define CONFIG_MAX_COMMANDS_NUMBER 16
+/**
+ * Enable compatibility behaviour.
+ *
+ * Skip the first word from incoming commands. Don't enable in new projects.
+ * $WIZ$ type = "boolean"
+ */
+#define CONFIG_ENABLE_COMPAT_BEHAVIOUR 1
#endif /* CFG_PARSER_H */
*/
#define CONFIG_KERN_PRI 1
+/**
+ * Priority-inheritance protocol.
+ * $WIZ$ type = "boolean"
+ */
+#define CONFIG_KERN_PRI_INHERIT 0
+
/**
* Dynamic memory allocation for processes.
* $WIZ$ type = "boolean"
*/
#define PWM_LOG_FORMAT LOG_FMT_VERBOSE
+/**
+ * Enable the OLD pwm API.
+ * Not recommended for new projects.
+ *
+ * $WIZ$ type = "boolean"
+ */
+#define CFG_PWM_ENABLE_OLD_API 1
+
#endif /* CFG_PWM_H */
--- /dev/null
+/**
+ * \file
+ * <!--
+ * This file is part of BeRTOS.
+ *
+ * Bertos is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * As a special exception, you may use this file as part of a free software
+ * library without restriction. Specifically, if other files instantiate
+ * templates or use macros or inline functions from this file, or you compile
+ * this file and link it with other files to produce an executable, this
+ * file does not by itself cause the resulting executable to be covered by
+ * the GNU General Public License. This exception does not however
+ * invalidate any other reasons why the executable file might be covered by
+ * the GNU General Public License.
+ *
+ * Copyright 2011 Develer S.r.l. (http://www.develer.com/)
+ *
+ * -->
+ *
+ * \author Andrea Righi <arighi@develer.com>
+ *
+ * \brief Configuration file for the "random" module
+ */
+
+#ifndef CFG_RANDOM_H
+#define CFG_RANDOM_H
+
+/**
+ * Module logging level.
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "log_level"
+ */
+#define RANDOM_LOG_LEVEL LOG_LVL_INFO
+
+/**
+ * module logging format.
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "log_format"
+ */
+#define RANDOM_LOG_FORMAT LOG_FMT_TERSE
+
+/**
+ * Random security level.
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "random_level"
+ */
+#define RANDOM_SECURITY_LEVEL RANDOM_SECURITY_MINIMUM
+
+#endif /* CFG_RANDOM_H */
--- /dev/null
+#ifndef CFG_TFTP_H
+#define CFG_TFTP_H
+
+/**
+ * Module logging level.
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "log_level"
+ */
+#define TFTP_LOG_LEVEL LOG_LVL_WARN
+
+/**
+ * Module logging format.
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "log_format"
+ */
+#define TFTP_LOG_FORMAT LOG_FMT_VERBOSE
+
+#endif /* CFG_TFTP_H */
*/
#define CONFIG_USB_BUFSIZE 64
+/**
+ * Maximum number of USB device interfaces (default = 1).
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 1
+ */
+#define CONFIG_USB_INTERFACE_MAX 1
+
+/**
+ * Maximum number of allocated endpoints (0 = auto).
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 0
+ */
+#define CONFIG_USB_EP_MAX 0
+
+/**
+ * Maximum packet size of the control endpoint 0 [bytes].
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 8
+ */
+#define CONFIG_EP0_MAX_SIZE 8
+
#endif /* CFG_USB_H */
p2
sS'SELECTED_FREQ'
p3
-V48023000
+V48054857
p4
sS'WIZARD_VERSION'
p5
-I3
+I4
sS'PROJECT_NAME'
p6
-Vtcp_server
+Vat91sam7x-ek_tcp_server
p7
sS'TOOLCHAIN'
p8
(dp9
-Vtarget
+S'path'
p10
-Varm-none-eabi
+Varm-none-eabi-gcc
p11
-sVthread
+ssS'PROJECT_HW_PATH_FROM_MAKEFILE'
p12
-Vsingle
+Vboards/at91sam7x-ek
p13
-sVconfigured
+sS'ENABLED_MODULES'
p14
-V/scratch/julian/2010q1-release-eabi-lite/src/gcc-4.4-2010q1/configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=arm-none-eabi --enable-threads --disable-libmudflap --disable-libssp --disable-libstdcxx-pch --enable-extra-sgxxlite-multilibs --with-gnu-as --with-gnu-ld --with-specs='%{O2:%{!fno-remove-local-statics: -fremove-local-statics}} %{O*:%{O|O0|O1|O2|Os:;:%{!fno-remove-local-statics: -fremove-local-statics}}}' --enable-languages=c,c++ --disable-shared --disable-lto --with-newlib --with-pkgversion='Sourcery G++ Lite 2010q1-188' --with-bugurl=https://support.codesourcery.com/GNUToolchain/ --disable-nls --prefix=/opt/codesourcery --with-headers=yes --with-sysroot=/opt/codesourcery/arm-none-eabi --with-build-sysroot=/scratch/julian/2010q1-release-eabi-lite/install/arm-none-eabi --with-gmp=/scratch/julian/2010q1-release-eabi-lite/obj/host-libs-2010q1-188-arm-none-eabi-i686-pc-linux-gnu/usr --with-mpfr=/scratch/julian/2010q1-release-eabi-lite/obj/host-libs-2010q1-188-arm-none-eabi-i686-pc-linux-gnu/usr --with-ppl=/scratch/julian/2010q1-release-eabi-lite/obj/host-libs-2010q1-188-arm-none-eabi-i686-pc-linux-gnu/usr --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --with-cloog=/scratch/julian/2010q1-release-eabi-lite/obj/host-libs-2010q1-188-arm-none-eabi-i686-pc-linux-gnu/usr --disable-libgomp --enable-poison-system-directories --with-build-time-tools=/scratch/julian/2010q1-release-eabi-lite/install/arm-none-eabi/bin --with-build-time-tools=/scratch/julian/2010q1-release-eabi-lite/install/arm-none-eabi/bin
-p15
-sVversion
+(lp15
+S'debug'
p16
-V4.4.1
+aS'eth'
p17
-sVbuild
+aS'formatwr'
p18
-VSourcery G++ Lite 2010q1-188
+aS'heap'
p19
-sVpath
+aS'kernel'
p20
-V/opt/sourcery/bin/arm-none-eabi-gcc
+aS'kfile'
p21
-ssS'ENABLED_MODULES'
+aS'lwip'
p22
-(lp23
-S'monitor'
+aS'monitor'
+p23
+aS'msg'
p24
-aS'signal'
+aS'semaphores'
p25
-aS'debug'
+aS'ser'
p26
-aS'kernel'
+aS'signal'
p27
-aS'ser'
+aS'timer'
p28
-aS'kfile'
+asS'CPU_NAME'
p29
-aS'timer'
+VAT91SAM7X256
p30
-aS'eth'
+sS'PROJECT_HW_PATH'
p31
-aS'formatwr'
+S'../..'
p32
-aS'msg'
+sS'PROJECT_SRC_PATH'
p33
-aS'semaphores'
+S'.'
p34
-aS'heap'
+sS'PRESET'
p35
-aS'lwip'
+I01
+sS'PROJECT_SRC_PATH_FROM_MAKEFILE'
p36
-asS'CPU_NAME'
+Vboards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server
p37
-VAT91SAM7X256
-p38
-sS'PROJECT_HW_PATH'
-p39
-S'../..'
-p40
-sS'PROJECT_SRC_PATH'
-p41
-S'.'
-p42
-sS'PRESET'
-p43
-I01
sS'OUTPUT'
-p44
-(lp45
-S'codelite'
-p46
-as.
\ No newline at end of file
+p38
+(lp39
+s.
\ No newline at end of file
--- /dev/null
+/**
+ * \file
+ * <!--
+ * This file is part of BeRTOS.
+ *
+ * Bertos is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * As a special exception, you may use this file as part of a free software
+ * library without restriction. Specifically, if other files instantiate
+ * templates or use macros or inline functions from this file, or you compile
+ * this file and link it with other files to produce an executable, this
+ * file does not by itself cause the resulting executable to be covered by
+ * the GNU General Public License. This exception does not however
+ * invalidate any other reasons why the executable file might be covered by
+ * the GNU General Public License.
+ *
+ * Copyright 2011 Develer S.r.l. (http://www.develer.com/)
+ *
+ * -->
+ *
+ * \brief MAC address definition
+ *
+ * \author Luca Ottaviano <lottaviano@develer.com>
+ */
+
+#include "hw/hw_eth.h"
+
+uint8_t mac_addr[] = { 0x00, 0x11, 0x22, 0x33, 0x44, 0x55 };
--- /dev/null
+/**
+ * \file
+ * <!--
+ * This file is part of BeRTOS.
+ *
+ * Bertos is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * As a special exception, you may use this file as part of a free software
+ * library without restriction. Specifically, if other files instantiate
+ * templates or use macros or inline functions from this file, or you compile
+ * this file and link it with other files to produce an executable, this
+ * file does not by itself cause the resulting executable to be covered by
+ * the GNU General Public License. This exception does not however
+ * invalidate any other reasons why the executable file might be covered by
+ * the GNU General Public License.
+ *
+ * Copyright 2011 Develer S.r.l. (http://www.develer.com/)
+ *
+ * -->
+ *
+ * \brief MAC address definition
+ *
+ * \author Luca Ottaviano <lottaviano@develer.com>
+ */
+#ifndef HW_ETH_H
+#define HW_ETH_H
+
+#include <cfg/compiler.h>
+
+extern uint8_t mac_addr[6];
+
+#endif // HW_ETH_H