From b6b7cb68fe5f979418b595c667bf714fee90b787 Mon Sep 17 00:00:00 2001 From: asterix Date: Mon, 19 Dec 2011 17:03:35 +0000 Subject: [PATCH] Fix and update the template prj. git-svn-id: https://src.develer.com/svnoss/bertos/trunk@5185 38d2e660-2303-0410-9eaa-f027e97ec537 --- .../templates/sam3n-ek_empty/cfg/cfg_adc.h | 37 +++++ .../templates/sam3n-ek_empty/cfg/cfg_dac.h | 88 ++++++++++++ .../templates/sam3n-ek_empty/cfg/cfg_eeprom.h | 64 +++++++++ .../templates/sam3n-ek_empty/cfg/cfg_http.h | 64 +++++++++ .../templates/sam3n-ek_empty/cfg/cfg_i2s.h | 79 +++++++++-- .../sam3n-ek_empty/cfg/cfg_ini_reader.h | 6 + .../sam3n-ek_empty/cfg/cfg_led_7seg.h | 80 +++++++++++ .../templates/sam3n-ek_empty/cfg/cfg_lwip.h | 13 ++ .../templates/sam3n-ek_empty/cfg/cfg_nand.h | 111 +++++++++++++++ .../templates/sam3n-ek_empty/cfg/cfg_parser.h | 20 +++ .../templates/sam3n-ek_empty/cfg/cfg_proc.h | 6 + .../templates/sam3n-ek_empty/cfg/cfg_pwm.h | 8 ++ .../templates/sam3n-ek_empty/cfg/cfg_random.h | 65 +++++++++ .../templates/sam3n-ek_empty/cfg/cfg_sd.h | 8 ++ .../templates/sam3n-ek_empty/cfg/cfg_ser.h | 8 +- .../templates/sam3n-ek_empty/cfg/cfg_tftp.h | 20 +++ .../templates/sam3n-ek_empty/cfg/cfg_usb.h | 21 +++ .../templates/sam3n-ek_empty/cfg/cfg_wm8731.h | 133 ++++++++++++++++++ .../sam3n-ek/templates/sam3n-ek_empty/main.c | 2 +- .../templates/sam3n-ek_empty/project.bertos | 74 ++++------ .../sam3n-ek_empty/sam3n-ek_empty.mk | 93 ++++++------ .../sam3n-ek_empty/sam3n-ek_empty_user.mk | 24 ++-- 22 files changed, 910 insertions(+), 114 deletions(-) create mode 100644 boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_dac.h create mode 100644 boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_eeprom.h create mode 100644 boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_http.h create mode 100644 boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_led_7seg.h create mode 100644 boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_nand.h create mode 100644 boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_random.h create mode 100644 boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_tftp.h create mode 100644 boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_wm8731.h diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_adc.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_adc.h index df2587be..62ee6ed7 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_adc.h +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_adc.h @@ -109,4 +109,41 @@ */ #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/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_dac.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_dac.h new file mode 100644 index 00000000..1ae1e984 --- /dev/null +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_dac.h @@ -0,0 +1,88 @@ +/** + * \file + * + * + * \brief Configuration file for DAC module. + * + * + * \author Daniele Basile + */ + +#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/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_eeprom.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_eeprom.h new file mode 100644 index 00000000..b56c1f9c --- /dev/null +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_eeprom.h @@ -0,0 +1,64 @@ +/** + * \file + * + * + * \brief Configuration file for the Eeprom module. + * + * \author Daniele Basile + */ + +#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/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_http.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_http.h new file mode 100644 index 00000000..0aba5f02 --- /dev/null +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_http.h @@ -0,0 +1,64 @@ +/** + * \file + * + * + * \brief Configuration file for the HTTP module. + * + * \author Daniele Basile + */ + +#ifndef CFG_HTTP_H +#define CFG_HTTP_H + +/** + * Module logging level. + * + * $WIZ$ type = "enum" + * $WIZ$ value_list = "log_level" + */ +#define HTTP_LOG_LEVEL LOG_LVL_INFO + +/** + * Module logging format. + * + * $WIZ$ type = "enum" + * $WIZ$ value_list = "log_format" + */ +#define HTTP_LOG_FORMAT LOG_FMT_VERBOSE + +/** + * Default start page to load + * + * $WIZ$ type = "str" + */ +#define HTTP_DEFAULT_PAGE "index.htm" + +#endif /* CFG_HTTP_H */ diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_i2s.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_i2s.h index 6657157e..934da1b9 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_i2s.h +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_i2s.h @@ -34,11 +34,28 @@ * * * \author Luca Ottaviano + * \author Daniele Basile */ #ifndef CFG_I2S_H #define CFG_I2S_H +/** + * Module logging level. + * + * $WIZ$ type = "enum" + * $WIZ$ value_list = "log_level" + */ +#define I2S_LOG_LEVEL LOG_LVL_INFO + +/** + * Module logging format. + * + * $WIZ$ type = "enum" + * $WIZ$ value_list = "log_format" + */ +#define I2S_LOG_FORMAT LOG_FMT_TERSE + /** * Length of each play buffer. * @@ -56,19 +73,65 @@ #define CONFIG_SAMPLE_FREQ 44100UL /** - * Module logging level. + * Sample bits per channel. * - * $WIZ$ type = "enum" - * $WIZ$ value_list = "log_level" + * $WIZ$ type = "int" + * * $WIZ$ min = 8 + * $WIZ$ max = 32 */ -#define I2S_LOG_LEVEL LOG_LVL_INFO +#define CONFIG_WORD_BIT_SIZE 16 /** - * Module logging format. + * Number of channel. * - * $WIZ$ type = "enum" - * $WIZ$ value_list = "log_format" + * $WIZ$ type = "int" */ -#define I2S_LOG_FORMAT LOG_FMT_TERSE +#define CONFIG_CHANNEL_NUM 2 + +/** + * Size of trasmit start delay + * + * $WIZ$ type = "int" + * $WIZ$ min = 0 + * $WIZ$ max = 255 + */ +#define CONFIG_DELAY 0 + +/** + * Generate frame sync every 2 x CONFIG_PERIOD bits (zero based) + * + * $WIZ$ type = "int" + * $WIZ$ min = 0 + * $WIZ$ max = 512 + */ +#define CONFIG_PERIOD 15 + +/** + * Number of words transmitted in frame + * + * $WIZ$ type = "int" + * $WIZ$ min = 0 + * $WIZ$ max = 16 + */ +#define CONFIG_WORD_PER_FRAME 1 + +/** + * Size of Synchro data register (zero based) + * + * $WIZ$ type = "int" + * $WIZ$ min = 0 + * $WIZ$ max = 15 + */ +#define CONFIG_FRAME_SYNC_SIZE 15 + + +/** + * Extra Size of Synchro data register (CONFIG_FRAME_SYNC_SIZE + CONFIG_EXTRA_FRAME_SYNC_SIZE * 16 + 1) (zero based) + * + * $WIZ$ type = "int" + * $WIZ$ min = 0 + * $WIZ$ max = 15 + */ +#define CONFIG_EXTRA_FRAME_SYNC_SIZE 0 #endif /* CFG_I2S_H */ diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_ini_reader.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_ini_reader.h index d0be4389..048139a4 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_ini_reader.h +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_ini_reader.h @@ -45,4 +45,10 @@ */ #define CONFIG_INI_MAX_LINE_LEN 64 +/** + * Make case insensitive comparisons. + * $WIZ$ type = "boolean" + */ +#define CONFIG_INI_CASE_INSENSITIVE 0 + #endif /* CFG_INI_READER_H */ diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_led_7seg.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_led_7seg.h new file mode 100644 index 00000000..d854b11d --- /dev/null +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_led_7seg.h @@ -0,0 +1,80 @@ +/** + * \file cfg_led_7seg.h + * + * + * \brief Configuration file for led 7 segment display. + * + * \author Fabio Bizzi + * + * \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 + diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_lwip.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_lwip.h index c9aa49f4..73acb913 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_lwip.h +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_lwip.h @@ -133,8 +133,10 @@ /** * 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 @@ -701,12 +703,16 @@ /** 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 @@ -1200,6 +1206,13 @@ * $WIZ$ type = "boolean" */ #define LWIP_SOCKET 1 +#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. diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_nand.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_nand.h new file mode 100644 index 00000000..bd3b2623 --- /dev/null +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_nand.h @@ -0,0 +1,111 @@ +/** + * \file + * + * + * \author Stefano Fedrigo + * + * \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 */ diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_parser.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_parser.h index 572b4a24..67e091a5 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_parser.h +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_parser.h @@ -38,7 +38,27 @@ #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 */ diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_proc.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_proc.h index 3c9439fb..fca6edef 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_proc.h +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_proc.h @@ -74,6 +74,12 @@ */ #define CONFIG_KERN_PRI 0 +/** + * Priority-inheritance protocol. + * $WIZ$ type = "boolean" + */ +#define CONFIG_KERN_PRI_INHERIT 0 + /** * Dynamic memory allocation for processes. * $WIZ$ type = "boolean" diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_pwm.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_pwm.h index 595189e6..68d62837 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_pwm.h +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_pwm.h @@ -53,4 +53,12 @@ */ #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/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_random.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_random.h new file mode 100644 index 00000000..5e3afdff --- /dev/null +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_random.h @@ -0,0 +1,65 @@ +/** + * \file + * + * + * \author Andrea Righi + * + * \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/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_sd.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_sd.h index 8c40f827..ac2abb1d 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_sd.h +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_sd.h @@ -63,6 +63,14 @@ */ #define CONFIG_SD_AUTOASSIGN_FAT 1 +/** + * SD bus mode. + * + * $WIZ$ type = "enum" + * $WIZ$ value_list = "sd_mode" + */ +#define CONFIG_SD_MODE SD_SPI_MODE + /** * Enable backward compatibility for sd_init(). * If enabled, sd_init() will allocate internally an Sd context, diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_ser.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_ser.h index 91a10e0b..e7d5cc43 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_ser.h +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_ser.h @@ -160,14 +160,14 @@ * * $WIZ$ type = "enum" * $WIZ$ value_list = "ser_order_bit" - * $WIZ$ supports = "avr" + * $WIZ$ supports = "avr and not xmega32d" */ #define CONFIG_SPI_DATA_ORDER SER_MSB_FIRST /** * SPI clock division factor. * $WIZ$ type = "int" - * $WIZ$ supports = "avr" + * $WIZ$ supports = "avr and not xmega32d" */ #define CONFIG_SPI_CLOCK_DIV 16 @@ -175,7 +175,7 @@ * SPI clock polarity: normal low or normal high. * $WIZ$ type = "enum" * $WIZ$ value_list = "ser_spi_pol" - * $WIZ$ supports = "avr" + * $WIZ$ supports = "avr and not xmega32d" */ #define CONFIG_SPI_CLOCK_POL SPI_NORMAL_LOW @@ -184,7 +184,7 @@ * sample on second clock edge. * $WIZ$ type = "enum" * $WIZ$ value_list = "ser_spi_phase" - * $WIZ$ supports = "avr" + * $WIZ$ supports = "avr and not xmega32d" */ #define CONFIG_SPI_CLOCK_PHASE SPI_SAMPLE_ON_FIRST_EDGE diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_tftp.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_tftp.h new file mode 100644 index 00000000..36cc622c --- /dev/null +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_tftp.h @@ -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 */ diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_usb.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_usb.h index e5a282b1..dbfd6fe1 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_usb.h +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_usb.h @@ -61,4 +61,25 @@ */ #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 */ diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_wm8731.h b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_wm8731.h new file mode 100644 index 00000000..76280b65 --- /dev/null +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/cfg/cfg_wm8731.h @@ -0,0 +1,133 @@ +/** + * \file + * + * + * \brief Configuration file for the WM8731 module. + * + * \author Daniele Basile + */ + +#ifndef CFG_WM8731_H +#define CFG_WM8731_H + +/** + * Module logging level. + * $WIZ$ type = "enum" + * $WIZ$ value_list = "log_level" + */ +#define WM8731_LOG_LEVEL LOG_LVL_INFO + +/** + * Module logging format. + * $WIZ$ type = "enum" + * $WIZ$ value_list = "log_format" + */ +#define WM8731_LOG_FORMAT LOG_FMT_TERSE + + +/** + * Digital control: ADC High pass filter + * $WIZ$ type = "boolean" + */ +#define CONFIG_WM8731_DAPC 0 + + +/** + * Digital control: De-emphasis control + * $WIZ$ type = "enum" + * $WIZ$ value_list = "wm8731_deemp" + */ +#define CONFIG_WM8731_DEEMP WM8731_DEEMP_DISABLE + +/** + * Digital control: DAC soft mute control + * $WIZ$ type = "boolean" + */ +#define CONFIG_WM8731_DACMU 0 + + +/** + * Analog control: Microphone boost + * $WIZ$ type = "boolean" + */ +#define CONFIG_WM8731_MICBOOST 0 + +/** + * Analog control: Microphone/Line Input select to ADC + * $WIZ$ type = "enum" + * $WIZ$ value_list = "wm8731_insel" + */ +#define CONFIG_WM8731_INSEL WM8731_INSEL_MIC + + +/** + * Analog control: out selector + * $WIZ$ type = "enum" + * $WIZ$ value_list = "wm8731_bypass" + */ +#define CONFIG_WM8731_BYPASS WM8731_DACSEL + +/** + * Analog control: Side tone attenuation + * $WIZ$ type = "enum" + * $WIZ$ value_list = "wm8731_sideatt" + */ +#define CONFIG_WM8731_SIDEATT WM8731_SIDEATT_6dB + + +/** + * Digital Audio interface format. + * $WIZ$ type = "enum" + * $WIZ$ value_list = "wm8731_fmt" + */ +#define CONFIG_WM8731_INTERFACE_FORMAT WM8731_FORMAT_I2S + +/** + * Digital Audio data bit length. + * $WIZ$ type = "enum" + * $WIZ$ value_list = "wm8731_databit" + */ +#define CONFIG_WM8731_IWL_BITS WM8731_IWL_16_BIT + +/** + * Enable Master mode. + * $WIZ$ type = "boolean" + */ +#define CONFIG_WM8731_MS 0 + + +/** + * Data sampling rate, refer to datasheet for this value. + * $WIZ$ type = "hex" + */ +#define CONFIG_WM8731_SAMPLING_RATES 0x6 + +#endif /* CFG_WM8731_H */ diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/main.c b/boards/sam3n-ek/templates/sam3n-ek_empty/main.c index 8e5fb782..e96a29ab 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/main.c +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/main.c @@ -44,8 +44,8 @@ #include #include -#include +#include #include #include #include diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/project.bertos b/boards/sam3n-ek/templates/sam3n-ek_empty/project.bertos index 96df6208..28b50df9 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/project.bertos +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/project.bertos @@ -9,77 +9,65 @@ V48000000 p4 sS'WIZARD_VERSION' p5 -I3 +I4 sS'PROJECT_NAME' p6 -Vempty +Vsam3n-ek_empty p7 sS'TOOLCHAIN' p8 (dp9 -Vtarget +S'path' p10 -Varm-none-eabi +Varm-none-eabi-gcc p11 -sVthread +ssS'PROJECT_SRC_PATH_FROM_MAKEFILE' p12 -Vsingle +Vboards/sam3n-ek/templates/sam3n-ek_empty 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'formatwr' p17 -sVbuild +aS'gfx' p18 -VSourcery G++ Lite 2010q1-188 +aS'kbd' p19 -sVpath +aS'lcd_ili9225' p20 -V/localhome/toolchain/arm/bin/arm-none-eabi-gcc +aS'sprintf' p21 -ssS'ENABLED_MODULES' +aS'text' p22 -(lp23 -S'text' -p24 -aS'kbd' -p25 -aS'lcd_ili9225' -p26 aS'text_format' -p27 -aS'sprintf' -p28 -aS'debug' -p29 +p23 aS'timer' -p30 -aS'gfx' -p31 -aS'formatwr' -p32 +p24 asS'CPU_NAME' -p33 +p25 VSAM3N4 -p34 +p26 sS'PROJECT_HW_PATH' -p35 +p27 S'../..' -p36 +p28 sS'PROJECT_SRC_PATH' -p37 +p29 S'.' -p38 +p30 sS'PRESET' -p39 +p31 I01 +sS'PROJECT_HW_PATH_FROM_MAKEFILE' +p32 +Vboards/sam3n-ek +p33 sS'OUTPUT' -p40 -(lp41 +p34 +(lp35 S'codelite' -p42 +p36 as. \ No newline at end of file diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/sam3n-ek_empty.mk b/boards/sam3n-ek/templates/sam3n-ek_empty/sam3n-ek_empty.mk index 0b669328..bc50814c 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/sam3n-ek_empty.mk +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/sam3n-ek_empty.mk @@ -1,94 +1,95 @@ # # Wizard autogenerated makefile. -# DO NOT EDIT, use the empty_user.mk file instead. +# DO NOT EDIT, use the sam3n-ek_empty_user.mk file instead. # # Constants automatically defined by the selected modules -empty_DEBUG = 1 +sam3n-ek_empty_DEBUG = 1 # Our target application -TRG += empty +TRG += sam3n-ek_empty -empty_PREFIX = "arm-none-eabi-" +sam3n-ek_empty_PREFIX = "/localhome/toolchain/arm/bin/arm-none-eabi-" -empty_SUFFIX = "" +sam3n-ek_empty_SUFFIX = "" -empty_SRC_PATH = boards/sam3n-ek/templates/empty +sam3n-ek_empty_SRC_PATH = boards/sam3n-ek/templates/sam3n-ek_empty -empty_HW_PATH = boards/sam3n-ek +sam3n-ek_empty_HW_PATH = boards/sam3n-ek -# Files automatically generated by the wizard. DO NOT EDIT, USE empty_USER_CSRC INSTEAD! -empty_WIZARD_CSRC = \ - bertos/mware/event.c \ - bertos/gfx/bitmap.c \ - bertos/gfx/text.c \ - bertos/drv/lcd_ili9225.c \ +# Files automatically generated by the wizard. DO NOT EDIT, USE sam3n-ek_empty_USER_CSRC INSTEAD! +sam3n-ek_empty_WIZARD_CSRC = \ bertos/cpu/cortex-m3/drv/timer_cm3.c \ + bertos/drv/kbd.c \ + bertos/drv/lcd_ili9225.c \ bertos/drv/timer.c \ - bertos/mware/formatwr.c \ - bertos/mware/sprintf.c \ + bertos/fonts/luBS14.c \ + bertos/gfx/bitmap.c \ bertos/gfx/line.c \ + bertos/gfx/text.c \ bertos/gfx/text_format.c \ - bertos/drv/kbd.c \ - bertos/fonts/luBS14.c \ + bertos/io/kfile.c \ + bertos/mware/event.c \ + bertos/mware/formatwr.c \ bertos/mware/hex.c \ + bertos/mware/sprintf.c \ # -# Files automatically generated by the wizard. DO NOT EDIT, USE empty_USER_PCSRC INSTEAD! -empty_WIZARD_PCSRC = \ +# Files automatically generated by the wizard. DO NOT EDIT, USE sam3n-ek_empty_USER_PCSRC INSTEAD! +sam3n-ek_empty_WIZARD_PCSRC = \ \ # -# Files automatically generated by the wizard. DO NOT EDIT, USE empty_USER_CPPASRC INSTEAD! -empty_WIZARD_CPPASRC = \ +# Files automatically generated by the wizard. DO NOT EDIT, USE sam3n-ek_empty_USER_CPPASRC INSTEAD! +sam3n-ek_empty_WIZARD_CPPASRC = \ \ # -# Files automatically generated by the wizard. DO NOT EDIT, USE empty_USER_CXXSRC INSTEAD! -empty_WIZARD_CXXSRC = \ +# Files automatically generated by the wizard. DO NOT EDIT, USE sam3n-ek_empty_USER_CXXSRC INSTEAD! +sam3n-ek_empty_WIZARD_CXXSRC = \ \ # -# Files automatically generated by the wizard. DO NOT EDIT, USE empty_USER_ASRC INSTEAD! -empty_WIZARD_ASRC = \ +# Files automatically generated by the wizard. DO NOT EDIT, USE sam3n-ek_empty_USER_ASRC INSTEAD! +sam3n-ek_empty_WIZARD_ASRC = \ \ # -empty_CPPFLAGS = -D'CPU_FREQ=(48000000UL)' -D'ARCH=(ARCH_DEFAULT)' -D'WIZ_AUTOGEN' -I$(empty_HW_PATH) -I$(empty_SRC_PATH) $(empty_CPU_CPPFLAGS) $(empty_USER_CPPFLAGS) +sam3n-ek_empty_CPPFLAGS = -D'CPU_FREQ=(48000000UL)' -D'ARCH=(ARCH_DEFAULT)' -D'WIZ_AUTOGEN' -I$(sam3n-ek_empty_HW_PATH) -I$(sam3n-ek_empty_SRC_PATH) $(sam3n-ek_empty_CPU_CPPFLAGS) $(sam3n-ek_empty_USER_CPPFLAGS) # Automatically generated by the wizard. PLEASE DO NOT EDIT! -empty_LDFLAGS = $(empty_CPU_LDFLAGS) $(empty_WIZARD_LDFLAGS) $(empty_USER_LDFLAGS) +sam3n-ek_empty_LDFLAGS = $(sam3n-ek_empty_CPU_LDFLAGS) $(sam3n-ek_empty_WIZARD_LDFLAGS) $(sam3n-ek_empty_USER_LDFLAGS) # Automatically generated by the wizard. PLEASE DO NOT EDIT! -empty_CPPAFLAGS = $(empty_CPU_CPPAFLAGS) $(empty_WIZARD_CPPAFLAGS) $(empty_USER_CPPAFLAGS) +sam3n-ek_empty_CPPAFLAGS = $(sam3n-ek_empty_CPU_CPPAFLAGS) $(sam3n-ek_empty_WIZARD_CPPAFLAGS) $(sam3n-ek_empty_USER_CPPAFLAGS) # Automatically generated by the wizard. PLEASE DO NOT EDIT! -empty_CSRC = $(empty_CPU_CSRC) $(empty_WIZARD_CSRC) $(empty_USER_CSRC) +sam3n-ek_empty_CSRC = $(sam3n-ek_empty_CPU_CSRC) $(sam3n-ek_empty_WIZARD_CSRC) $(sam3n-ek_empty_USER_CSRC) # Automatically generated by the wizard. PLEASE DO NOT EDIT! -empty_PCSRC = $(empty_CPU_PCSRC) $(empty_WIZARD_PCSRC) $(empty_USER_PCSRC) +sam3n-ek_empty_PCSRC = $(sam3n-ek_empty_CPU_PCSRC) $(sam3n-ek_empty_WIZARD_PCSRC) $(sam3n-ek_empty_USER_PCSRC) # Automatically generated by the wizard. PLEASE DO NOT EDIT! -empty_CPPASRC = $(empty_CPU_CPPASRC) $(empty_WIZARD_CPPASRC) $(empty_USER_CPPASRC) +sam3n-ek_empty_CPPASRC = $(sam3n-ek_empty_CPU_CPPASRC) $(sam3n-ek_empty_WIZARD_CPPASRC) $(sam3n-ek_empty_USER_CPPASRC) # Automatically generated by the wizard. PLEASE DO NOT EDIT! -empty_CXXSRC = $(empty_CPU_CXXSRC) $(empty_WIZARD_CXXSRC) $(empty_USER_CXXSRC) +sam3n-ek_empty_CXXSRC = $(sam3n-ek_empty_CPU_CXXSRC) $(sam3n-ek_empty_WIZARD_CXXSRC) $(sam3n-ek_empty_USER_CXXSRC) # Automatically generated by the wizard. PLEASE DO NOT EDIT! -empty_ASRC = $(empty_CPU_ASRC) $(empty_WIZARD_ASRC) $(empty_USER_ASRC) +sam3n-ek_empty_ASRC = $(sam3n-ek_empty_CPU_ASRC) $(sam3n-ek_empty_WIZARD_ASRC) $(sam3n-ek_empty_USER_ASRC) # CPU specific flags and options, defined in the CPU definition files. # Automatically generated by the wizard. PLEASE DO NOT EDIT! -empty_CPU_CPPASRC = bertos/cpu/cortex-m3/hw/crt_cm3.S bertos/cpu/cortex-m3/hw/vectors_cm3.S -empty_CPU_CPPAFLAGS = -g -gdwarf-2 -mthumb -mno-thumb-interwork -empty_CPU_CPPFLAGS = -O0 -g3 -gdwarf-2 -mthumb -mno-thumb-interwork -fno-strict-aliasing -fwrapv -fverbose-asm -Ibertos/cpu/cortex-m3/ -D__ARM_SAM3N4__ -empty_CPU_CSRC = bertos/cpu/cortex-m3/hw/init_cm3.c bertos/cpu/cortex-m3/drv/irq_cm3.c bertos/cpu/cortex-m3/drv/clock_sam3.c -empty_PROGRAMMER_CPU = sam3 -empty_STOPFLASH_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh -empty_CPU = cortex-m3 -empty_STOPDEBUG_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh -empty_DEBUG_SCRIPT = bertos/prg_scripts/arm/debug.sh -empty_CPU_LDFLAGS = -mthumb -mno-thumb-interwork -nostartfiles -Wl,--no-warn-mismatch -T bertos/cpu/cortex-m3/scripts/sam3n4_rom.ld -empty_FLASH_SCRIPT = bertos/prg_scripts/arm/flash-sam3.sh - -include $(empty_SRC_PATH)/empty_user.mk +sam3n-ek_empty_CPU_CPPASRC = bertos/cpu/cortex-m3/hw/crt_cm3.S bertos/cpu/cortex-m3/hw/vectors_cm3.S +sam3n-ek_empty_CPU_CPPAFLAGS = -g -gdwarf-2 -mthumb -mno-thumb-interwork +sam3n-ek_empty_CPU_CPPFLAGS = -O0 -g3 -gdwarf-2 -mthumb -mno-thumb-interwork -fno-strict-aliasing -fwrapv -fverbose-asm -Ibertos/cpu/cortex-m3/ -D__ARM_SAM3N4__ +sam3n-ek_empty_CPU_CSRC = bertos/cpu/cortex-m3/hw/init_cm3.c bertos/cpu/cortex-m3/drv/irq_cm3.c bertos/cpu/cortex-m3/drv/clock_sam3.c +sam3n-ek_empty_PROGRAMMER_CPU = sam3 +sam3n-ek_empty_CPU_LDFLAGS = -mthumb -mno-thumb-interwork -nostartfiles -Wl,--no-warn-mismatch -Wl,-dT bertos/cpu/cortex-m3/scripts/sam3n4_rom.ld +sam3n-ek_empty_STOPFLASH_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh +sam3n-ek_empty_CPU = cortex-m3 +sam3n-ek_empty_STOPDEBUG_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh +sam3n-ek_empty_DEBUG_SCRIPT = bertos/prg_scripts/arm/debug.sh +sam3n-ek_empty_FLASH_SCRIPT = bertos/prg_scripts/arm/flash-sam3.sh + +include $(sam3n-ek_empty_SRC_PATH)/sam3n-ek_empty_user.mk diff --git a/boards/sam3n-ek/templates/sam3n-ek_empty/sam3n-ek_empty_user.mk b/boards/sam3n-ek/templates/sam3n-ek_empty/sam3n-ek_empty_user.mk index ec0ac69f..7c656721 100644 --- a/boards/sam3n-ek/templates/sam3n-ek_empty/sam3n-ek_empty_user.mk +++ b/boards/sam3n-ek/templates/sam3n-ek_empty/sam3n-ek_empty_user.mk @@ -4,41 +4,41 @@ # # Programmer interface configuration, see http://dev.bertos.org/wiki/ProgrammerInterface for help -empty_PROGRAMMER_TYPE = none -empty_PROGRAMMER_PORT = none +sam3n-ek_empty_PROGRAMMER_TYPE = none +sam3n-ek_empty_PROGRAMMER_PORT = none # Files included by the user. -empty_USER_CSRC = \ - $(empty_SRC_PATH)/main.c \ - bertos/cpu/arm/drv/spi_dma_at91.c \ +sam3n-ek_empty_USER_CSRC = \ + $(sam3n-ek_empty_SRC_PATH)/main.c \ + bertos/cpu/cortex-m3/drv/spi_dma_sam3.c \ # # Files included by the user. -empty_USER_PCSRC = \ +sam3n-ek_empty_USER_PCSRC = \ # # Files included by the user. -empty_USER_CPPASRC = \ +sam3n-ek_empty_USER_CPPASRC = \ # # Files included by the user. -empty_USER_CXXSRC = \ +sam3n-ek_empty_USER_CXXSRC = \ # # Files included by the user. -empty_USER_ASRC = \ +sam3n-ek_empty_USER_ASRC = \ # # Flags included by the user. -empty_USER_LDFLAGS = \ +sam3n-ek_empty_USER_LDFLAGS = \ # # Flags included by the user. -empty_USER_CPPAFLAGS = \ +sam3n-ek_empty_USER_CPPAFLAGS = \ # # Flags included by the user. -empty_USER_CPPFLAGS = \ +sam3n-ek_empty_USER_CPPFLAGS = \ -fno-strict-aliasing \ -fwrapv \ # -- 2.25.1