Update sam7x tcp server project and prepare for nightly test.
authorlottaviano <lottaviano@38d2e660-2303-0410-9eaa-f027e97ec537>
Tue, 24 May 2011 14:42:37 +0000 (14:42 +0000)
committerlottaviano <lottaviano@38d2e660-2303-0410-9eaa-f027e97ec537>
Tue, 24 May 2011 14:42:37 +0000 (14:42 +0000)
git-svn-id: https://src.develer.com/svnoss/bertos/trunk@4930 38d2e660-2303-0410-9eaa-f027e97ec537

18 files changed:
Makefile.test
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/at91sam7x-ek_tcp_server.mk
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/at91sam7x-ek_tcp_server_user.mk
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_adc.h
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_dac.h [new file with mode: 0644]
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_eeprom.h [new file with mode: 0644]
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_led_7seg.h [new file with mode: 0644]
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_lwip.h
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_nand.h [new file with mode: 0644]
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_parser.h
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_proc.h
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_pwm.h
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_random.h [new file with mode: 0644]
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_tftp.h [new file with mode: 0644]
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_usb.h
boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/project.bertos
boards/at91sam7x-ek/hw/hw_eth.c [new file with mode: 0644]
boards/at91sam7x-ek/hw/hw_eth.h [new file with mode: 0644]

index f23b560f084a71b9f64dc041210e7534f9646eb4..1eefd55c16f23e1fb352c4bc9d8e2a37a28f5d6f 100644 (file)
@@ -42,6 +42,6 @@ include ./boards/stm32-p103/examples/usbmouse/usbmouse.mk
 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
index 694862a42fc901ea225de54903ac696f7f70b37a..8f33912b2a302bab4ea0872e78ee0f6cf5f68375 100644 (file)
 #
 # 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
index 2e889937c4c76cca5bc400ccb2a6210d87e77601..2fa486a8ae9c8ddf3b0727a75e63b296ef1e48ac 100644 (file)
@@ -4,41 +4,53 @@
 #
 
 # 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 \
        #
index df2587be517232fd86b9192faa5c39172c793330..62ee6ed73f34bc223e71e3c0d47003c48fc3b704 100644 (file)
  */
 #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 */
diff --git a/boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_dac.h b/boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_dac.h
new file mode 100644 (file)
index 0000000..1ae1e98
--- /dev/null
@@ -0,0 +1,88 @@
+/**
+ * \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 */
diff --git a/boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_eeprom.h b/boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_eeprom.h
new file mode 100644 (file)
index 0000000..b56c1f9
--- /dev/null
@@ -0,0 +1,64 @@
+/**
+ * \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 */
diff --git a/boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_led_7seg.h b/boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_led_7seg.h
new file mode 100644 (file)
index 0000000..d854b11
--- /dev/null
@@ -0,0 +1,80 @@
+/**
+ * \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
+
index 232afef5a42266ea1385477a3de339798d090419..fdb4f11efcfc62ce1a5b1a10a50e17bbbc5fe048 100644 (file)
 
 /**
  * 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
diff --git a/boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_nand.h b/boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_nand.h
new file mode 100644 (file)
index 0000000..bd3b262
--- /dev/null
@@ -0,0 +1,111 @@
+/**
+ * \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 */
index 572b4a24f40450bf7d45d391ad6a8cfc739a6f2b..67e091a56b690da308b300d204047c61423b8738 100644 (file)
 #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 */
 
index 4c55c795d6ee10aa5f7ab617ca231724a31d12ef..785fe736a4d9f9f071ab4929eaa99dec0fcbc463 100644 (file)
  */
 #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"
index 595189e64433402dfc0c33c2879385dee3f45351..68d62837c8ee73db35a3bf91e60acc068f465558 100644 (file)
  */
 #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 */
diff --git a/boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_random.h b/boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_random.h
new file mode 100644 (file)
index 0000000..5e3afdf
--- /dev/null
@@ -0,0 +1,65 @@
+/**
+ * \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 */
diff --git a/boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_tftp.h b/boards/at91sam7x-ek/examples/at91sam7x-ek_tcp_server/cfg/cfg_tftp.h
new file mode 100644 (file)
index 0000000..36cc622
--- /dev/null
@@ -0,0 +1,20 @@
+#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 */
index e5a282b158fbac6b52e083113783e179688a57d1..dbfd6fe1f13afc0a70e83e9dfd97f6521971d1a5 100644 (file)
  */
 #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 */
index 77567d8a724c90a1667f11de4e23e7477c520646..2ab4c882bd53375c0bbc1b2f031433ea6b5c6060 100644 (file)
@@ -5,89 +5,75 @@ S'../../../..'
 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
diff --git a/boards/at91sam7x-ek/hw/hw_eth.c b/boards/at91sam7x-ek/hw/hw_eth.c
new file mode 100644 (file)
index 0000000..c24cbfb
--- /dev/null
@@ -0,0 +1,40 @@
+/**
+ * \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 };
diff --git a/boards/at91sam7x-ek/hw/hw_eth.h b/boards/at91sam7x-ek/hw/hw_eth.h
new file mode 100644 (file)
index 0000000..71c2ac8
--- /dev/null
@@ -0,0 +1,44 @@
+/**
+ * \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