diff --git a/bsp/efm32/Efm32gg_rom.ld b/bsp/efm32/Efm32gg_rom.ld new file mode 100644 index 0000000000..a721754fa5 --- /dev/null +++ b/bsp/efm32/Efm32gg_rom.ld @@ -0,0 +1,169 @@ +/***************************************************************************//** + * @file efm32_rom_gg.ld + * @brief Linker script for EFM32 giant gecko with GNU ld + * COPYRIGHT (C) 2011, RT-Thread Development Team + * @author onelife + * @version 0.4 beta + ******************************************************************************* + * @section License + * The license and distribution terms for this file may be found in the file + * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE + ******************************************************************************* + * @section Change Logs + * Date Author Notes + * 2011-12-08 onelife Initial creation for EFM3 giant gecko + * support + ******************************************************************************/ +OUTPUT_FORMAT ("elf32-littlearm", "elf32-bigarm", "elf32-littlearm") +ENTRY(__cs3_reset) +SEARCH_DIR(.) +GROUP(-lgcc -lc -lcs3 -lcs3unhosted) + +MEMORY +{ + CODE (rx) : ORIGIN = 0x00000000, LENGTH = 1024K + DATA (rwx) : ORIGIN = 0x20000000, LENGTH = 128K +} +_system_stack_size = 0x200; + +/* These force the linker to search for particular symbols from + * the start of the link process and thus ensure the user's + * overrides are picked up + */ + +EXTERN(__cs3_reset __cs3_reset_efm32) +EXTERN(__cs3_start_asm _start) + +PROVIDE(__cs3_reset = __cs3_reset_efm32); +PROVIDE(__cs3_start_asm = _start); + +SECTIONS +{ + .text : + { + . = ALIGN(4); + KEEP(*(.cs3.interrupt_vector)) /* Startup code */ + . = ALIGN(4); + + *(.cs3.reset) + *(.cs3.init) + *(.text) /* remaining code */ + *(.text.*) /* remaining code */ + *(.rodata) /* read-only data (constants) */ + *(.rodata*) + *(.glue_7) + *(.glue_7t) + *(.gnu.linkonce.t*) + + /* section information for finsh shell */ + . = ALIGN(4); + __fsymtab_start = .; + KEEP(*(FSymTab)) + __fsymtab_end = .; + . = ALIGN(4); + __vsymtab_start = .; + KEEP(*(VSymTab)) + __vsymtab_end = .; + . = ALIGN(4); + + . = ALIGN(4); + _etext = .; + } > CODE = 0 + + /* .ARM.exidx is sorted, so has to go in its own output section. */ + __exidx_start = .; + .ARM.exidx : + { + *(.ARM.exidx* .gnu.linkonce.armexidx.*) + + /* This is used by the startup in order to initialize the .data secion */ + _sidata = .; + } > CODE + __exidx_end = .; + + /* .data section which is used for initialized data */ + .data : AT (_sidata) + { + . = ALIGN(4); + /* This is used by the startup in order to initialize the .data secion */ + _sdata = . ; + + *(.data) + *(.data.*) + *(.gnu.linkonce.d*) + + . = ALIGN(4); + /* This is used by the startup in order to initialize the .data secion */ + _edata = . ; + } >DATA + + .stack : + { + . = . + _system_stack_size; + . = ALIGN(4); + __cs3_stack = .; + } >DATA + + __bss_start = .; + .bss : + { + . = ALIGN(4); + /* This is used by the startup in order to initialize the .bss secion */ + _sbss = .; + + *(.bss) + *(.bss.*) + *(COMMON) + + . = ALIGN(4); + /* This is used by the startup in order to initialize the .bss secion */ + _ebss = . ; + + *(.bss.init) + } > DATA + __bss_end = .; + _end = .; + + /* Stabs debugging sections. */ + .stab 0 : { *(.stab) } + .stabstr 0 : { *(.stabstr) } + .stab.excl 0 : { *(.stab.excl) } + .stab.exclstr 0 : { *(.stab.exclstr) } + .stab.index 0 : { *(.stab.index) } + .stab.indexstr 0 : { *(.stab.indexstr) } + .comment 0 : { *(.comment) } + + /* DWARF debug sections. + * Symbols in the DWARF debugging sections are relative to + * the beginning of the section so we begin them at 0. + */ + /* DWARF 1 */ + .debug 0 : { *(.debug) } + .line 0 : { *(.line) } + /* GNU DWARF 1 extensions */ + .debug_srcinfo 0 : { *(.debug_srcinfo) } + .debug_sfnames 0 : { *(.debug_sfnames) } + /* DWARF 1.1 and DWARF 2 */ + .debug_aranges 0 : { *(.debug_aranges) } + .debug_pubnames 0 : { *(.debug_pubnames) } + /* DWARF 2 */ + .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } + .debug_abbrev 0 : { *(.debug_abbrev) } + .debug_line 0 : { *(.debug_line) } + .debug_frame 0 : { *(.debug_frame) } + .debug_str 0 : { *(.debug_str) } + .debug_loc 0 : { *(.debug_loc) } + .debug_macinfo 0 : { *(.debug_macinfo) } + /* DWARF 2.1 */ + .debug_ranges 0 : { *(.debug_ranges) } + /* SGI/MIPS DWARF 2 extensions */ + .debug_weaknames 0 : { *(.debug_weaknames) } + .debug_funcnames 0 : { *(.debug_funcnames) } + .debug_typenames 0 : { *(.debug_typenames) } + .debug_varnames 0 : { *(.debug_varnames) } + + .note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) } + .ARM.attributes 0 : { KEEP (*(.ARM.attributes)) } + /DISCARD/ : { *(.note.GNU-stack) } +} + diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32.h index 96085cb33f..b30932656e 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32.h @@ -9,7 +9,7 @@ * Add "#include "efm32.h" to your source files * @endverbatim * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g200f16.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g200f16.h index 12009caa9f..89e9221bd7 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g200f16.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g200f16.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G200F16 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -9762,6 +9762,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g200f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g200f32.h index a183dc57f8..1385722a2b 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g200f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g200f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G200F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -9762,6 +9762,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g200f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g200f64.h index 56649219c4..89e6c391f1 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g200f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g200f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G200F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -9762,6 +9762,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g210f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g210f128.h index 213decd036..4db39cca13 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g210f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g210f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G210F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -9983,6 +9983,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g222f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g222f128.h index f3922682ca..d87d56cb77 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g222f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g222f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G222F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10061,6 +10061,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g222f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g222f32.h index c9b2e0bcf8..73af882687 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g222f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g222f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G222F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10061,6 +10061,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g222f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g222f64.h index fd02519efb..23ad73f03d 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g222f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g222f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G222F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10061,6 +10061,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g230f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g230f128.h index 9804ef2034..88d966764f 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g230f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g230f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G230F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10104,6 +10104,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g230f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g230f32.h index 066c78b3bc..42ef63dcb9 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g230f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g230f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G230F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10104,6 +10104,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g230f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g230f64.h index c4a7254a21..28ddf4a6b8 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g230f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g230f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G230F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10104,6 +10104,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g232f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g232f128.h index df8a52b73c..00f60897e9 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g232f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g232f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G232F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10104,6 +10104,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g232f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g232f32.h index b1c37d0576..3491fcaff4 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g232f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g232f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G232F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10104,6 +10104,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g232f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g232f64.h index 67b28e1b86..2597d080ed 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g232f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g232f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G232F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10104,6 +10104,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g280f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g280f128.h index a029f18f16..7758e1c590 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g280f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g280f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G280F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -11293,6 +11293,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g280f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g280f32.h index 2a58ba46e9..96dbfaa01b 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g280f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g280f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G280F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -11293,6 +11293,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g280f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g280f64.h index a3622a675a..97d031308d 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g280f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g280f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G280F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -11293,6 +11293,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g290f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g290f128.h index e42af3169f..3007a0ff8f 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g290f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g290f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G290F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -11293,6 +11293,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g290f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g290f32.h index 68c9926f21..4e84f53ccf 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g290f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g290f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G290F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -11293,6 +11293,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g290f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g290f64.h index e70f42f68e..470ff898a1 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g290f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g290f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G290F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -11293,6 +11293,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g840f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g840f128.h index aedb2fd890..d8ca27420e 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g840f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g840f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G840F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10578,6 +10578,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g840f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g840f32.h index 9860f5bca8..9ef1f168ae 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g840f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g840f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G840F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10578,6 +10578,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g840f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g840f64.h index 3034bd10ba..0972f9dc03 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g840f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g840f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G840F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10578,6 +10578,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g842f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g842f128.h index 6b93e93491..437ae55d57 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g842f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g842f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G842F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10578,6 +10578,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g842f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g842f32.h index e888e3b548..822a7c9a2f 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g842f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g842f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G842F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10578,6 +10578,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g842f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g842f64.h index a415724e62..1efe9485ff 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g842f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g842f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G842F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -10578,6 +10578,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g880f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g880f128.h index 72b5c4173c..0ef6555370 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g880f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g880f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G880F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -11767,6 +11767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g880f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g880f32.h index 06c8105fbe..0553c8f8a6 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g880f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g880f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G880F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -11767,6 +11767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g880f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g880f64.h index 8d434861e6..9efe2fc5f9 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g880f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g880f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G880F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -11767,6 +11767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g890f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g890f128.h index 33968ec2ba..2077e21eb5 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g890f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g890f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G890F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -11767,6 +11767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g890f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g890f32.h index 2df8a46fd4..059afb0338 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g890f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g890f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G890F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -11767,6 +11767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g890f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g890f64.h index 84fea456b1..7335a144c7 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g890f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32g890f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32G890F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -11767,6 +11767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg230f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg230f1024.h index 0b3fed892e..b0fc447199 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg230f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg230f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG230F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15326,6 +15326,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg230f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg230f512.h index 141c23a53b..2064665cb8 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg230f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg230f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG230F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15326,6 +15326,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg232f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg232f1024.h index 90f311748d..e72600a59c 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg232f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg232f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG232F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15326,6 +15326,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg232f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg232f512.h index d62620e479..c3f280bc8c 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg232f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg232f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG232F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15326,6 +15326,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg280f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg280f1024.h index 73e488a156..ee150de61e 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg280f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg280f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG280F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg280f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg280f512.h index b0a67cefaa..c07fec41ef 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg280f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg280f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG280F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg290f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg290f1024.h index d99227e3e7..ba333c71ba 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg290f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg290f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG290F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg290f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg290f512.h index a1c995cb7f..2a92e9262c 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg290f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg290f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG290F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg295f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg295f1024.h index a2220f931c..1576b00ff9 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg295f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg295f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG295F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg295f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg295f512.h index 302e010b9e..620e1c61d5 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg295f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg295f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG295F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg330f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg330f1024.h index f10b1b6fbc..6e85bd1b0c 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg330f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg330f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG330F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18083,6 +18083,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg330f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg330f512.h index 43abf5d9e9..b862155f06 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg330f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg330f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG330F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18083,6 +18083,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg332f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg332f1024.h index 78c08b806b..b66b2fae87 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg332f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg332f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG332F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18083,6 +18083,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg332f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg332f512.h index 2ff6527d90..2fdd4528a3 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg332f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg332f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG332F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18083,6 +18083,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg380f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg380f1024.h index 415dcd05a9..36e7137cea 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg380f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg380f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG380F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg380f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg380f512.h index 0d1a72398e..a6e7e7d597 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg380f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg380f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG380F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg390f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg390f1024.h index 5328bf62ca..429ddfc066 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg390f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg390f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG390F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg390f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg390f512.h index e0ed2b84f2..d8d4169c52 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg390f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg390f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG390F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg395f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg395f1024.h index 0b0df8ca41..dc8691737f 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg395f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg395f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG395F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg395f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg395f512.h index 7d6ebb4b49..dcdb024388 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg395f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg395f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG395F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg840f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg840f1024.h index 3e4743ff4b..ace839a26c 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg840f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg840f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG840F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15940,6 +15940,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg840f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg840f512.h index bbb6894337..fae4608ed6 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg840f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg840f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG840F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15940,6 +15940,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg842f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg842f1024.h index 8fa6420a8e..2d871a81e8 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg842f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg842f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG842F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15940,6 +15940,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg842f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg842f512.h index 0477bd13de..cccc5b7e48 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg842f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg842f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG842F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15940,6 +15940,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg880f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg880f1024.h index 0931e94d15..8480a15de9 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg880f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg880f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG880F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg880f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg880f512.h index d3160f1465..6c9f89a8a3 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg880f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg880f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG880F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg890f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg890f1024.h index ffb89ed02c..dac4e2dfaf 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg890f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg890f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG890F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg890f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg890f512.h index 592c976a2a..05d161c9a9 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg890f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg890f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG890F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg895f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg895f1024.h index 334739e21e..504c81aa33 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg895f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg895f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG895F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg895f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg895f512.h index 540bc6d5ca..f42a389139 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg895f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg895f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG895F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg940f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg940f1024.h index 4e2212f224..30b95373f9 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg940f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg940f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG940F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18697,6 +18697,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg940f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg940f512.h index cab171f7a8..d0c5aa1412 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg940f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg940f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG940F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18697,6 +18697,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg942f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg942f1024.h index dda22eef60..3b82453f97 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg942f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg942f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG942F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18697,6 +18697,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg942f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg942f512.h index 4afd914c62..7b514f4547 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg942f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg942f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG942F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18697,6 +18697,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg980f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg980f1024.h index 5771a2e328..7165f4237e 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg980f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg980f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG980F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg980f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg980f512.h index 06b0df2051..c54d13f9b4 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg980f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg980f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG980F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg990f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg990f1024.h index f8b5b529fa..eb8a3196c5 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg990f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg990f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG990F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg990f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg990f512.h index e9dfe003b1..ba2de4ba7f 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg990f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg990f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG990F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg995f1024.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg995f1024.h index aeddf095b6..4d17471184 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg995f1024.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg995f1024.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG995F1024 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg995f512.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg995f512.h index 31443e47ce..c79d532cec 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg995f512.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32gg995f512.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32GG995F512 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg230f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg230f128.h index 37dd418656..36f9cdf3c1 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg230f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg230f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG230F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15326,6 +15326,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg230f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg230f256.h index 28ca629d97..29ec564861 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg230f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg230f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG230F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15326,6 +15326,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg230f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg230f64.h index 9fe64b182e..071e8c6aab 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg230f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg230f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG230F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15326,6 +15326,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg232f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg232f128.h index c073bf8a57..96837ee985 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg232f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg232f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG232F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15326,6 +15326,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg232f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg232f256.h index df8ea9c90a..d47a0686f3 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg232f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg232f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG232F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15326,6 +15326,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg232f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg232f64.h index da935bae3f..cd353d0609 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg232f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg232f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG232F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15326,6 +15326,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg280f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg280f128.h index 8b3e3ad5a1..1055522946 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg280f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg280f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG280F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg280f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg280f256.h index 01b3048979..9af4024e8d 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg280f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg280f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG280F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg280f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg280f64.h index bc038010e6..7540e0b2cc 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg280f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg280f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG280F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg290f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg290f128.h index cda8751bbf..29c58e8154 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg290f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg290f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG290F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg290f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg290f256.h index 4a528db1bd..c2e9912f6c 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg290f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg290f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG290F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg290f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg290f64.h index 35193498f2..b9cd00d9e6 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg290f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg290f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG290F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg295f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg295f128.h index 04f524510a..4daf0ec310 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg295f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg295f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG295F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg295f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg295f256.h index 6144679ce1..e5bce196a4 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg295f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg295f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG295F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg295f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg295f64.h index e332855a0f..fc281d5774 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg295f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg295f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG295F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -17905,6 +17905,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg330f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg330f128.h index ceca3ffe37..cc16709e35 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg330f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg330f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG330F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18083,6 +18083,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg330f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg330f256.h index f4b108498e..1f660a8b54 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg330f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg330f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG330F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18083,6 +18083,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg330f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg330f64.h index 66dc366d44..fd2b94edf8 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg330f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg330f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG330F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18083,6 +18083,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg332f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg332f128.h index e4e00bf8d2..5b751a73bc 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg332f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg332f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG332F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18083,6 +18083,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg332f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg332f256.h index 3a41c9867d..08c8ed1dad 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg332f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg332f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG332F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18083,6 +18083,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg332f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg332f64.h index f17d2e1bc8..71f5824677 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg332f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg332f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG332F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18083,6 +18083,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg380f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg380f128.h index d13672a8aa..7a0c856e80 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg380f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg380f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG380F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg380f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg380f256.h index 09e9bc0766..2827ec5874 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg380f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg380f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG380F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg380f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg380f64.h index 4d82dced30..f4f41eeecc 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg380f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg380f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG380F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg390f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg390f128.h index 2df33dd0ba..c6cdf368eb 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg390f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg390f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG390F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg390f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg390f256.h index 6d17a2f231..7f91a9476e 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg390f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg390f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG390F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg390f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg390f64.h index 8abc0d88f3..c0d7616472 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg390f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg390f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG390F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg395f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg395f128.h index c0535b8e69..d033ba3d94 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg395f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg395f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG395F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg395f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg395f256.h index 23617fe8ee..73110a41aa 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg395f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg395f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG395F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg395f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg395f64.h index cc5ed6158b..93fae5cbf1 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg395f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg395f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG395F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -20662,6 +20662,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg840f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg840f128.h index 88fac1800b..5a7fb3b5fe 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg840f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg840f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG840F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15940,6 +15940,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg840f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg840f256.h index 9591913dfc..6d2f24ee24 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg840f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg840f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG840F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15940,6 +15940,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg840f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg840f64.h index a70c622deb..8ce4279d14 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg840f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg840f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG840F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15940,6 +15940,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg842f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg842f128.h index 200437fd3e..c3832faaad 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg842f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg842f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG842F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15940,6 +15940,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg842f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg842f256.h index 5649ed0b03..175419cef6 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg842f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg842f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG842F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15940,6 +15940,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg842f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg842f64.h index 04fc382b59..dbd114ceeb 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg842f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg842f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG842F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -15940,6 +15940,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg880f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg880f128.h index b6c0840d49..e9d5714452 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg880f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg880f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG880F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg880f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg880f256.h index 3d1e9fa820..ec8800a1ae 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg880f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg880f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG880F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg880f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg880f64.h index e3e6d57e87..aed2dd7e32 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg880f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg880f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG880F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg890f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg890f128.h index 4528181d7f..3ae79ec68f 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg890f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg890f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG890F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg890f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg890f256.h index f89ecbf5ce..62707292a7 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg890f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg890f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG890F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg890f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg890f64.h index a72bdcd8e8..b636263aef 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg890f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg890f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG890F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg895f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg895f128.h index 12a6e7c59f..39b3bc2f88 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg895f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg895f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG895F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg895f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg895f256.h index 3488d00319..3a8d0df658 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg895f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg895f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG895F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg895f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg895f64.h index e31644c04d..3a712f825b 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg895f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg895f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG895F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18519,6 +18519,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg940f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg940f128.h index 64f6c9bf77..0ffef455b6 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg940f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg940f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG940F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18697,6 +18697,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg940f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg940f256.h index e46d7b681b..063eaca883 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg940f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg940f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG940F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18697,6 +18697,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg940f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg940f64.h index 10603af112..1935ed808b 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg940f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg940f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG940F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18697,6 +18697,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg942f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg942f128.h index 6a2cd59ead..bbd0d59484 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg942f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg942f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG942F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18697,6 +18697,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg942f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg942f256.h index 23b2a7bc3f..75899e7eca 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg942f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg942f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG942F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18697,6 +18697,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg942f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg942f64.h index d5dec14ede..91d2e8887c 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg942f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg942f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG942F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -18697,6 +18697,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg980f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg980f128.h index 513339e78a..b00ed7ba6a 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg980f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg980f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG980F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg980f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg980f256.h index 2aac421ed7..a003477716 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg980f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg980f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG980F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg980f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg980f64.h index 03c41eebcc..1fb5ee125e 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg980f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg980f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG980F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg990f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg990f128.h index 33f77ec1aa..824c0edba7 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg990f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg990f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG990F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg990f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg990f256.h index 5583849722..549b76ccc2 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg990f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg990f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG990F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg990f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg990f64.h index 9ece9c2f46..09641505ee 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg990f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg990f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG990F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg995f128.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg995f128.h index a9e09e43e8..1fcc7abe7c 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg995f128.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg995f128.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG995F128 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg995f256.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg995f256.h index f292f30610..13a7d3a7f9 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg995f256.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg995f256.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG995F256 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg995f64.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg995f64.h index 178e418047..673d9268bf 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg995f64.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32lg995f64.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32LG995F64 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -21276,6 +21276,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f16.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f16.h index fac6b14722..771b9a0bf8 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f16.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f16.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG108F16 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2654,11 +2654,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3331,11 +3335,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -11076,6 +11082,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f32.h index c7eab1658d..c8525842fb 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG108F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2654,11 +2654,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3331,11 +3335,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -11076,6 +11082,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f4.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f4.h index b0cbbe3c23..da53f72762 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f4.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f4.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG108F4 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2654,11 +2654,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3331,11 +3335,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -11076,6 +11082,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f8.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f8.h index ee79dc4584..c65f1ea552 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f8.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg108f8.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG108F8 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2654,11 +2654,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3331,11 +3335,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -11076,6 +11082,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f16.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f16.h index ebf378935a..ffea56c651 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f16.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f16.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG110F16 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f32.h index 0574a399c4..733e5451c1 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG110F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f4.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f4.h index 5a1d56726a..ebb92a62d4 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f4.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f4.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG110F4 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f8.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f8.h index 3eb2f4259d..2e74f497e1 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f8.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg110f8.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG110F8 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg210f16.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg210f16.h index a9d9b670ff..eeb65422de 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg210f16.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg210f16.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG210F16 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg210f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg210f32.h index 5dc90e6235..eff2ff1128 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg210f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg210f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG210F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg210f8.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg210f8.h index edbc7f1ea7..fe6aaa10be 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg210f8.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg210f8.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG210F8 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg222f16.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg222f16.h index 0ae940d5de..0e3f366517 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg222f16.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg222f16.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG222F16 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg222f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg222f32.h index 3edf3b0adf..b5dee1e90d 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg222f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg222f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG222F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg222f8.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg222f8.h index d9b5343133..50698728e2 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg222f8.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg222f8.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG222F8 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg230f16.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg230f16.h index 9187a2f0ff..c27074d158 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg230f16.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg230f16.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG230F16 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg230f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg230f32.h index a3f9b2064c..f35425123d 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg230f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg230f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG230F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg230f8.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg230f8.h index 07647ec0d4..8f25b1c048 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg230f8.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg230f8.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG230F8 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg232f16.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg232f16.h index c389a2c2c9..0aa060e272 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg232f16.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg232f16.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG232F16 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg232f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg232f32.h index 1581f2eb15..c4acf7a19e 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg232f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg232f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG232F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg232f8.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg232f8.h index 605323d120..4fb3810413 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg232f8.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg232f8.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG232F8 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2763,11 +2763,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3440,11 +3444,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -12761,6 +12767,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg822f16.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg822f16.h index f0133da0f1..203aaedddf 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg822f16.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg822f16.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG822F16 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2803,11 +2803,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3480,11 +3484,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -13254,6 +13260,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg822f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg822f32.h index 6b84649896..9d57687322 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg822f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg822f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG822F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2803,11 +2803,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3480,11 +3484,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -13254,6 +13260,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg822f8.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg822f8.h index 0f276fb87e..71c79333ec 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg822f8.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg822f8.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG822F8 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2803,11 +2803,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3480,11 +3484,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -13254,6 +13260,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg840f16.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg840f16.h index 38a8f6dda2..ae94f1f062 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg840f16.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg840f16.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG840F16 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2803,11 +2803,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3480,11 +3484,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -13254,6 +13260,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg840f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg840f32.h index f2689ca593..bb149dbd3b 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg840f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg840f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG840F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2803,11 +2803,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3480,11 +3484,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -13254,6 +13260,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg840f8.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg840f8.h index 52611a75c9..35e106d157 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg840f8.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg840f8.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG840F8 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2803,11 +2803,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3480,11 +3484,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -13254,6 +13260,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg842f16.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg842f16.h index d69a753bda..5eeded516c 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg842f16.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg842f16.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG842F16 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2803,11 +2803,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3480,11 +3484,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -13254,6 +13260,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg842f32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg842f32.h index e054fad1bd..403a4c28e7 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg842f32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg842f32.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG842F32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2803,11 +2803,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3480,11 +3484,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -13254,6 +13260,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg842f8.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg842f8.h index b5121338fb..25950b1937 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg842f8.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/efm32tg842f8.h @@ -3,7 +3,7 @@ * @brief CMSIS Cortex-M3 Peripheral Access Layer Header File * for EFM EFM32TG842F8 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -2803,11 +2803,15 @@ typedef struct #define _USART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for USART_ROUTE */ #define _USART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for USART_ROUTE */ +#define _USART_ROUTE_LOCATION_LOC5 0x00000005UL /**< Mode LOC5 for USART_ROUTE */ #define USART_ROUTE_LOCATION_DEFAULT (_USART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC0 (_USART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC1 (_USART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC2 (_USART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for USART_ROUTE */ #define USART_ROUTE_LOCATION_LOC3 (_USART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC4 (_USART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for USART_ROUTE */ +#define USART_ROUTE_LOCATION_LOC5 (_USART_ROUTE_LOCATION_LOC5 << 8) /**< Shifted mode LOC5 for USART_ROUTE */ /* Bit fields for USART INPUT */ #define _USART_INPUT_RESETVALUE 0x00000000UL /**< Default value for USART_INPUT */ @@ -3480,11 +3484,13 @@ typedef struct #define _LEUART_ROUTE_LOCATION_LOC1 0x00000001UL /**< Mode LOC1 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC2 0x00000002UL /**< Mode LOC2 for LEUART_ROUTE */ #define _LEUART_ROUTE_LOCATION_LOC3 0x00000003UL /**< Mode LOC3 for LEUART_ROUTE */ +#define _LEUART_ROUTE_LOCATION_LOC4 0x00000004UL /**< Mode LOC4 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_DEFAULT (_LEUART_ROUTE_LOCATION_DEFAULT << 8) /**< Shifted mode DEFAULT for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC0 (_LEUART_ROUTE_LOCATION_LOC0 << 8) /**< Shifted mode LOC0 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC1 (_LEUART_ROUTE_LOCATION_LOC1 << 8) /**< Shifted mode LOC1 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC2 (_LEUART_ROUTE_LOCATION_LOC2 << 8) /**< Shifted mode LOC2 for LEUART_ROUTE */ #define LEUART_ROUTE_LOCATION_LOC3 (_LEUART_ROUTE_LOCATION_LOC3 << 8) /**< Shifted mode LOC3 for LEUART_ROUTE */ +#define LEUART_ROUTE_LOCATION_LOC4 (_LEUART_ROUTE_LOCATION_LOC4 << 8) /**< Shifted mode LOC4 for LEUART_ROUTE */ /* Bit fields for LEUART INPUT */ #define _LEUART_INPUT_RESETVALUE 0x00000000UL /**< Default value for LEUART_INPUT */ @@ -13254,6 +13260,11 @@ typedef struct #define _DEVINFO_PART_PROD_REV_SHIFT 24 /**< Bit position for production revision */ #define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /**< Device Family, 0x47 for Gecko */ #define _DEVINFO_PART_DEVICE_FAMILY_SHIFT 16 /**< Bit position for device family */ +#define _DEVINFO_PART_DEVICE_FAMILY_G 71 /**< Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_GG 72 /**< Giant Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_TG 73 /**< Tiny Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_LG 74 /**< Leopard Gecko Device Family */ +#define _DEVINFO_PART_DEVICE_FAMILY_ZG 75 /**< Zero Gecko Device Family */ #define _DEVINFO_PART_DEVICE_NUMBER_MASK 0x0000FFFFUL /**< Device number */ #define _DEVINFO_PART_DEVICE_NUMBER_SHIFT 0 /**< Bit position for device number */ diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32.s b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32.s index 55ad181d40..c4fbc0f376 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32.s +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32.s @@ -2,7 +2,7 @@ ; * @file: startup_efm32.s ; * @purpose: CMSIS Cortex-M3 Core Device Startup File ; * for the Energy Micro EFM32 device series -; * @version 2.2.2 +; * @version 2.3.0 ; * @date: January 2011 ; *------- <<< Use Configuration Wizard in Context Menu >>> ------------------ ; * diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32gg.s b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32gg.s index ddb9d41cbc..0cf033dbd1 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32gg.s +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32gg.s @@ -2,7 +2,7 @@ ; * @file: startup_efm32.s ; * @purpose: CMSIS Cortex-M3 Core Device Startup File ; * for the Energy Micro EFM32 device series -; * @version 2.2.2 +; * @version 2.3.0 ; * @date: January 2011 ; *------- <<< Use Configuration Wizard in Context Menu >>> ------------------ ; * diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32lg.s b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32lg.s index 83cf8da684..0cf033dbd1 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32lg.s +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32lg.s @@ -2,7 +2,7 @@ ; * @file: startup_efm32.s ; * @purpose: CMSIS Cortex-M3 Core Device Startup File ; * for the Energy Micro EFM32 device series -; * @version 2.2.2 +; * @version 2.3.0 ; * @date: January 2011 ; *------- <<< Use Configuration Wizard in Context Menu >>> ------------------ ; * @@ -108,6 +108,7 @@ __Vectors DCD __initial_sp ; Top of Stack DCD MSC_IRQHandler ; 35: MSC Interrupt DCD AES_IRQHandler ; 36: AES Interrupt DCD EBI_IRQHandler ; 37: EBI Interrupt + DCD EMU_IRQHandler ; 38: EMU Interrupt __Vectors_End @@ -211,6 +212,7 @@ Default_Handler PROC EXPORT MSC_IRQHandler [WEAK] EXPORT AES_IRQHandler [WEAK] EXPORT EBI_IRQHandler [WEAK] + EXPORT EMU_IRQHandler [WEAK] DMA_IRQHandler @@ -251,6 +253,7 @@ LCD_IRQHandler MSC_IRQHandler AES_IRQHandler EBI_IRQHandler +EMU_IRQHandler B . diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32tg.s b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32tg.s index f06a06af23..f136c879bf 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32tg.s +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/arm/startup_efm32tg.s @@ -2,7 +2,7 @@ ; * @file: startup_efm32.s ; * @purpose: CMSIS Cortex-M3 Core Device Startup File ; * for the Energy Micro EFM32 device series -; * @version 2.2.2 +; * @version 2.3.0 ; * @date: January 2011 ; *------- <<< Use Configuration Wizard in Context Menu >>> ------------------ ; * diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32.s b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32.s index 081f06db08..fbf0b35c36 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32.s +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32.s @@ -16,7 +16,7 @@ * they apply. * * Energy Micro release version - * @version 2.2.2 + * @version 2.3.0 */ .section ".cs3.interrupt_vector", "ax" .globl __cs3_interrupt_vector_efm32g diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32gg.s b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32gg.s index de289ec6e2..181362d050 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32gg.s +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32gg.s @@ -16,7 +16,7 @@ * they apply. * * Energy Micro release version - * @version 2.2.2 + * @version 2.3.0 */ .section ".cs3.interrupt_vector", "ax" .globl __cs3_interrupt_vector_efm32g diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32lg.s b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32lg.s index 2fcf5829e3..181362d050 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32lg.s +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32lg.s @@ -16,7 +16,7 @@ * they apply. * * Energy Micro release version - * @version 2.2.2 + * @version 2.3.0 */ .section ".cs3.interrupt_vector", "ax" .globl __cs3_interrupt_vector_efm32g @@ -76,6 +76,7 @@ __cs3_interrupt_vector_efm32g: .long MSC_IRQHandler .long AES_IRQHandler .long EBI_IRQHandler + .long EMU_IRQHandler .size __cs3_interrupt_vector_efm32g, . - __cs3_interrupt_vector_efm32g @@ -254,4 +255,7 @@ _IRQHandlerinterrupt: .weak EBI_IRQHandler .globl EBI_IRQHandler .set EBI_IRQHandler, _IRQHandlerinterrupt + .weak EMU_IRQHandler + .globl EMU_IRQHandler + .set EMU_IRQHandler, _IRQHandlerinterrupt diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32tg.s b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32tg.s index 5edd8e2e07..3b0613552f 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32tg.s +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32tg.s @@ -16,7 +16,7 @@ * they apply. * * Energy Micro release version - * @version 2.2.2 + * @version 2.3.0 */ .section ".cs3.interrupt_vector", "ax" .globl __cs3_interrupt_vector_efm32g diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32.c b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32.c index aee10d6806..fd5906dc63 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32.c +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32.c @@ -2,7 +2,7 @@ * @file * @brief CMSIS Compatible EFM32 startup file in C for IAR EWARM * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32.s b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32.s index 8ba7c93b58..93c7d887c6 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32.s +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32.s @@ -2,7 +2,7 @@ ; * @file: startup_efm32.s ; * @purpose: CMSIS Cortex-M3 Core Device Startup File ; * for the Energy Micro 'EFM32G' Device Series -; * @version 2.2.2 +; * @version 2.3.0 ; * @date: January 2011 ; *---------------------------------------------------------------------------- ; * diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32gg.c b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32gg.c index 8943a0a741..af1e72be37 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32gg.c +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32gg.c @@ -2,7 +2,7 @@ * @file * @brief CMSIS Compatible EFM32 startup file in Cfor IAR EWARM * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32gg.s b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32gg.s index 162c8160ec..d37c48fb9e 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32gg.s +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32gg.s @@ -2,7 +2,7 @@ ; * @file: startup_efm32.s ; * @purpose: CMSIS Cortex-M3 Core Device Startup File ; * for the Energy Micro 'EFM32G' Device Series -; * @version 2.2.2 +; * @version 2.3.0 ; * @date: January 2011 ; *---------------------------------------------------------------------------- ; * diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32lg.c b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32lg.c index 370da06098..af1e72be37 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32lg.c +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32lg.c @@ -2,7 +2,7 @@ * @file * @brief CMSIS Compatible EFM32 startup file in Cfor IAR EWARM * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -277,6 +277,11 @@ __weak void EBI_IRQHandler(void) while(1); } +__weak void EMU_IRQHandler(void) +{ + while(1); +} + /* With IAR, the CSTACK is defined via project options settings */ #pragma location = ".intvec" @@ -335,5 +340,6 @@ const void * const __vector_table[]= { (void *) MSC_IRQHandler, /* 35 - MSC */ (void *) AES_IRQHandler, /* 36 - AES */ (void *) EBI_IRQHandler, /* 37 - EBI */ + (void *) EMU_IRQHandler, /* 38 - EMU */ }; diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32lg.s b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32lg.s index 3f13fdb63a..d37c48fb9e 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32lg.s +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32lg.s @@ -2,7 +2,7 @@ ; * @file: startup_efm32.s ; * @purpose: CMSIS Cortex-M3 Core Device Startup File ; * for the Energy Micro 'EFM32G' Device Series -; * @version 2.2.2 +; * @version 2.3.0 ; * @date: January 2011 ; *---------------------------------------------------------------------------- ; * @@ -114,6 +114,7 @@ __vector_table_0x1c DCD MSC_IRQHandler ; 35: MSC Interrupt DCD AES_IRQHandler ; 36: AES Interrupt DCD EBI_IRQHandler ; 37: EBI Interrupt + DCD EMU_IRQHandler ; 38: EMU Interrupt @@ -372,5 +373,10 @@ AES_IRQHandler EBI_IRQHandler B EBI_IRQHandler + PUBWEAK EMU_IRQHandler + SECTION .text:CODE:REORDER(1) +EMU_IRQHandler + B EMU_IRQHandler + END diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32tg.c b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32tg.c index e7cfb4cfe6..c5cb606b01 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32tg.c +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32tg.c @@ -2,7 +2,7 @@ * @file * @brief CMSIS Compatible EFM32 startup file in Cfor IAR EWARM * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32tg.s b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32tg.s index 27211f6b71..caaf4aa7b5 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32tg.s +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/iar/startup_efm32tg.s @@ -2,7 +2,7 @@ ; * @file: startup_efm32.s ; * @purpose: CMSIS Cortex-M3 Core Device Startup File ; * for the Energy Micro 'EFM32G' Device Series -; * @version 2.2.2 +; * @version 2.3.0 ; * @date: January 2011 ; *---------------------------------------------------------------------------- ; * diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/system_efm32.c b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/system_efm32.c index 803282110b..84dabbdf15 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/system_efm32.c +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/system_efm32.c @@ -2,7 +2,7 @@ * @file * @brief CMSIS Cortex-M3 Peripheral Access Layer for EFM32 devices. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -115,6 +115,10 @@ uint32_t SystemCoreClockGet(void) uint32_t ret; ret = SystemHFClockGet(); +#if defined (_EFM32_GIANT_FAMILY) + /* Leopard/Giant Gecko has an additional divider */ + ret = ret / (1 + ((CMU->CTRL & _CMU_CTRL_HFCLKDIV_MASK)>>_CMU_CTRL_HFCLKDIV_SHIFT)); +#endif ret >>= (CMU->HFCORECLKDIV & _CMU_HFCORECLKDIV_HFCORECLKDIV_MASK) >> _CMU_HFCORECLKDIV_HFCORECLKDIV_SHIFT; diff --git a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/system_efm32.h b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/system_efm32.h index 707becf169..a711ea6761 100644 --- a/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/system_efm32.h +++ b/bsp/efm32/Libraries/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/system_efm32.h @@ -2,7 +2,7 @@ * @file * @brief CMSIS Cortex-M3 Peripheral Access Layer for EFM32 devices. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/SConscript b/bsp/efm32/Libraries/SConscript index 9fc6c7d81c..fc8ae147e9 100644 --- a/bsp/efm32/Libraries/SConscript +++ b/bsp/efm32/Libraries/SConscript @@ -38,18 +38,20 @@ efm32lib/src/efm32_wdog.c # starupt scripts for each EFM32 family startup_scripts = {} -startup_scripts['Gecko'] = 'startup_efm32.s' startup_scripts['TinyGecko'] = 'startup_efm32tg.s' +startup_scripts['Gecko'] = 'startup_efm32.s' +startup_scripts['Giant Gecko'] = 'startup_efm32gg.s' # linker scripts for each EFM32 family #linker_scripts = {} -#linker_scripts['Gecko'] = 'efm32g.ld' #linker_scripts['TinyGecko'] = 'efm32tg.ld' +#linker_scripts['Gecko'] = 'efm32g.ld' +#linker_scripts['Giant Gecko'] = 'efm32gg.ld' -# add startup script +# add startup script src = src + ['CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/' + startup_scripts[rtconfig.EFM32_FAMILY]] - -path = [cwd + '/efm32lib/inc', + +path = [cwd + '/efm32lib/inc', cwd + '/CMSIS/CM3/CoreSupport', cwd + '/CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32'] diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_acmp.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_acmp.h index 68c7c2c4e0..9e10699aaa 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_acmp.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_acmp.h @@ -2,7 +2,7 @@ * @file * @brief Analog Comparator (ACMP) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_adc.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_adc.h index cb0176aa34..63ff796278 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_adc.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_adc.h @@ -2,7 +2,7 @@ * @file * @brief Analog to Digital Converter (ADC) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_aes.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_aes.h index 96d89a7e9c..6293753c78 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_aes.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_aes.h @@ -3,7 +3,7 @@ * @brief Advanced encryption standard (AES) accelerator peripheral API for * EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_assert.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_assert.h index 33a677616a..0a38da1462 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_assert.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_assert.h @@ -2,7 +2,7 @@ * @file * @brief EFM32 peripheral API "assert" implementation. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 * * @details * By default, EFM32 library assert usage is not included in order to reduce diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_bitband.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_bitband.h index 16eb28c974..52c7e7a54c 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_bitband.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_bitband.h @@ -2,7 +2,7 @@ * @file * @brief Bitband Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_chip.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_chip.h index 65aeeb49b0..1cd01e4331 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_chip.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_chip.h @@ -2,7 +2,7 @@ * @file * @brief Chip Initialization API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_cmu.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_cmu.h index 45318fb97b..8aad895874 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_cmu.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_cmu.h @@ -2,7 +2,7 @@ * @file * @brief Clock management unit (CMU) API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -53,6 +53,10 @@ extern "C" { #define CMU_HFCLKSEL_REG 1 #define CMU_LFACLKSEL_REG 2 #define CMU_LFBCLKSEL_REG 3 +#define CMU_DBGCLKSEL_REG 4 +#if defined (_EFM32_GIANT_FAMILY) +#define CMU_USBCCLKSEL_REG 5 +#endif #define CMU_SEL_REG_POS 0 #define CMU_SEL_REG_MASK 0xf @@ -63,7 +67,9 @@ extern "C" { #define CMU_HFCORECLKDIV_REG 2 #define CMU_LFAPRESC0_REG 3 #define CMU_LFBPRESC0_REG 4 - +#if defined (_EFM32_GIANT_FAMILY) +#define CMU_HFCLKDIV_REG 5 +#endif #define CMU_DIV_REG_POS 4 #define CMU_DIV_REG_MASK 0xf @@ -96,6 +102,9 @@ extern "C" { #define CMU_LFB_CLK_BRANCH 9 #define CMU_LEUART0_CLK_BRANCH 10 #define CMU_LEUART1_CLK_BRANCH 11 +#define CMU_DBG_CLK_BRANCH 12 +#define CMU_AUX_CLK_BRANCH 13 +#define CMU_USBC_CLK_BRANCH 14 #define CMU_CLK_BRANCH_POS 17 #define CMU_CLK_BRANCH_MASK 0x1f @@ -106,27 +115,26 @@ extern "C" { ******************************** ENUMS ************************************ ******************************************************************************/ -/** Clock divisors. */ -typedef enum -{ - cmuClkDiv_1 = 0, /**< Divide clock by 1. */ - cmuClkDiv_2 = 1, /**< Divide clock by 2. */ - cmuClkDiv_4 = 2, /**< Divide clock by 4. */ - cmuClkDiv_8 = 3, /**< Divide clock by 8. */ - cmuClkDiv_16 = 4, /**< Divide clock by 16. */ - cmuClkDiv_32 = 5, /**< Divide clock by 32. */ - cmuClkDiv_64 = 6, /**< Divide clock by 64. */ - cmuClkDiv_128 = 7, /**< Divide clock by 128. */ - cmuClkDiv_256 = 8, /**< Divide clock by 256. */ - cmuClkDiv_512 = 9, /**< Divide clock by 512. */ - cmuClkDiv_1024 = 10, /**< Divide clock by 1024. */ - cmuClkDiv_2048 = 11, /**< Divide clock by 2048. */ - cmuClkDiv_4096 = 12, /**< Divide clock by 4096. */ - cmuClkDiv_8192 = 13, /**< Divide clock by 8192. */ - cmuClkDiv_16384 = 14, /**< Divide clock by 16384. */ - cmuClkDiv_32768 = 15 /**< Divide clock by 32768. */ -} CMU_ClkDiv_TypeDef; +/** Clock divisors. These values are valid for prescalers. */ +#define cmuClkDiv_1 1 /**< Divide clock by 1. */ +#define cmuClkDiv_2 2 /**< Divide clock by 2. */ +#define cmuClkDiv_4 4 /**< Divide clock by 4. */ +#define cmuClkDiv_8 8 /**< Divide clock by 8. */ +#define cmuClkDiv_16 16 /**< Divide clock by 16. */ +#define cmuClkDiv_32 32 /**< Divide clock by 32. */ +#define cmuClkDiv_64 64 /**< Divide clock by 64. */ +#define cmuClkDiv_128 128 /**< Divide clock by 128. */ +#define cmuClkDiv_256 256 /**< Divide clock by 256. */ +#define cmuClkDiv_512 512 /**< Divide clock by 512. */ +#define cmuClkDiv_1024 1024 /**< Divide clock by 1024. */ +#define cmuClkDiv_2048 2048 /**< Divide clock by 2048. */ +#define cmuClkDiv_4096 4096 /**< Divide clock by 4096. */ +#define cmuClkDiv_8192 8192 /**< Divide clock by 8192. */ +#define cmuClkDiv_16384 16384 /**< Divide clock by 16384. */ +#define cmuClkDiv_32768 32768 /**< Divide clock by 32768. */ +/** Clock divider configuration */ +typedef uint32_t CMU_ClkDiv_TypeDef; /** High frequency RC bands. */ typedef enum @@ -146,6 +154,25 @@ typedef enum } CMU_HFRCOBand_TypeDef; +#if defined(_EFM32_TINY_FAMILY) || defined(_EFM32_GIANT_FAMILY) +/** AUX High frequency RC bands. */ +typedef enum +{ + /** 1MHz RC band. */ + cmuAUXHFRCOBand_1MHz = _CMU_AUXHFRCOCTRL_BAND_1MHZ, + /** 7MHz RC band. */ + cmuAUXHFRCOBand_7MHz = _CMU_AUXHFRCOCTRL_BAND_7MHZ, + /** 11MHz RC band. */ + cmuAUXHFRCOBand_11MHz = _CMU_AUXHFRCOCTRL_BAND_11MHZ, + /** 14MHz RC band. */ + cmuAUXHFRCOBand_14MHz = _CMU_AUXHFRCOCTRL_BAND_14MHZ, + /** 21MHz RC band. */ + cmuAUXHFRCOBand_21MHz = _CMU_AUXHFRCOCTRL_BAND_21MHZ, + /** 28MHz RC band. */ + cmuAUXHFRCOBand_28MHz = _CMU_AUXHFRCOCTRL_BAND_28MHZ +} CMU_AUXHFRCOBand_TypeDef; +#endif + /** Clock points in CMU. Please refer to CMU overview in reference manual. */ typedef enum { @@ -154,11 +181,33 @@ typedef enum /*******************/ /** High frequency clock */ +#if defined(_EFM32_GIANT_FAMILY) + cmuClock_HF = (CMU_HFCLKDIV_REG << CMU_DIV_REG_POS) | + (CMU_HFCLKSEL_REG << CMU_SEL_REG_POS) | + (CMU_NO_EN_REG << CMU_EN_REG_POS) | + (0 << CMU_EN_BIT_POS) | + (CMU_HF_CLK_BRANCH << CMU_CLK_BRANCH_POS), +#else cmuClock_HF = (CMU_NODIV_REG << CMU_DIV_REG_POS) | (CMU_HFCLKSEL_REG << CMU_SEL_REG_POS) | (CMU_NO_EN_REG << CMU_EN_REG_POS) | (0 << CMU_EN_BIT_POS) | (CMU_HF_CLK_BRANCH << CMU_CLK_BRANCH_POS), +#endif + + /** Debug clock */ + cmuClock_DBG = (CMU_NODIV_REG << CMU_DIV_REG_POS) | + (CMU_DBGCLKSEL_REG << CMU_SEL_REG_POS) | + (CMU_NO_EN_REG << CMU_EN_REG_POS) | + (0 << CMU_EN_BIT_POS) | + (CMU_DBG_CLK_BRANCH << CMU_CLK_BRANCH_POS), + + /** AUX clock */ + cmuClock_AUX = (CMU_NODIV_REG << CMU_DIV_REG_POS) | + (CMU_NOSEL_REG << CMU_SEL_REG_POS) | + (CMU_NO_EN_REG << CMU_EN_REG_POS) | + (0 << CMU_EN_BIT_POS) | + (CMU_AUX_CLK_BRANCH << CMU_CLK_BRANCH_POS), /**********************************/ /* HF peripheral clock sub-branch */ @@ -262,7 +311,7 @@ typedef enum #endif /** Peripheral reflex system clock. */ -#if defined(PRS_PRESENT) +#if defined(_CMU_HFPERCLKEN0_PRS_MASK) cmuClock_PRS = (CMU_NODIV_REG << CMU_DIV_REG_POS) | (CMU_NOSEL_REG << CMU_SEL_REG_POS) | (CMU_HFPERCLKEN0_EN_REG << CMU_EN_REG_POS) | @@ -368,6 +417,20 @@ typedef enum (CMU_HFCORE_CLK_BRANCH << CMU_CLK_BRANCH_POS), #endif +#if defined(USB_PRESENT) + cmuClock_USBC = (CMU_NODIV_REG << CMU_DIV_REG_POS) | + (CMU_USBCCLKSEL_REG << CMU_SEL_REG_POS) | + (CMU_HFCORECLKEN0_EN_REG << CMU_EN_REG_POS) | + (_CMU_HFCORECLKEN0_USBC_SHIFT << CMU_EN_BIT_POS) | + (CMU_USBC_CLK_BRANCH << CMU_CLK_BRANCH_POS), + + cmuClock_USB = (CMU_NODIV_REG << CMU_DIV_REG_POS) | + (CMU_NOSEL_REG << CMU_SEL_REG_POS) | + (CMU_HFCORECLKEN0_EN_REG << CMU_EN_REG_POS) | + (_CMU_HFCORECLKEN0_USB_SHIFT << CMU_EN_BIT_POS) | + (CMU_HFCORE_CLK_BRANCH << CMU_CLK_BRANCH_POS), +#endif + /***************/ /* LF A branch */ /***************/ @@ -504,8 +567,10 @@ typedef enum cmuSelect_HFXO, /**< High frequency crystal oscillator. */ cmuSelect_HFRCO, /**< High frequency RC oscillator. */ cmuSelect_CORELEDIV2, /**< Core low energy clock divided by 2. */ + cmuSelect_AUXHFRCO, /**< Auxilliary clock source can be used for debug clock */ + cmuSelect_HFCLK, /**< Divided HFCLK on Giant for debug clock, undivided on Tiny Gecko and for USBC (not used on Gecko) */ #if defined(_EFM32_TINY_FAMILY) || defined(_EFM32_GIANT_FAMILY) - cmuSelect_ULFRCO /**< Ultra low frequency RC oscillator. */ + cmuSelect_ULFRCO, /**< Ultra low frequency RC oscillator. */ #endif } CMU_Select_TypeDef; @@ -523,6 +588,10 @@ void CMU_ClockSelectSet(CMU_Clock_TypeDef clock, CMU_Select_TypeDef ref); CMU_HFRCOBand_TypeDef CMU_HFRCOBandGet(void); void CMU_HFRCOBandSet(CMU_HFRCOBand_TypeDef band); +#if defined(_EFM32_TINY_FAMILY) || defined(_EFM32_GIANT_FAMILY) +CMU_AUXHFRCOBand_TypeDef CMU_AUXHFRCOBandGet(void); +void CMU_AUXHFRCOBandSet(CMU_AUXHFRCOBand_TypeDef band); +#endif void CMU_HFRCOStartupDelaySet(uint32_t delay); uint32_t CMU_HFRCOStartupDelayGet(void); diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_common.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_common.h index ac4cf15bfc..3f29719506 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_common.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_common.h @@ -2,7 +2,7 @@ * @file * @brief EFM32 general purpose utilities. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_dac.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_dac.h index b0d9bfe180..5f152b9afb 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_dac.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_dac.h @@ -2,7 +2,7 @@ * @file * @brief Digital to Analog Converter (DAC) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_dbg.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_dbg.h index 6b00536c97..c3c88d2da5 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_dbg.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_dbg.h @@ -2,7 +2,7 @@ * @file * @brief Debug (DBG) API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_dma.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_dma.h index 7d3b5f92a5..ff97629ff8 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_dma.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_dma.h @@ -2,7 +2,7 @@ * @file * @brief Direct memory access (DMA) API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_ebi.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_ebi.h index cb6080a0d3..3aa8680dec 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_ebi.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_ebi.h @@ -2,7 +2,7 @@ * @file * @brief External Bus Iterface (EBI) peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_emu.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_emu.h index 5ab282688d..1e1d9bc598 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_emu.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_emu.h @@ -2,7 +2,7 @@ * @file * @brief Energy management unit (EMU) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_gpio.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_gpio.h index b8efa9712d..916de5a110 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_gpio.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_gpio.h @@ -2,7 +2,7 @@ * @file * @brief General Purpose IO (GPIO) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_i2c.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_i2c.h index d039dc0931..ca0c6da726 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_i2c.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_i2c.h @@ -2,7 +2,7 @@ * @file * @brief Inter-intergrated circuit (I2C) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_int.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_int.h index 5e3582c4d1..7c2d222efa 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_int.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_int.h @@ -2,7 +2,7 @@ * @file * @brief Interrupt enable/disable unit API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_lcd.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_lcd.h index 4cc6aa047e..b62c64ae07 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_lcd.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_lcd.h @@ -2,7 +2,7 @@ * @file * @brief Liquid Crystal Display (LCD) peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com @@ -223,6 +223,10 @@ typedef struct LCD_AnimShift_TypeDef BShift; /** A and B Logical Operation to use for mixing and outputting resulting segments */ LCD_AnimLogic_TypeDef animLogic; +#if defined(_EFM32_GIANT_FAMILY) + /** Number of first segment to animate. Options are 0 or 8 for Giant/Leopard. End is startSeg+7 */ + int startSeg; +#endif } LCD_AnimInit_TypeDef; /** LCD Frame Control Initialization */ @@ -253,7 +257,7 @@ typedef struct LCD_ConConf_TypeDef contrast; } LCD_Init_TypeDef; -/** Default config for LCD init structure, enables all 160 segments */ +/** Default config for LCD init structure, enables 160 segments */ #define LCD_INIT_DEFAULT \ { true, \ lcdMuxQuadruplex, \ diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_lesense.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_lesense.h index c0a335b884..a0539e11f2 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_lesense.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_lesense.h @@ -2,7 +2,7 @@ * @file * @brief Low Energy Sensor (LESENSE) peripheral API for EFM32 TG/GG devices. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_letimer.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_letimer.h index 620d5ce845..328eb090ab 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_letimer.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_letimer.h @@ -2,7 +2,7 @@ * @file * @brief Low Energy Timer (LETIMER) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_leuart.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_leuart.h index 0d5f0785f8..9a07e19b53 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_leuart.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_leuart.h @@ -3,7 +3,7 @@ * @brief Low Energy Universal Asynchronous Receiver/Transmitter (LEUART) * peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_mpu.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_mpu.h index 943ce140ac..760d38c9cd 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_mpu.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_mpu.h @@ -2,7 +2,7 @@ * @file * @brief Memory protection unit (MPU) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_msc.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_msc.h index 7817b3122a..4d63cf166e 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_msc.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_msc.h @@ -2,7 +2,7 @@ * @file * @brief Flash controller module (MSC) peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_opamp.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_opamp.h index 4277914862..a7a7850803 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_opamp.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_opamp.h @@ -2,7 +2,7 @@ * @file * @brief Operational Amplifier (OPAMP) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_pcnt.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_pcnt.h index 557c305eb9..87329508e3 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_pcnt.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_pcnt.h @@ -2,7 +2,7 @@ * @file * @brief Pulse Counter (PCNT) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_prs.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_prs.h index 129e598f22..b784fa1a04 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_prs.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_prs.h @@ -2,7 +2,7 @@ * @file * @brief Peripheral Reflex System (PRS) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_rmu.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_rmu.h index ffe970568f..ad80d65fc1 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_rmu.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_rmu.h @@ -2,7 +2,7 @@ * @file * @brief Reset Management Unit (RMU) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_rtc.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_rtc.h index 6fd78da82f..1c82245d2f 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_rtc.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_rtc.h @@ -2,7 +2,7 @@ * @file * @brief Real Time Counter (RTC) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_system.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_system.h index 924f00659b..e1442c6990 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_system.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_system.h @@ -2,7 +2,7 @@ * @file * @brief System API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_timer.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_timer.h index 0f931109ab..13471e04ae 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_timer.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_timer.h @@ -2,7 +2,7 @@ * @file * @brief Timer/counter (TIMER) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_usart.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_usart.h index 1054a002b1..8dc8f886c4 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_usart.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_usart.h @@ -3,7 +3,7 @@ * @brief Universal synchronous/asynchronous receiver/transmitter (USART/UART) * peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com @@ -187,29 +187,44 @@ typedef enum /** USART Rx input PRS selection. */ typedef enum { - usartPrsRxCh0 = _USART_INPUT_RXPRSSEL_PRSCH0, /**< PRSCH0 selected as USART_INPUT */ - usartPrsRxCh1 = _USART_INPUT_RXPRSSEL_PRSCH1, /**< PRSCH1 selected as USART_INPUT */ - usartPrsRxCh2 = _USART_INPUT_RXPRSSEL_PRSCH2, /**< PRSCH2 selected as USART_INPUT */ - usartPrsRxCh3 = _USART_INPUT_RXPRSSEL_PRSCH3, /**< PRSCH3 selected as USART_INPUT */ - usartPrsRxCh4 = _USART_INPUT_RXPRSSEL_PRSCH4, /**< PRSCH4 selected as USART_INPUT */ - usartPrsRxCh5 = _USART_INPUT_RXPRSSEL_PRSCH5, /**< PRSCH5 selected as USART_INPUT */ - usartPrsRxCh6 = _USART_INPUT_RXPRSSEL_PRSCH6, /**< PRSCH6 selected as USART_INPUT */ + usartPrsRxCh0 = USART_INPUT_RXPRSSEL_PRSCH0, /**< PRSCH0 selected as USART_INPUT */ + usartPrsRxCh1 = USART_INPUT_RXPRSSEL_PRSCH1, /**< PRSCH1 selected as USART_INPUT */ + usartPrsRxCh2 = USART_INPUT_RXPRSSEL_PRSCH2, /**< PRSCH2 selected as USART_INPUT */ + usartPrsRxCh3 = USART_INPUT_RXPRSSEL_PRSCH3, /**< PRSCH3 selected as USART_INPUT */ + usartPrsRxCh4 = USART_INPUT_RXPRSSEL_PRSCH4, /**< PRSCH4 selected as USART_INPUT */ + usartPrsRxCh5 = USART_INPUT_RXPRSSEL_PRSCH5, /**< PRSCH5 selected as USART_INPUT */ + usartPrsRxCh6 = USART_INPUT_RXPRSSEL_PRSCH6, /**< PRSCH6 selected as USART_INPUT */ #if defined(_EFM32_TINY_FAMILY) - usartPrsRxCh7 = _USART_INPUT_RXPRSSEL_PRSCH7 /**< PRSCH7 selected as USART_INPUT */ + usartPrsRxCh7 = USART_INPUT_RXPRSSEL_PRSCH7 /**< PRSCH7 selected as USART_INPUT */ #elif defined(_EFM32_GIANT_FAMILY) - usartPrsRxCh7 = _USART_INPUT_RXPRSSEL_PRSCH7, /**< PRSCH7 selected as USART_INPUT */ - usartPrsRxCh8 = _USART_INPUT_RXPRSSEL_PRSCH8, /**< PRSCH8 selected as USART_INPUT */ - usartPrsRxCh9 = _USART_INPUT_RXPRSSEL_PRSCH9, /**< PRSCH9 selected as USART_INPUT */ - usartPrsRxCh10 = _USART_INPUT_RXPRSSEL_PRSCH10, /**< PRSCH10 selected as USART_INPUT */ - usartPrsRxCh11 = _USART_INPUT_RXPRSSEL_PRSCH11 /**< PRSCH11 selected as USART_INPUT */ + usartPrsRxCh7 = USART_INPUT_RXPRSSEL_PRSCH7, /**< PRSCH7 selected as USART_INPUT */ + usartPrsRxCh8 = USART_INPUT_RXPRSSEL_PRSCH8, /**< PRSCH8 selected as USART_INPUT */ + usartPrsRxCh9 = USART_INPUT_RXPRSSEL_PRSCH9, /**< PRSCH9 selected as USART_INPUT */ + usartPrsRxCh10 = USART_INPUT_RXPRSSEL_PRSCH10, /**< PRSCH10 selected as USART_INPUT */ + usartPrsRxCh11 = USART_INPUT_RXPRSSEL_PRSCH11 /**< PRSCH11 selected as USART_INPUT */ #else #error Unknown EFM32 family. #endif } USART_PrsRxCh_TypeDef; #endif +#if defined (_EFM32_TINY_FAMILY) || defined(_EFM32_GIANT_FAMILY) +/** USART PRS Transmit Trigger Channels */ +typedef enum +{ + usartPrsTriggerCh0 = USART_TRIGCTRL_TSEL_PRSCH0, /**< PRSCH0 selected as USART Trigger */ + usartPrsTriggerCh1 = USART_TRIGCTRL_TSEL_PRSCH1, /**< PRSCH0 selected as USART Trigger */ + usartPrsTriggerCh2 = USART_TRIGCTRL_TSEL_PRSCH2, /**< PRSCH0 selected as USART Trigger */ + usartPrsTriggerCh3 = USART_TRIGCTRL_TSEL_PRSCH3, /**< PRSCH0 selected as USART Trigger */ + usartPrsTriggerCh4 = USART_TRIGCTRL_TSEL_PRSCH4, /**< PRSCH0 selected as USART Trigger */ + usartPrsTriggerCh5 = USART_TRIGCTRL_TSEL_PRSCH5, /**< PRSCH0 selected as USART Trigger */ + usartPrsTriggerCh6 = USART_TRIGCTRL_TSEL_PRSCH6, /**< PRSCH0 selected as USART Trigger */ + usartPrsTriggerCh7 = USART_TRIGCTRL_TSEL_PRSCH7, /**< PRSCH0 selected as USART Trigger */ +} USART_PrsTriggerCh_TypeDef; +#endif + /******************************************************************************* ******************************* STRUCTS *********************************** ******************************************************************************/ @@ -254,6 +269,23 @@ typedef struct #endif } USART_InitAsync_TypeDef; +#if defined(_EFM32_TINY_FAMILY) || defined(_EFM32_GIANT_FAMILY) +/** USART PRS trigger enable */ +typedef struct +{ +#if defined(_EFM32_GIANT_FAMILY) + /** Enable AUTOTX */ + bool autoTxTriggerEnable; +#endif + /** Trigger receive via PRS channel */ + bool rxTriggerEnable; + /** Trigger transmit via PRS channel */ + bool txTriggerEnable; + /** PRS channel to be used to trigger auto transmission */ + USART_PrsTriggerCh_TypeDef prsTriggerChannel; +} USART_PrsTriggerInit_TypeDef; +#endif + /** Default config for USART async init structure. */ #if defined(_EFM32_GIANT_FAMILY) || defined(_EFM32_TINY_FAMILY) #define USART_INITASYNC_DEFAULT \ @@ -464,6 +496,7 @@ void USART_InitIrDA(const USART_InitIrDA_TypeDef *init); #if defined(_EFM32_GIANT_FAMILY) || defined(_EFM32_TINY_FAMILY) void USART_InitI2s(USART_TypeDef *usart, USART_InitI2s_TypeDef *init); +void USART_InitPrsTrigger(USART_TypeDef *usart, const USART_PrsTriggerInit_TypeDef *init); #endif diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_vcmp.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_vcmp.h index 9a792a907d..8fed4a3e42 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_vcmp.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_vcmp.h @@ -2,7 +2,7 @@ * @file * @brief Voltage Comparator (VCMP) peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/inc/efm32_wdog.h b/bsp/efm32/Libraries/efm32lib/inc/efm32_wdog.h index 83df8d7535..281aeaf0db 100644 --- a/bsp/efm32/Libraries/efm32lib/inc/efm32_wdog.h +++ b/bsp/efm32/Libraries/efm32lib/inc/efm32_wdog.h @@ -2,7 +2,7 @@ * @file * @brief Watchdog (WDOG) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_acmp.c b/bsp/efm32/Libraries/efm32lib/src/efm32_acmp.c index 36cde729c6..7716495da3 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_acmp.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_acmp.c @@ -3,7 +3,7 @@ * @brief Analog Comparator (ACMP) peripheral module library implementation * for EFM32 devices. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_adc.c b/bsp/efm32/Libraries/efm32lib/src/efm32_adc.c index 95ac8621de..ff8028ce51 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_adc.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_adc.c @@ -2,7 +2,7 @@ * @file * @brief Analog to Digital Converter (ADC) Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_aes.c b/bsp/efm32/Libraries/efm32lib/src/efm32_aes.c index c52a1a5dc7..b5e1accfc8 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_aes.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_aes.c @@ -3,7 +3,7 @@ * @brief Advanced Encryption Standard (AES) accelerator peripheral API * for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_assert.c b/bsp/efm32/Libraries/efm32lib/src/efm32_assert.c index 345ef12270..a29c3e67f0 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_assert.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_assert.c @@ -2,7 +2,7 @@ * @file * @brief Assert API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_cmu.c b/bsp/efm32/Libraries/efm32lib/src/efm32_cmu.c index 6a463e7799..3a37c676eb 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_cmu.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_cmu.c @@ -2,7 +2,7 @@ * @file * @brief Clock management unit (CMU) Peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com @@ -69,7 +69,7 @@ /***************************************************************************//** * @brief - * Configure flash access wait states to most conservative setting for + * Configure flash access wait states to most conservative setting for * this target. Retain SCBTP setting. ******************************************************************************/ static void CMU_FlashWaitStateMax(void) @@ -95,7 +95,7 @@ static void CMU_FlashWaitStateMax(void) case MSC_READCTRL_MODE_WS2SCBTP: cfg = (cfg & ~_MSC_READCTRL_MODE_MASK) | MSC_READCTRL_MODE_WS2SCBTP; #else - cfg = (cfg & ~_MSC_READCTRL_MODE_MASK) | MSC_READCTRL_MODE_WS1SCBTP; + cfg = (cfg & ~_MSC_READCTRL_MODE_MASK) | MSC_READCTRL_MODE_WS1SCBTP; #endif break; } @@ -103,6 +103,37 @@ static void CMU_FlashWaitStateMax(void) } +/***************************************************************************//** + * @brief Convert dividend to prescaler logarithmic value. Only works for even + * numbers equal to 2^n + * @param[in] div Unscaled dividend, + * @return Logarithm of 2, as used by fixed prescalers + ******************************************************************************/ +static uint32_t CMU_DivToLog2(CMU_ClkDiv_TypeDef div) +{ + uint32_t log2; + + /* Prescalers take argument of 32768 or less */ + EFM_ASSERT((div>0) && (div <= 32768)); + + /* Count leading zeroes and "reverse" result, Cortex-M3 intrinsic */ + log2 = (31 - __CLZ(div)); + + return log2; +} + + +/***************************************************************************//** + * @brief Convert logarithm of 2 prescaler to division factor + * @param[in] log2 + * @return Dividend + ******************************************************************************/ +static uint32_t CMU_Log2ToDiv(uint32_t log2) +{ + return 1<AUXHFRCOCTRL & _CMU_AUXHFRCOCTRL_BAND_MASK) + { + case CMU_AUXHFRCOCTRL_BAND_1MHZ: + ret = 1000000; + break; + case CMU_AUXHFRCOCTRL_BAND_7MHZ: + ret = 7000000; + break; + case CMU_AUXHFRCOCTRL_BAND_11MHZ: + ret = 11000000; + break; + case CMU_AUXHFRCOCTRL_BAND_14MHZ: + ret = 14000000; + break; + case CMU_AUXHFRCOCTRL_BAND_21MHZ: + ret = 21000000; + break; + case CMU_AUXHFRCOCTRL_BAND_28MHZ: + ret = 28000000; + break; + default: + ret = 0; + break; + } +#endif + return ret; +} + + +/***************************************************************************//** + * @brief + * Get the Debug Trace clock frequency + * + * @return + * Debug Trace frequency in Hz + ******************************************************************************/ +static uint32_t CMU_DBGClkGet(void) +{ + uint32_t ret; + CMU_Select_TypeDef clk; + + /* Get selected clock source */ + clk = CMU_ClockSelectGet(cmuClock_DBG); + + switch(clk) + { + case cmuSelect_HFCLK: + ret = SystemHFClockGet(); +#if defined(_EFM32_GIANT_FAMILY) + /* Giant Gecko has an additional divider, not used by USBC */ + ret = ret / (1 + ((CMU->CTRL & _CMU_CTRL_HFCLKDIV_MASK) >> + _CMU_CTRL_HFCLKDIV_SHIFT)); +#endif + break; + + case cmuSelect_AUXHFRCO: + ret = CMU_AUXClkGet(); + break; + + default: + EFM_ASSERT(0); + ret = 0; + break; + } + return ret; +} + + /***************************************************************************//** * @brief * Get the LFnCLK frequency based on current configuration. * - * @param[in] group - * LF group, 0 = A, 1 = B, ... + * @param[in] lfClkBranch + * LF branch, 0 = LFA, 1 = LFB, ... * * @return * The LFnCLK frequency in Hz. If no LFnCLK is selected (disabled), 0 is * returned. ******************************************************************************/ -static uint32_t CMU_LFClkGet(unsigned int group) +static uint32_t CMU_LFClkGet(unsigned int lfClkBranch) { uint32_t ret; - EFM_ASSERT(group == 0 || group == 1); + EFM_ASSERT(lfClkBranch == CMU_LFA || lfClkBranch == CMU_LFB); - /* Note - this needs to be changed */ -#if defined _CMU_LFCLKSEL_LFAE_ULFRCO - if ((group == 0) && (CMU->LFCLKSEL & CMU_LFCLKSEL_LFAE_ULFRCO)) - { - return SystemULFRCOClockGet(); - } -#endif -#if defined _CMU_LFCLKSEL_LFBE_ULFRCO - if ((group == 1) && (CMU->LFCLKSEL & CMU_LFCLKSEL_LFBE_ULFRCO)) - { - return SystemULFRCOClockGet(); - } -#endif - - switch ((CMU->LFCLKSEL >> (group * 2)) & 0x3) + switch ((CMU->LFCLKSEL >> (lfClkBranch * 2)) & 0x3) { case _CMU_LFCLKSEL_LFA_LFRCO: ret = SystemLFRCOClockGet(); @@ -217,7 +355,35 @@ static uint32_t CMU_LFClkGet(unsigned int group) break; case _CMU_LFCLKSEL_LFA_HFCORECLKLEDIV2: +#if defined (_EFM32_GIANT_FAMILY) + /* Giant Gecko can use a /4 divider (and must >32MHz) */ + if((CMU->HFCORECLKDIV & _CMU_HFCORECLKDIV_HFCORECLKLEDIV_MASK) == CMU_HFCORECLKDIV_HFCORECLKLEDIV_DIV4) + { + ret = SystemCoreClockGet() / 4; + } + else + { + ret = SystemCoreClockGet() / 2; + } +#else ret = SystemCoreClockGet() / 2; +#endif + break; + + case _CMU_LFCLKSEL_LFA_DISABLED: +#if defined (_EFM32_GIANT_FAMILY) + /* Check LF Extended bit setting for ULFRCO clock */ + if(CMU->LFCLKSEL >> (_CMU_LFCLKSEL_LFAE_SHIFT + lfClkBranch * 4)) + { + ret = SystemULFRCOClockGet(); + } + else + { + ret = 0; + } +#else + ret = 0; +#endif break; default: @@ -432,7 +598,7 @@ void CMU_CalibrateConfig(uint32_t downCycles, CMU_Osc_TypeDef downSel, * have a divisor/prescaler. Please refer to CMU overview in reference manual. * * @return - * The current clock point divisor/prescaler. #cmuClkDiv_1 is returned + * The current clock point divisor/prescaler. 1 is returned * if @p clock specifies a clock point without a divisor/prescaler. ******************************************************************************/ CMU_ClkDiv_TypeDef CMU_ClockDivGet(CMU_Clock_TypeDef clock) @@ -445,16 +611,25 @@ CMU_ClkDiv_TypeDef CMU_ClockDivGet(CMU_Clock_TypeDef clock) switch (divReg) { +#if defined(_EFM32_GIANT_FAMILY) + case CMU_HFCLKDIV_REG: + ret = 1 + ((CMU->CTRL & _CMU_CTRL_HFCLKDIV_MASK) >> + _CMU_CTRL_HFCLKDIV_SHIFT); + break; +#endif + case CMU_HFPERCLKDIV_REG: ret = (CMU_ClkDiv_TypeDef)((CMU->HFPERCLKDIV & _CMU_HFPERCLKDIV_HFPERCLKDIV_MASK) >> _CMU_HFPERCLKDIV_HFPERCLKDIV_SHIFT); + ret = CMU_Log2ToDiv(ret); break; case CMU_HFCORECLKDIV_REG: ret = (CMU_ClkDiv_TypeDef)((CMU->HFCORECLKDIV & _CMU_HFCORECLKDIV_HFCORECLKDIV_MASK) >> _CMU_HFCORECLKDIV_HFCORECLKDIV_SHIFT); + ret = CMU_Log2ToDiv(ret); break; case CMU_LFAPRESC0_REG: @@ -463,12 +638,14 @@ CMU_ClkDiv_TypeDef CMU_ClockDivGet(CMU_Clock_TypeDef clock) case cmuClock_RTC: ret = (CMU_ClkDiv_TypeDef)(((CMU->LFAPRESC0 & _CMU_LFAPRESC0_RTC_MASK) >> _CMU_LFAPRESC0_RTC_SHIFT)); + ret = CMU_Log2ToDiv(ret); break; #if defined(_CMU_LFAPRESC0_LETIMER0_MASK) case cmuClock_LETIMER0: ret = (CMU_ClkDiv_TypeDef)(((CMU->LFAPRESC0 & _CMU_LFAPRESC0_LETIMER0_MASK) >> _CMU_LFAPRESC0_LETIMER0_SHIFT)); + ret = CMU_Log2ToDiv(ret); break; #endif @@ -476,6 +653,7 @@ CMU_ClkDiv_TypeDef CMU_ClockDivGet(CMU_Clock_TypeDef clock) case cmuClock_LCDpre: ret = (CMU_ClkDiv_TypeDef)(((CMU->LFAPRESC0 & _CMU_LFAPRESC0_LCD_MASK) >> _CMU_LFAPRESC0_LCD_SHIFT) + cmuClkDiv_16); + ret = CMU_Log2ToDiv(ret); break; #endif @@ -483,6 +661,7 @@ CMU_ClkDiv_TypeDef CMU_ClockDivGet(CMU_Clock_TypeDef clock) case cmuClock_LESENSE: ret = (CMU_ClkDiv_TypeDef)(((CMU->LFAPRESC0 & _CMU_LFAPRESC0_LESENSE_MASK) >> _CMU_LFAPRESC0_LESENSE_SHIFT)); + ret = CMU_Log2ToDiv(ret); break; #endif @@ -500,6 +679,7 @@ CMU_ClkDiv_TypeDef CMU_ClockDivGet(CMU_Clock_TypeDef clock) case cmuClock_LEUART0: ret = (CMU_ClkDiv_TypeDef)(((CMU->LFBPRESC0 & _CMU_LFBPRESC0_LEUART0_MASK) >> _CMU_LFBPRESC0_LEUART0_SHIFT)); + ret = CMU_Log2ToDiv(ret); break; #endif @@ -507,6 +687,7 @@ CMU_ClkDiv_TypeDef CMU_ClockDivGet(CMU_Clock_TypeDef clock) case cmuClock_LEUART1: ret = (CMU_ClkDiv_TypeDef)(((CMU->LFBPRESC0 & _CMU_LFBPRESC0_LEUART1_MASK) >> _CMU_LFBPRESC0_LEUART1_SHIFT)); + ret = CMU_Log2ToDiv(ret); break; #endif @@ -556,9 +737,30 @@ void CMU_ClockDivSet(CMU_Clock_TypeDef clock, CMU_ClkDiv_TypeDef div) switch (divReg) { - case CMU_HFPERCLKDIV_REG: - EFM_ASSERT(div <= cmuClkDiv_512); +#if defined (_EFM32_GIANT_FAMILY) + case CMU_HFCLKDIV_REG: + EFM_ASSERT((div>=1) && (div<=8)); + /* Configure worst case wait states for flash access before setting divisor */ + CMU_FlashWaitStateMax(); + + /* Set divider */ + CMU->CTRL = (CMU->CTRL & ~_CMU_CTRL_HFCLKDIV_MASK) | + ((div-1) << _CMU_CTRL_HFCLKDIV_SHIFT); + + /* Update CMSIS core clock variable */ + /* (The function will update the global variable) */ + freq = SystemCoreClockGet(); + + /* Optimize flash access wait state setting for current core clk */ + CMU_FlashWaitStateControl(freq); + break; +#endif + + case CMU_HFPERCLKDIV_REG: + EFM_ASSERT((div >= cmuClkDiv_1) && (div <= cmuClkDiv_512)); + /* Convert to correct scale */ + div = CMU_DivToLog2(div); CMU->HFPERCLKDIV = (CMU->HFPERCLKDIV & ~_CMU_HFPERCLKDIV_HFPERCLKDIV_MASK) | (div << _CMU_HFPERCLKDIV_HFPERCLKDIV_SHIFT); break; @@ -569,6 +771,9 @@ void CMU_ClockDivSet(CMU_Clock_TypeDef clock, CMU_ClkDiv_TypeDef div) /* Configure worst case wait states for flash access before setting divisor */ CMU_FlashWaitStateMax(); + /* Convert to correct scale */ + div = CMU_DivToLog2(div); + CMU->HFCORECLKDIV = (CMU->HFCORECLKDIV & ~_CMU_HFCORECLKDIV_HFCORECLKDIV_MASK) | (div << _CMU_HFCORECLKDIV_HFCORECLKDIV_SHIFT); @@ -589,6 +794,9 @@ void CMU_ClockDivSet(CMU_Clock_TypeDef clock, CMU_ClkDiv_TypeDef div) /* LF register about to be modified require sync. busy check */ CMU_Sync(CMU_SYNCBUSY_LFAPRESC0); + /* Convert to correct scale */ + div = CMU_DivToLog2(div); + CMU->LFAPRESC0 = (CMU->LFAPRESC0 & ~_CMU_LFAPRESC0_RTC_MASK) | (div << _CMU_LFAPRESC0_RTC_SHIFT); break; @@ -600,6 +808,9 @@ void CMU_ClockDivSet(CMU_Clock_TypeDef clock, CMU_ClkDiv_TypeDef div) /* LF register about to be modified require sync. busy check */ CMU_Sync(CMU_SYNCBUSY_LFAPRESC0); + /* Convert to correct scale */ + div = CMU_DivToLog2(div); + CMU->LFAPRESC0 = (CMU->LFAPRESC0 & ~_CMU_LFAPRESC0_LETIMER0_MASK) | (div << _CMU_LFAPRESC0_LETIMER0_SHIFT); break; @@ -607,16 +818,17 @@ void CMU_ClockDivSet(CMU_Clock_TypeDef clock, CMU_ClkDiv_TypeDef div) #if defined(LCD_PRESENT) case cmuClock_LCDpre: -#if 1 EFM_ASSERT((div >= cmuClkDiv_16) && (div <= cmuClkDiv_128)); /* LF register about to be modified require sync. busy check */ CMU_Sync(CMU_SYNCBUSY_LFAPRESC0); + /* Convert to correct scale */ + div = CMU_DivToLog2(div); + CMU->LFAPRESC0 = (CMU->LFAPRESC0 & ~_CMU_LFAPRESC0_LCD_MASK) | ((div - cmuClkDiv_16) << _CMU_LFAPRESC0_LCD_SHIFT); break; -#endif #endif /* defined(LCD_PRESENT) */ #if defined(LESENSE_PRESENT) @@ -626,6 +838,9 @@ void CMU_ClockDivSet(CMU_Clock_TypeDef clock, CMU_ClkDiv_TypeDef div) /* LF register about to be modified require sync. busy check */ CMU_Sync(CMU_SYNCBUSY_LFAPRESC0); + /* Convert to correct scale */ + div = CMU_DivToLog2(div); + CMU->LFAPRESC0 = (CMU->LFAPRESC0 & ~_CMU_LFAPRESC0_LESENSE_MASK) | (div << _CMU_LFAPRESC0_LESENSE_SHIFT); break; @@ -647,6 +862,9 @@ void CMU_ClockDivSet(CMU_Clock_TypeDef clock, CMU_ClkDiv_TypeDef div) /* LF register about to be modified require sync. busy check */ CMU_Sync(CMU_SYNCBUSY_LFBPRESC0); + /* Convert to correct scale */ + div = CMU_DivToLog2(div); + CMU->LFBPRESC0 = (CMU->LFBPRESC0 & ~_CMU_LFBPRESC0_LEUART0_MASK) | (((uint32_t)div) << _CMU_LFBPRESC0_LEUART0_SHIFT); break; @@ -659,6 +877,9 @@ void CMU_ClockDivSet(CMU_Clock_TypeDef clock, CMU_ClkDiv_TypeDef div) /* LF register about to be modified require sync. busy check */ CMU_Sync(CMU_SYNCBUSY_LFBPRESC0); + /* Convert to correct scale */ + div = CMU_DivToLog2(div); + CMU->LFBPRESC0 = (CMU->LFBPRESC0 & ~_CMU_LFBPRESC0_LEUART1_MASK) | (((uint32_t)div) << _CMU_LFBPRESC0_LEUART1_SHIFT); break; @@ -777,38 +998,56 @@ uint32_t CMU_ClockFreqGet(CMU_Clock_TypeDef clock) case (CMU_HF_CLK_BRANCH << CMU_CLK_BRANCH_POS): { ret = SystemHFClockGet(); +#if defined(_EFM32_GIANT_FAMILY) + /* Giant Gecko has an additional divider, not used by USBC */ + ret = ret / (1 + ((CMU->CTRL & _CMU_CTRL_HFCLKDIV_MASK) >> + _CMU_CTRL_HFCLKDIV_SHIFT)); +#endif } break; + #if defined(_CMU_HFPERCLKEN0_USART0_MASK) || \ defined(_CMU_HFPERCLKEN0_USART1_MASK) || \ defined(_CMU_HFPERCLKEN0_USART2_MASK) || \ defined(_CMU_HFPERCLKEN0_UART0_MASK) || \ + defined(_CMU_HFPERCLKEN0_UART1_MASK) || \ defined(_CMU_HFPERCLKEN0_TIMER0_MASK) || \ defined(_CMU_HFPERCLKEN0_TIMER1_MASK) || \ defined(_CMU_HFPERCLKEN0_TIMER2_MASK) || \ + defined(_CMU_HFPERCLKEN0_TIMER3_MASK) || \ defined(_CMU_HFPERCLKEN0_ACMP0_MASK) || \ defined(_CMU_HFPERCLKEN0_ACMP1_MASK) || \ - defined(PRS_PRESENT) || \ defined(_CMU_HFPERCLKEN0_DAC0_MASK) || \ - defined(GPIO_PRESENT) || \ - defined(VCMP_PRESENT) || \ defined(_CMU_HFPERCLKEN0_ADC0_MASK) || \ defined(_CMU_HFPERCLKEN0_I2C0_MASK) || \ - defined(_CMU_HFPERCLKEN0_I2C1_MASK) + defined(_CMU_HFPERCLKEN0_I2C1_MASK) || \ + defined(_CMU_HFPERCLKEN0_USB_MASK) || \ + defined(PRS_PRESENT) || \ + defined(VCMP_PRESENT)|| \ + defined(GPIO_PRESENT) case (CMU_HFPER_CLK_BRANCH << CMU_CLK_BRANCH_POS): { ret = SystemHFClockGet(); +#if defined (_EFM32_GIANT_FAMILY) + /* Leopard/Giant Gecko has an additional divider */ + ret = ret / (1 + ((CMU->CTRL & _CMU_CTRL_HFCLKDIV_MASK) >> + _CMU_CTRL_HFCLKDIV_SHIFT)); +#endif ret >>= (CMU->HFPERCLKDIV & _CMU_HFPERCLKDIV_HFPERCLKDIV_MASK) >> _CMU_HFPERCLKDIV_HFPERCLKDIV_SHIFT; } break; #endif + #if defined(AES_PRESENT) || \ defined(DMA_PRESENT) || \ - defined(EBI_PRESENT) + defined(EBI_PRESENT) || \ + defined(USB_PRESENT) || \ + defined(USBC_PRESENT) case (CMU_HFCORE_CLK_BRANCH << CMU_CLK_BRANCH_POS): { ret = SystemCoreClockGet(); } break; #endif + case (CMU_LFA_CLK_BRANCH << CMU_CLK_BRANCH_POS): { ret = CMU_LFClkGet(CMU_LFA); @@ -836,6 +1075,7 @@ uint32_t CMU_ClockFreqGet(CMU_Clock_TypeDef clock) ret >>= (CMU->LFAPRESC0 & _CMU_LFAPRESC0_LCD_MASK) >> _CMU_LFAPRESC0_LCD_SHIFT; } break; + case (CMU_LCD_CLK_BRANCH << CMU_CLK_BRANCH_POS): { ret = CMU_LFClkGet(CMU_LFA); @@ -869,8 +1109,25 @@ uint32_t CMU_ClockFreqGet(CMU_Clock_TypeDef clock) case (CMU_LEUART1_CLK_BRANCH << CMU_CLK_BRANCH_POS): { ret = CMU_LFClkGet(CMU_LFB); - ret >>= (CMU->LFBPRESC0 & _CMU_LFBPRESC0_LEUART0_MASK) >> - _CMU_LFBPRESC0_LEUART0_SHIFT; + ret >>= (CMU->LFBPRESC0 & _CMU_LFBPRESC0_LEUART1_MASK) >> + _CMU_LFBPRESC0_LEUART1_SHIFT; + } break; +#endif + + case (CMU_DBG_CLK_BRANCH << CMU_CLK_BRANCH_POS): + { + ret = CMU_DBGClkGet(); + } break; + + case (CMU_AUX_CLK_BRANCH << CMU_CLK_BRANCH_POS): + { + ret = CMU_AUXClkGet(); + } break; + +#if defined(USB_PRESENT) + case (CMU_USBC_CLK_BRANCH << CMU_CLK_BRANCH_POS): + { + ret = CMU_USBCClkGet(); } break; #endif default: @@ -892,6 +1149,8 @@ uint32_t CMU_ClockFreqGet(CMU_Clock_TypeDef clock) * @li #cmuClock_HF * @li #cmuClock_LFA * @li #cmuClock_LFB + * @li #cmuClock_USBC + * @li #cmuClock_DBG * * @return * Reference clock used for clocking selected branch, #cmuSelect_Error if @@ -899,7 +1158,7 @@ uint32_t CMU_ClockFreqGet(CMU_Clock_TypeDef clock) *****************************************************************************/ CMU_Select_TypeDef CMU_ClockSelectGet(CMU_Clock_TypeDef clock) { - CMU_Select_TypeDef ret; + CMU_Select_TypeDef ret = cmuSelect_Disabled; uint32_t selReg; selReg = (clock >> CMU_SEL_REG_POS) & CMU_SEL_REG_MASK; @@ -944,7 +1203,15 @@ CMU_Select_TypeDef CMU_ClockSelectGet(CMU_Clock_TypeDef clock) break; default: +#if defined(_EFM32_TINY_FAMILY) || defined(_EFM32_GIANT_FAMILY) + if (CMU->LFCLKSEL & _CMU_LFCLKSEL_LFAE_MASK) + { + ret = cmuSelect_ULFRCO; + break; + } +#else ret = cmuSelect_Disabled; +#endif break; } break; @@ -965,10 +1232,62 @@ CMU_Select_TypeDef CMU_ClockSelectGet(CMU_Clock_TypeDef clock) break; default: +#if defined(_EFM32_TINY_FAMILY) || defined(_EFM32_GIANT_FAMILY) + if (CMU->LFCLKSEL & _CMU_LFCLKSEL_LFBE_MASK) + { + ret = cmuSelect_ULFRCO; + break; + } +#else + ret = cmuSelect_Disabled; +#endif + break; + } + break; + + case CMU_DBGCLKSEL_REG: +#if defined(_EFM32_TINY_FAMILY) || defined(_EFM32_GIANT_FAMILY) + switch(CMU->CTRL & _CMU_CTRL_DBGCLK_MASK) + { + case CMU_CTRL_DBGCLK_AUXHFRCO: + ret = cmuSelect_AUXHFRCO; + break; + + case CMU_CTRL_DBGCLK_HFCLK: + ret = cmuSelect_HFCLK; + break; + } +#endif +#if defined(_EFM32_GECKO_FAMILY) + ret = cmuSelect_AUXHFRCO; +#endif + break; + + +#if defined(USB_PRESENT) + case CMU_USBCCLKSEL_REG: + switch(CMU->STATUS & (CMU_STATUS_USBCHFCLKSEL | + CMU_STATUS_USBCLFXOSEL | + CMU_STATUS_USBCLFRCOSEL)) + { + case CMU_STATUS_USBCHFCLKSEL: + ret = cmuSelect_HFCLK; + break; + + case CMU_STATUS_USBCLFXOSEL: + ret = cmuSelect_LFXO; + break; + + case CMU_STATUS_USBCLFRCOSEL: + ret = cmuSelect_LFRCO; + break; + + default: ret = cmuSelect_Disabled; break; } break; +#endif default: EFM_ASSERT(0); @@ -999,6 +1318,8 @@ CMU_Select_TypeDef CMU_ClockSelectGet(CMU_Clock_TypeDef clock) * @li #cmuClock_HF * @li #cmuClock_LFA * @li #cmuClock_LFB + * @li #cmuClock_USBC + * @li #cmuClock_DBG * * @param[in] ref * Reference selected for clocking, please refer to reference manual for @@ -1037,6 +1358,13 @@ void CMU_ClockSelectSet(CMU_Clock_TypeDef clock, CMU_Select_TypeDef ref) case cmuSelect_HFXO: select = CMU_CMD_HFCLKSEL_HFXO; osc = cmuOsc_HFXO; +#if defined(_EFM32_GIANT_FAMILY) + /* Adjust HFXO buffer current for high frequencies */ + if(SystemHFXOClockGet() > 32000000) + { + CMU->CTRL = (CMU->CTRL | _CMU_CTRL_HFXOBUFCUR_MASK); + } +#endif break; case cmuSelect_HFRCO: @@ -1115,16 +1443,31 @@ void CMU_ClockSelectSet(CMU_Clock_TypeDef clock, CMU_Select_TypeDef ref) /* Ensure HFCORE to LE clocking is enabled */ BITBAND_Peripheral(&(CMU->HFCORECLKEN0), _CMU_HFCORECLKEN0_LE_SHIFT, 1); tmp = _CMU_LFCLKSEL_LFA_HFCORECLKLEDIV2; +#if defined(_EFM32_GIANT_FAMILY) + /* If core frequency is > 32MHz on Giant/Leopard, enable HFLE and DIV4 */ + freq = SystemCoreClockGet(); + if(freq > CMU_MAX_FREQ_1WS) + { + /* Enable CMU HFLE */ + CMU->CTRL |= CMU_CTRL_HFLE; + + /* Enable DIV4 factor for peripheral clock */ + CMU->HFCORECLKDIV = (CMU->HFCORECLKDIV & ~(_CMU_HFCORECLKDIV_HFCORECLKLEDIV_MASK))| + CMU_HFCORECLKDIV_HFCORECLKLEDIV_DIV4; + } +#endif break; #if defined(_EFM32_TINY_FAMILY) || defined(_EFM32_GIANT_FAMILY) case cmuSelect_ULFRCO: + /* ULFRCO is always enabled */ tmp = _CMU_LFCLKSEL_LFA_DISABLED; lfExtended = 1; break; #endif default: + /* Illegal clock source for LFA/LFB selected */ EFM_ASSERT(0); return; } @@ -1138,6 +1481,76 @@ void CMU_ClockSelectSet(CMU_Clock_TypeDef clock, CMU_Select_TypeDef ref) #endif break; +#if defined(_EFM32_TINY_FAMILY) || defined(_EFM32_GIANT_FAMILY) + case CMU_DBGCLKSEL_REG: + switch(ref) + { + case cmuSelect_AUXHFRCO: + /* Select AUXHFRCO as debug clock */ + CMU->CTRL = (CMU->CTRL & ~(_CMU_CTRL_DBGCLK_MASK))| CMU_CTRL_DBGCLK_AUXHFRCO; + break; + + case cmuSelect_HFCLK: + /* Select divided HFCLK as debug clock */ + CMU->CTRL = (CMU->CTRL & ~(_CMU_CTRL_DBGCLK_MASK))| CMU_CTRL_DBGCLK_HFCLK; + break; + + default: + /* Illegal clock source for debug selected */ + EFM_ASSERT(0); + return; + } + break; +#endif + +#if defined(USB_PRESENT) + case CMU_USBCCLKSEL_REG: + switch(ref) + { + + case cmuSelect_HFCLK: + /* Select undivided HFCLK as clock source for USB */ + /* Oscillator must already be enabled, if not the core had stopped */ + CMU->CMD = CMU_CMD_USBCCLKSEL_HFCLK; + /* Wait until clock is activated */ + while((CMU->STATUS & CMU_STATUS_USBCHFCLKSEL)==0); + break; + + case cmuSelect_LFXO: + /* Select LFXO as clock source for USB, can only be used in sleep mode */ + + /* Ensure selected oscillator is enabled, waiting for it to stabilize */ + CMU_OscillatorEnable(cmuOsc_LFXO, true, true); + + /* Switch oscillator */ + CMU->CMD = CMU_CMD_USBCCLKSEL_LFXO; + + /* Wait until clock is activated */ + while((CMU->STATUS & CMU_STATUS_USBCLFXOSEL)==0); + break; + + case cmuSelect_LFRCO: + /* Select LFRCO as clock source for USB, can only be used in sleep mode */ + + /* Ensure selected oscillator is enabled, waiting for it to stabilize */ + CMU_OscillatorEnable(cmuOsc_LFRCO, true, true); + + /* Switch oscillator */ + CMU->CMD = CMU_CMD_USBCCLKSEL_LFRCO; + + /* Wait until clock is activated */ + while((CMU->STATUS & CMU_STATUS_USBCLFRCOSEL)==0); + break; + + default: + /* Illegal clock source for USB */ + EFM_ASSERT(0); + return; + } + /* Wait until clock has been activated */ + break; +#endif + default: EFM_ASSERT(0); break; @@ -1197,6 +1610,80 @@ void CMU_FreezeEnable(bool enable) } +#if defined(_EFM32_TINY_FAMILY) || defined(_EFM32_GIANT_FAMILY) +/***************************************************************************//** + * @brief + * Get AUXHFRCO band in use. + * + * @return + * AUXHFRCO band in use. + ******************************************************************************/ +CMU_AUXHFRCOBand_TypeDef CMU_AUXHFRCOBandGet(void) +{ + return (CMU_AUXHFRCOBand_TypeDef)((CMU->AUXHFRCOCTRL & _CMU_AUXHFRCOCTRL_BAND_MASK) >> + _CMU_AUXHFRCOCTRL_BAND_SHIFT); +} + +/***************************************************************************//** + * @brief + * Set AUIXHFRCO band and the tuning value based on the value in the + * calibration table made during production. + * + * @param[in] band + * AUXHFRCO band to activate. + ******************************************************************************/ +void CMU_AUXHFRCOBandSet(CMU_AUXHFRCOBand_TypeDef band) +{ + uint32_t tuning; + + /* Read tuning value from calibration table */ + switch (band) + { + case cmuAUXHFRCOBand_1MHz: + tuning = (DEVINFO->AUXHFRCOCAL0 & _DEVINFO_AUXHFRCOCAL0_BAND1_MASK) >> + _DEVINFO_AUXHFRCOCAL0_BAND1_SHIFT; + break; + + case cmuAUXHFRCOBand_7MHz: + tuning = (DEVINFO->AUXHFRCOCAL0 & _DEVINFO_AUXHFRCOCAL0_BAND7_MASK) >> + _DEVINFO_AUXHFRCOCAL0_BAND7_SHIFT; + break; + + case cmuAUXHFRCOBand_11MHz: + tuning = (DEVINFO->AUXHFRCOCAL0 & _DEVINFO_AUXHFRCOCAL0_BAND11_MASK) >> + _DEVINFO_AUXHFRCOCAL0_BAND11_SHIFT; + break; + + case cmuAUXHFRCOBand_14MHz: + tuning = (DEVINFO->AUXHFRCOCAL0 & _DEVINFO_AUXHFRCOCAL0_BAND14_MASK) >> + _DEVINFO_AUXHFRCOCAL0_BAND14_SHIFT; + break; + + case cmuAUXHFRCOBand_21MHz: + tuning = (DEVINFO->AUXHFRCOCAL1 & _DEVINFO_AUXHFRCOCAL1_BAND21_MASK) >> + _DEVINFO_AUXHFRCOCAL1_BAND21_SHIFT; + break; + + case cmuAUXHFRCOBand_28MHz: + tuning = (DEVINFO->AUXHFRCOCAL1 & _DEVINFO_AUXHFRCOCAL1_BAND28_MASK) >> + _DEVINFO_AUXHFRCOCAL1_BAND28_SHIFT; + break; + + default: + EFM_ASSERT(0); + return; + } + + /* Set band/tuning */ + CMU->AUXHFRCOCTRL = (CMU->AUXHFRCOCTRL & + ~(_CMU_AUXHFRCOCTRL_BAND_MASK | _CMU_AUXHFRCOCTRL_TUNING_MASK)) | + (band << _CMU_AUXHFRCOCTRL_BAND_SHIFT) | + (tuning << _CMU_AUXHFRCOCTRL_TUNING_SHIFT); + +} +#endif + + /***************************************************************************//** * @brief * Get HFRCO band in use. diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_dac.c b/bsp/efm32/Libraries/efm32lib/src/efm32_dac.c index 10b7279993..0698d5d998 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_dac.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_dac.c @@ -2,7 +2,7 @@ * @file * @brief Digital to Analog Coversion (DAC) Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_dbg.c b/bsp/efm32/Libraries/efm32lib/src/efm32_dbg.c index f4a15b449f..3bee9c0d46 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_dbg.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_dbg.c @@ -2,7 +2,7 @@ * @file * @brief Debug (DBG) Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_dma.c b/bsp/efm32/Libraries/efm32lib/src/efm32_dma.c index f1e9ed8e61..f572157f52 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_dma.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_dma.c @@ -2,7 +2,7 @@ * @file * @brief Direct memory access (DMA) module peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_ebi.c b/bsp/efm32/Libraries/efm32lib/src/efm32_ebi.c index 0318fb434e..2a0f16d826 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_ebi.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_ebi.c @@ -2,7 +2,7 @@ * @file * @brief External Bus Interface (EBI) Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com @@ -318,6 +318,29 @@ void EBI_BankEnable(uint32_t banks, bool enable) ******************************************************************************/ uint32_t EBI_BankAddress(uint32_t bank) { +#if defined (_EFM32_GIANT_FAMILY) + if(EBI->CTRL & EBI_CTRL_ALTMAP) + { + switch (bank) + { + case EBI_BANK0: + return(EBI_MEM_BASE); + + case EBI_BANK1: + return(EBI_MEM_BASE + 0x10000000UL); + + case EBI_BANK2: + return(EBI_MEM_BASE + 0x20000000UL); + + case EBI_BANK3: + return(EBI_MEM_BASE + 0x30000000UL); + + default: + EFM_ASSERT(0); + break; + } + } +#endif switch (bank) { case EBI_BANK0: diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_emu.c b/bsp/efm32/Libraries/efm32lib/src/efm32_emu.c index d7e2244f90..53647b94f3 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_emu.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_emu.c @@ -2,7 +2,7 @@ * @file * @brief Energy Management Unit (EMU) Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_gpio.c b/bsp/efm32/Libraries/efm32lib/src/efm32_gpio.c index edd1314845..104ebc0ab2 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_gpio.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_gpio.c @@ -3,7 +3,7 @@ * @brief General Purpose IO (GPIO) peripheral API for EFM32 * devices. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_i2c.c b/bsp/efm32/Libraries/efm32lib/src/efm32_i2c.c index 64a301168e..6315c85bac 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_i2c.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_i2c.c @@ -2,7 +2,7 @@ * @file * @brief Inter-integrated Circuit (I2C) Peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_int.c b/bsp/efm32/Libraries/efm32lib/src/efm32_int.c index 56dc1a408d..6f08b211b8 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_int.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_int.c @@ -2,7 +2,7 @@ * @file * @brief Interrupt enable/disable unit API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_lcd.c b/bsp/efm32/Libraries/efm32lib/src/efm32_lcd.c index 8466256143..85ec1b36cf 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_lcd.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_lcd.c @@ -2,7 +2,7 @@ * @file * @brief Liquid Crystal Display (LCD) Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com @@ -58,6 +58,8 @@ void LCD_Init(const LCD_Init_TypeDef *lcdInit) { uint32_t dispCtrl = LCD->DISPCTRL; + EFM_ASSERT(lcdInit != (void *) 0); + /* Disable controller before reconfiguration */ LCD_Enable(false); @@ -143,6 +145,8 @@ void LCD_FrameCountInit(const LCD_FrameCountInit_TypeDef *fcInit) { uint32_t bactrl = LCD->BACTRL; + EFM_ASSERT(fcInit != (void *) 0); + /* Verify FC Top Counter to be within limits */ EFM_ASSERT(fcInit->top < 64); @@ -170,6 +174,8 @@ void LCD_AnimInit(const LCD_AnimInit_TypeDef *animInit) { uint32_t bactrl = LCD->BACTRL; + EFM_ASSERT(animInit != (void *) 0); + /* Set Animation Register Values */ LCD->AREGA = animInit->AReg; LCD->AREGB = animInit->BReg; @@ -183,6 +189,17 @@ void LCD_AnimInit(const LCD_AnimInit_TypeDef *animInit) bactrl |= (animInit->BShift << _LCD_BACTRL_AREGBSC_SHIFT); bactrl |= animInit->animLogic; +#if defined(_EFM32_GIANT_FAMILY) + if(animInit->startSeg == 0) + { + bactrl |= LCD_BACTRL_ALOC_SEG0TO7; + } + else if(animInit->startSeg == 8) + { + bactrl |= LCD_BACTRL_ALOC_SEG8TO15; + } +#endif + /* Reconfigure */ LCD->BACTRL = bactrl; diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_lesense.c b/bsp/efm32/Libraries/efm32lib/src/efm32_lesense.c index e5c62a7250..950f7cf520 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_lesense.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_lesense.c @@ -2,7 +2,7 @@ * @file * @brief Low Energy Sensor (LESENSE) Peripheral API for EFM32 TG/GG devices. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_letimer.c b/bsp/efm32/Libraries/efm32lib/src/efm32_letimer.c index 4e086fa454..3dbdbc3d50 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_letimer.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_letimer.c @@ -2,7 +2,7 @@ * @file * @brief Low Energy Timer (LETIMER) Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_leuart.c b/bsp/efm32/Libraries/efm32lib/src/efm32_leuart.c index 2b0469991a..55d92a8e31 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_leuart.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_leuart.c @@ -3,7 +3,7 @@ * @brief Low Energy Universal Asynchronous Receiver/Transmitter (LEUART) * peripheral module peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_mpu.c b/bsp/efm32/Libraries/efm32lib/src/efm32_mpu.c index 6661b4d8be..6aa1cb2319 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_mpu.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_mpu.c @@ -2,7 +2,7 @@ * @file * @brief Memory Protection Unit (MPU) Peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_msc.c b/bsp/efm32/Libraries/efm32lib/src/efm32_msc.c index 786a873dca..d4c101ecf7 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_msc.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_msc.c @@ -2,7 +2,7 @@ * @file * @brief Flash controller (MSC) Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_opamp.c b/bsp/efm32/Libraries/efm32lib/src/efm32_opamp.c index dcf672591c..e812bc8692 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_opamp.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_opamp.c @@ -2,7 +2,7 @@ * @file * @brief Operational Amplifier (OPAMP) peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ****************************************************************************** * @section License * (C) Copyright 2011 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_pcnt.c b/bsp/efm32/Libraries/efm32lib/src/efm32_pcnt.c index 040edf67d3..b3eb1beeea 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_pcnt.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_pcnt.c @@ -2,7 +2,7 @@ * @file * @brief Pulse Counter (PCNT) peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_prs.c b/bsp/efm32/Libraries/efm32lib/src/efm32_prs.c index 8a334eb8d5..7877e40833 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_prs.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_prs.c @@ -2,7 +2,7 @@ * @file * @brief Peripheral Reflex System (PRS) Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_rmu.c b/bsp/efm32/Libraries/efm32lib/src/efm32_rmu.c index d873d37f69..db4d852fbc 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_rmu.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_rmu.c @@ -3,7 +3,7 @@ * @brief Reset Management Unit (RMU) peripheral module peripheral API * for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_rtc.c b/bsp/efm32/Libraries/efm32lib/src/efm32_rtc.c index 37ffbe0c85..5ce2cbb678 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_rtc.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_rtc.c @@ -2,7 +2,7 @@ * @file * @brief Real Time Counter (RTC) Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_system.c b/bsp/efm32/Libraries/efm32lib/src/efm32_system.c index eb1e7c2c41..4c7bee1d3e 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_system.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_system.c @@ -2,7 +2,7 @@ * @file * @brief System Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_timer.c b/bsp/efm32/Libraries/efm32lib/src/efm32_timer.c index ebbb918165..4a253c15cb 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_timer.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_timer.c @@ -2,7 +2,7 @@ * @file * @brief Timer/counter (TIMER) Peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com @@ -131,6 +131,9 @@ void TIMER_Init(TIMER_TypeDef *timer, const TIMER_Init_TypeDef *init) { timer->CMD = TIMER_CMD_STOP; } + + /* Reset counter */ + timer->CNT = _TIMER_CNT_RESETVALUE; timer->CTRL = ((uint32_t)(init->prescale) << _TIMER_CTRL_PRESC_SHIFT) | diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_usart.c b/bsp/efm32/Libraries/efm32lib/src/efm32_usart.c index 8acaec9f9f..9a9cb0e2c9 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_usart.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_usart.c @@ -3,7 +3,7 @@ * @brief Universal synchronous/asynchronous receiver/transmitter (USART/UART) * peripheral module peripheral API for EFM32. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com @@ -715,6 +715,48 @@ void USART_InitI2s(USART_TypeDef *usart, USART_InitI2s_TypeDef *init) USART_Enable(usart, enable); } } + + +/***************************************************************************//** + * @brief + * Initialize automatic transmissions using PRS channel as trigger + * @note + * Initialize USART with USART_Init() before setting up PRS configuration + * + * @param[in] usart Pointer to USART to configure + * @param[in] init Pointer to initialization structure + ******************************************************************************/ +void USART_InitPrsTrigger(USART_TypeDef *usart, const USART_PrsTriggerInit_TypeDef *init) +{ + uint32_t trigctrl; + + /* Clear values that will be reconfigured */ + trigctrl = usart->TRIGCTRL & ~(_USART_TRIGCTRL_RXTEN_MASK| + _USART_TRIGCTRL_TXTEN_MASK| +#if defined(_EFM32_GIANT_FAMILY) + _USART_TRIGCTRL_AUTOTXTEN_MASK| +#endif + _USART_TRIGCTRL_TSEL_MASK); + +#if defined(_EFM32_GIANT_FAMILY) + if(init->autoTxTriggerEnable) + { + trigctrl |= USART_TRIGCTRL_AUTOTXTEN; + } +#endif + if(init->txTriggerEnable) + { + trigctrl |= USART_TRIGCTRL_TXTEN; + } + if(init->rxTriggerEnable) + { + trigctrl |= USART_TRIGCTRL_RXTEN; + } + trigctrl |= init->prsTriggerChannel; + + /* Enable new configuration */ + usart->TRIGCTRL = trigctrl; +} #endif diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_vcmp.c b/bsp/efm32/Libraries/efm32lib/src/efm32_vcmp.c index 8d354854c4..5828297b0a 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_vcmp.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_vcmp.c @@ -2,7 +2,7 @@ * @file * @brief Voltage Comparator (VCMP) peripheral API for EFM32 * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com @@ -50,7 +50,7 @@ void VCMP_Init(const VCMP_Init_TypeDef *vcmpInit) { /* Verify input */ EFM_ASSERT((vcmpInit->inactive == 0) || (vcmpInit->inactive == 1)); - EFM_ASSERT((vcmpInit->biasProg > 0) && (vcmpInit->biasProg < 16)); + EFM_ASSERT((vcmpInit->biasProg >= 0) && (vcmpInit->biasProg < 16)); /* Configure Half Bias setting */ if (vcmpInit->halfBias) @@ -106,8 +106,7 @@ void VCMP_Init(const VCMP_Init_TypeDef *vcmpInit) /* Configure inactive output value */ VCMP->CTRL |= (vcmpInit->inactive << _VCMP_CTRL_INACTVAL_SHIFT); - /* Configure input selection values, low power and trigger level */ - VCMP_LowPowerRefSet(vcmpInit->lowPowerRef); + /* Configure trigger level */ VCMP_TriggerSet(vcmpInit->triggerLevel); /* Enable or disable VCMP */ @@ -120,6 +119,16 @@ void VCMP_Init(const VCMP_Init_TypeDef *vcmpInit) VCMP->CTRL &= ~(VCMP_CTRL_EN); } + /* If Low Power Reference is enabled, wait until VCMP is ready */ + /* before enabling it, see reference manual for deatils */ + /* Configuring Low Power Ref without enable has no effect */ + if(vcmpInit->lowPowerRef && vcmpInit->enable) + { + /* Poll for VCMP ready */ + while(!VCMP_Ready()); + VCMP_LowPowerRefSet(vcmpInit->lowPowerRef); + } + /* Clear edge interrupt */ VCMP_IntClear(VCMP_IF_EDGE); } diff --git a/bsp/efm32/Libraries/efm32lib/src/efm32_wdog.c b/bsp/efm32/Libraries/efm32lib/src/efm32_wdog.c index 87415f18b0..69ada9b963 100644 --- a/bsp/efm32/Libraries/efm32lib/src/efm32_wdog.c +++ b/bsp/efm32/Libraries/efm32lib/src/efm32_wdog.c @@ -3,7 +3,7 @@ * @brief Watchdog (WDOG) peripheral API for EFM32 * devices. * @author Energy Micro AS - * @version 2.2.2 + * @version 2.3.0 ******************************************************************************* * @section License * (C) Copyright 2010 Energy Micro AS, http://www.energymicro.com diff --git a/bsp/efm32/SConscript b/bsp/efm32/SConscript index 031d291edc..8f36f940e8 100644 --- a/bsp/efm32/SConscript +++ b/bsp/efm32/SConscript @@ -2,17 +2,20 @@ import rtconfig Import('RTT_ROOT') from building import * -if rtconfig.EFM32_BOARD == 'EFM32_G290_DK': - src_kit = Glob('EFM32_Gxxx_DK/*.c') - CPPPATH = [RTT_ROOT + '/bsp/efm32/EFM32_Gxxx_DK'] +if rtconfig.EFM32_BOARD == 'EFM32_GXXX_DK': + src_kit = Glob('EFM32_Gxxx_DK/*.c') + CPPPATH = [RTT_ROOT + '/bsp/efm32/EFM32_Gxxx_DK'] +elif rtconfig.EFM32_BOARD == 'EFM32GG_DK3750': + src_kit = Glob('EFM32GG_DK3750/*.c') + CPPPATH = [RTT_ROOT + '/bsp/efm32/EFM32GG_DK3750'] else: - src_kit = [] - CPPPATH = [] + src_kit = [] + CPPPATH = [] src_bsp = ['application.c', 'startup.c', 'board.c'] if rtconfig.PLATFORM == 'gcc': src_bsp.append('start_gcc.S') -src_drv1 = ['drv_dma.c', 'drv_rtc.c', 'drv_adc.c', 'drv_acmp.c', 'drv_usart.c', 'drv_iic.c', 'drv_timer.c'] +src_drv1 = ['drv_dma.c', 'drv_rtc.c', 'drv_adc.c', 'drv_acmp.c', 'drv_usart.c', 'drv_leuart.c', 'drv_iic.c', 'drv_timer.c'] src_drv2 = ['drv_sdcard.c', 'drv_ethernet.c'] src_dev = ['dev_misc.c', 'dev_led.c', 'dev_accel.c', 'dev_sflash.c'] src_hdl = ['hdl_interrupt.c'] diff --git a/bsp/efm32/SConstruct b/bsp/efm32/SConstruct index 38493c53a9..4ff332568b 100644 --- a/bsp/efm32/SConstruct +++ b/bsp/efm32/SConstruct @@ -24,8 +24,8 @@ objs = PrepareBuilding(env, RTT_ROOT) # EFM32 library building script objs = objs + SConscript(RTT_ROOT + '/bsp/efm32/Libraries/SConscript', variant_dir='build/bsp/Libraries', duplicate=0) -# build program +# build program env.Program(TARGET, objs) -# end building +# end building EndBuilding(TARGET) diff --git a/bsp/efm32/application.c b/bsp/efm32/application.c index 506e55dfae..f0e84ad9b3 100644 --- a/bsp/efm32/application.c +++ b/bsp/efm32/application.c @@ -6,7 +6,7 @@ * @version 0.4 beta ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file + * The license and distribution terms for this file may be found in the file * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE ******************************************************************************* * @section Change Logs @@ -16,10 +16,10 @@ * 2011-05-06 onelife Add SPI Flash DEMO * 2011-07-15 onelife Add accelerometer DEMO * 2011-07-27 onelife Modify Ethernet DEMO - * 2011-08-23 onelife Modify Ethernet DEMO according to the changes of - * lwIP API in reversion 1668 + * 2011-08-23 onelife Modify Ethernet DEMO according to the changes of + * lwIP API in reversion 1668 ******************************************************************************/ - + /***************************************************************************//** * @addtogroup efm32 * @{ @@ -124,7 +124,7 @@ void rt_demo_thread_entry(void* parameter) efm_spiFlash_cmd(sflash_inst_rdsr, EFM32_NO_DATA, buf2, sizeof(buf2)); rt_kprintf("Status: %x\n", buf2[0]); - + efm_spiFlash_cmd(sflash_inst_read, 0x00000300, buf, sizeof(buf)); rt_kprintf("READ: \n"); for (i = 0; i < sizeof(buf); i++) @@ -241,18 +241,18 @@ int rt_application_init() #if (RT_THREAD_PRIORITY_MAX == 32) demo_thread = rt_thread_create( "demo", - rt_demo_thread_entry, + rt_demo_thread_entry, RT_NULL, - 1024, - 3, + 1024, + 5, 20); led_thread = rt_thread_create( "led", - rt_led_thread_entry, + rt_led_thread_entry, RT_NULL, 256, - 3, + 5, 20); #else #endif diff --git a/bsp/efm32/board.c b/bsp/efm32/board.c index ea794e5436..9c051189ac 100644 --- a/bsp/efm32/board.c +++ b/bsp/efm32/board.c @@ -6,7 +6,7 @@ * @version 0.4 beta ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file + * The license and distribution terms for this file may be found in the file * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE ******************************************************************************* * @section Change Logs @@ -14,8 +14,15 @@ * 2010-12-21 onelife Initial creation for EFM32 * 2011-05-06 onelife Add EFM32 development kit and SPI Flash support * 2011-07-12 onelife Add SWO output enable function + * 2011-12-08 onelife Add giant gecko development kit support + * 2011-12-09 onelife Add giant gecko support + * 2011-12-09 onelife Add LEUART module support + * 2011-12-14 onelife Add LFXO enabling routine in driver initialization + * function + * 2011-12-15 onelife Add MicroSD enabling routine in driver + * initialization function ******************************************************************************/ - + /***************************************************************************//** * @addtogroup efm32 * @{ @@ -48,7 +55,7 @@ /* Private functions ---------------------------------------------------------*/ /***************************************************************************//** * @brief - * Set the allocation and offset of the vector table + * Set the allocation and offset of the vector table * * @details * @@ -61,19 +68,19 @@ * The vector table offset ******************************************************************************/ static void NVIC_SetVectorTable( - rt_uint32_t NVIC_VectTab, + rt_uint32_t NVIC_VectTab, rt_uint32_t Offset) -{ +{ /* Check the parameters */ RT_ASSERT(IS_NVIC_VECTTAB(NVIC_VectTab)); - RT_ASSERT(IS_NVIC_OFFSET(Offset)); + RT_ASSERT(IS_NVIC_OFFSET(Offset)); SCB->VTOR = NVIC_VectTab | (Offset & (rt_uint32_t)0x1FFFFF80); } /***************************************************************************//** * @brief - * Configure the address of vector table + * Configure the address of vector table * * @details * @@ -90,7 +97,7 @@ static void NVIC_Configuration(void) NVIC_SetVectorTable(FLASH_MEM_BASE, 0x0); #endif - /* Set NVIC Preemption Priority Bits: 0 bit for pre-emption, 4 bits for + /* Set NVIC Preemption Priority Bits: 0 bit for pre-emption, 4 bits for subpriority */ NVIC_SetPriorityGrouping(0x7UL); @@ -100,7 +107,7 @@ static void NVIC_Configuration(void) /***************************************************************************//** * @brief - * Enable high frequency crystal oscillator (HFXO), and set HFCLK domain to + * Enable high frequency crystal oscillator (HFXO), and set HFCLK domain to * use HFXO as source. * * @details @@ -108,7 +115,7 @@ static void NVIC_Configuration(void) * @note * ******************************************************************************/ -static void switchToHFXO(void) +static void efm_hfxo_switch(void) { CMU_TypeDef *cmu = CMU; @@ -147,7 +154,7 @@ static void SysTick_CLKSourceConfig(uint32_t SysTick_CLKSource) { /* Check the parameters */ RT_ASSERT(IS_SYSTICK_CLK_SOURCE(SysTick_CLKSource)); - + if (SysTick_CLKSource == SysTick_CLKSource_HCLK) { SysTick->CTRL |= SysTick_CLKSource_HCLK; @@ -172,7 +179,7 @@ static void SysTick_Configuration(void) rt_uint32_t core_clock; rt_uint32_t cnts; - switchToHFXO(); + efm_hfxo_switch(); core_clock = SystemCoreClockGet(); cnts = core_clock / RT_TICK_PER_SECOND; @@ -189,7 +196,7 @@ static void SysTick_Configuration(void) * @note * ******************************************************************************/ -void setupSWO(void) +void efm_swo_setup(void) { rt_uint32_t *dwt_ctrl = (rt_uint32_t *) 0xE0001000; rt_uint32_t *tpiu_prescaler = (rt_uint32_t *) 0xE0040010; @@ -237,9 +244,11 @@ void rt_hw_board_init(void) /* Chip errata */ CHIP_Init(); -#if defined(EFM32_G290_DK) - /* Initialize DVK board register access */ + /* Initialize DVK board register access */ +#if defined(EFM32_GXXX_DK) DVK_init(); +#elif defined(EFM32GG_DK3750) + DVK_init(DVK_Init_EBI); #endif /* NVIC Configuration */ @@ -247,9 +256,9 @@ void rt_hw_board_init(void) /* Configure external oscillator */ SystemHFXOClockSet(EFM32_HFXO_FREQUENCY); - + /* Configure the SysTick */ - SysTick_Configuration(); + SysTick_Configuration(); } /***************************************************************************//** @@ -271,24 +280,50 @@ void rt_hw_driver_init(void) /* Enabling clock to the interface of the low energy modules */ CMU_ClockEnable(cmuClock_CORELE, true); -#ifdef EFM32_SWO_ENABLE - /* Enable SWO */ - setupSWO(); + /* Starting LFXO and waiting until it is stable */ +#if defined(EFM32_USING_LFXO) + CMU_OscillatorEnable(cmuOsc_LFXO, true, true); + + /* Select LFXO for specified module (and wait for it to stabilize) */ + #if (defined(RT_USING_LEUART0) || defined(RT_USING_LEUART1)) + CMU_ClockSelectSet(cmuClock_LFB, cmuSelect_LFXO); + #endif + #if defined(RT_USING_RTC) + CMU_ClockSelectSet(cmuClock_LFA,cmuSelect_LFXO); + #endif +#endif + + /* Enable SWO */ +#if defined(EFM32_SWO_ENABLE) + efm_swo_setup(); #endif /* Initialize DMA */ rt_hw_dma_init(); /* Initialize USART */ -#if defined(EFM32_G290_DK) - DVK_enablePeripheral(DVK_RS232A); - DVK_enablePeripheral(DVK_SPI); -#endif -#if (defined(RT_USING_USART0) || defined(RT_USING_USART1) || defined(RT_USING_USART2)) +#if (defined(RT_USING_USART0) || defined(RT_USING_USART1) || \ + defined(RT_USING_USART2) || defined(RT_USING_UART0) || \ + defined(RT_USING_UART1)) rt_hw_usart_init(); #endif - /* Setup console */ + /* Initialize LEUART */ +#if (defined(RT_USING_LEUART0) || defined(RT_USING_LEUART1)) + rt_hw_leuart_init(); +#endif + + /* Setup Console */ +#if defined(EFM32_GXXX_DK) + DVK_enablePeripheral(DVK_RS232A); + DVK_enablePeripheral(DVK_SPI); +#elif defined(EFM32GG_DK3750) + #if (RT_CONSOLE_DEVICE == EFM_UART1) + DVK_enablePeripheral(DVK_RS232_UART); + #elif (RT_CONSOLE_DEVICE == EFM_LEUART1) + DVK_enablePeripheral(DVK_RS232_LEUART); + #endif +#endif rt_console_set_device(CONSOLE_DEVICE); /* Initialize Timer */ @@ -315,6 +350,20 @@ void rt_hw_driver_init(void) #if defined(RT_USING_RTC) rt_hw_rtc_init(); #endif + + /* Enable SPI access to MicroSD card */ +#if defined(EFM32_USING_SPISD) + #if defined(EFM32_GXXX_DK) + DVK_writeRegister(BC_SPI_CFG, 1); + #elif defined(EFM32GG_DK3750) + DVK_enablePeripheral(DVK_MICROSD); + #endif +#endif + + /* Enable SPI access to Ethernet */ +#if defined(EFM32_USING_ETHERNET) + DVK_enablePeripheral(DVK_ETH); +#endif } /***************************************************************************//** diff --git a/bsp/efm32/board.h b/bsp/efm32/board.h index 6e91c29026..90b9ad810a 100644 --- a/bsp/efm32/board.h +++ b/bsp/efm32/board.h @@ -6,15 +6,20 @@ * @version 0.4 beta ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file + * The license and distribution terms for this file may be found in the file * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE ******************************************************************************* * @section Change Logs * Date Author Notes * 2010-12-21 onelife Initial creation for EFM32 * 2011-05-06 onelife Add EFM32 development kit and SPI Flash support - * 2011-07-12 onelife Add prototype for SWO output enable and interrupt - * context check functions + * 2011-07-12 onelife Add prototype for SWO output enable and interrupt + * context check functions + * 2011-12-08 onelife Add giant gecko development kit support + * 2011-12-09 onelife Add giant gecko support + * 2011-12-09 onelife Add LEUART module support + * 2011-12-14 onelife Add LFXO enabling routine in driver initialization + * function ******************************************************************************/ #ifndef __BOARD_H__ #define __BOARD_H__ @@ -22,8 +27,9 @@ #if defined(EFM32G890F128) #elif defined(EFM32G290F128) #elif defined(EFM32G230F128) +#elif defined(EFM32GG990F1024) #else -#error Unknown MCU type +#error Unknown MCU type #endif /* Includes ------------------------------------------------------------------*/ @@ -38,11 +44,12 @@ #include #include #include +#include #include #include -#if defined(EFM32_G290_DK) +#if (defined(EFM32_GXXX_DK) || defined(EFM32GG_DK3750)) #include #endif @@ -72,30 +79,61 @@ extern volatile rt_uint32_t rt_system_status; /* SECTION: Micro SD */ #if defined(EFM32_USING_SPISD) -#define USART_0_AUTOCS (1) -#define SD_CS_PORT (gpioPortC) -#define SD_CS_PIN (8) + #if defined(EFM32_GXXX_DK) + #define USART_0_AUTOCS (1) + #define SD_CS_PORT (gpioPortC) + #define SD_CS_PIN (8) + #elif defined(EFM32GG_DK3750) + #define USART_0_AUTOCS (1) + #define SD_CS_PORT (gpioPortE) + #define SD_CS_PIN (4) + #endif #endif /* SECTION: Ethernet */ #if defined(EFM32_USING_ETHERNET) -#define USART_2_AUTOCS (0) -#define ETH_CS_PORT (gpioPortB) -#define ETH_CS_PIN (6) + #if defined(EFM32_GXXX_DK) + #define USART_2_AUTOCS (0) + #define ETH_CS_PORT (gpioPortB) + #define ETH_CS_PIN (6) + #elif defined(EFM32GG_DK3750) + #define USART_1_AUTOCS (0) + #define ETH_CS_PORT (gpioPortD) + #define ETH_CS_PIN (3) + #endif #endif /* SECTION: SYSTEM */ #define EFM32_SRAM_END (SRAM_BASE + SRAM_SIZE) #define EFM32_BASE_PRI_DEFAULT (0x0UL << 5) #define EFM32_IRQ_PRI_DEFAULT (0x4UL << 5) -#if (defined(EFM32_G890_STK) || defined(EFM32_G290_DK)) -#define EFM32_HFXO_FREQUENCY (32000000) -#else -#define EFM32_HFXO_FREQUENCY (00000000) + +/* SECTION: CLOCK */ +#define EFM32_USING_HFXO +#define EFM32_USING_LFXO +#if defined(EFM32_USING_HFXO) + #if (defined(EFM32_G8XX_STK) || defined(EFM32_GXXX_DK)) + #define EFM32_HFXO_FREQUENCY (32000000) + #elif defined(EFM32GG_DK3750) + #define EFM32_HFXO_FREQUENCY (48000000) + #else + #define EFM32_HFXO_FREQUENCY (00000000) + #endif #endif /* SECTION: USART */ #define USART_RX_BUFFER_SIZE (64) +#define LEUART_RX_BUFFER_SIZE (64) +/* Location count (start from 0) */ +#if defined(EFM32_GXXX_DK) +#define EFM32_USART_LOCATION_COUNT (3) +#define EFM32_UART_LOCATION_COUNT (4) +#define EFM32_LEUART_LOCATION_COUNT (3) +#elif defined(EFM32GG_DK3750) +#define EFM32_USART_LOCATION_COUNT (6) +#define EFM32_UART_LOCATION_COUNT (4) +#define EFM32_LEUART_LOCATION_COUNT (5) +#endif /* SUBSECTION: UART */ #define UART_BAUDRATE (115200) @@ -120,20 +158,33 @@ extern volatile rt_uint32_t rt_system_status; /* SECTION: I2C */ #define IIC_RX_BUFFER_SIZE (32) +#if defined(EFM32_GXXX_DK) +#define EFM32_IIC_LOCATION_COUNT (4) +#elif defined(EFM32GG_DK3750) +#define EFM32_IIC_LOCATION_COUNT (7) +#endif /* SECTION: ADC */ #define ADC_CALI_REF adcRef2V5 #define ADC_CALI_CH adcSingleInpCh5 #define ADC_CONVERT_FREQUENCY (7000000) -#if (RT_CONSOLE_DEVICE == 0x0UL) +#if (RT_CONSOLE_DEVICE == EFM_USART0) #define CONSOLE_DEVICE RT_USART0_NAME -#elif (RT_CONSOLE_DEVICE == 0x1UL) +#elif (RT_CONSOLE_DEVICE == EFM_USART1) #define CONSOLE_DEVICE RT_USART1_NAME -#elif (RT_CONSOLE_DEVICE == 0x2UL) +#elif (RT_CONSOLE_DEVICE == EFM_USART2) #define CONSOLE_DEVICE RT_USART2_NAME +#elif (RT_CONSOLE_DEVICE == EFM_UART0) +#define CONSOLE_DEVICE RT_UART0_NAME +#elif (RT_CONSOLE_DEVICE == EFM_UART1) +#define CONSOLE_DEVICE RT_UART1_NAME +#elif (RT_CONSOLE_DEVICE == EFM_LEUART0) +#define CONSOLE_DEVICE RT_LEUART0_NAME +#elif (RT_CONSOLE_DEVICE == EFM_LEUART1) +#define CONSOLE_DEVICE RT_LEUART1_NAME #else -#define CONSOLE_DEVICE "no" +#define CONSOLE_DEVICE "NONE" #endif @@ -161,13 +212,14 @@ extern volatile rt_uint32_t rt_system_status; #define RT_DEVICE_CTRL_SD_GET_SDSTAT MMC_GET_SDSTAT /*! fixme: move the following define to Rtdef.h */ -#define RT_DEVICE_CTRL_USART_RBUFFER (0xF1) /*!< set USART rx buffer */ -#define RT_DEVICE_CTRL_IIC_SETTING (0xF2) /*!< change IIC setting */ -#define RT_DEVICE_CTRL_TIMER_PERIOD (0xF3) /*!< set Timer timeout period */ -#define RT_DEVICE_CTRL_ADC_MODE (0xF4) /*!< change ADC mode */ -#define RT_DEVICE_CTRL_ADC_RESULT (0xF5) /*!< get ADC result */ -#define RT_DEVICE_CTRL_ACMP_INIT (0xF6) /*!< Initialize ACMP */ -#define RT_DEVICE_CTRL_ACMP_OUTPUT (0xF7) /*!< get ACMP output */ +#define RT_DEVICE_CTRL_USART_RBUFFER (0xF1) /*!< set USART/UART rx buffer */ +#define RT_DEVICE_CTRL_LEUART_RBUFFER (0xF2) /*!< set LEUART rx buffer */ +#define RT_DEVICE_CTRL_IIC_SETTING (0xF3) /*!< change IIC setting */ +#define RT_DEVICE_CTRL_TIMER_PERIOD (0xF4) /*!< set Timer timeout period */ +#define RT_DEVICE_CTRL_ADC_MODE (0xF5) /*!< change ADC mode */ +#define RT_DEVICE_CTRL_ADC_RESULT (0xF6) /*!< get ADC result */ +#define RT_DEVICE_CTRL_ACMP_INIT (0xF7) /*!< Initialize ACMP */ +#define RT_DEVICE_CTRL_ACMP_OUTPUT (0xF8) /*!< get ACMP output */ /* Exported functions ------------------------------------------------------- */ void rt_hw_board_init(void); diff --git a/bsp/efm32/dev_accel.c b/bsp/efm32/dev_accel.c index 989e498279..0974067c88 100644 --- a/bsp/efm32/dev_accel.c +++ b/bsp/efm32/dev_accel.c @@ -6,14 +6,14 @@ * @version 0.4 beta ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file + * The license and distribution terms for this file may be found in the file * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE ******************************************************************************* * @section Change Logs * Date Author Notes - * 2011-07-13 onelife Initial creation for using EFM32 ADC module to + * 2011-07-13 onelife Initial creation for using EFM32 ADC module to * interface the Freescale MMA7361L - * 2011-08-02 onelife Add digital interface support of using EFM32 IIC + * 2011-08-02 onelife Add digital interface support of using EFM32 IIC * module for the Freescale MMA7455L ******************************************************************************/ @@ -76,7 +76,7 @@ static rt_uint32_t accelConfig = 0; * @return * Error code ******************************************************************************/ -rt_err_t efm_accel_get_data(struct efm32_accel_result_t *data, +rt_err_t efm_accel_get_data(struct efm32_accel_result_t *data, rt_bool_t lowResolution) { RT_ASSERT(accel != RT_NULL); @@ -89,7 +89,7 @@ rt_err_t efm_accel_get_data(struct efm32_accel_result_t *data, } ret = RT_EOK; - do + do { /* --------- ADC interface --------- */ #if (EFM32_USING_ACCEL == EFM32_INTERFACE_ADC) @@ -97,7 +97,7 @@ rt_err_t efm_accel_get_data(struct efm32_accel_result_t *data, result.mode = control.mode; result.buffer = (void *)data; - if ((ret = accel->control(accel, RT_DEVICE_CTRL_RESUME, + if ((ret = accel->control(accel, RT_DEVICE_CTRL_RESUME, (void *)&result)) != RT_EOK) { break; @@ -311,7 +311,7 @@ rt_err_t efm_accel_config(rt_uint32_t config, { mctl_reg |= MCTL_PIN_INT1; } - + /* Modify CTL1 */ if (config & ACCEL_INTPIN_INVERSE) { @@ -346,7 +346,7 @@ rt_err_t efm_accel_config(rt_uint32_t config, break; default: break; - } + } if (config & ACCEL_THRESHOLD_INTEGER) { @@ -485,16 +485,16 @@ rt_err_t efm_accel_config(rt_uint32_t config, BITBAND_Peripheral(&(GPIO->IFC), ACCEL_INT2_PIN, 0x1UL); /* Set raising edge interrupt and clear/enable it */ GPIO_IntConfig( - ACCEL_INT1_PORT, - ACCEL_INT1_PIN, - true, - false, + ACCEL_INT1_PORT, + ACCEL_INT1_PIN, + true, + false, true); GPIO_IntConfig( - ACCEL_INT2_PORT, - ACCEL_INT2_PIN, - true, - false, + ACCEL_INT2_PORT, + ACCEL_INT2_PIN, + true, + false, true); if (((rt_uint8_t)ACCEL_INT1_PORT % 2) || \ ((rt_uint8_t)ACCEL_INT2_PORT % 2)) @@ -602,7 +602,7 @@ rt_err_t efm_accel_auto_zero(rt_uint8_t mode, rt_tick_t period) if ((temp.x == 0) && (temp.y == 0) && \ (temp.z == 0)) { - accel_debug("Accel: Offset %+d %+d %+d\n", + accel_debug("Accel: Offset %+d %+d %+d\n", accelOffset.x, accelOffset.y, accelOffset.z); break; } @@ -620,7 +620,7 @@ rt_err_t efm_accel_auto_zero(rt_uint8_t mode, rt_tick_t period) { break; } - + /* Set offset drift registers */ max.x -= temp.x; max.y -= temp.y; @@ -645,7 +645,7 @@ rt_err_t efm_accel_auto_zero(rt_uint8_t mode, rt_tick_t period) "cal_tmr", efm_accel_timer, RT_NULL, - period, + period, RT_TIMER_FLAG_ONE_SHOT)) == RT_NULL) { accel_debug("Accel err: Create timer failed!\n"); @@ -704,7 +704,7 @@ rt_err_t efm_accel_auto_zero(rt_uint8_t mode, rt_tick_t period) rt_thread_sleep(1); } while (accelInTime); - accel_debug("Accel: Min %+d %+d %+d, max %+d %+d %+d\n", + accel_debug("Accel: Min %+d %+d %+d, max %+d %+d %+d\n", min.x, min.y, min.z, max.x, max.y, max.z); #if (EFM32_USING_ACCEL == EFM32_INTERFACE_ADC) @@ -712,7 +712,7 @@ rt_err_t efm_accel_auto_zero(rt_uint8_t mode, rt_tick_t period) accelOffset.y = -((min.y + max.y) >> 1); accelOffset.z = -((min.z + max.z) >> 1); - accel_debug("Accel: Offset %+d %+d %+d\n", + accel_debug("Accel: Offset %+d %+d %+d\n", accelOffset.x, accelOffset.y, accelOffset.z); #elif (EFM32_USING_ACCEL == EFM32_INTERFACE_IIC) @@ -725,7 +725,7 @@ rt_err_t efm_accel_auto_zero(rt_uint8_t mode, rt_tick_t period) return -RT_ERROR; } - accel_debug("Accel: Offset %+d %+d %+d\n", + accel_debug("Accel: Offset %+d %+d %+d\n", *(rt_int16_t *)&cmd[1], *(rt_int16_t *)&cmd[3], *(rt_int16_t *)&cmd[5]); #endif @@ -767,7 +767,7 @@ rt_err_t efm_accel_init(void) #if (EFM32_USING_ACCEL == EFM32_INTERFACE_ADC) ADC_InitScan_TypeDef scanInit = ADC_INITSCAN_DEFAULT; - #if defined(EFM32_G290_DK) + #if defined(EFM32_GXXX_DK) /* Enable accelerometer */ DVK_enablePeripheral(DVK_ACCEL); /* Select g-range */ @@ -802,11 +802,11 @@ rt_err_t efm_accel_init(void) } if (efm_accel_config( - ACCEL_MODE_MEASUREMENT | ACCEL_RANGE_2G, - EFM32_NO_DATA, - EFM32_NO_DATA, - EFM32_NO_DATA, - EFM32_NO_DATA, + ACCEL_MODE_MEASUREMENT | ACCEL_RANGE_2G, + EFM32_NO_DATA, + EFM32_NO_DATA, + EFM32_NO_DATA, + EFM32_NO_DATA, EFM32_NO_DATA) != RT_EOK) { break; @@ -859,11 +859,11 @@ void test_accel(rt_uint8_t mode) { if (efm_accel_config( ACCEL_MODE_LEVEL | ACCEL_RANGE_8G | ACCEL_INT_LEVEL_PULSE | \ - ACCEL_SOURCE_LEVEL_X | ACCEL_SOURCE_LEVEL_Y, - 0x1f, - EFM32_NO_DATA, - EFM32_NO_DATA, - EFM32_NO_DATA, + ACCEL_SOURCE_LEVEL_X | ACCEL_SOURCE_LEVEL_Y, + 0x1f, + EFM32_NO_DATA, + EFM32_NO_DATA, + EFM32_NO_DATA, EFM32_NO_DATA) != RT_EOK) { rt_kprintf("efm_accel_config(): error\n"); @@ -874,11 +874,11 @@ void test_accel(rt_uint8_t mode) { if (efm_accel_config( ACCEL_MODE_PULSE | ACCEL_RANGE_8G | ACCEL_INT_SINGLE_DOUBLE | \ - ACCEL_SOURCE_PULSE_X | ACCEL_SOURCE_PULSE_Y, - 0x1f, - 0x1f, - 200, - 255, + ACCEL_SOURCE_PULSE_X | ACCEL_SOURCE_PULSE_Y, + 0x1f, + 0x1f, + 200, + 255, 255) != RT_EOK) { rt_kprintf("efm_accel_config(): error\n"); diff --git a/bsp/efm32/dev_led.c b/bsp/efm32/dev_led.c index c1cceb92e8..bf357a023d 100644 --- a/bsp/efm32/dev_led.c +++ b/bsp/efm32/dev_led.c @@ -6,7 +6,7 @@ * @version 0.4 beta ********************************************************************** * @section License - * The license and distribution terms for this file may be found in the file LICENSE in this + * The license and distribution terms for this file may be found in the file LICENSE in this * distribution or at http://www.rt-thread.org/license/LICENSE ********************************************************************** * @section Change Logs @@ -14,6 +14,7 @@ * 2009-01-05 Bernard the first version * 2010-12-27 onelife Modify for EFM32 * 2011-05-06 onelife Add EFM32 development kit support + * 2011-12-08 onelife Add giant gecko development kit support *********************************************************************/ /******************************************************************//** @@ -29,7 +30,7 @@ /* Private define --------------------------------------------------------------*/ /* Private macro --------------------------------------------------------------*/ /* Private constants -----------------------------------------------------------*/ -#if defined(EFM32_G890_STK) +#if defined(EFM32_G8XX_STK) static const rt_uint8_t leds_list[LEDS_MAX_NUMBER][2] = \ { {LEDS_PIN_PORT_0, LEDS_PIN_NUMBER_0}, @@ -58,12 +59,12 @@ void rt_hw_led_on(rt_uint8_t num) { RT_ASSERT(num < LEDS_MAX_NUMBER); -#if defined(EFM32_G890_STK) +#if defined(EFM32_G8XX_STK) GPIO_PinOutSet(leds_list[num][0], leds_list[num][1]); -#elif defined(EFM32_G290_DK) +#elif (defined(EFM32_GXXX_DK) || defined(EFM32GG_DK3750)) { rt_uint16_t leds; - + leds = DVK_getLEDs() | (rt_uint16_t)(1 << num); DVK_setLEDs(leds); } @@ -86,12 +87,12 @@ void rt_hw_led_off(rt_uint8_t num) { RT_ASSERT(num < LEDS_MAX_NUMBER); -#if defined(EFM32_G890_STK) +#if defined(EFM32_G8XX_STK) GPIO_PinOutClear(leds_list[num][0], leds_list[num][1]); -#elif defined(EFM32_G290_DK) +#elif (defined(EFM32_GXXX_DK) || defined(EFM32GG_DK3750)) { rt_uint16_t leds; - + leds = DVK_getLEDs() & ~(rt_uint16_t)(1 << num); DVK_setLEDs(leds); } @@ -114,12 +115,12 @@ void rt_hw_led_toggle(rt_uint8_t num) { RT_ASSERT(num < LEDS_MAX_NUMBER); -#if defined(EFM32_G890_STK) +#if defined(EFM32_G8XX_STK) GPIO_PinOutToggle(leds_list[num][0], leds_list[num][1]); -#elif defined(EFM32_G290_DK) +#elif (defined(EFM32_GXXX_DK) || defined(EFM32GG_DK3750)) { rt_uint16_t leds; - + leds = DVK_getLEDs() ^ (rt_uint16_t)(1 << num); DVK_setLEDs(leds); } @@ -130,9 +131,9 @@ rt_uint8_t rt_hw_led_state(rt_uint8_t num) { RT_ASSERT(num < LEDS_MAX_NUMBER); -#if defined(EFM32_G890_STK) +#if defined(EFM32_G8XX_STK) return (rt_uint8_t)GPIO_PinInGet(leds_list[num][0], leds_list[num][1]); -#elif defined(EFM32_G290_DK) +#elif (defined(EFM32_GXXX_DK) || defined(EFM32GG_DK3750)) return ((DVK_getLEDs() & (rt_uint16_t)(1 << num)) >> num); #endif @@ -151,9 +152,9 @@ rt_uint8_t rt_hw_led_state(rt_uint8_t num) *********************************************************************/ rt_err_t rt_hw_led_init(void) { -#if defined(EFM32_G890_STK) +#if defined(EFM32_G8XX_STK) rt_uint8_t i; - + /* Configure GPIO */ for (i = 0; i < LEDS_MAX_NUMBER; i++) { @@ -182,14 +183,14 @@ void list_leds(void) for (i = 0; i < LEDS_MAX_NUMBER; i++) { -#if defined(EFM32_G890_STK) - rt_kprintf(" %d \t %x \t %x \t %x \n", +#if defined(EFM32_G8XX_STK) + rt_kprintf(" %d \t %x \t %x \t %x \n", i, leds_list[i][0], leds_list[i][1], rt_hw_led_state(i)); -#elif defined(EFM32_G290_DK) +#elif (defined(EFM32_GXXX_DK) || defined(EFM32GG_DK3750)) rt_uint16_t leds; - + leds = DVK_getLEDs(); - rt_kprintf(" %d \t FPGA \t FPGA \t %x \n", + rt_kprintf(" %d \t FPGA \t FPGA \t %x \n", i, (leds & (1 << i))? 1 : 0); #endif } diff --git a/bsp/efm32/dev_led.h b/bsp/efm32/dev_led.h index 9bc7190e4a..e5a5bf6f4c 100644 --- a/bsp/efm32/dev_led.h +++ b/bsp/efm32/dev_led.h @@ -6,7 +6,7 @@ * @version 0.4 beta ********************************************************************** * @section License - * The license and distribution terms for this file may be found in the file LICENSE in this + * The license and distribution terms for this file may be found in the file LICENSE in this * distribution or at http://www.rt-thread.org/license/LICENSE ********************************************************************** * @section Change Logs @@ -14,6 +14,7 @@ * 2009-01-05 Bernard the first version * 2010-12-27 onelife Modify for EFM32 * 2011-05-06 onelife Add EFM32 development kit support + * 2011-12-08 onelife Add giant gecko development kit support *********************************************************************/ #ifndef __DEV_LED_H__ #define __DEV_LED_H__ @@ -22,7 +23,7 @@ /* Exported types -------------------------------------------------------------*/ /* Exported constants ---------------------------------------------------------*/ /* Exported macro -------------------------------------------------------------*/ -#if defined(EFM32_G890_STK) +#if defined(EFM32_G8XX_STK) #define LEDS_MAX_NUMBER (4) /* Configure GPIO port C 0-3 for LEDs */ #define LEDS_PIN_PORT_0 gpioPortC @@ -33,7 +34,7 @@ #define LEDS_PIN_NUMBER_2 (2) #define LEDS_PIN_PORT_3 gpioPortC #define LEDS_PIN_NUMBER_3 (3) -#elif defined(EFM32_G290_DK) +#elif (defined(EFM32_GXXX_DK) || defined(EFM32GG_DK3750)) #define LEDS_MAX_NUMBER (16) #endif @@ -44,4 +45,4 @@ void rt_hw_led_off(rt_uint8_t num); void rt_hw_led_toggle(rt_uint8_t num); rt_uint8_t rt_hw_led_state(rt_uint8_t num); -#endif /* __DEV_LED_H__ */ \ No newline at end of file +#endif /* __DEV_LED_H__ */ diff --git a/bsp/efm32/dev_sflash.c b/bsp/efm32/dev_sflash.c index 5a7e192254..00486e5cca 100644 --- a/bsp/efm32/dev_sflash.c +++ b/bsp/efm32/dev_sflash.c @@ -1,14 +1,14 @@ /******************************************************************//** * @file dev_sflash.c * @brief SPI Flash driver of RT-Thread RTOS for using EFM32 USART module. - * This driver is tested by using the M25PX16 device on the EFM32 development + * This driver is tested by using the M25PX16 device on the EFM32 development * kit. * COPYRIGHT (C) 2011, RT-Thread Development Team * @author onelife * @version 0.4 beta ********************************************************************** * @section License - * The license and distribution terms for this file may be found in the file LICENSE in this + * The license and distribution terms for this file may be found in the file LICENSE in this * distribution or at http://www.rt-thread.org/license/LICENSE ********************************************************************** * @section Change Logs @@ -44,7 +44,7 @@ typedef struct #endif /* Private constants -----------------------------------------------------------*/ -static rt_uint8_t sflash_inst_code_tbl[] = +static rt_uint8_t sflash_inst_code_tbl[] = { /* Instruction only */ SFLASH_INST_CODE_WREN, @@ -70,7 +70,7 @@ static rt_uint8_t sflash_inst_code_tbl[] = SFLASH_INST_CODE_DOFR, SFLASH_INST_CODE_ROTP }; -static rt_uint16_t sflash_data_len_tbl[] = +static rt_uint16_t sflash_data_len_tbl[] = { /* Instruction only */ SFLASH_REPLY_LEN_WREN, @@ -96,7 +96,7 @@ static rt_uint16_t sflash_data_len_tbl[] = SFLASH_REPLY_LEN_DOFR, SFLASH_REPLY_LEN_ROTP }; -static rt_bool_t sflash_read_inst_tbl[] = +static rt_bool_t sflash_read_inst_tbl[] = { /* Instruction only */ false, @@ -146,7 +146,7 @@ rt_err_t efm_spiFlash_init(void) usart = (struct efm32_usart_device_t *)(sFlash->user_data); -#if defined(EFM32_G290_DK) +#if defined(EFM32_GXXX_DK) /* Enable SPI access to Flash */ DVK_writeRegister(BC_SPI_CFG, 0); #endif @@ -157,7 +157,7 @@ rt_err_t efm_spiFlash_init(void) sFlash = rt_device_find(SFLASH_USING_DEVICE_NAME); if (sFlash == RT_NULL) { - sflash_debug("SFLASH: Can't find device %s!\n", + sflash_debug("SFLASH: Can't find device %s!\n", SFLASH_USING_DEVICE_NAME); break; } @@ -203,7 +203,7 @@ rt_err_t efm_spiFlash_deinit(void) sflash_debug("SFLASH: Already deinit!\n"); break; } - + /* Close SPI device */ if (sFlash->close(sFlash) != RT_EOK) { @@ -269,9 +269,9 @@ static void efm_spiFlash_cs(rt_uint8_t enable) * Number of read/written bytes *********************************************************************/ rt_uint32_t efm_spiFlash_cmd( - enum sflash_inst_type_t command, + enum sflash_inst_type_t command, rt_uint32_t address, - rt_uint8_t *buffer, + rt_uint8_t *buffer, rt_uint32_t size) { RT_ASSERT(sFlash != RT_NULL); @@ -338,7 +338,7 @@ rt_uint32_t efm_spiFlash_cmd( if (sflash_read_inst_tbl[command]) { rt_off_t skip; - + inst_buf[0] = inst_len; *(rt_uint8_t **)(inst_buf + head_len) = buffer; if (command == sflash_inst_read) @@ -349,7 +349,7 @@ rt_uint32_t efm_spiFlash_cmd( { skip = SFLASH_SPI_COMMAND_SKIP; } - + efm_spiFlash_cs(1); if (sFlash->read(sFlash, skip, inst_buf, \ (data_len == size)? data_len - 1 : data_len) == 0) @@ -396,7 +396,7 @@ void list_sflash(void) rt_uint8_t buf[4]; efm_spiFlash_cmd(sflash_inst_rdid_s, EFM32_NO_DATA, buf, sizeof(buf)); - + rt_kprintf(" spi flash on %s\n", SFLASH_USING_DEVICE_NAME); rt_kprintf(" ------------------------------\n"); rt_kprintf(" Manufacturer ID:\t%x\n", buf[0]); diff --git a/bsp/efm32/drv_iic.c b/bsp/efm32/drv_iic.c index 6df67c184c..d4881b9ca8 100644 --- a/bsp/efm32/drv_iic.c +++ b/bsp/efm32/drv_iic.c @@ -6,20 +6,20 @@ * @version 0.4 beta ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file + * The license and distribution terms for this file may be found in the file * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE ******************************************************************************* * @section Change Logs * Date Author Notes * 2011-01-06 onelife Initial creation for EFM32 - * 2011-06-17 onelife Modify init function for EFM32 library v2.0.0 + * 2011-06-17 onelife Modify init function for EFM32 library v2.0.0 * upgrading - * 2011-07-11 onelife Add lock (semaphore) to prevent simultaneously + * 2011-07-11 onelife Add lock (semaphore) to prevent simultaneously * access - * 2011-08-04 onelife Change the usage of the second parameter of Read + * 2011-08-04 onelife Change the usage of the second parameter of Read * and Write functions from (seldom used) "Offset" to "Slave address" * 2011-08-04 onelife Add a timer to prevent from forever waiting - * 2011-11-29 onelife Modify init function for EFM32 library v2.2.2 + * 2011-11-29 onelife Modify init function for EFM32 library v2.2.2 * upgrading ******************************************************************************/ @@ -52,15 +52,15 @@ struct efm32_iic_block /* Private variables ---------------------------------------------------------*/ #ifdef RT_USING_IIC0 - #if (RT_USING_IIC0 > 3) - #error "The location number range of IIC is 0~3" + #if (RT_USING_IIC0 > EFM32_IIC_LOCATION_COUNT) + #error "Wrong location number" #endif static struct efm32_iic_block iic0; #endif #ifdef RT_USING_IIC1 - #if (RT_USING_IIC1 > 3) - #error "The location number range of IIC is 0~3" + #if (RT_USING_IIC1 > EFM32_IIC_LOCATION_COUNT) + #error "Wrong location number" #endif static struct efm32_iic_block iic1; #endif @@ -122,7 +122,7 @@ static rt_err_t rt_iic_open(rt_device_t dev, rt_uint16_t oflag) RT_ASSERT(dev != RT_NULL); struct efm32_iic_device_t *iic; - + iic = (struct efm32_iic_device_t *)(dev->user_data); iic->counter++; @@ -149,7 +149,7 @@ static rt_err_t rt_iic_close(rt_device_t dev) RT_ASSERT(dev != RT_NULL); struct efm32_iic_device_t *iic; - + iic = (struct efm32_iic_device_t *)(dev->user_data); if (--iic->counter == 0) { @@ -184,9 +184,9 @@ static rt_err_t rt_iic_close(rt_device_t dev) * Error code ******************************************************************************/ static rt_size_t rt_iic_read ( - rt_device_t dev, - rt_off_t pos, - void* buffer, + rt_device_t dev, + rt_off_t pos, + void* buffer, rt_size_t size) { rt_err_t err_code; @@ -238,7 +238,7 @@ static rt_size_t rt_iic_read ( { ret = I2C_Transfer(iic->iic_device); } - + if (ret != i2cTransferDone) { iic_debug("IIC read error: %x\n", ret); @@ -335,9 +335,9 @@ static rt_size_t rt_iic_read ( * Error code ******************************************************************************/ static rt_size_t rt_iic_write ( - rt_device_t dev, - rt_off_t pos, - const void* buffer, + rt_device_t dev, + rt_off_t pos, + const void* buffer, rt_size_t size) { rt_err_t err_code; @@ -391,7 +391,7 @@ static rt_size_t rt_iic_write ( { ret = I2C_Transfer(iic->iic_device); } - + if (ret != i2cTransferDone) { err_code = (rt_err_t)ret; @@ -430,8 +430,8 @@ static rt_size_t rt_iic_write ( * Error code ******************************************************************************/ static rt_err_t rt_iic_control ( - rt_device_t dev, - rt_uint8_t cmd, + rt_device_t dev, + rt_uint8_t cmd, void *args) { RT_ASSERT(dev != RT_NULL); @@ -502,7 +502,7 @@ static rt_err_t rt_iic_control ( iic->rx_buffer->read_index = 0; iic->rx_buffer->save_index = 0; } - + /* Enable slave mode */ I2C_SlaveAddressSet(iic->iic_device, iic->address); I2C_SlaveAddressMaskSet(iic->iic_device, 0xFF); @@ -511,7 +511,7 @@ static rt_err_t rt_iic_control ( /* Enable interrupts */ I2C_IntEnable(iic->iic_device, I2C_IEN_ADDR | I2C_IEN_RXDATAV | I2C_IEN_SSTOP); I2C_IntClear(iic->iic_device, _I2C_IFC_MASK); - + /* Enable I2Cn interrupt vector in NVIC */ #ifdef RT_USING_IIC0 if (dev == &iic0.device) @@ -574,20 +574,20 @@ static void rt_iic_timer(void *timeout) * Configuration flags * * @param[in] iic - * Pointer to IIC device descriptor + * Pointer to IIC device descriptor * * @return * Error code ******************************************************************************/ rt_err_t rt_hw_iic_register( - rt_device_t device, - const char *name, - rt_uint32_t flag, + rt_device_t device, + const char *name, + rt_uint32_t flag, struct efm32_iic_device_t *iic) { RT_ASSERT(device != RT_NULL); - if ((flag & RT_DEVICE_FLAG_DMA_TX) || (flag & RT_DEVICE_FLAG_DMA_RX) || + if ((flag & RT_DEVICE_FLAG_DMA_TX) || (flag & RT_DEVICE_FLAG_DMA_RX) || (flag & RT_DEVICE_FLAG_INT_TX)) { RT_ASSERT(0); @@ -635,20 +635,20 @@ static void rt_hw_iic_slave_isr(rt_device_t dev) if (status & I2C_IF_ADDR) { - /* Address Match */ + /* Address Match */ /* Indicating that reception is started */ temp = iic->iic_device->RXDATA & 0xFFUL; if ((temp != 0x00) || (iic->state & IIC_STATE_BROADCAST)) { iic->state |= IIC_STATE_RX_BUSY; } - } + } else if (status & I2C_IF_RXDATAV) { if (iic->state & IIC_STATE_RX_BUSY) { rt_base_t level; - + /* disable interrupt */ level = rt_hw_interrupt_disable(); @@ -687,7 +687,7 @@ static void rt_hw_iic_slave_isr(rt_device_t dev) /***************************************************************************//** * @brief - * Initialize the specified IIC unit + * Initialize the specified IIC unit * * @details * @@ -697,11 +697,11 @@ static void rt_hw_iic_slave_isr(rt_device_t dev) * Unit number * * @param[in] location - * Pin location number + * Pin location number ******************************************************************************/ static struct efm32_iic_device_t *rt_hw_iic_unit_init( struct efm32_iic_block *block, - rt_uint8_t unitNumber, + rt_uint8_t unitNumber, rt_uint8_t location) { struct efm32_iic_device_t *iic; @@ -737,7 +737,7 @@ static struct efm32_iic_device_t *rt_hw_iic_unit_init( { case 0: iic->iic_device = I2C0; - iicClock = (CMU_Clock_TypeDef)cmuClock_I2C0; + iicClock = (CMU_Clock_TypeDef)cmuClock_I2C0; port_scl = AF_I2C0_SCL_PORT(location); pin_scl = AF_I2C0_SCL_PIN(location); port_sda = AF_I2C0_SDA_PORT(location); @@ -747,7 +747,7 @@ static struct efm32_iic_device_t *rt_hw_iic_unit_init( #if (I2C_COUNT > 1) case 1: iic->iic_device = I2C1; - iicClock = (CMU_Clock_TypeDef)cmuClock_I2C1; + iicClock = (CMU_Clock_TypeDef)cmuClock_I2C1; port_scl = AF_I2C1_SCL_PORT(location); pin_scl = AF_I2C1_SCL_PIN(location); port_sda = AF_I2C1_SDA_PORT(location); @@ -761,7 +761,7 @@ static struct efm32_iic_device_t *rt_hw_iic_unit_init( rt_sprintf(name, "iic%d", unitNumber); /* Enabling clock */ - CMU_ClockEnable(iicClock, true); + CMU_ClockEnable(iicClock, true); /* Reset */ I2C_Reset(iic->iic_device); @@ -803,7 +803,7 @@ static struct efm32_iic_device_t *rt_hw_iic_unit_init( } /* Initialize timer */ - rt_timer_init(iic->timer, name, rt_iic_timer, &iic->timeout, + rt_timer_init(iic->timer, name, rt_iic_timer, &iic->timeout, IIC_TIMEOUT_PERIOD, RT_TIMER_FLAG_ONE_SHOT); return iic; @@ -813,7 +813,7 @@ static struct efm32_iic_device_t *rt_hw_iic_unit_init( { rt_free(iic); } - + iic_debug("IIC: Unit %d init failed!\n", unitNumber); return RT_NULL; } diff --git a/bsp/efm32/drv_leuart.c b/bsp/efm32/drv_leuart.c new file mode 100644 index 0000000000..3fda466ad8 --- /dev/null +++ b/bsp/efm32/drv_leuart.c @@ -0,0 +1,1077 @@ +/***************************************************************************//** + * @file drv_leuart.c + * @brief LEUART driver of RT-Thread RTOS for EFM32 + * COPYRIGHT (C) 2011, RT-Thread Development Team + * @author onelife + * @version 0.4 beta + ******************************************************************************* + * @section License + * The license and distribution terms for this file may be found in the file + * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE + ******************************************************************************* + * @section Change Logs + * Date Author Notes + * 2011-12-09 onelife Initial creation for EFM32 + ******************************************************************************/ + +/***************************************************************************//** + * @addtogroup efm32 + * @{ + ******************************************************************************/ + +/* Includes ------------------------------------------------------------------*/ +#include "board.h" +#include "hdl_interrupt.h" +#include "drv_leuart.h" + +#if (defined(RT_USING_LEUART0) || defined(RT_USING_LEUART1)) +/* Private typedef -----------------------------------------------------------*/ +/* Private define ------------------------------------------------------------*/ +/* Private macro -------------------------------------------------------------*/ +#ifdef RT_LEUART_DEBUG +#define leuart_debug(format,args...) rt_kprintf(format, ##args) +#else +#define leuart_debug(format,args...) +#endif + +/* Private variables ---------------------------------------------------------*/ +#ifdef RT_USING_LEUART0 +#if (RT_USING_LEUART0 >= EFM32_LEUART_LOCATION_COUNT) + #error "Wrong location number" +#endif + struct rt_device leuart0_device; + static struct rt_semaphore leuart0_lock; +#endif + +#ifdef RT_USING_LEUART1 +#if (RT_USING_LEUART1 >= EFM32_LEUART_LOCATION_COUNT) + #error "Wrong location number" +#endif + struct rt_device leuart1_device; + static struct rt_semaphore leuart1_lock; +#endif + +/* Private function prototypes -----------------------------------------------*/ +/* Private functions ---------------------------------------------------------*/ +/***************************************************************************//** + * @brief + * Initialize LEUART device + * + * @details + * + * @note + * + * @param[in] dev + * Pointer to device descriptor + * + * @return + * Error code + ******************************************************************************/ +static rt_err_t rt_leuart_init (rt_device_t dev) +{ + struct efm32_leuart_device_t *leuart; + + leuart = (struct efm32_leuart_device_t *)(dev->user_data); + + if (!(dev->flag & RT_DEVICE_FLAG_ACTIVATED)) + { + if (dev->flag & RT_DEVICE_FLAG_DMA_TX) + { + struct efm32_leuart_dma_mode_t *dma_tx; + + dma_tx = (struct efm32_leuart_dma_mode_t *)(leuart->tx_mode); + + leuart->state |= LEUART_STATE_RX_BUSY; + } + + if (dev->flag & RT_DEVICE_FLAG_INT_RX) + { + struct efm32_leuart_int_mode_t *int_rx; + + int_rx = (struct efm32_leuart_int_mode_t *)(leuart->rx_mode); + + int_rx->data_ptr = RT_NULL; + } + + /* Enable LEUART */ + LEUART_Enable(leuart->leuart_device, leuartEnable); + + dev->flag |= RT_DEVICE_FLAG_ACTIVATED; + } + + return RT_EOK; +} + +/***************************************************************************//** + * @brief + * Open LEUART device + * + * @details + * + * @note + * + * @param[in] dev + * Pointer to device descriptor + * + * @param[in] oflag + * Device open flag + * + * @return + * Error code + ******************************************************************************/ +static rt_err_t rt_leuart_open(rt_device_t dev, rt_uint16_t oflag) +{ + RT_ASSERT(dev != RT_NULL); + + struct efm32_leuart_device_t *leuart; + + leuart = (struct efm32_leuart_device_t *)(dev->user_data); + + if (dev->flag & RT_DEVICE_FLAG_INT_RX) + { + IRQn_Type rxIrq; + + //if (leuart->state & LEUART_STATE_CONSOLE) + { /* Allocate new RX buffer */ + struct efm32_leuart_int_mode_t *int_mode; + + int_mode = (struct efm32_leuart_int_mode_t *)(leuart->rx_mode); + + if ((int_mode->data_ptr = rt_malloc(LEUART_RX_BUFFER_SIZE)) == RT_NULL) + { + leuart_debug("LEUART%d err: no mem for RX BUF\n", leuart->unit); + return -RT_ENOMEM; + } + rt_memset(int_mode->data_ptr, 0, LEUART_RX_BUFFER_SIZE); + int_mode->data_size = LEUART_RX_BUFFER_SIZE; + int_mode->read_index = 0; + int_mode->save_index = 0; + } + + /* Enable RX interrupt */ + leuart->leuart_device->IEN = LEUART_IEN_RXDATAV; + + /* Enable IRQ */ + switch (leuart->unit) + { + case 0: + rxIrq = LEUART0_IRQn; + break; + case 1: + rxIrq = LEUART1_IRQn; + break; + } + if (oflag != RT_DEVICE_OFLAG_WRONLY) + { + NVIC_ClearPendingIRQ(rxIrq); + NVIC_SetPriority(rxIrq, EFM32_IRQ_PRI_DEFAULT); + NVIC_EnableIRQ(rxIrq); + } + } + + /* Clear Flag */ + leuart->leuart_device->IFC = _LEUART_IFC_MASK; + + if ((dev->flag & RT_DEVICE_FLAG_DMA_TX) && (oflag != RT_DEVICE_OFLAG_RDONLY)) + { + /* DMA IRQ is enabled by DMA_Init() */ + NVIC_SetPriority(DMA_IRQn, EFM32_IRQ_PRI_DEFAULT); + } + + leuart->counter++; + leuart_debug("LEUART%d: Open with flag %x\n", leuart->unit, oflag); + return RT_EOK; +} + +/***************************************************************************//** + * @brief + * Close LEUART device + * + * @details + * + * @note + * + * @param[in] dev + * Pointer to device descriptor + * + * @return + * Error code + ******************************************************************************/ +static rt_err_t rt_leuart_close(rt_device_t dev) +{ + RT_ASSERT(dev != RT_NULL); + + struct efm32_leuart_device_t *leuart; + + leuart = (struct efm32_leuart_device_t *)(dev->user_data); + + if (--leuart->counter == 0) + { + if (dev->flag & RT_DEVICE_FLAG_INT_RX) + { + struct efm32_leuart_int_mode_t *int_rx; + + int_rx = (struct efm32_leuart_int_mode_t *)leuart->rx_mode; + + rt_free(int_rx->data_ptr); + int_rx->data_ptr = RT_NULL; + } + } + + return RT_EOK; +} + +/***************************************************************************//** + * @brief + * Read from LEUART device + * + * @details + * + * @note + * + * @param[in] dev + * Pointer to device descriptor + * + * @param[in] pos + * Offset + * + * @param[in] buffer + * Poniter to the buffer + * + * @param[in] size + * Buffer size in byte + * + * @return + * Number of read bytes + ******************************************************************************/ +static rt_size_t rt_leuart_read ( + rt_device_t dev, + rt_off_t pos, + void *buffer, + rt_size_t size) +{ + struct efm32_leuart_device_t *leuart; + rt_uint8_t *ptr; + rt_err_t err_code; + rt_size_t read_len; + + leuart = (struct efm32_leuart_device_t *)(dev->user_data); + + /* Lock device */ + if (rt_hw_interrupt_check()) + { + err_code = rt_sem_take(leuart->lock, RT_WAITING_NO); + } + else + { + err_code = rt_sem_take(leuart->lock, RT_WAITING_FOREVER); + } + if (err_code != RT_EOK) + { + rt_set_errno(err_code); + return 0; + } + + if (dev->flag & RT_DEVICE_FLAG_INT_RX) + { + ptr = buffer; + + /* interrupt mode Rx */ + while (size) + { + rt_base_t level; + struct efm32_leuart_int_mode_t *int_rx; + + int_rx = (struct efm32_leuart_int_mode_t *)\ + (((struct efm32_leuart_device_t *)(dev->user_data))->rx_mode); + + /* disable interrupt */ + level = rt_hw_interrupt_disable(); + + if (int_rx->read_index != int_rx->save_index) + { + /* read a character */ + *ptr++ = int_rx->data_ptr[int_rx->read_index]; + size--; + + /* move to next position */ + int_rx->read_index ++; + if (int_rx->read_index >= LEUART_RX_BUFFER_SIZE) + { + int_rx->read_index = 0; + } + } + else + { + /* set error code */ + err_code = -RT_EEMPTY; + + /* enable interrupt */ + rt_hw_interrupt_enable(level); + break; + } + + /* enable interrupt */ + rt_hw_interrupt_enable(level); + } + + read_len = (rt_uint32_t)ptr - (rt_uint32_t)buffer; + } + else + { + LEUART_TypeDef *leuart_device; + + leuart = (struct efm32_leuart_device_t *)(dev->user_data); + leuart_device = ((struct efm32_leuart_device_t *)(dev->user_data))->leuart_device; + ptr = buffer; + + /* polling mode */ + while ((rt_uint32_t)ptr - (rt_uint32_t)buffer < size) + { + while (leuart_device->STATUS & LEUART_STATUS_RXDATAV) + { + *ptr = leuart_device->RXDATA & 0xff; + ptr ++; + } + } + + read_len = size; + } + + /* Unlock device */ + rt_sem_release(leuart->lock); + + /* set error code */ + rt_set_errno(err_code); + return read_len; +} + +/***************************************************************************//** + * @brief + * Write to LEUART device + * + * @details + * + * @note + * + * @param[in] dev + * Pointer to device descriptor + * + * @param[in] pos + * Offset + * + * @param[in] buffer + * Poniter to the buffer + * + * @param[in] size + * Buffer size in byte + * + * @return + * Number of written bytes + ******************************************************************************/ +static rt_size_t rt_leuart_write ( + rt_device_t dev, + rt_off_t pos, + const void* buffer, + rt_size_t size) +{ + rt_err_t err_code; + rt_size_t write_size; + struct efm32_leuart_device_t* leuart; + + write_size = 0; + leuart = (struct efm32_leuart_device_t*)(dev->user_data); + + /* Lock device */ + if (rt_hw_interrupt_check()) + { + err_code = rt_sem_take(leuart->lock, RT_WAITING_NO); + } + else + { + err_code = rt_sem_take(leuart->lock, RT_WAITING_FOREVER); + } + if (err_code != RT_EOK) + { + rt_set_errno(err_code); + return 0; + } + + if ((dev->flag & RT_DEVICE_FLAG_DMA_TX) && (size > 2)) + { /* DMA mode Tx */ + struct efm32_leuart_dma_mode_t *dma_tx; + + if (dev->flag & RT_DEVICE_FLAG_STREAM) + { + if (*((rt_uint8_t *)buffer + size - 1) == '\n') + { + *((rt_uint8_t *)buffer + size - 1) = '\r'; + *((rt_uint8_t *)buffer + size++) = '\n'; + *((rt_uint8_t *)buffer + size) = 0; + } + } + + dma_tx = (struct efm32_leuart_dma_mode_t *)(leuart->tx_mode); + dma_tx->data_ptr = (rt_uint32_t *)buffer; + dma_tx->data_size = size; + + leuart->state |= LEUART_STATE_TX_BUSY; + + DMA_ActivateBasic( + dma_tx->dma_channel, + true, + false, + (void *)&(leuart->leuart_device->TXDATA), + (void *)buffer, + (rt_uint32_t)(size - 1)); + + /* Wait, otherwise the TX buffer is overwrite */ +// if (leuart->state & LEUART_STATE_CONSOLE) +// { + while(leuart->state & LEUART_STATE_TX_BUSY); +// } +// else +// { +// while(leuart->state & LEUART_STATE_TX_BUSY) +// { +// rt_thread_sleep(LEUART_WAIT_TIME_TX); +// } +// } +// TODO: This function blocks the process + write_size = size; + } + else + { /* polling mode */ + rt_uint8_t *ptr = (rt_uint8_t *)buffer; + + if (dev->flag & RT_DEVICE_FLAG_STREAM) + { + /* stream mode */ + while (size) + { + if (*ptr == '\n') + { + while (!(leuart->leuart_device->STATUS & LEUART_STATUS_TXBL)); + leuart->leuart_device->TXDATA = '\r'; + } + + while (!(leuart->leuart_device->STATUS & LEUART_STATUS_TXBL)); + leuart->leuart_device->TXDATA = (rt_uint32_t)*ptr; + ++ptr; --size; + } + } + else + { + /* write data directly */ + while (size) + { + while (!(leuart->leuart_device->STATUS & LEUART_STATUS_TXBL)); + leuart->leuart_device->TXDATA = (rt_uint32_t)*ptr; + ++ptr; --size; + } + } + + write_size = (rt_size_t)ptr - (rt_size_t)buffer; + } + + /* Unlock device */ + rt_sem_release(leuart->lock); + + /* set error code */ + rt_set_errno(err_code); + return write_size; +} + +/***************************************************************************//** +* @brief +* Configure LEUART device +* +* @details +* +* @note +* +* @param[in] dev +* Pointer to device descriptor +* +* @param[in] cmd +* IIC control command +* +* @param[in] args +* Arguments +* +* @return +* Error code +******************************************************************************/ +static rt_err_t rt_leuart_control ( + rt_device_t dev, + rt_uint8_t cmd, + void *args) +{ + RT_ASSERT(dev != RT_NULL); + + rt_err_t err_code; + struct efm32_leuart_device_t *leuart; + + leuart = (struct efm32_leuart_device_t *)(dev->user_data); + + /* Lock device */ + if (rt_hw_interrupt_check()) + { + err_code = rt_sem_take(leuart->lock, RT_WAITING_NO); + } + else + { + err_code = rt_sem_take(leuart->lock, RT_WAITING_FOREVER); + } + if (err_code != RT_EOK) + { + return err_code; + } + + switch (cmd) + { + case RT_DEVICE_CTRL_SUSPEND: + /* Suspend device */ + dev->flag |= RT_DEVICE_FLAG_SUSPENDED; + LEUART_Enable(leuart->leuart_device, leuartDisable); + break; + + case RT_DEVICE_CTRL_RESUME: + /* Resume device */ + dev->flag &= ~RT_DEVICE_FLAG_SUSPENDED; + LEUART_Enable(leuart->leuart_device, leuartEnable); + break; + + case RT_DEVICE_CTRL_LEUART_RBUFFER: + /* Set RX buffer */ + { + struct efm32_leuart_int_mode_t *int_rx; + rt_uint8_t size; + + int_rx = (struct efm32_leuart_int_mode_t *)(leuart->rx_mode); + size = (rt_uint8_t)((rt_uint32_t)args & 0xFFUL); + + /* Free previous RX buffer */ + if (int_rx->data_ptr != RT_NULL) + { + if (size == 0) + { /* Free RX buffer */ + rt_free(int_rx->data_ptr); + int_rx->data_ptr = RT_NULL; + } + else if (size != int_rx->data_size) + { + /* Re-allocate RX buffer */ + if ((int_rx->data_ptr = rt_realloc(int_rx->data_ptr, size)) \ + == RT_NULL) + { + leuart_debug("LEUART%d err: no mem for RX BUF\n", leuart->unit); + err_code = -RT_ENOMEM; + break; + } + // TODO: Is the following line necessary? + //rt_memset(int_rx->data_ptr, 0, size); + } + } + else + { + /* Allocate new RX buffer */ + if ((int_rx->data_ptr = rt_malloc(size)) == RT_NULL) + { + leuart_debug("LEUART%d err: no mem for RX BUF\n", leuart->unit); + err_code = -RT_ENOMEM; + break; + } + } + int_rx->data_size = size; + int_rx->read_index = 0; + int_rx->save_index = 0; + } + break; + + } + + /* Unlock device */ + rt_sem_release(leuart->lock); + + return err_code; +} + +/***************************************************************************//** + * @brief + * LEUART RX data valid interrupt handler + * + * @details + * + * @note + * + * @param[in] dev + * Pointer to device descriptor + ******************************************************************************/ +void rt_hw_leuart_rx_isr(rt_device_t dev) +{ + struct efm32_leuart_device_t *leuart; + struct efm32_leuart_int_mode_t *int_rx; + rt_uint32_t flag; + + /* interrupt mode receive */ + RT_ASSERT(dev->flag & RT_DEVICE_FLAG_INT_RX); + + leuart = (struct efm32_leuart_device_t *)(dev->user_data); + int_rx = (struct efm32_leuart_int_mode_t *)(leuart->rx_mode); + + RT_ASSERT(int_rx->data_ptr != RT_NULL); + + /* Set status */ + leuart->state |= LEUART_STATE_RX_BUSY; + + /* save into rx buffer */ + while (leuart->leuart_device->STATUS & LEUART_STATUS_RXDATAV) + { + rt_base_t level; + + /* disable interrupt */ + level = rt_hw_interrupt_disable(); + + /* save character */ + int_rx->data_ptr[int_rx->save_index] = \ + (rt_uint8_t)(leuart->leuart_device->RXDATA & 0xFFUL); + int_rx->save_index ++; + if (int_rx->save_index >= LEUART_RX_BUFFER_SIZE) + int_rx->save_index = 0; + + /* if the next position is read index, discard this 'read char' */ + if (int_rx->save_index == int_rx->read_index) + { + int_rx->read_index ++; + if (int_rx->read_index >= LEUART_RX_BUFFER_SIZE) + { + int_rx->read_index = 0; + } + } + + /* enable interrupt */ + rt_hw_interrupt_enable(level); + } + + /* invoke callback */ + if (dev->rx_indicate != RT_NULL) + { + rt_size_t rx_length; + + /* get rx length */ + rx_length = int_rx->read_index > int_rx->save_index ? + LEUART_RX_BUFFER_SIZE - int_rx->read_index + int_rx->save_index : \ + int_rx->save_index - int_rx->read_index; + + dev->rx_indicate(dev, rx_length); + } +} + +/***************************************************************************//** + * @brief + * DMA for LEUART TX interrupt handler + * + * @details + * + * @note + * + * @param[in] dev + * Pointer to device descriptor + ******************************************************************************/ +void rt_hw_leuart_dma_tx_isr(rt_device_t dev) +{ + /* DMA mode receive */ + struct efm32_leuart_device_t *leuart; + struct efm32_leuart_dma_mode_t *dma_tx; + + RT_ASSERT(dev->flag & RT_DEVICE_FLAG_DMA_TX); + + leuart = (struct efm32_leuart_device_t *)(dev->user_data); + dma_tx = (struct efm32_leuart_dma_mode_t *)(leuart->tx_mode); + + /* invoke call to notify tx complete */ + if (dev->tx_complete != RT_NULL) + { + dev->tx_complete(dev, dma_tx->data_ptr); + } + + /* Set status */ + leuart->state &= ~(rt_uint32_t)LEUART_STATE_TX_BUSY; +} + +/***************************************************************************//** +* @brief +* Register LEUART device +* +* @details +* +* @note +* +* @param[in] device +* Pointer to device descriptor +* +* @param[in] name +* Device name +* +* @param[in] flag +* Configuration flags +* +* @param[in] leuart +* Pointer to LEUART device descriptor +* +* @return +* Error code +******************************************************************************/ +rt_err_t rt_hw_leuart_register( + rt_device_t device, + const char *name, + rt_uint32_t flag, + struct efm32_leuart_device_t *leuart) +{ + RT_ASSERT(device != RT_NULL); + + if ((flag & RT_DEVICE_FLAG_DMA_RX) || + (flag & RT_DEVICE_FLAG_INT_TX)) + { + RT_ASSERT(0); + } + + device->type = RT_Device_Class_Char; + device->rx_indicate = RT_NULL; + device->tx_complete = RT_NULL; + device->init = rt_leuart_init; + device->open = rt_leuart_open; + device->close = rt_leuart_close; + device->read = rt_leuart_read; + device->write = rt_leuart_write; + device->control = rt_leuart_control; + device->user_data = leuart; + + /* register a character device */ + return rt_device_register(device, name, RT_DEVICE_FLAG_RDWR | flag); +} + +/***************************************************************************//** +* @brief +* Initialize the specified LEUART unit +* +* @details +* +* @note +* +* @param[in] device +* Pointer to device descriptor +* +* @param[in] unitNumber +* Unit number +* +* @param[in] location +* Pin location number +* +* @param[in] flag +* Configuration flag +* +* @param[in] dmaChannel +* DMA channel number for TX +* +* @param[in] console +* Indicate if using as console +* +* @return +* Pointer to LEUART device +******************************************************************************/ +static struct efm32_leuart_device_t *rt_hw_leuart_unit_init( + rt_device_t device, + rt_uint8_t unitNumber, + rt_uint8_t location, + rt_uint32_t flag, + rt_uint32_t dmaChannel, + rt_uint8_t config) +{ + struct efm32_leuart_device_t *leuart; + struct efm32_leuart_dma_mode_t *dma_mode; + DMA_CB_TypeDef *callback; + CMU_Clock_TypeDef leuartClock; + rt_uint32_t txDmaSelect; + GPIO_Port_TypeDef port_tx, port_rx, port_clk, port_cs; + rt_uint32_t pin_tx, pin_rx, pin_clk, pin_cs; + LEUART_Init_TypeDef init = LEUART_INIT_DEFAULT; + efm32_irq_hook_init_t hook; + + do + { + /* Allocate device */ + leuart = rt_malloc(sizeof(struct efm32_leuart_device_t)); + if (leuart == RT_NULL) + { + leuart_debug("LEUART%d err: no mem\n", unitNumber); + break; + } + leuart->counter = 0; + leuart->unit = unitNumber; + leuart->state = config; + leuart->tx_mode = RT_NULL; + leuart->rx_mode = RT_NULL; + + /* Allocate TX */ + dma_mode = RT_NULL; + if (flag & RT_DEVICE_FLAG_DMA_TX) + { + leuart->tx_mode = dma_mode = rt_malloc(sizeof(struct efm32_leuart_dma_mode_t)); + if (dma_mode == RT_NULL) + { + leuart_debug("LEUART%d err: no mem for DMA TX\n", unitNumber); + break; + } + dma_mode->dma_channel = dmaChannel; + } + + /* Allocate RX */ + if (flag & RT_DEVICE_FLAG_INT_RX) + { + leuart->rx_mode = rt_malloc(sizeof(struct efm32_leuart_int_mode_t)); + if (leuart->rx_mode == RT_NULL) + { + leuart_debug("LEUART%d err: no mem for INT RX\n, unitNumber"); + break; + } + } + + /* Initialization */ + if (unitNumber >= LEUART_COUNT) + { + break; + } + switch (unitNumber) + { + case 0: + leuart->leuart_device = LEUART0; + leuartClock = (CMU_Clock_TypeDef)cmuClock_LEUART0; + txDmaSelect = DMAREQ_LEUART0_TXBL; + port_tx = AF_LEUART0_TX_PORT(location); + pin_tx = AF_LEUART0_TX_PIN(location); + port_rx = AF_LEUART0_RX_PORT(location); + pin_rx = AF_LEUART0_RX_PIN(location); + break; + + case 1: + leuart->leuart_device = LEUART1; + leuartClock = (CMU_Clock_TypeDef)cmuClock_LEUART1; + txDmaSelect = DMAREQ_LEUART1_TXBL; + port_tx = AF_LEUART1_TX_PORT(location); + pin_tx = AF_LEUART1_TX_PIN(location); + port_rx = AF_LEUART1_RX_PORT(location); + pin_rx = AF_LEUART1_RX_PIN(location); + break; + + default: + break; + } + + /* Do not prescale clock */ + CMU_ClockDivSet(leuartClock, cmuClkDiv_1); + + /* Enable LEUART clock */ + CMU_ClockEnable(leuartClock, true); + + /* Config GPIO */ + GPIO_PinModeSet( + port_tx, + pin_tx, + gpioModePushPull, + 0); + GPIO_PinModeSet( + port_rx, + pin_rx, + gpioModeInputPull, + 1); + + /* Config interrupt and NVIC */ + if (flag & RT_DEVICE_FLAG_INT_RX) + { + hook.type = efm32_irq_type_leuart; + hook.unit = unitNumber; + hook.cbFunc = rt_hw_leuart_rx_isr; + hook.userPtr = device; + efm32_irq_hook_register(&hook); + } + + /* Config DMA */ + if (flag & RT_DEVICE_FLAG_DMA_TX) + { + DMA_CfgChannel_TypeDef chnlCfg; + DMA_CfgDescr_TypeDef descrCfg; + + hook.type = efm32_irq_type_dma; + hook.unit = dmaChannel; + hook.cbFunc = rt_hw_leuart_dma_tx_isr; + hook.userPtr = device; + efm32_irq_hook_register(&hook); + + callback = (DMA_CB_TypeDef *)rt_malloc(sizeof(DMA_CB_TypeDef)); + if (callback == RT_NULL) + { + leuart_debug("LEUART%d err: no mem for callback\n", unitNumber); + break; + } + callback->cbFunc = DMA_IRQHandler_All; + callback->userPtr = RT_NULL; + callback->primary = 0; + + /* Setting up DMA channel */ + chnlCfg.highPri = false; /* Can't use with peripherals */ + chnlCfg.enableInt = true; /* Interrupt for callback function */ + chnlCfg.select = txDmaSelect; + chnlCfg.cb = callback; + DMA_CfgChannel(dmaChannel, &chnlCfg); + + /* Setting up DMA channel descriptor */ + descrCfg.dstInc = dmaDataIncNone; + descrCfg.srcInc = dmaDataInc1; + descrCfg.size = dmaDataSize1; + descrCfg.arbRate = dmaArbitrate1; + descrCfg.hprot = 0; + DMA_CfgDescr(dmaChannel, true, &descrCfg); + } + + /* Init specified LEUART unit */ + LEUART_Init(leuart->leuart_device, &init); + + /* Enable RX and TX pins and set location */ + leuart->leuart_device->ROUTE = LEUART_ROUTE_RXPEN | LEUART_ROUTE_TXPEN | \ + (location << _LEUART_ROUTE_LOCATION_SHIFT); + + /* Clear RX/TX buffers */ + leuart->leuart_device->CMD = LEUART_CMD_CLEARRX | LEUART_CMD_CLEARTX; + + return leuart; + } while(0); + + if (leuart->rx_mode) + { + rt_free(leuart->rx_mode); + } + if (leuart->tx_mode) + { + rt_free(leuart->tx_mode); + } + if (leuart) + { + rt_free(leuart); + } + if (callback) + { + rt_free(leuart); + } + + leuart_debug("LEUART%d err: init failed!\n", unitNumber); + return RT_NULL; +} + +/***************************************************************************//** +* @brief +* Initialize all LEUART module related hardware and register LEUART device to +* kernel +* +* @details +* +* @note +******************************************************************************/ +void rt_hw_leuart_init(void) +{ + struct efm32_leuart_device_t *leuart; + rt_uint32_t flag; + rt_uint8_t config; + + do + { +#ifdef RT_USING_LEUART0 + config = 0; + flag = RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX; + + #if (RT_CONSOLE_DEVICE == EFM_LEUART0) + config |= LEUART_STATE_CONSOLE; + flag |= RT_DEVICE_FLAG_STREAM; + #endif + + #ifdef RT_LEUART0_USING_DMA + RT_ASSERT(RT_LEUART0_USING_DMA < DMA_CHAN_COUNT); + flag |= RT_DEVICE_FLAG_DMA_TX; + #else + #define RT_LEUART0_USING_DMA EFM32_NO_DMA + #endif + + /* Initialize and Register leuart0 */ + if ((leuart = rt_hw_leuart_unit_init( + &leuart0_device, + 0, + RT_USING_LEUART0, + flag, + RT_LEUART0_USING_DMA, + config)) != RT_NULL) + { + rt_hw_leuart_register(&leuart0_device, RT_LEUART0_NAME, flag, leuart); + } + else + { + break; + } + /* Initialize lock for leuart0 */ + leuart->lock = &leuart0_lock; + if (rt_sem_init(leuart->lock, RT_LEUART0_NAME, 1, RT_IPC_FLAG_FIFO) != RT_EOK) + { + break; + } +#endif + +#ifdef RT_USING_LEUART1 + config = 0; + flag = RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX; + + #if (RT_CONSOLE_DEVICE == EFM_LEUART1) + config |= LEUART_STATE_CONSOLE; + flag |= RT_DEVICE_FLAG_STREAM; + #endif + + #ifdef RT_LEUART1_USING_DMA + RT_ASSERT(RT_LEUART1_USING_DMA < DMA_CHAN_COUNT); + flag |= RT_DEVICE_FLAG_DMA_TX; + #else + #define RT_LEUART1_USING_DMA EFM32_NO_DMA + #endif + + /* Initialize and Register leuart1 */ + if ((leuart = rt_hw_leuart_unit_init( + &leuart1_device, + 1, + RT_USING_LEUART1, + flag, + RT_LEUART1_USING_DMA, + config)) != RT_NULL) + { + rt_hw_leuart_register(&leuart1_device, RT_LEUART1_NAME, flag, leuart); + } + else + { + break; + } + /* Initialize lock for leuart1 */ + leuart->lock = &leuart1_lock; + if (rt_sem_init(leuart->lock, RT_LEUART1_NAME, 1, RT_IPC_FLAG_FIFO) != RT_EOK) + { + break; + } +#endif + + leuart_debug("LEUART: H/W init OK!\n"); + return; + } while (0); + + rt_kprintf("LEUART: H/W init failed!\n"); +} + +#endif /* (defined(RT_USING_LEUART0) || defined(RT_USING_LEUART1)) */ +/***************************************************************************//** + * @} + ******************************************************************************/ diff --git a/bsp/efm32/drv_leuart.h b/bsp/efm32/drv_leuart.h new file mode 100644 index 0000000000..9d2b6d52aa --- /dev/null +++ b/bsp/efm32/drv_leuart.h @@ -0,0 +1,72 @@ +/***************************************************************************//** + * @file drv_leuart.h + * @brief LEUART driver of RT-Thread RTOS for EFM32 + * COPYRIGHT (C) 2011, RT-Thread Development Team + * @author onelife + * @version 0.4 beta + ******************************************************************************* + * @section License + * The license and distribution terms for this file may be found in the file + * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE + ******************************************************************************* + * @section Change Logs + * Date Author Notes + * 2011-12-09 onelife Initial creation for EFM32 + ******************************************************************************/ +#ifndef __DRV_LEUSART_H__ +#define __DRV_LEUSART_H__ + +/* Includes ------------------------------------------------------------------*/ +/* Exported types ------------------------------------------------------------*/ +struct efm32_leuart_int_mode_t +{ + rt_uint8_t *data_ptr; + rt_uint8_t data_size; + rt_uint32_t read_index, save_index; +}; + +struct efm32_leuart_dma_mode_t +{ + /* DMA Channel */ + rt_uint32_t dma_channel; + + /* buffer info */ + rt_uint32_t *data_ptr; + rt_uint8_t data_size; +}; + +struct efm32_leuart_device_t +{ + /* Counter */ + rt_uint32_t counter; + /* Lock */ + struct rt_semaphore *lock; + /* Unit number */ + rt_uint8_t unit; + /* State */ + volatile rt_uint8_t state; + /* Pointer to LEUART device structure */ + LEUART_TypeDef *leuart_device; + /* Pointer to RX structure */ + void *rx_mode; + /* Pointer to TX structure */ + void *tx_mode; +}; + +/* Exported constants --------------------------------------------------------*/ +/* Exported macro ------------------------------------------------------------*/ +#define LEUART_WAIT_TIME_TX (RT_TICK_PER_SECOND / 100 * 3) + +#define LEUART_STATE_CONSOLE (1 << 0) +#define LEUART_STATE_SYNC (1 << 1) +#define LEUART_STATE_MASTER (1 << 2) +#define LEUART_STATE_AUTOCS (1 << 3) +#define LEUART_STATE_TX_BUSY (1 << 4) +#define LEUART_STATE_RX_BUSY (1 << 5) + + +/* Exported functions ------------------------------------------------------- */ +void rt_hw_leuart_init(void); + +#endif /* __DRV_LEUSART_H__ */ + diff --git a/bsp/efm32/drv_rtc.c b/bsp/efm32/drv_rtc.c index 6bbfef1cf7..86499a9751 100644 --- a/bsp/efm32/drv_rtc.c +++ b/bsp/efm32/drv_rtc.c @@ -1,49 +1,49 @@ -/******************************************************************//** - * @file drv_rtc.c - * @brief RTC driver of RT-Thread RTOS for EFM32 +/***************************************************************************//** + * @file drv_rtc.c + * @brief RTC driver of RT-Thread RTOS for EFM32 * COPYRIGHT (C) 2011, RT-Thread Development Team - * @author Bernard, onelife - * @version 0.4 beta - ********************************************************************** + * @author Bernard, onelife + * @version 0.4 beta + ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file LICENSE in this - * distribution or at http://www.rt-thread.org/license/LICENSE - ********************************************************************** + * The license and distribution terms for this file may be found in the file + * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE + ******************************************************************************* * @section Change Logs * Date Author Notes - * 2009-01-05 Bernard the first version - * 2010-12-27 onelife Modify for EFM32 - * 2011-06-16 onelife Modify init function for efm32lib v2 upgrading - *********************************************************************/ - -/******************************************************************//** + * 2009-01-05 Bernard the first version + * 2010-12-27 onelife Modify for EFM32 + * 2011-06-16 onelife Modify init function for efm32lib v2 upgrading + * 2011-12-14 onelife Move LFXO enabling routine to driver initialization + * function (board.c) + ******************************************************************************/ + +/***************************************************************************//** * @addtogroup efm32 * @{ -*********************************************************************/ + ******************************************************************************/ -/* Includes -------------------------------------------------------------------*/ +/* Includes ------------------------------------------------------------------*/ #include "board.h" #include "hdl_interrupt.h" #include "drv_rtc.h" #if defined(RT_USING_RTC) -/* Private typedef -------------------------------------------------------------*/ -/* Private define --------------------------------------------------------------*/ -/* Private macro --------------------------------------------------------------*/ +/* Private typedef -----------------------------------------------------------*/ +/* Private define ------------------------------------------------------------*/ +/* Private macro -------------------------------------------------------------*/ #ifdef RT_RTC_DEBUG #define rtc_debug(format,args...) rt_kprintf(format, ##args) #else #define rtc_debug(format,args...) #endif -/* Private variables ------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ static struct rt_device rtc; static rt_uint32_t rtc_time; -/* Private function prototypes ---------------------------------------------------*/ -static void startLfxoForRtc(void); - -/* Private functions ------------------------------------------------------------*/ +/* Private function prototypes -----------------------------------------------*/ +/* Private functions ---------------------------------------------------------*/ static rt_err_t rt_rtc_open(rt_device_t dev, rt_uint16_t oflag) { if (dev->rx_indicate != RT_NULL) @@ -55,34 +55,34 @@ static rt_err_t rt_rtc_open(rt_device_t dev, rt_uint16_t oflag) } static rt_size_t rt_rtc_read( - rt_device_t dev, - rt_off_t pos, - void* buffer, + rt_device_t dev, + rt_off_t pos, + void* buffer, rt_size_t size) { return 0; } -/******************************************************************//** -* @brief -* Configure RTC device -* -* @details -* -* @note -* -* @param[in] dev -* Pointer to device descriptor -* -* @param[in] cmd -* RTC control command -* -* @param[in] args -* Arguments -* -* @return -* Error code -*********************************************************************/ +/***************************************************************************//** + * @brief + * Configure RTC device + * + * @details + * + * @note + * + * @param[in] dev + * Pointer to device descriptor + * + * @param[in] cmd + * RTC control command + * + * @param[in] args + * Arguments + * + * @return + * Error code + ******************************************************************************/ static rt_err_t rt_rtc_control(rt_device_t dev, rt_uint8_t cmd, void *args) { RT_ASSERT(dev != RT_NULL); @@ -108,14 +108,14 @@ static rt_err_t rt_rtc_control(rt_device_t dev, rt_uint8_t cmd, void *args) return RT_EOK; } -/******************************************************************//** +/***************************************************************************//** * @brief - * RTC counter overflow interrupt handler + * RTC counter overflow interrupt handler * * @details * * @note - *********************************************************************/ + ******************************************************************************/ void rt_hw_rtc_isr(rt_device_t device) { if (RTC->IF & RTC_IFC_OF) @@ -126,29 +126,29 @@ void rt_hw_rtc_isr(rt_device_t device) RTC->IFC = _RTC_IFC_MASK; } -/******************************************************************//** -* @brief -* Register RTC device -* -* @details -* -* @note -* -* @param[in] device -* Pointer to device descriptor -* -* @param[in] name -* Device name -* -* @param[in] flag -* Configuration flags -* -* @return -* Error code -*********************************************************************/ +/***************************************************************************//** + * @brief + * Register RTC device + * + * @details + * + * @note + * + * @param[in] device + * Pointer to device descriptor + * + * @param[in] name + * Device name + * + * @param[in] flag + * Configuration flags + * + * @return + * Error code + ******************************************************************************/ rt_err_t rt_hw_rtc_register( - rt_device_t device, - const char *name, + rt_device_t device, + const char *name, rt_uint32_t flag) { RT_ASSERT(device != RT_NULL); @@ -169,18 +169,18 @@ rt_err_t rt_hw_rtc_register( } -/******************************************************************//** -* @brief -* Initialize all RTC module related hardware and register RTC device to kernel -* -* @details -* -* @note -*********************************************************************/ +/***************************************************************************//** + * @brief + * Initialize all RTC module related hardware and register RTC device to kernel + * + * @details + * + * @note + ******************************************************************************/ void rt_hw_rtc_init(void) { rt_uint32_t reset; - + reset = RMU_ResetCauseGet(); // TODO: What is the current reset mode? @@ -198,9 +198,10 @@ void rt_hw_rtc_init(void) rt_kprintf("rtc is not configured\n"); rt_kprintf("please configure with set_date and set_time\n"); - /* Configuring clocks in the Clock Management Unit (CMU) */ - startLfxoForRtc(); - + /* Configuring clock */ + CMU_ClockDivSet(cmuClock_RTC,cmuClkDiv_32768); + CMU_ClockEnable(cmuClock_RTC, true); + /* Initialize and enable RTC */ RTC_Reset(); RTC_Init(&rtcInit); @@ -224,29 +225,9 @@ void rt_hw_rtc_init(void) rt_hw_rtc_register(&rtc, RT_RTC_NAME, EFM32_NO_DATA); } -/******************************************************************//** -* @brief -* Start LFXO for RTC -* -* @details -* Starts the LFXO and routes it to the RTC. RTC clock is prescaled to save energy. -* -* @note -*********************************************************************/ -static void startLfxoForRtc(void) -{ - /* Starting LFXO and waiting until it is stable */ - CMU_OscillatorEnable(cmuOsc_LFXO, true, true); - - /* Routing the LFXO clock to the RTC */ - CMU_ClockDivSet(cmuClock_RTC,cmuClkDiv_32768); - CMU_ClockSelectSet(cmuClock_LFA,cmuSelect_LFXO); - CMU_ClockEnable(cmuClock_RTC, true); -} - -/********************************************************************* -* Export to FINSH -*********************************************************************/ +/***************************************************************************//** + * Export to FINSH + ******************************************************************************/ #ifdef RT_USING_FINSH #include #include @@ -343,6 +324,6 @@ FINSH_FUNCTION_EXPORT(list_date, show date and time.) #endif -/******************************************************************//** +/***************************************************************************//** * @} -*********************************************************************/ + ******************************************************************************/ diff --git a/bsp/efm32/drv_rtc.h b/bsp/efm32/drv_rtc.h index ef19c4ec6b..2be8074ddf 100644 --- a/bsp/efm32/drv_rtc.h +++ b/bsp/efm32/drv_rtc.h @@ -1,27 +1,27 @@ -/******************************************************************//** - * @file drv_rtc.h - * @brief RTC driver of RT-Thread RTOS for EFM32 + /***************************************************************************//** + * @file drv_rtc.h + * @brief RTC driver of RT-Thread RTOS for EFM32 * COPYRIGHT (C) 2011, RT-Thread Development Team - * @author Bernard, onelife - * @version 0.4 beta - ********************************************************************** + * @author Bernard, onelife + * @version 0.4 beta + ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file LICENSE in this - * distribution or at http://www.rt-thread.org/license/LICENSE - ********************************************************************** + * The license and distribution terms for this file may be found in the file + * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE + ******************************************************************************* * @section Change Logs * Date Author Notes - * 2009-01-05 Bernard the first version - * 2010-12-27 onelife Modification for EFM32 + * 2009-01-05 Bernard the first version + * 2010-12-27 onelife Modification for EFM32 *********************************************************************/ #ifndef __DRV_RTC_H__ #define __DRV_RTC_H__ -/* Includes -------------------------------------------------------------------*/ -/* Exported types -------------------------------------------------------------*/ -/* Exported constants ---------------------------------------------------------*/ -/* Exported macro -------------------------------------------------------------*/ -/* Exported functions --------------------------------------------------------- */ +/* Includes ------------------------------------------------------------------*/ +/* Exported types ------------------------------------------------------------*/ +/* Exported constants --------------------------------------------------------*/ +/* Exported macro ------------------------------------------------------------*/ +/* Exported functions ------------------------------------------------------- */ void rt_hw_rtc_init(void); -#endif /* __DRV_RTC_H__ */ \ No newline at end of file +#endif /* __DRV_RTC_H__ */ diff --git a/bsp/efm32/drv_sdcard.c b/bsp/efm32/drv_sdcard.c index 993ca30876..e7cadf5603 100644 --- a/bsp/efm32/drv_sdcard.c +++ b/bsp/efm32/drv_sdcard.c @@ -1,19 +1,22 @@ /***************************************************************************//** * @file drv_sdcard.c - * @brief Memory card driver (SPI mode) of RT-Thread RTOS for using EFM32 + * @brief Memory card driver (SPI mode) of RT-Thread RTOS for using EFM32 * USART module * COPYRIGHT (C) 2011, RT-Thread Development Team * @author onelife * @version 0.4 beta ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file + * The license and distribution terms for this file may be found in the file * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE ******************************************************************************* * @section Change Logs * Date Author Notes * 2011-05-13 onelife Initial creation for using EFM32 USART module * 2011-07-07 onelife Modify initialization function to return error code + * 2011-12-08 onelife Add giant gecko development kit support + * 2011-12-15 onelife Move MicroSD enabling routine to driver + * initialization function (board.c) ******************************************************************************/ /***************************************************************************//** @@ -46,7 +49,7 @@ static rt_device_t spi = RT_NULL; static rt_uint16_t sdType; static rt_bool_t sdAutoCs = true; static rt_timer_t sdTimer = RT_NULL; -static rt_bool_t sdInTime = true; +static volatile rt_bool_t sdInTime = true; /* Private function prototypes -----------------------------------------------*/ /* Private functions ---------------------------------------------------------*/ @@ -94,14 +97,14 @@ static void efm_spiSd_cs(rt_uint8_t enable) /***************************************************************************//** * @brief - * Set operation speed level + * Set operation speed level * * @details * * @note * * @param[in] level - * Set SD speed level + * Set SD speed level ******************************************************************************/ static void efm_spiSd_speed(rt_uint8_t level) { @@ -109,7 +112,7 @@ static void efm_spiSd_speed(rt_uint8_t level) struct efm32_usart_device_t *usart; rt_uint32_t baudrate; - + usart = (struct efm32_usart_device_t *)(spi->user_data); if (level == SD_SPEED_HIGH) { @@ -180,8 +183,8 @@ static rt_size_t efm_spiSd_read(void *buffer, rt_size_t size) * Command response ******************************************************************************/ static rt_uint16_t efm_spiSd_cmd( - rt_uint8_t cmd, - rt_uint32_t arg, + rt_uint8_t cmd, + rt_uint32_t arg, rt_uint8_t *trail) { RT_ASSERT(spi != RT_NULL); @@ -192,7 +195,7 @@ static rt_uint16_t efm_spiSd_cmd( rt_uint16_t ret; rt_bool_t skip; - ret = 0xffff; + ret = 0xffff; rt_memset(buf_res, 0xff, sizeof(buf_res)); sdcard_debug("SPISD: Send command %d(%x)\n", cmd, arg); @@ -251,7 +254,7 @@ static rt_uint16_t efm_spiSd_cmd( { sdcard_debug("SPISD: Send command failed!\n"); break; - } + } efm_spiSd_cs(0); /* Skip a stuff byte when stop reading */ @@ -261,9 +264,9 @@ static rt_uint16_t efm_spiSd_cmd( } else { - skip = false; + skip = false; } - /* Find valid response: The response is sent back within command response time + /* Find valid response: The response is sent back within command response time (NCR), 0 to 8 bytes for SDC, 1 to 8 bytes for MMC */ for (i = 0; i < sizeof(buf_res); i++) { @@ -324,7 +327,7 @@ static rt_uint16_t efm_spiSd_cmd( /***************************************************************************//** * @brief - * Read a block of data from memory device. This function is used to handle + * Read a block of data from memory device. This function is used to handle * the responses of specified commands (e.g. ACMD13, CMD17 and CMD18) * * @details @@ -345,7 +348,7 @@ static rt_err_t efm_spiSd_readBlock(void *buffer, rt_size_t size) RT_ASSERT(spi != RT_NULL); rt_uint8_t buf_ins[5]; - rt_uint8_t buf_res[8]; /* Expect 2 bytes for CRC */ + rt_uint8_t buf_res[8]; /* Expect 2 bytes for CRC */ rt_uint8_t i, len_copy; rt_bool_t start; @@ -356,7 +359,7 @@ static rt_err_t efm_spiSd_readBlock(void *buffer, rt_size_t size) buf_ins[0] = 0; /* Instruction length */ *(rt_uint8_t **)(&buf_ins[1]) = buf_res; /* Pointer to RX buffer */ - while(1) + while(1) { /* Send read command */ efm_spiSd_cs(1); @@ -393,7 +396,7 @@ static rt_err_t efm_spiSd_readBlock(void *buffer, rt_size_t size) rt_memcpy(buffer, &buf_res[i + 1], len_copy); sdcard_debug("SPISD: Read block start at %d, copy %d bytes\n", i, \ len_copy); - + /* Build instruction buffer */ buf_ins[0] = 0; /* Instruction length */ *(rt_uint8_t **)(&buf_ins[1]) = (rt_uint8_t *)buffer + len_copy; /* Pointer to RX buffer */ @@ -423,8 +426,8 @@ static rt_err_t efm_spiSd_readBlock(void *buffer, rt_size_t size) /***************************************************************************//** * @brief - * Write a block of data to memory device. This function is used to send data - * and control tokens for block write commands (e.g. CMD24 and CMD25) + * Write a block of data to memory device. This function is used to send data + * and control tokens for block write commands (e.g. CMD24 and CMD25) * * @details * @@ -562,8 +565,8 @@ static rt_err_t efm_spiSd_writeBlock(void *buffer, rt_uint8_t token) * Command response ******************************************************************************/ rt_uint16_t efm_spiSd_sendCmd( - rt_uint8_t cmd, - rt_uint32_t arg, + rt_uint8_t cmd, + rt_uint32_t arg, rt_uint8_t *trail) { rt_uint16_t ret; @@ -573,7 +576,7 @@ rt_uint16_t efm_spiSd_sendCmd( { cmd &= 0x7f; ret = efm_spiSd_cmd(CMD55, 0x00000000, EFM32_NO_POINTER); - if (ret > 0x01) + if (ret > 0x01) { return ret; } @@ -610,10 +613,10 @@ static rt_err_t rt_spiSd_init(rt_device_t dev) { /* Create and setup timer */ if ((sdTimer = rt_timer_create( - "sdTimer", + "sd_tmr", efm_spiSd_timer, RT_NULL, - SD_WAIT_PERIOD, + SD_WAIT_PERIOD, RT_TIMER_FLAG_ONE_SHOT)) == RT_NULL) { sdcard_debug("SPISD: Create timer failed!\n"); @@ -627,7 +630,7 @@ static rt_err_t rt_spiSd_init(rt_device_t dev) } /* Switch to low speed */ - efm_spiSd_speed(SD_SPEED_LOW); + efm_spiSd_speed(SD_SPEED_LOW); /* 80 dummy clocks */ efm_spiSd_read(RT_NULL, 80); @@ -640,7 +643,7 @@ static rt_err_t rt_spiSd_init(rt_device_t dev) if (efm_spiSd_sendCmd(CMD8, 0x000001AA, tril) == 0x01) { /* SDv2, Vdd: 2.7-3.6V */ - if (tril[2] == 0x01 && tril[3] == 0xAA) + if (tril[2] == 0x01 && tril[3] == 0xAA) { /* Initialize timer */ sdInTime = true; @@ -662,7 +665,7 @@ static rt_err_t rt_spiSd_init(rt_device_t dev) { /* SDv1 */ type = CT_SD1; - cmd = ACMD41; + cmd = ACMD41; } else { @@ -689,7 +692,7 @@ static rt_err_t rt_spiSd_init(rt_device_t dev) /* Check type */ sdType = type; - if (sdType) + if (sdType) { /* Initialization succeded */ efm_spiSd_speed(SD_SPEED_HIGH); @@ -728,7 +731,7 @@ static rt_err_t rt_spiSd_init(rt_device_t dev) if (buf_res) { rt_free(buf_res); - } + } efm_spiSd_deinit(); rt_kprintf("SPISD: Init failed!\n"); return -RT_ERROR; @@ -801,7 +804,7 @@ static rt_err_t rt_spiSd_close(rt_device_t dev) * Number of read sectors ******************************************************************************/ static rt_size_t rt_spiSd_read( - rt_device_t dev, + rt_device_t dev, rt_off_t sector, void *buffer, rt_size_t count) @@ -841,7 +844,7 @@ static rt_size_t rt_spiSd_read( sdcard_debug("SPISD: Read command error!\n"); break; } - + /* Read data */ do { @@ -891,7 +894,7 @@ static rt_size_t rt_spiSd_read( * Number of written sectors ******************************************************************************/ static rt_size_t rt_spiSd_write ( - rt_device_t dev, + rt_device_t dev, rt_off_t sector, const void *buffer, rt_size_t count) @@ -926,7 +929,7 @@ static rt_size_t rt_spiSd_write ( cmd = CMD25; token = 0xfc; sdcard_debug("SPISD: Write multiple blocks\n"); - if (sdType & CT_SDC) + if (sdType & CT_SDC) { if (efm_spiSd_sendCmd(ACMD23, count, EFM32_NO_POINTER)) { @@ -984,15 +987,15 @@ static rt_size_t rt_spiSd_write ( * Error code ******************************************************************************/ static rt_err_t rt_spiSd_control ( - rt_device_t dev, - rt_uint8_t ctrl, + rt_device_t dev, + rt_uint8_t ctrl, void *buffer) { rt_err_t ret; rt_uint32_t c_size; rt_uint8_t n; rt_uint8_t *buf_res; - + ret = -RT_ERROR; buf_res = RT_NULL; switch (ctrl) @@ -1020,7 +1023,7 @@ static rt_err_t rt_spiSd_control ( } if ((buf_res[0] >> 6) == 0x01) - { + { /* SDv2 */ /* C_SIZE: Bit 48~69 */ c_size = ((rt_uint32_t)(buf_res[7] & 0x3f) << 16) + \ @@ -1175,7 +1178,7 @@ static rt_err_t rt_spiSd_control ( /***************************************************************************//** * @brief -* Initialize all memory card related hardware and register the device to +* Initialize all memory card related hardware and register the device to * kernel * * @details @@ -1189,18 +1192,13 @@ rt_err_t efm_spiSd_init(void) { struct efm32_usart_device_t *usart; -#if defined(EFM32_G290_DK) - /* Enable SPI access to MicroSD card */ - DVK_writeRegister(BC_SPI_CFG, 1); -#endif - do { /* Find SPI device */ spi = rt_device_find(SPISD_USING_DEVICE_NAME); if (spi == RT_NULL) { - sdcard_debug("SPISD: Can't find device %s!\n", + sdcard_debug("SPISD: Can't find device %s!\n", SPISD_USING_DEVICE_NAME); break; } @@ -1223,8 +1221,8 @@ rt_err_t efm_spiSd_init(void) sd_device.control = rt_spiSd_control; sd_device.user_data = RT_NULL; rt_device_register( - &sd_device, - SPISD_DEVICE_NAME, + &sd_device, + SPISD_DEVICE_NAME, RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_REMOVABLE | RT_DEVICE_FLAG_STANDALONE); sdcard_debug("SPISD: HW init OK, card type %x\n", sdType); diff --git a/bsp/efm32/drv_sdcard.h b/bsp/efm32/drv_sdcard.h index c3fdc72933..a5072601e0 100644 --- a/bsp/efm32/drv_sdcard.h +++ b/bsp/efm32/drv_sdcard.h @@ -1,13 +1,13 @@ /***************************************************************************//** * @file drv_sdcard.h - * @brief Memory card driver (SPI mode) of RT-Thread RTOS for using EFM32 + * @brief Memory card driver (SPI mode) of RT-Thread RTOS for using EFM32 * USART module * COPYRIGHT (C) 2011, RT-Thread Development Team * @author onelife * @version 0.4 beta ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file + * The license and distribution terms for this file may be found in the file * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE ******************************************************************************* * @section Change Logs @@ -22,8 +22,16 @@ /* Exported types ------------------------------------------------------------*/ /* Exported constants --------------------------------------------------------*/ /* Exported macro ------------------------------------------------------------*/ -#define EFM32_SDCLK_LOW (100000) -#define EFM32_SDCLK_HIGH (EFM32_HFXO_FREQUENCY/2) +#define EFM32_SDCLK_LOW (100000) +#if defined(EFM32_GXXX_DK) +#define EFM32_SDCLK_HIGH (16000000) +#elif defined(EFM32GG_DK3750) +#define EFM32_SDCLK_HIGH (19000000) +#endif + +#if (EFM32_SDCLK_HIGH > (EFM32_HFXO_FREQUENCY/2)) +#error "EFM32 SPI clock should not be more than (EFM32_HFXO_FREQUENCY/2)" +#endif #define SD_SPEED_LOW (0) #define SD_SPEED_HIGH (1) diff --git a/bsp/efm32/drv_usart.c b/bsp/efm32/drv_usart.c index c04ee754c6..b08e341865 100644 --- a/bsp/efm32/drv_usart.c +++ b/bsp/efm32/drv_usart.c @@ -6,28 +6,31 @@ * @version 0.4 beta ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file + * The license and distribution terms for this file may be found in the file * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE ******************************************************************************* + * @section Change Logs of serial.c + * Date Author Notes + * 2009-02-05 Bernard first version + * 2009-10-25 Bernard fix rt_serial_read bug when there is no data in the + * buffer. + * 2010-03-29 Bernard cleanup code. + * * @section Change Logs * Date Author Notes * 2010-12-22 onelife Initial creation for EFM32 * 2011-01-17 onelife Merge with serial.c * 2011-05-06 onelife Add sync mode (SPI) support * 2011-06-14 onelife Fix a bug of TX by DMA - * 2011-06-16 onelife Modify init function for EFM32 library v2.0.0 + * 2011-06-16 onelife Modify init function for EFM32 library v2.0.0 * upgrading * 2011-07-07 onelife Modify write function to avoid sleep in ISR - * 2011-07-26 onelife Add lock (semaphore) to prevent simultaneously + * 2011-07-26 onelife Add lock (semaphore) to prevent simultaneously * access - * 2011-11-29 onelife Modify init function for EFM32 library v2.2.2 + * 2011-11-29 onelife Modify init function for EFM32 library v2.2.2 * upgrading - * - * @section Change Logs of serial.c - * 2009-02-05 Bernard first version - * 2009-10-25 Bernard fix rt_serial_read bug when there is no data in the - * buffer. - * 2010-03-29 Bernard cleanup code. + * 2011-12-09 onelife Add giant gecko support + * 2011-12-09 onelife Add UART module support ******************************************************************************/ /***************************************************************************//** @@ -40,14 +43,10 @@ #include "hdl_interrupt.h" #include "drv_usart.h" -#if (defined(RT_USING_USART0) || defined(RT_USING_USART1) || defined(RT_USING_USART2)) +#if (defined(RT_USING_USART0) || defined(RT_USING_USART1) || \ + defined(RT_USING_USART2) || defined(RT_USING_UART0) || \ + defined(RT_USING_UART1)) /* Private typedef -----------------------------------------------------------*/ -union efm32_usart_init_t -{ - USART_InitAsync_TypeDef async; - USART_InitSync_TypeDef sync; -}; - /* Private define ------------------------------------------------------------*/ /* Private macro -------------------------------------------------------------*/ #ifdef RT_USART_DEBUG @@ -58,29 +57,46 @@ union efm32_usart_init_t /* Private variables ---------------------------------------------------------*/ #ifdef RT_USING_USART0 -#if (RT_USING_USART0 > 3) - #error "The location number range of usart is 0~3" +#if (RT_USING_USART0 >= EFM32_USART_LOCATION_COUNT) + #error "Wrong location number" #endif struct rt_device usart0_device; static struct rt_semaphore usart0_lock; #endif #ifdef RT_USING_USART1 -#if (RT_USING_USART1 > 3) - #error "The location number range of usart is 0~3" +#if (RT_USING_USART1 >= EFM32_USART_LOCATION_COUNT) + #error "Wrong location number" #endif struct rt_device usart1_device; static struct rt_semaphore usart1_lock; #endif #ifdef RT_USING_USART2 -#if (RT_USING_USART2 > 3) - #error "The location number range of usart is 0~3" +#if (RT_USING_USART2 >= EFM32_USART_LOCATION_COUNT) + #error "Wrong location number" #endif struct rt_device usart2_device; static struct rt_semaphore usart2_lock; #endif +#ifdef RT_USING_UART0 +#if (RT_USING_UART0 >= EFM32_UART_LOCATION_COUNT) + #error "Wrong location number" +#endif + struct rt_device uart0_device; + static struct rt_semaphore uart0_lock; +#endif + +#ifdef RT_USING_UART1 +#if (RT_USING_UART1 >= EFM32_UART_LOCATION_COUNT) + #error "Wrong location number" +#endif + struct rt_device uart1_device; + static struct rt_semaphore uart1_lock; +#endif + + /* Private function prototypes -----------------------------------------------*/ /* Private functions ---------------------------------------------------------*/ /***************************************************************************//** @@ -100,7 +116,7 @@ union efm32_usart_init_t static rt_err_t rt_usart_init (rt_device_t dev) { struct efm32_usart_device_t *usart; - + usart = (struct efm32_usart_device_t *)(dev->user_data); if (!(dev->flag & RT_DEVICE_FLAG_ACTIVATED)) @@ -117,9 +133,9 @@ static rt_err_t rt_usart_init (rt_device_t dev) if (dev->flag & RT_DEVICE_FLAG_INT_RX) { struct efm32_usart_int_mode_t *int_rx; - + int_rx = (struct efm32_usart_int_mode_t *)(usart->rx_mode); - + int_rx->data_ptr = RT_NULL; } @@ -156,20 +172,20 @@ static rt_err_t rt_usart_open(rt_device_t dev, rt_uint16_t oflag) struct efm32_usart_device_t *usart; usart = (struct efm32_usart_device_t *)(dev->user_data); - + if (dev->flag & RT_DEVICE_FLAG_INT_RX) { IRQn_Type rxIrq; - + //if (usart->state & USART_STATE_CONSOLE) { /* Allocate new RX buffer */ struct efm32_usart_int_mode_t *int_mode; - + int_mode = (struct efm32_usart_int_mode_t *)(usart->rx_mode); if ((int_mode->data_ptr = rt_malloc(USART_RX_BUFFER_SIZE)) == RT_NULL) { - usart_debug("USART: no memory for RX buffer\n"); + usart_debug("USART%d err: no mem for RX BUF\n", usart->unit); return -RT_ENOMEM; } rt_memset(int_mode->data_ptr, 0, USART_RX_BUFFER_SIZE); @@ -177,25 +193,46 @@ static rt_err_t rt_usart_open(rt_device_t dev, rt_uint16_t oflag) int_mode->read_index = 0; int_mode->save_index = 0; } - - /* Enable TX/RX interrupt */ + + /* Enable RX interrupt */ + if (usart->state & USART_STATE_ASYNC_ONLY) + { + usart->usart_device->IEN = UART_IEN_RXDATAV; + } + else + { + usart->usart_device->IEN = USART_IEN_RXDATAV; + } + + /* Enable IRQ */ switch (usart->unit) { case 0: - rxIrq = USART0_RX_IRQn; + if (usart->state & USART_STATE_ASYNC_ONLY) + { + rxIrq = UART0_RX_IRQn; + } + else + { + rxIrq = USART0_RX_IRQn; + } break; case 1: - rxIrq = USART1_RX_IRQn; +#if defined(EFM32_GIANT_FAMILY) + if (usart->state & USART_STATE_ASYNC_ONLY) + { + rxIrq = UART1_RX_IRQn; + } + else +#endif + { + rxIrq = USART1_RX_IRQn; + } break; case 2: rxIrq = USART2_RX_IRQn; break; } - - /* Enable RX interrupts */ - usart->usart_device->IEN = USART_IEN_RXDATAV; - - /* Enable IRQ */ if (oflag != RT_DEVICE_OFLAG_WRONLY) { NVIC_ClearPendingIRQ(rxIrq); @@ -203,8 +240,17 @@ static rt_err_t rt_usart_open(rt_device_t dev, rt_uint16_t oflag) NVIC_EnableIRQ(rxIrq); } } - usart->usart_device->IFC = _USART_IFC_MASK; - + + /* Clear Flag */ + if (usart->state & USART_STATE_ASYNC_ONLY) + { + usart->usart_device->IFC = _UART_IFC_MASK; + } + else + { + usart->usart_device->IFC = _USART_IFC_MASK; + } + if ((dev->flag & RT_DEVICE_FLAG_DMA_TX) && (oflag != RT_DEVICE_OFLAG_RDONLY)) { /* DMA IRQ is enabled by DMA_Init() */ @@ -278,16 +324,16 @@ static rt_err_t rt_usart_close(rt_device_t dev) * Number of read bytes ******************************************************************************/ static rt_size_t rt_usart_read ( - rt_device_t dev, - rt_off_t pos, - void *buffer, + rt_device_t dev, + rt_off_t pos, + void *buffer, rt_size_t size) { struct efm32_usart_device_t *usart; rt_uint8_t *ptr; rt_err_t err_code; rt_size_t read_len; - + usart = (struct efm32_usart_device_t *)(dev->user_data); /* Lock device */ @@ -402,12 +448,22 @@ static rt_size_t rt_usart_read ( } else { + rt_uint32_t flag; + + if (usart->state & USART_STATE_ASYNC_ONLY) + { + flag = UART_STATUS_RXDATAV; + } + else + { + flag = USART_STATUS_RXDATAV; + } ptr = buffer; /* polling mode */ while ((rt_uint32_t)ptr - (rt_uint32_t)buffer < size) { - while (usart_device->STATUS & USART_STATUS_RXDATAV) + while (usart_device->STATUS & flag) { *ptr = usart_device->RXDATA & 0xff; ptr ++; @@ -450,9 +506,9 @@ static rt_size_t rt_usart_read ( * Number of written bytes ******************************************************************************/ static rt_size_t rt_usart_write ( - rt_device_t dev, - rt_off_t pos, - const void* buffer, + rt_device_t dev, + rt_off_t pos, + const void* buffer, rt_size_t size) { rt_err_t err_code; @@ -480,7 +536,7 @@ static rt_size_t rt_usart_write ( if ((dev->flag & RT_DEVICE_FLAG_DMA_TX) && (size > 2)) { /* DMA mode Tx */ struct efm32_usart_dma_mode_t *dma_tx; - + if (dev->flag & RT_DEVICE_FLAG_STREAM) { if (*((rt_uint8_t *)buffer + size - 1) == '\n') @@ -517,13 +573,13 @@ static rt_size_t rt_usart_write ( // rt_thread_sleep(USART_WAIT_TIME_TX); // } // } -// TODO: This function blocks the process +// TODO: This function blocks the process write_size = size; } else - { /* polling mode */ + { /* polling mode */ rt_uint8_t *ptr = (rt_uint8_t *)buffer; - + if (dev->flag & RT_DEVICE_FLAG_STREAM) { /* stream mode */ @@ -542,10 +598,21 @@ static rt_size_t rt_usart_write ( } else { + rt_uint32_t flag; + + if (usart->state & USART_STATE_ASYNC_ONLY) + { + flag = UART_STATUS_TXBL; + } + else + { + flag = USART_STATUS_TXBL; + } + /* write data directly */ while (size) { - while (!(usart->usart_device->STATUS & USART_STATUS_TXBL)); + while (!(usart->usart_device->STATUS & flag)); usart->usart_device->TXDATA = (rt_uint32_t)*ptr; ++ptr; --size; } @@ -583,8 +650,8 @@ static rt_size_t rt_usart_write ( * Error code ******************************************************************************/ static rt_err_t rt_usart_control ( - rt_device_t dev, - rt_uint8_t cmd, + rt_device_t dev, + rt_uint8_t cmd, void *args) { RT_ASSERT(dev != RT_NULL); @@ -645,27 +712,27 @@ static rt_err_t rt_usart_control ( if ((int_rx->data_ptr = rt_realloc(int_rx->data_ptr, size)) \ == RT_NULL) { - usart_debug("USART: no memory for RX buffer\n"); + usart_debug("USART%d err: no mem for RX BUF\n", usart->unit); err_code = -RT_ENOMEM; break; } // TODO: Is the following line necessary? - //rt_memset(int_rx->data_ptr, 0, size); + //rt_memset(int_rx->data_ptr, 0, size); } - } + } else { /* Allocate new RX buffer */ if ((int_rx->data_ptr = rt_malloc(size)) == RT_NULL) { - usart_debug("USART: no memory for RX buffer\n"); + usart_debug("USART%d err: no mem for RX BUF\n", usart->unit); err_code = -RT_ENOMEM; break; } } int_rx->data_size = size; int_rx->read_index = 0; - int_rx->save_index = 0; + int_rx->save_index = 0; } break; @@ -692,10 +759,11 @@ void rt_hw_usart_rx_isr(rt_device_t dev) { struct efm32_usart_device_t *usart; struct efm32_usart_int_mode_t *int_rx; + rt_uint32_t flag; /* interrupt mode receive */ RT_ASSERT(dev->flag & RT_DEVICE_FLAG_INT_RX); - + usart = (struct efm32_usart_device_t *)(dev->user_data); int_rx = (struct efm32_usart_int_mode_t *)(usart->rx_mode); @@ -703,9 +771,17 @@ void rt_hw_usart_rx_isr(rt_device_t dev) /* Set status */ usart->state |= USART_STATE_RX_BUSY; - - /* save on rx buffer */ - while (usart->usart_device->STATUS & USART_STATUS_RXDATAV) + + /* save into rx buffer */ + if (usart->state & USART_STATE_ASYNC_ONLY) + { + flag = UART_STATUS_RXDATAV; + } + else + { + flag = USART_STATUS_RXDATAV; + } + while (usart->usart_device->STATUS & flag) { rt_base_t level; @@ -797,15 +873,15 @@ void rt_hw_usart_dma_tx_isr(rt_device_t dev) * Configuration flags * * @param[in] usart -* Pointer to USART device descriptor +* Pointer to USART device descriptor * * @return * Error code ******************************************************************************/ rt_err_t rt_hw_usart_register( - rt_device_t device, - const char *name, - rt_uint32_t flag, + rt_device_t device, + const char *name, + rt_uint32_t flag, struct efm32_usart_device_t *usart) { RT_ASSERT(device != RT_NULL); @@ -816,16 +892,23 @@ rt_err_t rt_hw_usart_register( RT_ASSERT(0); } - device->type = RT_Device_Class_Char; + if (usart->state & USART_STATE_SYNC) + { + device->type = RT_Device_Class_SPIBUS; + } + else + { + device->type = RT_Device_Class_Char; + } device->rx_indicate = RT_NULL; device->tx_complete = RT_NULL; - device->init = rt_usart_init; - device->open = rt_usart_open; - device->close = rt_usart_close; - device->read = rt_usart_read; - device->write = rt_usart_write; - device->control = rt_usart_control; - device->user_data = usart; + device->init = rt_usart_init; + device->open = rt_usart_open; + device->close = rt_usart_close; + device->read = rt_usart_read; + device->write = rt_usart_write; + device->control = rt_usart_control; + device->user_data = usart; /* register a character device */ return rt_device_register(device, name, RT_DEVICE_FLAG_RDWR | flag); @@ -833,7 +916,7 @@ rt_err_t rt_hw_usart_register( /***************************************************************************//** * @brief -* Initialize the specified USART unit +* Initialize the specified USART unit * * @details * @@ -846,7 +929,7 @@ rt_err_t rt_hw_usart_register( * Unit number * * @param[in] location -* Pin location number +* Pin location number * * @param[in] flag * Configuration flag @@ -855,14 +938,14 @@ rt_err_t rt_hw_usart_register( * DMA channel number for TX * * @param[in] console -* Indicate if using as console +* Indicate if using as console * * @return -* Pointer to USART device +* Pointer to USART device ******************************************************************************/ static struct efm32_usart_device_t *rt_hw_usart_unit_init( rt_device_t device, - rt_uint8_t unitNumber, + rt_uint8_t unitNumber, rt_uint8_t location, rt_uint32_t flag, rt_uint32_t dmaChannel, @@ -875,7 +958,6 @@ static struct efm32_usart_device_t *rt_hw_usart_unit_init( rt_uint32_t txDmaSelect; GPIO_Port_TypeDef port_tx, port_rx, port_clk, port_cs; rt_uint32_t pin_tx, pin_rx, pin_clk, pin_cs; - union efm32_usart_init_t init; efm32_irq_hook_init_t hook; do @@ -884,7 +966,7 @@ static struct efm32_usart_device_t *rt_hw_usart_unit_init( usart = rt_malloc(sizeof(struct efm32_usart_device_t)); if (usart == RT_NULL) { - usart_debug("USART: no memory for USART%d device\n", unitNumber); + usart_debug("USART%d err: no mem\n", usart->unit); break; } usart->counter = 0; @@ -900,7 +982,7 @@ static struct efm32_usart_device_t *rt_hw_usart_unit_init( usart->tx_mode = dma_mode = rt_malloc(sizeof(struct efm32_usart_dma_mode_t)); if (dma_mode == RT_NULL) { - usart_debug("USART: no memory for DMA TX\n"); + usart_debug("USART%d err: no mem for DMA TX\n", usart->unit); break; } dma_mode->dma_channel = dmaChannel; @@ -912,46 +994,75 @@ static struct efm32_usart_device_t *rt_hw_usart_unit_init( usart->rx_mode = rt_malloc(sizeof(struct efm32_usart_int_mode_t)); if (usart->rx_mode == RT_NULL) { - usart_debug("USART: no memory for interrupt RX\n"); + usart_debug("USART%d err: no mem for INT RX\n", usart->unit); break; } } /* Initialization */ - if (unitNumber >= USART_COUNT) + if ((!(config & USART_STATE_ASYNC_ONLY) && (unitNumber >= USART_COUNT)) || \ + ((config & USART_STATE_ASYNC_ONLY) && (unitNumber >= UART_COUNT))) { break; } switch (unitNumber) { case 0: - usart->usart_device = USART0; - usartClock = (CMU_Clock_TypeDef)cmuClock_USART0; - txDmaSelect = DMAREQ_USART0_TXBL; - port_tx = AF_USART0_TX_PORT(location); - pin_tx = AF_USART0_TX_PIN(location); - port_rx = AF_USART0_RX_PORT(location); - pin_rx = AF_USART0_RX_PIN(location); - port_clk = AF_USART0_CLK_PORT(location); - pin_clk = AF_USART0_CLK_PIN(location); - port_cs = AF_USART0_CS_PORT(location); - pin_cs = AF_USART0_CS_PIN(location); + if (config & USART_STATE_ASYNC_ONLY) + { + usart->usart_device = UART0; + usartClock = (CMU_Clock_TypeDef)cmuClock_UART0; + txDmaSelect = DMAREQ_UART0_TXBL; + port_tx = AF_UART0_TX_PORT(location); + pin_tx = AF_UART0_TX_PIN(location); + port_rx = AF_UART0_RX_PORT(location); + pin_rx = AF_UART0_RX_PIN(location); + } + else + { + usart->usart_device = USART0; + usartClock = (CMU_Clock_TypeDef)cmuClock_USART0; + txDmaSelect = DMAREQ_USART0_TXBL; + port_tx = AF_USART0_TX_PORT(location); + pin_tx = AF_USART0_TX_PIN(location); + port_rx = AF_USART0_RX_PORT(location); + pin_rx = AF_USART0_RX_PIN(location); + port_clk = AF_USART0_CLK_PORT(location); + pin_clk = AF_USART0_CLK_PIN(location); + port_cs = AF_USART0_CS_PORT(location); + pin_cs = AF_USART0_CS_PIN(location); + } break; - + case 1: - usart->usart_device = USART1; - usartClock = (CMU_Clock_TypeDef)cmuClock_USART1; - txDmaSelect = DMAREQ_USART1_TXBL; - port_tx = AF_USART1_TX_PORT(location); - pin_tx = AF_USART1_TX_PIN(location); - port_rx = AF_USART1_RX_PORT(location); - pin_rx = AF_USART1_RX_PIN(location); - port_clk = AF_USART1_CLK_PORT(location); - pin_clk = AF_USART1_CLK_PIN(location); - port_cs = AF_USART1_CS_PORT(location); - pin_cs = AF_USART1_CS_PIN(location); +#if defined(EFM32_GIANT_FAMILY) + if (config & USART_STATE_ASYNC_ONLY) + { + usart->usart_device = UART1; + usartClock = (CMU_Clock_TypeDef)cmuClock_UART1; + txDmaSelect = DMAREQ_UART1_TXBL; + port_tx = AF_UART1_TX_PORT(location); + pin_tx = AF_UART1_TX_PIN(location); + port_rx = AF_UART1_RX_PORT(location); + pin_rx = AF_UART1_RX_PIN(location); + } + else +#endif + { + usart->usart_device = USART1; + usartClock = (CMU_Clock_TypeDef)cmuClock_USART1; + txDmaSelect = DMAREQ_USART1_TXBL; + port_tx = AF_USART1_TX_PORT(location); + pin_tx = AF_USART1_TX_PIN(location); + port_rx = AF_USART1_RX_PORT(location); + pin_rx = AF_USART1_RX_PIN(location); + port_clk = AF_USART1_CLK_PORT(location); + pin_clk = AF_USART1_CLK_PIN(location); + port_cs = AF_USART1_CS_PORT(location); + pin_cs = AF_USART1_CS_PIN(location); + } break; - + case 2: usart->usart_device = USART2; usartClock = (CMU_Clock_TypeDef)cmuClock_USART2; @@ -1003,9 +1114,13 @@ static struct efm32_usart_device_t *rt_hw_usart_unit_init( /* Config interrupt and NVIC */ if (flag & RT_DEVICE_FLAG_INT_RX) - { + { hook.type = efm32_irq_type_usart; hook.unit = unitNumber * 2 + 1; + if (config & USART_STATE_ASYNC_ONLY) + { + hook.unit += USART_COUNT * 2; + } hook.cbFunc = rt_hw_usart_rx_isr; hook.userPtr = device; efm32_irq_hook_register(&hook); @@ -1026,7 +1141,7 @@ static struct efm32_usart_device_t *rt_hw_usart_unit_init( callback = (DMA_CB_TypeDef *)rt_malloc(sizeof(DMA_CB_TypeDef)); if (callback == RT_NULL) { - usart_debug("USART: no memory for callback\n"); + usart_debug("USART%d err: no mem for callback\n", usart->unit); break; } callback->cbFunc = DMA_IRQHandler_All; @@ -1036,7 +1151,7 @@ static struct efm32_usart_device_t *rt_hw_usart_unit_init( /* Setting up DMA channel */ chnlCfg.highPri = false; /* Can't use with peripherals */ chnlCfg.enableInt = true; /* Interrupt for callback function */ - chnlCfg.select = txDmaSelect; + chnlCfg.select = txDmaSelect; chnlCfg.cb = callback; DMA_CfgChannel(dmaChannel, &chnlCfg); @@ -1046,38 +1161,42 @@ static struct efm32_usart_device_t *rt_hw_usart_unit_init( descrCfg.size = dmaDataSize1; descrCfg.arbRate = dmaArbitrate1; descrCfg.hprot = 0; - DMA_CfgDescr(dmaChannel, true, &descrCfg); + DMA_CfgDescr(dmaChannel, true, &descrCfg); } /* Init specified USART unit */ if (config & USART_STATE_SYNC) { - init.sync.enable = usartEnable; - init.sync.refFreq = 0; - init.sync.baudrate = SPI_BAUDRATE; - init.sync.databits = usartDatabits8; + USART_InitSync_TypeDef init_sync = USART_INITSYNC_DEFAULT; + + init_sync.enable = usartEnable; + init_sync.refFreq = 0; + init_sync.baudrate = SPI_BAUDRATE; + init_sync.databits = usartDatabits8; if (config & USART_STATE_MASTER) { - init.sync.master = true; + init_sync.master = true; } else { - init.sync.master = false; + init_sync.master = false; } - init.sync.msbf = true; - init.sync.clockMode = usartClockMode0; /* Clock idle low, sample on rising edge. */ - USART_InitSync(usart->usart_device, &init.sync); + init_sync.msbf = true; + init_sync.clockMode = usartClockMode0; /* Clock idle low, sample on rising edge. */ + USART_InitSync(usart->usart_device, &init_sync); } else { - init.async.enable = usartEnable; - init.async.refFreq = 0; - init.async.baudrate = UART_BAUDRATE; - init.async.oversampling = USART_CTRL_OVS_X4; - init.async.databits = USART_FRAME_DATABITS_EIGHT; - init.async.parity = USART_FRAME_PARITY_NONE; - init.async.stopbits = USART_FRAME_STOPBITS_ONE; - USART_InitAsync(usart->usart_device, &init.async); + USART_InitAsync_TypeDef init_async = USART_INITASYNC_DEFAULT; + + init_async.enable = usartEnable; + init_async.refFreq = 0; + init_async.baudrate = UART_BAUDRATE; + init_async.oversampling = USART_CTRL_OVS_X4; + init_async.databits = USART_FRAME_DATABITS_EIGHT; + init_async.parity = USART_FRAME_PARITY_NONE; + init_async.stopbits = USART_FRAME_STOPBITS_ONE; + USART_InitAsync(usart->usart_device, &init_async); } /* Enable RX and TX pins and set location */ @@ -1119,13 +1238,20 @@ static struct efm32_usart_device_t *rt_hw_usart_unit_init( rt_free(usart); } - usart_debug("USART: Unit %d init failed!\n", unitNumber); + if (config & USART_STATE_ASYNC_ONLY) + { + usart_debug("UART%d err: init failed!\n", unitNumber); + } + else + { + usart_debug("USART%d err: init failed!\n", unitNumber); + } return RT_NULL; } /***************************************************************************//** * @brief -* Initialize all USART module related hardware and register USART device to +* Initialize all USART module related hardware and register USART device to * kernel * * @details @@ -1159,7 +1285,7 @@ void rt_hw_usart_init(void) config |= USART_STATE_AUTOCS; #endif - #if (RT_CONSOLE_DEVICE == 0x0UL) + #if (RT_CONSOLE_DEVICE == EFM_USART0) config |= USART_STATE_CONSOLE; flag |= RT_DEVICE_FLAG_STREAM; #endif @@ -1168,16 +1294,16 @@ void rt_hw_usart_init(void) RT_ASSERT(RT_USART0_USING_DMA < DMA_CHAN_COUNT); flag |= RT_DEVICE_FLAG_DMA_TX; #else - #define RT_USART0_USING_DMA EFM32_NO_DATA + #define RT_USART0_USING_DMA EFM32_NO_DMA #endif /* Initialize and Register usart0 */ if ((usart = rt_hw_usart_unit_init( - &usart0_device, - 0, - RT_USING_USART0, - flag, - RT_USART0_USING_DMA, + &usart0_device, + 0, + RT_USING_USART0, + flag, + RT_USART0_USING_DMA, config)) != RT_NULL) { rt_hw_usart_register(&usart0_device, RT_USART0_NAME, flag, usart); @@ -1213,7 +1339,7 @@ void rt_hw_usart_init(void) config |= USART_STATE_AUTOCS; #endif - #if (RT_CONSOLE_DEVICE == 0x1UL) + #if (RT_CONSOLE_DEVICE == EFM_USART1) config |= USART_STATE_CONSOLE; flag |= RT_DEVICE_FLAG_STREAM; #endif @@ -1222,17 +1348,17 @@ void rt_hw_usart_init(void) RT_ASSERT(RT_USART1_USING_DMA < DMA_CHAN_COUNT); flag |= RT_DEVICE_FLAG_DMA_TX; #else - - #define RT_USART1_USING_DMA EFM32_NO_DATA + + #define RT_USART1_USING_DMA EFM32_NO_DMA #endif /* Initialize and Register usart1 */ if ((usart = rt_hw_usart_unit_init( - &usart1_device, - 1, - RT_USING_USART1, - flag, - RT_USART1_USING_DMA, + &usart1_device, + 1, + RT_USING_USART1, + flag, + RT_USART1_USING_DMA, config)) != RT_NULL) { rt_hw_usart_register(&usart1_device, RT_USART1_NAME, flag, usart); @@ -1268,7 +1394,7 @@ void rt_hw_usart_init(void) config |= USART_STATE_AUTOCS; #endif -#if (RT_CONSOLE_DEVICE == 0x2UL) +#if (RT_CONSOLE_DEVICE == EFM_USART2) config |= USART_STATE_CONSOLE; flag |= RT_DEVICE_FLAG_STREAM; #endif @@ -1278,17 +1404,17 @@ void rt_hw_usart_init(void) flag |= RT_DEVICE_FLAG_DMA_TX; #else - - #define RT_USART2_USING_DMA EFM32_NO_DATA + + #define RT_USART2_USING_DMA EFM32_NO_DMA #endif /* Initialize and Register usart2 */ if ((usart = rt_hw_usart_unit_init( - &usart2_device, - 2, - RT_USING_USART2, - flag, - RT_USART2_USING_DMA, + &usart2_device, + 2, + RT_USING_USART2, + flag, + RT_USART2_USING_DMA, config)) != RT_NULL) { rt_hw_usart_register(&usart2_device, RT_USART2_NAME, flag, usart); @@ -1305,6 +1431,84 @@ void rt_hw_usart_init(void) } #endif +#ifdef RT_USING_UART0 + config = USART_STATE_ASYNC_ONLY; + flag = RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX; + + #if (RT_CONSOLE_DEVICE == EFM_UART0) + config |= USART_STATE_CONSOLE; + flag |= RT_DEVICE_FLAG_STREAM; + #endif + + #ifdef RT_UART0_USING_DMA + RT_ASSERT(RT_UART0_USING_DMA < DMA_CHAN_COUNT); + flag |= RT_DEVICE_FLAG_DMA_TX; + #else + #define RT_UART0_USING_DMA EFM32_NO_DMA + #endif + + /* Initialize and Register uart0 */ + if ((usart = rt_hw_usart_unit_init( + &uart0_device, + 0, + RT_USING_UART0, + flag, + RT_UART0_USING_DMA, + config)) != RT_NULL) + { + rt_hw_usart_register(&uart0_device, RT_UART0_NAME, flag, usart); + } + else + { + break; + } + /* Initialize lock for uart0 */ + usart->lock = &uart0_lock; + if (rt_sem_init(usart->lock, RT_UART0_NAME, 1, RT_IPC_FLAG_FIFO) != RT_EOK) + { + break; + } +#endif + +#ifdef RT_USING_UART1 + config = USART_STATE_ASYNC_ONLY; + flag = RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX; + + #if (RT_CONSOLE_DEVICE == EFM_UART1) + config |= USART_STATE_CONSOLE; + flag |= RT_DEVICE_FLAG_STREAM; + #endif + + #ifdef RT_UART1_USING_DMA + RT_ASSERT(RT_UART1_USING_DMA < DMA_CHAN_COUNT); + flag |= RT_DEVICE_FLAG_DMA_TX; + #else + #define RT_UART1_USING_DMA EFM32_NO_DMA + #endif + + /* Initialize and Register uart1 */ + if ((usart = rt_hw_usart_unit_init( + &uart1_device, + 1, + RT_USING_UART1, + flag, + RT_UART1_USING_DMA, + config)) != RT_NULL) + { + rt_hw_usart_register(&uart1_device, RT_UART1_NAME, flag, usart); + } + else + { + break; + } + /* Initialize lock for uart1 */ + usart->lock = &uart1_lock; + if (rt_sem_init(usart->lock, RT_UART1_NAME, 1, RT_IPC_FLAG_FIFO) != RT_EOK) + { + break; + } +#endif + usart_debug("USART: H/W init OK!\n"); return; } while (0); @@ -1312,7 +1516,9 @@ void rt_hw_usart_init(void) rt_kprintf("USART: H/W init failed!\n"); } -#endif /* (defined(RT_USING_USART0) || defined(RT_USING_USART1) || defined(RT_USING_USART2)) */ +#endif /* (defined(RT_USING_USART0) || defined(RT_USING_USART1) || \ + defined(RT_USING_USART2) || defined(RT_USING_UART0) || \ + defined(RT_USING_UART1)) */ /***************************************************************************//** * @} ******************************************************************************/ diff --git a/bsp/efm32/drv_usart.h b/bsp/efm32/drv_usart.h index 89b1fb455d..5ad28b7b5e 100644 --- a/bsp/efm32/drv_usart.h +++ b/bsp/efm32/drv_usart.h @@ -6,15 +6,17 @@ * @version 0.4 beta ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file + * The license and distribution terms for this file may be found in the file * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE ******************************************************************************* * @section Change Logs * Date Author Notes * 2010-12-22 onelife Initial creation for EFM32 * 2011-06-27 onelife Fix a bug when using compiler optimization - * 2011-07-26 onelife Add lock (semaphore) to prevent simultaneously + * 2011-07-26 onelife Add lock (semaphore) to prevent simultaneously * access + * 2011-12-09 onelife Add giant gecko support + * 2011-12-09 onelife Add UART module support ******************************************************************************/ #ifndef __DRV_USART_H__ #define __DRV_USART_H__ @@ -61,11 +63,12 @@ struct efm32_usart_device_t #define USART_WAIT_TIME_TX (RT_TICK_PER_SECOND / 100 * 3) #define USART_STATE_CONSOLE (1 << 0) -#define USART_STATE_SYNC (1 << 1) -#define USART_STATE_MASTER (1 << 2) -#define USART_STATE_AUTOCS (1 << 3) -#define USART_STATE_TX_BUSY (1 << 4) -#define USART_STATE_RX_BUSY (1 << 5) +#define USART_STATE_ASYNC_ONLY (1 << 1) +#define USART_STATE_SYNC (1 << 2) +#define USART_STATE_MASTER (1 << 3) +#define USART_STATE_AUTOCS (1 << 4) +#define USART_STATE_TX_BUSY (1 << 5) +#define USART_STATE_RX_BUSY (1 << 6) /* Exported functions ------------------------------------------------------- */ diff --git a/bsp/efm32/efm32_rom.ld b/bsp/efm32/efm32g_rom.ld similarity index 93% rename from bsp/efm32/efm32_rom.ld rename to bsp/efm32/efm32g_rom.ld index e1bb9dc8fc..fec1129a8e 100644 --- a/bsp/efm32/efm32_rom.ld +++ b/bsp/efm32/efm32g_rom.ld @@ -1,12 +1,12 @@ /***************************************************************************//** - * @file efm32_rom.ld - * @brief Linker script for EFM32 with GNU ld + * @file efm32_rom_g.ld + * @brief Linker script for EFM32 gecko with GNU ld * COPYRIGHT (C) 2011, RT-Thread Development Team * @author Bernard, onelife * @version 0.4 beta ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file + * The license and distribution terms for this file may be found in the file * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE ******************************************************************************* * @section Change Logs @@ -18,7 +18,7 @@ OUTPUT_FORMAT ("elf32-littlearm", "elf32-bigarm", "elf32-littlearm") ENTRY(__cs3_reset) SEARCH_DIR(.) -GROUP(-lgcc -lc -lcs3 -lcs3unhosted) +GROUP(-lgcc -lc -lcs3 -lcs3unhosted) MEMORY { @@ -98,7 +98,7 @@ SECTIONS _edata = . ; } >DATA - .stack : + .stack : { . = . + _system_stack_size; . = ALIGN(4); @@ -119,7 +119,7 @@ SECTIONS . = ALIGN(4); /* This is used by the startup in order to initialize the .bss secion */ _ebss = . ; - + *(.bss.init) } > DATA __bss_end = .; @@ -133,7 +133,7 @@ SECTIONS .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } - + /* DWARF debug sections. * Symbols in the DWARF debugging sections are relative to * the beginning of the section so we begin them at 0. diff --git a/bsp/efm32/hdl_interrupt.c b/bsp/efm32/hdl_interrupt.c index cc26dd11f5..98f812c5b9 100644 --- a/bsp/efm32/hdl_interrupt.c +++ b/bsp/efm32/hdl_interrupt.c @@ -1,18 +1,21 @@ /***************************************************************************//** - * @file hdl_interrupt.c - * @brief USART driver of RT-Thread RTOS for EFM32 + * @file hdl_interrupt.c + * @brief Interrupt handler of RT-Thread RTOS for EFM32 * COPYRIGHT (C) 2011, RT-Thread Development Team - * @author onelife - * @version 0.4 beta + * @author onelife + * @version 0.4 beta ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file + * The license and distribution terms for this file may be found in the file * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE ******************************************************************************* * @section Change Logs - * Date Author Notes - * 2010-12-29 onelife Initial creation for EFM32 - * 2011-07-12 onelife Disable interrupts in GPIO handler + * Date Author Notes + * 2010-12-29 onelife Initial creation for EFM32 + * 2011-07-12 onelife Disable interrupts in GPIO handler + * 2011-12-09 onelife Add giant gecko support + * 2011-12-09 onelife Add UART module support + * 2011-12-09 onelife Add LEUART module support ******************************************************************************/ /* Includes ------------------------------------------------------------------*/ @@ -39,7 +42,8 @@ efm32_irq_hook_t timerCbTable[TIMER_COUNT] = {RT_NULL}; efm32_irq_hook_t rtcCbTable[RTC_COUNT] = {RT_NULL}; efm32_irq_hook_t gpioCbTable[16] = {RT_NULL}; efm32_irq_hook_t acmpCbTable[ACMP_COUNT] = {RT_NULL}; -efm32_irq_hook_t usartCbTable[USART_COUNT * 2] = {RT_NULL}; +efm32_irq_hook_t usartCbTable[USART_COUNT * 2 + UART_COUNT * 2] = {RT_NULL}; +efm32_irq_hook_t leuartCbTable[LEUART_COUNT] = {RT_NULL}; efm32_irq_hook_t iicCbTable[I2C_COUNT] = {RT_NULL}; /* Private function prototypes -----------------------------------------------*/ @@ -147,10 +151,10 @@ void SysTick_Handler(void) } /******************************************************************************* - * STM32F10x Peripherals Interrupt Handlers - * Add here the Interrupt Handler for the used peripheral(s) (PPP), for the - * available peripheral interrupt handler's name please refer to the startup - * file (startup_stm32f10x_xx.s). + * STM32F10x Peripherals Interrupt Handlers + * Add here the Interrupt Handler for the used peripheral(s) (PPP), for the + * available peripheral interrupt handler's name please refer to the startup + * file (startup_stm32f10x_xx.s). /******************************************************************************/ /***************************************************************************//** @@ -158,7 +162,7 @@ void SysTick_Handler(void) * Common DMA interrupt handler * * @details - * + * * @note * ******************************************************************************/ @@ -250,7 +254,7 @@ void RTC_IRQHandler(void) (rtcCbTable[0].cbFunc)(rtcCbTable[0].userPtr); } } - + /* leave interrupt */ rt_interrupt_leave(); } @@ -260,7 +264,7 @@ void RTC_IRQHandler(void) * Common even number GPIO interrupt handler * * @details - * + * * @note * ******************************************************************************/ @@ -298,7 +302,7 @@ void GPIO_EVEN_IRQHandler(void) * Common odd number GPIO interrupt handler * * @details - * + * * @note * ******************************************************************************/ @@ -533,6 +537,158 @@ void USART2_RX_IRQHandler(void) } } +/***************************************************************************//** + * @brief + * Common UART0 TX interrupt handler + * + * @details + * This function handles UART0 TX complete interrupt request + * + * @note + * + ******************************************************************************/ +void UART0_TX_IRQHandler(void) +{ + /* enter interrupt */ + rt_interrupt_enter(); + + if (UART0->IF & UART_IF_TXC) + { + /* invoke callback function */ + if (usartCbTable[USART_COUNT * 2].cbFunc != RT_NULL) + { + (usartCbTable[USART_COUNT * 2].cbFunc)(usartCbTable[USART_COUNT * 2].userPtr); + } + + /* clear interrupt */ + BITBAND_Peripheral(&(UART0->IFC), _UART_IF_TXC_SHIFT, 0x1UL); + } + + /* leave interrupt */ + rt_interrupt_leave(); +} + +/***************************************************************************//** + * @brief + * Common UART0 RX interrupt handler + * + * @details + * This function handles UART0 RX data valid interrupt request + * + * @note + * + ******************************************************************************/ +void UART0_RX_IRQHandler(void) +{ + if (UART0->IF & UART_IF_RXDATAV) + { + /* invoke callback function */ + if (usartCbTable[USART_COUNT * 2 + 1].cbFunc != RT_NULL) + { + (usartCbTable[USART_COUNT * 2 + 1].cbFunc)(usartCbTable[USART_COUNT * 2 + 1].userPtr); + } + } +} + +#if defined(EFM32_GIANT_FAMILY) +/***************************************************************************//** + * @brief + * Common UART1 TX interrupt handler + * + * @details + * This function handles UART1 TX complete interrupt request + * + * @note + * + ******************************************************************************/ +void UART1_TX_IRQHandler(void) +{ + /* enter interrupt */ + rt_interrupt_enter(); + + if (UART1->IF & UART_IF_TXC) + { + /* invoke callback function */ + if (usartCbTable[USART_COUNT * 2 + 2].cbFunc != RT_NULL) + { + (usartCbTable[USART_COUNT * 2 + 2].cbFunc)(usartCbTable[USART_COUNT * 2 + 2].userPtr); + } + + /* clear interrupt */ + BITBAND_Peripheral(&(UART1->IFC), _UART_IF_TXC_SHIFT, 0x1UL); + } + + /* leave interrupt */ + rt_interrupt_leave(); +} + +/***************************************************************************//** + * @brief + * Common UART1 RX interrupt handler + * + * @details + * This function handles UART1 RX data valid interrupt request + * + * @note + * + ******************************************************************************/ +void UART1_RX_IRQHandler(void) +{ + if (UART1->IF & UART_IF_RXDATAV) + { + /* invoke callback function */ + if (usartCbTable[USART_COUNT * 2 + 3].cbFunc != RT_NULL) + { + (usartCbTable[USART_COUNT * 2 + 3].cbFunc)(usartCbTable[USART_COUNT * 2 + 3].userPtr); + } + } +} +#endif + +/***************************************************************************//** + * @brief + * Common LEUART0 interrupt handler + * + * @details + * This function handles LEUART0 interrupt request + * + * @note + * + ******************************************************************************/ +void LEUART0_IRQHandler(void) +{ + if (LEUART0->IF & LEUART_IF_RXDATAV) + { + /* invoke callback function */ + if (leuartCbTable[0].cbFunc != RT_NULL) + { + (leuartCbTable[0].cbFunc)(leuartCbTable[0].userPtr); + } + } +} + +/***************************************************************************//** + * @brief + * Common LEUART1 interrupt handler + * + * @details + * This function handles LEUART1 interrupt request + * + * @note + * + ******************************************************************************/ +void LEUART1_IRQHandler(void) +{ + if (LEUART1->IF & LEUART_IF_RXDATAV) + { + /* invoke callback function */ + if (leuartCbTable[1].cbFunc != RT_NULL) + { + (leuartCbTable[1].cbFunc)(leuartCbTable[1].userPtr); + } + } +} + /***************************************************************************//** * @brief * Common IIC0 interrupt handler @@ -564,7 +720,7 @@ void I2C0_IRQHandler(void) * EFM32 common interrupt handlers register function * * @details - * + * * @note * ******************************************************************************/ @@ -602,6 +758,11 @@ void efm32_irq_hook_register(efm32_irq_hook_init_t *hook) usartCbTable[hook->unit].userPtr = hook->userPtr; break; + case efm32_irq_type_leuart: + leuartCbTable[hook->unit].cbFunc = hook->cbFunc; + leuartCbTable[hook->unit].userPtr = hook->userPtr; + break; + case efm32_irq_type_iic: iicCbTable[hook->unit].cbFunc = hook->cbFunc; iicCbTable[hook->unit].userPtr = hook->userPtr; diff --git a/bsp/efm32/hdl_interrupt.h b/bsp/efm32/hdl_interrupt.h index 6003e8dd2d..576ece7927 100644 --- a/bsp/efm32/hdl_interrupt.h +++ b/bsp/efm32/hdl_interrupt.h @@ -1,18 +1,19 @@ -/******************************************************************//** - * @file hdl_interrupt.h - * @brief USART driver of RT-Thread RTOS for EFM32 +/***************************************************************************//** + * @file hdl_interrupt.h + * @brief Interrupt handler of RT-Thread RTOS for EFM32 * COPYRIGHT (C) 2011, RT-Thread Development Team - * @author onelife - * @version 0.4 beta - ********************************************************************** + * @author onelife + * @version 0.4 beta + ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file LICENSE in this - * distribution or at http://www.rt-thread.org/license/LICENSE - ********************************************************************** + * The license and distribution terms for this file may be found in the file + * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE + ******************************************************************************* * @section Change Logs - * Date Author Notes - * 2010-12-29 onelife Initial creation for EFM32 - *********************************************************************/ + * Date Author Notes + * 2010-12-29 onelife Initial creation for EFM32 + * 2011-12-09 onelife Add LEUART module support + ******************************************************************************/ #ifndef __HDL_INTERRUPT_H__ #define __HDL_INTERRUPT_H__ @@ -26,12 +27,13 @@ enum efm32_irq_hook_type_t efm32_irq_type_gpio, efm32_irq_type_acmp, efm32_irq_type_usart, + efm32_irq_type_leuart, efm32_irq_type_iic }; typedef void (*efm32_irq_callback_t)(rt_device_t device); -typedef struct +typedef struct { enum efm32_irq_hook_type_t type; rt_uint8_t unit; @@ -39,7 +41,7 @@ typedef struct void *userPtr; } efm32_irq_hook_init_t; -typedef struct +typedef struct { efm32_irq_callback_t cbFunc; void *userPtr; @@ -58,4 +60,3 @@ void DMA_IRQHandler_All(unsigned int channel, bool primary, void *user); void efm32_irq_hook_register(efm32_irq_hook_init_t *hook); #endif /* __HDL_INTERRUPT_H__ */ - diff --git a/bsp/efm32/rtconfig.h b/bsp/efm32/rtconfig.h index fdbdb39415..05a7e6e6f0 100644 --- a/bsp/efm32/rtconfig.h +++ b/bsp/efm32/rtconfig.h @@ -1,12 +1,12 @@ /***************************************************************************//** - * @file rtconfig.h - * @brief RT-Thread config file + * @file rtconfig.h + * @brief RT-Thread config file * COPYRIGHT (C) 2009, RT-Thread Development Team - * @author + * @author * @version 0.4 beta ******************************************************************************* * @section License - * The license and distribution terms for this file may be found in the file + * The license and distribution terms for this file may be found in the file * LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE ******************************************************************************/ #ifndef __RTTHREAD_CFG_H__ @@ -41,6 +41,7 @@ //#define RT_IRQHDL_DEBUG //#define RT_USART_DEBUG +//#define RT_LEUART_DEBUG //#define RT_IIC_DEBUG //#define RT_MISC_DEBUG //#define RT_ADC_DEBUG @@ -66,13 +67,13 @@ /* SECTION: IPC */ /* Using Semaphore*/ -#define RT_USING_SEMAPHORE /* Using by DFS and lwIP */ +#define RT_USING_SEMAPHORE /* Using by DFS and lwIP */ /* Using Mutex */ -//#define RT_USING_MUTEX /* Using by DFS */ +#define RT_USING_MUTEX /* Using by DFS */ /* Using Event */ //#define RT_USING_EVENT /* Using MailBox */ -#define RT_USING_MAILBOX /* Using by lwIP */ +#define RT_USING_MAILBOX /* Using by lwIP */ /* Using Message Queue */ //#define RT_USING_MESSAGEQUEUE /* SECTION: Memory Management */ @@ -89,33 +90,56 @@ /* Using Device System */ #define RT_USING_DEVICE -/* USART Device for Console */ -#if defined(EFM32_G290_DK) -#define RT_USING_USART1 (0x0UL) -#define RT_USART1_NAME "debug" -//#define RT_USART1_USING_DMA (0x0UL) -#elif defined(EFM32_G890_STK) -#define RT_USING_USART1 (0x1UL) -#define RT_USART1_NAME "debug" -//#define RT_USART1_USING_DMA (0x0UL) +/* USART/UART/LEUART Device for Console */ +#if defined(EFM32_G8XX_STK) +#define RT_USING_USART1 (0x1UL) +#define RT_USART1_NAME "debug" +//#define RT_USART1_USING_DMA (0x0UL) +#elif defined(EFM32_GXXX_DK) +#define RT_USING_USART1 (0x0UL) +#define RT_USART1_NAME "debug" +//#define RT_USART1_USING_DMA (0x0UL) +#elif defined(EFM32GG_DK3750) +#define EFM32GG_DK3750_USING_LEUART1 + #if defined(EFM32GG_DK3750_USING_LEUART1) + #define RT_USING_LEUART1 (0x0UL) + #define RT_LEUART1_NAME "debug0" + //#define RT_LEUART1_USING_DMA (0x0UL) + #else + #define RT_USING_UART1 (0x2UL) + #define RT_UART1_NAME "debug" + //#define RT_UART1_USING_DMA (0x0UL) + #endif #endif /* SECTION: SPI options */ -#if defined(EFM32_G290_DK) -#define RT_USING_USART0 (0x2UL) -#define RT_USART0_SYNC_MODE (0x1UL) /* Master */ -#define RT_USART0_NAME "spi0" -#define RT_USART0_USING_DMA (0x1UL) - -#define RT_USING_USART2 (0x1UL) -#define RT_USART2_SYNC_MODE (0x1UL) /* Master */ -#define RT_USART2_NAME "spi2" -#define RT_USART2_USING_DMA (0x2UL) -#elif defined(EFM32_G890_STK) +#if defined(EFM32_G8XX_STK) //#define RT_USING_USART0 (0x0UL) //#define RT_USART0_SYNC_MODE (0x1UL) /* Master */ //#define RT_USART0_NAME "spi0" //#define RT_USART0_USING_DMA (0x1UL) +#elif defined(EFM32_GXXX_DK) +#define RT_USING_USART0 (0x2UL) +#define RT_USART0_SYNC_MODE (0x1UL) /* Master */ +#define RT_USART0_NAME "spi0" +#define RT_USART0_USING_DMA (0x1UL) + +#define RT_USING_USART2 (0x1UL) +#define RT_USART2_SYNC_MODE (0x1UL) /* Master */ +#define RT_USART2_NAME "spi2" +#define RT_USART2_USING_DMA (0x2UL) + +#elif defined(EFM32GG_DK3750) +#define RT_USING_USART0 (0x1UL) +#define RT_USART0_SYNC_MODE (0x1UL) /* Master */ +#define RT_USART0_NAME "spi0" +#define RT_USART0_USING_DMA (0x1UL) + +#define RT_USING_USART1 (0x1UL) +#define RT_USART1_SYNC_MODE (0x1UL) /* Master */ +#define RT_USART1_NAME "spi1" +#define RT_USART1_USING_DMA (0x2UL) + #endif /* SECTION: IIC options */ @@ -138,16 +162,30 @@ #define RT_TIMER2_NAME "tmr2" /* SECTION: RTC options */ -#if (defined(EFM32_G290_DK) || defined(EFM32_G890_STK)) -//#define RT_USING_RTC +#if (defined(EFM32_G8XX_STK) || defined(EFM32_GXXX_DK) || defined(EFM32GG_DK3750)) +#define RT_USING_RTC #define RT_RTC_NAME "rtc" #endif /* SECTION: Serial options */ -#if defined(EFM32_G290_DK) -#define RT_CONSOLE_DEVICE (0x1UL) -#elif defined(EFM32_G890_STK) -#define RT_CONSOLE_DEVICE (0x1UL) +#define EFM_USART0 (0x00UL) +#define EFM_USART1 (0x01UL) +#define EFM_USART2 (0x02UL) +#define EFM_UART0 (0x10UL) +#define EFM_UART1 (0x11UL) +#define EFM_LEUART0 (0x20UL) +#define EFM_LEUART1 (0x21UL) + +#if defined(EFM32_G8XX_STK) +#define RT_CONSOLE_DEVICE (EFM_USART1) +#elif defined(EFM32_GXXX_DK) +#define RT_CONSOLE_DEVICE (EFM_USART1) +#elif defined(EFM32GG_DK3750) + #if defined(EFM32GG_DK3750_USING_LEUART1) + #define RT_CONSOLE_DEVICE (EFM_LEUART1) + #else + #define RT_CONSOLE_DEVICE (EFM_UART1) + #endif #endif /* SECTION: Console options */ @@ -165,11 +203,11 @@ #define EFM32_INTERFACE_ADC (0) #define EFM32_INTERFACE_IIC (1) #define EFM32_INTERFACE_SPI (2) -#if defined(EFM32_G290_DK) +#if (defined(EFM32_GXXX_DK) || defined(EFM32GG_DK3750)) //#define EFM32_USING_ACCEL EFM32_INTERFACE_IIC /* Three axis accelerometer */ //#define EFM32_USING_SFLASH /* SPI Flash */ -//#define EFM32_USING_SPISD /* MicroSD card */ -#define EFM32_USING_ETHERNET /* Ethernet controller */ +#define EFM32_USING_SPISD /* MicroSD card */ +//#define EFM32_USING_ETHERNET /* Ethernet controller */ #endif #if defined(EFM32_USING_ACCEL) @@ -191,22 +229,26 @@ #endif #if defined(EFM32_USING_ETHERNET) -#define ETH_USING_DEVICE_NAME RT_USART2_NAME + #if defined(EFM32_GXXX_DK) + #define ETH_USING_DEVICE_NAME RT_USART2_NAME + #elif defined(EFM32GG_DK3750) + #define ETH_USING_DEVICE_NAME RT_USART1_NAME + #endif #define ETH_DEVICE_NAME "spiEth" #define ETH_ADDR_DEFAULT {0x00, 0x01, 0x02, 0x03, 0x04, 0x05} #endif /* SECTION: device filesystem */ #if defined(EFM32_USING_SPISD) -//#define RT_USING_DFS -//#define RT_USING_DFS_ELMFAT +#define RT_USING_DFS +#define RT_USING_DFS_ELMFAT #define DFS_ELMFAT_INTERFACE_EFM /* the max number of mounted filesystem */ -#define DFS_FILESYSTEMS_MAX (2) +#define DFS_FILESYSTEMS_MAX (2) /* the max number of opened files */ -#define DFS_FD_MAX (4) +#define DFS_FD_MAX (4) /* the max number of cached sector */ -#define DFS_CACHE_MAX_NUM (4) +#define DFS_CACHE_MAX_NUM (4) #endif /* defined(EFM32_USING_SPISD) */ /* SECTION: lwip, a lighwight TCP/IP protocol stack */ @@ -216,7 +258,7 @@ //#define hostName "onelife.dyndns.org" //#define userPwdB64 "dXNlcjpwYXNzd2Q=" -#define RT_USING_LWIP +//#define RT_USING_LWIP //#define RT_USING_NETUTILS /* LwIP uses RT-Thread Memory Management */ #define RT_LWIP_USING_RT_MEM diff --git a/bsp/efm32/rtconfig.py b/bsp/efm32/rtconfig.py index 9657f1cb81..e0a7c006c8 100644 --- a/bsp/efm32/rtconfig.py +++ b/bsp/efm32/rtconfig.py @@ -9,15 +9,19 @@ if CROSS_TOOL == 'gcc': #EXEC_PATH = 'C:\Program Files (x86)\yagarto\bin' BUILD = 'run' -# EFM32_BOARD = 'EFM32_G890_STK' -EFM32_BOARD = 'EFM32_G290_DK' +# EFM32_BOARD = 'EFM32_G8XX_STK' +# EFM32_BOARD = 'EFM32_GXXX_DK' +EFM32_BOARD = 'EFM32GG_DK3750' -if EFM32_BOARD == 'EFM32_G890_STK': +if EFM32_BOARD == 'EFM32_G8XX_STK': EFM32_FAMILY = 'Gecko' EFM32_TYPE = 'EFM32G890F128' -elif EFM32_BOARD == 'EFM32_G290_DK': +elif EFM32_BOARD == 'EFM32_GXXX_DK': EFM32_FAMILY = 'Gecko' EFM32_TYPE = 'EFM32G290F128' +elif EFM32_BOARD == 'EFM32GG_DK3750': + EFM32_FAMILY = 'Giant Gecko' + EFM32_TYPE = 'EFM32GG990F1024' if PLATFORM == 'gcc': # toolchains @@ -35,7 +39,11 @@ if PLATFORM == 'gcc': #CFLAGS = DEVICE + ' -DRT_USING_MINILIBC' CFLAGS = DEVICE AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp' - LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rtthread-efm32.map,-cref,-u,__cs3_reset -T efm32_rom.ld' + LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rtthread-efm32.map,-cref,-u,__cs3_reset -T' + if EFM32_BOARD == 'EFM32_G8XX_STK' or EFM32_BOARD == 'EFM32_GXXX_DK': + LFLAGS += ' efm32g_rom.ld' + elif EFM32_BOARD == 'EFM32GG_DK3750': + LFLAGS += ' efm32gg_rom.ld' CPATH = '' LPATH = ''