mbed library sources. Supersedes mbed-src.

Dependents:   Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more

Files at this revision

API Documentation at this revision

Comitter:
Anna Bridge
Date:
Wed May 10 12:06:41 2017 +0100
Parent:
163:74e0ce7f98e8
Child:
165:e614a9f1c9e2
Commit message:
This updates the lib to the mbed lib v142

Changed in this revision

mbed.h Show annotated file Show diff for this revision Revisions of this file
platform/mbed_debug.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Freescale/TARGET_KLXX/TARGET_KL46Z/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K66F/TARGET_FRDM/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K82F/TARGET_FRDM/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL27Z/TARGET_FRDM/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL43Z/TARGET_FRDM/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL82Z/TARGET_FRDM/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KW24D/TARGET_FRDM/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KW41Z/TARGET_FRDM/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K22F/TARGET_MCU_K22F512/TARGET_FRDM/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K64F/TARGET_FRDM/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K64F/TARGET_HEXIWEAR/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Maxim/TARGET_MAX32600/TARGET_MAX32600MBED/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Maxim/TARGET_MAX32610/TARGET_MAXWSNENV/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Maxim/TARGET_MAX32620/TARGET_MAX32620HSP/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Maxim/TARGET_MAX32625/TARGET_MAX32625MBED/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Maxim/TARGET_MAX32625/TARGET_MAX32625NEXPAQ/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Maxim/TARGET_MAX32630/TARGET_MAX32630FTHR/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U37H_401/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_NXP/TARGET_LPC176X/TARGET_XBED_LPC1768/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_NXP/TARGET_LPC43XX/TARGET_LPC4330/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_ONSEMI/TARGET_NCS36510/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_ONSEMI/TARGET_NCS36510/device/TOOLCHAIN_IAR/NCS36510.icf Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_RENESAS/TARGET_RZ_A1H/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F0/TARGET_DISCO_F051R8/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F030R8/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F070RB/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F072RB/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F091RC/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F0/device/stm32f0xx_hal_def.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F1/TARGET_DISCO_F100RB/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F1/TARGET_NUCLEO_F103RB/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F1/device/stm32f1xx_hal_def.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F2/TARGET_NUCLEO_F207ZG/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F2/device/stm32f2xx_hal_def.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F302x8/TARGET_NUCLEO_F302R8/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F303x8/TARGET_NUCLEO_F303K8/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F303xC/TARGET_DISCO_F303VC/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F303xE/TARGET_NUCLEO_F303RE/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F303xE/TARGET_NUCLEO_F303ZE/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F334x8/TARGET_DISCO_F334C8/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F334x8/TARGET_NUCLEO_F334R8/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F3/device/stm32f3xx_hal_def.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F401xC/TARGET_DISCO_F401VC/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F401xE/TARGET_NUCLEO_F401RE/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F407xG/TARGET_DISCO_F407VG/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F410xB/TARGET_NUCLEO_F410RB/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F411xE/TARGET_ELMO_F411RE/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F411xE/TARGET_NUCLEO_F411RE/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F412xG/TARGET_NUCLEO_F412ZG/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F429xI/TARGET_DISCO_F429ZI/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F429xI/TARGET_NUCLEO_F429ZI/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F439xI/TARGET_NUCLEO_F439ZI/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F446xE/TARGET_B96B_F446VE/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F446xE/TARGET_NUCLEO_F446RE/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F446xE/TARGET_NUCLEO_F446ZE/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F469xI/TARGET_DISCO_F469NI/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/TARGET_UBLOX_EVK_ODIN_W2/sdk/wifi_emac/wifi_emac_api.cpp Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F4/device/stm32f4xx_hal_def.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F746xG/TARGET_DISCO_F746NG/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F746xG/TARGET_NUCLEO_F746ZG/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F756xG/TARGET_NUCLEO_F756ZG/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F767xI/TARGET_NUCLEO_F767ZI/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F769xI/TARGET_DISCO_F769NI/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32F7/device/stm32f7xx_hal_def.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32L0/TARGET_DISCO_L053C8/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L073RZ/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32L0/device/stm32l0xx_hal_def.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32L1/TARGET_NUCLEO_L152RE/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32L1/TARGET_NZ32_SC151/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32L1/device/stm32l1xx_hal_def.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32L4/TARGET_STM32L476xG/TARGET_DISCO_L476VG/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32L4/TARGET_STM32L476xG/TARGET_NUCLEO_L476RG/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32L4/TARGET_STM32L486xG/TARGET_NUCLEO_L486RG/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_STM/TARGET_STM32L4/device/stm32l4xx_hal_def.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32GG/TARGET_EFM32GG_STK3700/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32HG/TARGET_EFM32HG_STK3400/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32LG/TARGET_EFM32LG_STK3600/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG/TARGET_EFM32PG_STK3401/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG12/TARGET_EFM32PG12_STK3402/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32WG/TARGET_EFM32WG_STK3800/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32ZG/TARGET_EFM32ZG_STK3200/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/TARGET_EFR32MG1_BRD4150/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/TARGET_TB_SENSE_1/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/TARGET_TB_SENSE_1/device_peripherals.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/TARGET_THUNDERBOARD_SENSE/PinNames.h Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/TARGET_THUNDERBOARD_SENSE/device_peripherals.h Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG12/TARGET_TB_SENSE_12/PinNames.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG12/TARGET_TB_SENSE_12/device_peripherals.h Show annotated file Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG12/TARGET_THUNDERBOARD_SENSE_12/PinNames.h Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG12/TARGET_THUNDERBOARD_SENSE_12/device_peripherals.h Show diff for this revision Revisions of this file
targets/TARGET_Silicon_Labs/TARGET_SL_RAIL/mbed_lib.json Show annotated file Show diff for this revision Revisions of this file
targets/targets.json Show annotated file Show diff for this revision Revisions of this file
--- a/mbed.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/mbed.h	Wed May 10 12:06:41 2017 +0100
@@ -16,13 +16,13 @@
 #ifndef MBED_H
 #define MBED_H
 
-#define MBED_LIBRARY_VERSION 141
+#define MBED_LIBRARY_VERSION 142
 
 #if MBED_CONF_RTOS_PRESENT
 // RTOS present, this is valid only for mbed OS 5
 #define MBED_MAJOR_VERSION 5
 #define MBED_MINOR_VERSION 4
-#define MBED_PATCH_VERSION 4
+#define MBED_PATCH_VERSION 5
 
 #else
 // mbed 2
--- a/platform/mbed_debug.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/platform/mbed_debug.h	Wed May 10 12:06:41 2017 +0100
@@ -18,49 +18,49 @@
  */
 #ifndef MBED_DEBUG_H
 #define MBED_DEBUG_H
-#include "device.h"
+#if DEVICE_STDIO_MESSAGES
+#include <stdio.h>
+#include <stdarg.h>
+#endif
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
-#if DEVICE_STDIO_MESSAGES
-#include <stdio.h>
-#include <stdarg.h>
 
 /** Output a debug message
  *
  * @param format printf-style format string, followed by variables
  */
 static inline void debug(const char *format, ...) {
+#if DEVICE_STDIO_MESSAGES && !defined(NDEBUG)
     va_list args;
     va_start(args, format);
     vfprintf(stderr, format, args);
     va_end(args);
+#endif
 }
 
+
 /** Conditionally output a debug message
  *
- * NOTE: If the condition is constant false (!= 1) and the compiler optimization
+ * NOTE: If the condition is constant false (== 0) and the compiler optimization
  * level is greater than 0, then the whole function will be compiled away.
  *
- * @param condition output only if condition is true (== 1)
+ * @param condition output only if condition is true (!= 0)
  * @param format printf-style format string, followed by variables
  */
 static inline void debug_if(int condition, const char *format, ...) {
-    if (condition == 1) {
+#if DEVICE_STDIO_MESSAGES && !defined(NDEBUG)
+    if (condition) {
         va_list args;
         va_start(args, format);
         vfprintf(stderr, format, args);
         va_end(args);
     }
+#endif
 }
 
-#else
-static inline void debug(const char *format, ...) {}
-static inline void debug_if(int condition, const char *format, ...) {}
-
-#endif
 
 #ifdef __cplusplus
 }
--- a/targets/TARGET_Freescale/TARGET_KLXX/TARGET_KL46Z/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Freescale/TARGET_KLXX/TARGET_KL46Z/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -203,6 +203,9 @@
     //Push buttons
     SW1 = PTC3,
     SW3 = PTC12,
+    // Standardized button names
+    BUTTON1 = SW1,
+    BUTTON2 = SW3,
 
     // USB Pins
     USBTX = PTA2,
--- a/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K66F/TARGET_FRDM/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K66F/TARGET_FRDM/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -204,6 +204,9 @@
     //Push buttons
     SW2 = PTD11,
     SW3 = PTA10,
+    // Standardized button names
+    BUTTON1 = SW2,
+    BUTTON2 = SW3,
 
     // USB Pins
     USBTX = PTB17,
--- a/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K82F/TARGET_FRDM/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K82F/TARGET_FRDM/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -134,6 +134,9 @@
     //Push buttons
     SW2 = PTA4,
     SW3 = PTC6,
+    // Standardized button names
+    BUTTON1 = SW2,
+    BUTTON2 = SW3,
 
     // USB Pins
     USBTX = PTC15,
--- a/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL27Z/TARGET_FRDM/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL27Z/TARGET_FRDM/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -98,6 +98,9 @@
     //Push buttons
     SW1 = PTA4,
     SW3 = PTC1,
+    // Standardized button names
+    BUTTON1 = SW1,
+    BUTTON2 = SW3,
 
     // USB Pins
     USBTX = PTA2,
--- a/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL43Z/TARGET_FRDM/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL43Z/TARGET_FRDM/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -97,6 +97,9 @@
     //Push buttons
     SW1 = PTA4,
     SW3 = PTC3,
+    // Standardized button names
+    BUTTON1 = SW1,
+    BUTTON2 = SW3,
 
     // USB Pins
     USBTX = PTA2,
--- a/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL82Z/TARGET_FRDM/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL82Z/TARGET_FRDM/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -118,6 +118,9 @@
     //Push buttons
     SW2 = PTA4,
     SW3 = PTD0,
+    // Standardized button names
+    BUTTON1 = SW2,
+    BUTTON2 = SW3,
 
     // USB Pins
     USBTX = PTB17,
--- a/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KW24D/TARGET_FRDM/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KW24D/TARGET_FRDM/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -82,6 +82,11 @@
     SW2 = PTE3,
     SW3 = PTD1,
     SW4 = PTA19,
+    // Standardized button names
+    BUTTON1 = SW1,
+    BUTTON2 = SW2,
+    BUTTON3 = SW3,
+    BUTTON4 = SW4,
 
     // USB Pins
     USBTX = PTE0,
--- a/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KW41Z/TARGET_FRDM/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KW41Z/TARGET_FRDM/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -69,6 +69,9 @@
     //Push buttons
     SW3 = PTC4,
     SW4 = PTC5,
+    // Standardized button names
+    BUTTON1 = SW3,
+    BUTTON2 = SW4,
 
     // USB Pins
     USBTX = PTC7,
--- a/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K22F/TARGET_MCU_K22F512/TARGET_FRDM/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K22F/TARGET_MCU_K22F512/TARGET_FRDM/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -204,6 +204,9 @@
     //Push buttons
     SW2 = PTC1,
     SW3 = PTB17,
+    // Standardized button names
+    BUTTON1 = SW2,
+    BUTTON2 = SW3,
 
     // USB Pins
     USBTX = PTE0,
--- a/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K64F/TARGET_FRDM/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K64F/TARGET_FRDM/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -204,6 +204,9 @@
     //Push buttons
     SW2 = PTC6,
     SW3 = PTA4,
+    // Standardized button names
+    BUTTON1 = SW2,
+    BUTTON2 = SW3,
 
     // USB Pins
     USBTX = PTB17,
--- a/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K64F/TARGET_HEXIWEAR/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K64F/TARGET_HEXIWEAR/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -201,6 +201,11 @@
     LED3 = LED_BLUE,
     LED4 = LED_RED,
 
+    // Standardized button names
+    BUTTON1 = PTA12,
+    BUTTON2 = PTA13,
+    BUTTON3 = PTA15,
+
     // USB Pins
     USBTX = PTB17,
     USBRX = PTB16,
--- a/targets/TARGET_Maxim/TARGET_MAX32600/TARGET_MAX32600MBED/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Maxim/TARGET_MAX32600/TARGET_MAX32600MBED/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -184,6 +184,9 @@
     // Push button
     SW2 = P6_4,
     SW3 = P6_5,
+    // Standardized button names
+    BUTTON1 = SW2,
+    BUTTON2 = SW3,
 
     // UART pins
     USBTX = P7_3,
--- a/targets/TARGET_Maxim/TARGET_MAX32610/TARGET_MAXWSNENV/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Maxim/TARGET_MAX32610/TARGET_MAXWSNENV/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -128,6 +128,8 @@
 
     // Push button
     SW1 = P1_5,
+    // Standardized button names
+    BUTTON1 = SW1,
 
     // UART Pins
     UART0_RX  = P1_0,
--- a/targets/TARGET_Maxim/TARGET_MAX32620/TARGET_MAX32620HSP/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Maxim/TARGET_MAX32620/TARGET_MAX32620HSP/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -126,6 +126,8 @@
     SW1 = P2_1,
     SW2 = NOT_CONNECTED,
     SW3 = NOT_CONNECTED,
+    // Standardized button names
+    BUTTON1 = SW1,
 
     // USB bridge connected UART pins
     USBTX = P0_1,
--- a/targets/TARGET_Maxim/TARGET_MAX32625/TARGET_MAX32625MBED/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Maxim/TARGET_MAX32625/TARGET_MAX32625MBED/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -76,6 +76,9 @@
     // Push button
     SW2 = P2_2,
     SW3 = P2_3,
+    // Standardized button names
+    BUTTON1 = SW2,
+    BUTTON2 = SW3,
 
     // USB bridge connected UART pins
     USBTX = P2_1,
--- a/targets/TARGET_Maxim/TARGET_MAX32625/TARGET_MAX32625NEXPAQ/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Maxim/TARGET_MAX32625/TARGET_MAX32625NEXPAQ/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -75,6 +75,10 @@
     SW1 = P4_2,
     SW2 = P4_3,
     SW3 = P4_4,
+    // Standardized button names
+    BUTTON1 = SW1,
+    BUTTON2 = SW2,
+    BUTTON3 = SW3,
 
     // USB bridge connected UART pins
     USBTX = P2_1,
--- a/targets/TARGET_Maxim/TARGET_MAX32630/TARGET_MAX32630FTHR/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Maxim/TARGET_MAX32630/TARGET_MAX32630FTHR/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -79,6 +79,8 @@
     SW1 = P2_3,
     SW2 = NOT_CONNECTED,
     SW3 = NOT_CONNECTED,
+    // Standardized button names
+    BUTTON1 = SW1,
 
     // USB bridge connected UART pins
     USBTX = P2_1,
--- a/targets/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U37H_401/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U37H_401/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -106,6 +106,9 @@
     // BTN Names
     BTN1 = P0_16,
     BTN2 = P0_1,
+    // Standardized button names
+    BUTTON1 = BTN1,
+    BUTTON2 = BTN2,
     
     // UART
     UART_TX = P0_19,
--- a/targets/TARGET_NXP/TARGET_LPC176X/TARGET_XBED_LPC1768/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_NXP/TARGET_LPC176X/TARGET_XBED_LPC1768/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -79,6 +79,8 @@
 	//xbed lpc1768 Pin Names
     LED5 = P2_6,
     BTN1 = P2_8,
+    // Standardized button names
+    BUTTON1 = BTN1,
     SDA = P0_27,
     SCL = P0_28,
     ISP = P2_10,
--- a/targets/TARGET_NXP/TARGET_LPC43XX/TARGET_LPC4330/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_NXP/TARGET_LPC43XX/TARGET_LPC4330/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -615,6 +615,8 @@
     LED_BLUE = LED4,
 
     BTN1 = P2_7,
+    // Standardized button names
+    BUTTON1 = BTN1,
 
     // Serial pins - UART, SPI, I2C
     //                   210E    210     200E    200
--- a/targets/TARGET_ONSEMI/TARGET_NCS36510/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_ONSEMI/TARGET_NCS36510/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -128,8 +128,14 @@
     LED_YELLOW  = GPIO6,
     LED_BLUE    = GPIO5,
     USER_BUTTON = GPIO7,  /*NEW connection on NCS36510-RF Rev 1.1 - Alias of SW1 */
+
     SW1 = GPIO7,  /*NEW connection on NCS36510-RF Rev 1.1 */
     SW2 = GPIO10,   /*NEW connection on NCS36510-RF Rev 1.1 */
+
+    // Standardized button names
+    BUTTON1 = SW1,
+    BUTTON2 = SW2,
+
     SERIAL_TX   = GPIO0,
     SERIAL_RX   = GPIO1,
     USBTX       = GPIO0,
--- a/targets/TARGET_ONSEMI/TARGET_NCS36510/device/TOOLCHAIN_IAR/NCS36510.icf	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_ONSEMI/TARGET_NCS36510/device/TOOLCHAIN_IAR/NCS36510.icf	Wed May 10 12:06:41 2017 +0100
@@ -15,7 +15,7 @@
 define block CSTACK with size = 0x200, alignment = 8 { };
 
 /* No Heap is created for C library, all memory management should be handled by the application */
- define block HEAP with alignment = 8, size = 0x4000    { }; 
+ define block HEAP with alignment = 8, size = 0x3000    { }; 
 
 /* Handle initialization */
 do not initialize { section .noinit };
--- a/targets/TARGET_RENESAS/TARGET_RZ_A1H/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_RENESAS/TARGET_RZ_A1H/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -87,6 +87,8 @@
     I2C_SDA = D14,
 
     USER_BUTTON0 = P6_0,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON0,
 
     // Not connected
     NC = (int)0xFFFFFFFF
--- a/targets/TARGET_STM/TARGET_STM32F0/TARGET_DISCO_F051R8/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F0/TARGET_DISCO_F051R8/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -186,6 +186,8 @@
     LED3        = PC_9,
     LED4        = PC_8,
     USER_BUTTON = PA_0,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F030R8/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F030R8/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -133,6 +133,8 @@
     LED3        = PA_5,
     LED4        = PA_5,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F070RB/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F070RB/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -129,6 +129,8 @@
     LED3        = PA_5,
     LED4        = PA_5,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F072RB/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F072RB/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -129,6 +129,8 @@
     LED3        = PA_5,
     LED4        = PA_5,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F091RC/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F091RC/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -130,6 +130,8 @@
     LED3        = PA_5,
     LED4        = PA_5,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F0/device/stm32f0xx_hal_def.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F0/device/stm32f0xx_hal_def.h	Wed May 10 12:06:41 2017 +0100
@@ -124,7 +124,7 @@
                                     }while (0)
 #endif /* USE_RTOS */
 
-#if  defined ( __GNUC__ )
+#if  defined ( __GNUC__ ) && !defined ( __CC_ARM )
   #ifndef __weak
     #define __weak   __attribute__((weak))
   #endif /* __weak */
--- a/targets/TARGET_STM/TARGET_STM32F1/TARGET_DISCO_F100RB/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F1/TARGET_DISCO_F100RB/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -150,6 +150,8 @@
     LED3        = PC_9,
     LED4        = PC_8,
     USER_BUTTON = PA_0,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     USBTX       = PA_2,
     USBRX       = PA_3,
     I2C_SCL     = PB_6,
--- a/targets/TARGET_STM/TARGET_STM32F1/TARGET_NUCLEO_F103RB/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F1/TARGET_NUCLEO_F103RB/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -125,6 +125,8 @@
     LED3        = PA_5,
     LED4        = PA_5,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F1/device/stm32f1xx_hal_def.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F1/device/stm32f1xx_hal_def.h	Wed May 10 12:06:41 2017 +0100
@@ -124,7 +124,7 @@
                                     }while (0)
 #endif /* USE_RTOS */
 
-#if  defined ( __GNUC__ )
+#if  defined ( __GNUC__ ) && !defined ( __CC_ARM )
   #ifndef __weak
     #define __weak   __attribute__((weak))
   #endif /* __weak */
--- a/targets/TARGET_STM/TARGET_STM32F2/TARGET_NUCLEO_F207ZG/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F2/TARGET_NUCLEO_F207ZG/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -230,6 +230,8 @@
     LED3        = PB_14,
     LED4        = LED1,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PD_8,
     SERIAL_RX   = PD_9,
     USBTX       = SERIAL_TX,
--- a/targets/TARGET_STM/TARGET_STM32F2/device/stm32f2xx_hal_def.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F2/device/stm32f2xx_hal_def.h	Wed May 10 12:06:41 2017 +0100
@@ -145,7 +145,7 @@
 	} while (__STREXW(newValue,(volatile unsigned long*) ptr));
 }
 
-#if  defined ( __GNUC__ )
+#if  defined ( __GNUC__ ) && !defined ( __CC_ARM )
   #ifndef __weak
     #define __weak   __attribute__((weak))
   #endif /* __weak */
--- a/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F302x8/TARGET_NUCLEO_F302R8/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F302x8/TARGET_NUCLEO_F302R8/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -129,6 +129,8 @@
     LED3        = PB_13,
     LED4        = PB_13,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F303x8/TARGET_NUCLEO_F303K8/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F303x8/TARGET_NUCLEO_F303K8/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -104,6 +104,8 @@
     LED3        = PB_3,
     LED4        = PB_3,
     USER_BUTTON = 0x20, // no user button on the board
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_15,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F303xC/TARGET_DISCO_F303VC/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F303xC/TARGET_DISCO_F303VC/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -189,6 +189,8 @@
     LED9        = PE_12,
     LED10       = PE_13,
     USER_BUTTON = PA_0,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F303xE/TARGET_NUCLEO_F303RE/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F303xE/TARGET_NUCLEO_F303RE/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -137,6 +137,8 @@
     LED3        = PA_5,
     LED4        = PA_5,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F303xE/TARGET_NUCLEO_F303ZE/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F303xE/TARGET_NUCLEO_F303ZE/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -204,6 +204,8 @@
     LED3        = PB_14,
     LED4        = LED1,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PD_8, // Virtual Com Port
     SERIAL_RX   = PD_9, // Virtual Com Port
     USBTX       = SERIAL_TX, // Virtual Com Port
--- a/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F334x8/TARGET_DISCO_F334C8/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F334x8/TARGET_DISCO_F334C8/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -119,6 +119,8 @@
     LED3        = PB_8,
     LED4        = PB_9,
     USER_BUTTON = PA_0,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PB_3,
     SERIAL_RX   = PB_4,
     USBTX       = PB_3,
--- a/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F334x8/TARGET_NUCLEO_F334R8/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F3/TARGET_STM32F334x8/TARGET_NUCLEO_F334R8/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -132,6 +132,8 @@
     LED3        = PA_5,
     LED4        = PA_5,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F3/device/stm32f3xx_hal_def.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F3/device/stm32f3xx_hal_def.h	Wed May 10 12:06:41 2017 +0100
@@ -144,7 +144,7 @@
 	} while (__STREXW(newValue,(volatile unsigned long*) ptr));
 }
 
-#if  defined ( __GNUC__ )
+#if  defined ( __GNUC__ ) && !defined ( __CC_ARM )
   #ifndef __weak
     #define __weak   __attribute__((weak))
   #endif /* __weak */
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F401xC/TARGET_DISCO_F401VC/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F401xC/TARGET_DISCO_F401VC/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -120,6 +120,8 @@
     LED4        = PD_15,
     LED_RED     = LED1,
     USER_BUTTON = PA_0,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F401xE/TARGET_NUCLEO_F401RE/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F401xE/TARGET_NUCLEO_F401RE/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -129,6 +129,8 @@
     LED4        = PA_5,
     LED_RED     = LED1,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F407xG/TARGET_DISCO_F407VG/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F407xG/TARGET_DISCO_F407VG/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -205,6 +205,8 @@
     LED6        = PD_15,
     LED_RED     = LED1,
     USER_BUTTON = PA_0,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,	/* USART2 */
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,	/* USART2 */
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F410xB/TARGET_NUCLEO_F410RB/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F410xB/TARGET_NUCLEO_F410RB/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -129,6 +129,8 @@
     LED4        = PA_5,
     LED_RED     = LED1,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F411xE/TARGET_ELMO_F411RE/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F411xE/TARGET_ELMO_F411RE/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -131,6 +131,8 @@
     LED3        = PB_0,
     LED4        = PB_1,
     USER_BUTTON = PB_7,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_9,
     SERIAL_RX   = PA_10,
     USBTX       = PA_9,
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F411xE/TARGET_NUCLEO_F411RE/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F411xE/TARGET_NUCLEO_F411RE/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -129,6 +129,8 @@
     LED4        = PA_5,
     LED_RED     = LED1,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F412xG/TARGET_NUCLEO_F412ZG/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F412xG/TARGET_NUCLEO_F412ZG/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -182,6 +182,8 @@
     LED4        = LED1,
     LED_RED     = LED1,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PD_8,
     SERIAL_RX   = PD_9,
     USBTX       = SERIAL_TX,
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F429xI/TARGET_DISCO_F429ZI/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F429xI/TARGET_DISCO_F429ZI/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -172,6 +172,8 @@
     LED4        = PG_14,
     LED_RED     = LED2,
     USER_BUTTON = PA_0,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_9,
     SERIAL_RX   = PA_10,
     USBTX       = PA_9,
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F429xI/TARGET_NUCLEO_F429ZI/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F429xI/TARGET_NUCLEO_F429ZI/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -196,6 +196,8 @@
     LED4        = PB_0,
     LED_RED     = LED2,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PD_8, // Virtual Com Port
     SERIAL_RX   = PD_9, // Virtual Com Port
     USBTX       = PD_8, // Virtual Com Port
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F439xI/TARGET_NUCLEO_F439ZI/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F439xI/TARGET_NUCLEO_F439ZI/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -196,6 +196,8 @@
     LED4        = PB_0,
     LED_RED     = LED2,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PD_8, // Virtual Com Port
     SERIAL_RX   = PD_9, // Virtual Com Port
     USBTX       = PD_8, // Virtual Com Port
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F446xE/TARGET_B96B_F446VE/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F446xE/TARGET_B96B_F446VE/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -161,6 +161,8 @@
     LED4        = PD_12,
     LED_RED     = LED1,
     USER_BUTTON = PD_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PC_10,
     SERIAL_RX   = PC_11,
     USBTX       = SERIAL_TX,
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F446xE/TARGET_NUCLEO_F446RE/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F446xE/TARGET_NUCLEO_F446RE/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -129,6 +129,8 @@
     LED4        = PA_5,
     LED_RED     = LED1,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F446xE/TARGET_NUCLEO_F446ZE/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F446xE/TARGET_NUCLEO_F446ZE/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -197,6 +197,8 @@
     LED4        = LED1,
     LED_RED     = LED3,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PD_8, // Virtual Com Port
     SERIAL_RX   = PD_9, // Virtual Com Port
     USBTX       = SERIAL_TX, // Virtual Com Port
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F469xI/TARGET_DISCO_F469NI/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F469xI/TARGET_DISCO_F469NI/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -246,6 +246,8 @@
     LED7        = PD_3,
     LED_RED     = LED1,
     USER_BUTTON = PA_0,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PB_10,
     SERIAL_RX   = PB_11,
     USBTX       = PB_10,
--- a/targets/TARGET_STM/TARGET_STM32F4/TARGET_UBLOX_EVK_ODIN_W2/sdk/wifi_emac/wifi_emac_api.cpp	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/TARGET_UBLOX_EVK_ODIN_W2/sdk/wifi_emac/wifi_emac_api.cpp	Wed May 10 12:06:41 2017 +0100
@@ -328,9 +328,11 @@
 emac_interface_t* wifi_emac_get_interface()
 {
     if (_intf == NULL) {
-        _intf = new emac_interface_t();
-        _intf->hw = NULL;
-        memcpy((void*)&_intf->ops, &wifi_emac_interface, sizeof(wifi_emac_interface));
+        _intf = (emac_interface_t*)malloc(sizeof(emac_interface_t));
+        if (_intf) {
+            _intf->hw = NULL;
+            memcpy((void*)&_intf->ops, &wifi_emac_interface, sizeof(wifi_emac_interface));
+        }
     }
    return _intf;
 }
--- a/targets/TARGET_STM/TARGET_STM32F4/device/stm32f4xx_hal_def.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F4/device/stm32f4xx_hal_def.h	Wed May 10 12:06:41 2017 +0100
@@ -146,7 +146,7 @@
 
 #endif /* USE_RTOS */
 
-#if  defined ( __GNUC__ )
+#if  defined ( __GNUC__ ) && !defined ( __CC_ARM )
   #ifndef __weak
     #define __weak   __attribute__((weak))
   #endif /* __weak */
--- a/targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F746xG/TARGET_DISCO_F746NG/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F746xG/TARGET_DISCO_F746NG/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -252,6 +252,8 @@
     LED3        = PI_1,
     LED4        = PI_1,
     USER_BUTTON = PI_11,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_9, // Virtual Com Port
     SERIAL_RX   = PB_7, // Virtual Com Port
     USBTX       = PA_9, // Virtual Com Port
--- a/targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F746xG/TARGET_NUCLEO_F746ZG/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F746xG/TARGET_NUCLEO_F746ZG/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -195,6 +195,8 @@
     LED3        = PB_14, // Red
     LED4        = PB_0,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PD_8, // Virtual Com Port
     SERIAL_RX   = PD_9, // Virtual Com Port
     USBTX       = PD_8, // Virtual Com Port
--- a/targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F756xG/TARGET_NUCLEO_F756ZG/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F756xG/TARGET_NUCLEO_F756ZG/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -195,6 +195,8 @@
     LED3        = PB_14, // Red
     LED4        = PB_0,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PD_8, // Virtual Com Port
     SERIAL_RX   = PD_9, // Virtual Com Port
     USBTX       = PD_8, // Virtual Com Port
--- a/targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F767xI/TARGET_NUCLEO_F767ZI/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F767xI/TARGET_NUCLEO_F767ZI/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -195,6 +195,8 @@
     LED3        = PB_14, // Red
     LED4        = PB_0,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PD_8, // Virtual Com Port
     SERIAL_RX   = PD_9, // Virtual Com Port
     USBTX       = PD_8, // Virtual Com Port
--- a/targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F769xI/TARGET_DISCO_F769NI/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F7/TARGET_STM32F769xI/TARGET_DISCO_F769NI/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -252,6 +252,8 @@
     LED3        = PA_12, // LD3 = GREEN
     LED4        = PJ_13,
     USER_BUTTON = PA_0,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_9,  // Virtual Com Port
     SERIAL_RX   = PA_10, // Virtual Com Port
     USBTX       = PA_9,  // Virtual Com Port
--- a/targets/TARGET_STM/TARGET_STM32F7/device/stm32f7xx_hal_def.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32F7/device/stm32f7xx_hal_def.h	Wed May 10 12:06:41 2017 +0100
@@ -145,7 +145,7 @@
 	} while (__STREXW(newValue,(volatile unsigned long*) ptr));
 }
 
-#if  defined ( __GNUC__ )
+#if  defined ( __GNUC__ ) && !defined ( __CC_ARM )
   #ifndef __weak
     #define __weak   __attribute__((weak))
   #endif /* __weak */
--- a/targets/TARGET_STM/TARGET_STM32L0/TARGET_DISCO_L053C8/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32L0/TARGET_DISCO_L053C8/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -116,6 +116,8 @@
     LED3        = PB_4,
     LED4        = PA_5,
     USER_BUTTON = PA_0,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_9,
     SERIAL_RX   = PA_10,
     USBTX       = PA_9,
--- a/targets/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -129,6 +129,8 @@
     LED3        = PA_5,
     LED4        = PA_5,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L073RZ/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L073RZ/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -129,6 +129,8 @@
     LED3        = PA_5,
     LED4        = PA_5,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32L0/device/stm32l0xx_hal_def.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32L0/device/stm32l0xx_hal_def.h	Wed May 10 12:06:41 2017 +0100
@@ -127,7 +127,7 @@
                                     }while (0)
 #endif /* USE_RTOS */
 
-#if  defined ( __GNUC__ )
+#if  defined ( __GNUC__ ) && !defined ( __CC_ARM )
   #ifndef __weak
     #define __weak   __attribute__((weak))
   #endif /* __weak */
--- a/targets/TARGET_STM/TARGET_STM32L1/TARGET_NUCLEO_L152RE/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32L1/TARGET_NUCLEO_L152RE/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -128,6 +128,8 @@
     LED3        = PA_5,
     LED4        = PA_5,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32L1/TARGET_NZ32_SC151/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32L1/TARGET_NZ32_SC151/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -104,6 +104,8 @@
     LED3        = PB_2,
     LED4        = PB_2,
     USER_BUTTON = PC_3,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
 
 #if (MX_DEFAULT_SERIAL_PINS == 0)
     //Use B10/B11 as default serial port
--- a/targets/TARGET_STM/TARGET_STM32L1/device/stm32l1xx_hal_def.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32L1/device/stm32l1xx_hal_def.h	Wed May 10 12:06:41 2017 +0100
@@ -124,7 +124,7 @@
                                     }while (0)
 #endif /* USE_RTOS */
 
-#if  defined ( __GNUC__ )
+#if  defined ( __GNUC__ ) && !defined ( __CC_ARM )
   #ifndef __weak
     #define __weak   __attribute__((weak))
   #endif /* __weak */
--- a/targets/TARGET_STM/TARGET_STM32L4/TARGET_STM32L476xG/TARGET_DISCO_L476VG/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32L4/TARGET_STM32L476xG/TARGET_DISCO_L476VG/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -142,6 +142,13 @@
     JOYSTICK_UP = PA_3,
     JOYSTICK_DOWN = PA_5,
     USER_BUTTON = JOYSTICK_CENTER,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
+    BUTTON2 = JOYSTICK_LEFT,
+    BUTTON3 = JOYSTICK_RIGHT,
+    BUTTON4 = JOYSTICK_UP, 
+    BUTTON5 = JOYSTICK_DOWN,
+
     SERIAL_TX = PD_5,
     SERIAL_RX = PD_6,
     USBTX = PD_5,
--- a/targets/TARGET_STM/TARGET_STM32L4/TARGET_STM32L476xG/TARGET_NUCLEO_L476RG/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32L4/TARGET_STM32L476xG/TARGET_NUCLEO_L476RG/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -129,6 +129,8 @@
     LED3        = PA_5,
     LED4        = PA_5,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32L4/TARGET_STM32L486xG/TARGET_NUCLEO_L486RG/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32L4/TARGET_STM32L486xG/TARGET_NUCLEO_L486RG/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -129,6 +129,8 @@
     LED3        = PA_5,
     LED4        = PA_5,
     USER_BUTTON = PC_13,
+    // Standardized button names
+    BUTTON1 = USER_BUTTON,
     SERIAL_TX   = PA_2,
     SERIAL_RX   = PA_3,
     USBTX       = PA_2,
--- a/targets/TARGET_STM/TARGET_STM32L4/device/stm32l4xx_hal_def.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_STM/TARGET_STM32L4/device/stm32l4xx_hal_def.h	Wed May 10 12:06:41 2017 +0100
@@ -147,7 +147,7 @@
 	} while (__STREXW(newValue,(volatile unsigned long*) ptr));
 }
 
-#if  defined ( __GNUC__ )
+#if  defined ( __GNUC__ ) && !defined ( __CC_ARM )
   #ifndef __weak
     #define __weak   __attribute__((weak))
   #endif /* __weak */
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32GG/TARGET_EFM32GG_STK3700/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32GG/TARGET_EFM32GG_STK3700/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -44,6 +44,9 @@
     SW1 = PB10,
     BTN0 = SW0,
     BTN1 = SW1,
+    // Standardized button names
+    BUTTON1 = BTN0,
+    BUTTON2 = BTN1,
 
     /* Serial */
     SERIAL_TX   = PD0,
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32HG/TARGET_EFM32HG_STK3400/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32HG/TARGET_EFM32HG_STK3400/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -44,6 +44,9 @@
     SW1 = PC10,
     BTN0 = SW0,
     BTN1 = SW1,
+    // Standardized button names
+    BUTTON1 = BTN0,
+    BUTTON2 = BTN1,
 
     /* Serial */
     SERIAL_TX   = PE10,
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32LG/TARGET_EFM32LG_STK3600/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32LG/TARGET_EFM32LG_STK3600/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -44,6 +44,9 @@
     SW1 = PB10,
     BTN0 = SW0,
     BTN1 = SW1,
+    // Standardized button names
+    BUTTON1 = BTN0,
+    BUTTON2 = BTN1,
 
     /* Serial */
     SERIAL_TX   = PD0,
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG/TARGET_EFM32PG_STK3401/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG/TARGET_EFM32PG_STK3401/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -44,6 +44,9 @@
     SW1 = PF7,
     BTN0 = SW0,
     BTN1 = SW1,
+    // Standardized button names
+    BUTTON1 = BTN0,
+    BUTTON2 = BTN1,
 
     /* Serial (just some usable pins) */
     SERIAL_TX   = PD10,
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG12/TARGET_EFM32PG12_STK3402/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG12/TARGET_EFM32PG12_STK3402/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -44,6 +44,9 @@
     SW1 = PF7,
     BTN0 = SW0,
     BTN1 = SW1,
+    // Standardized button names
+    BUTTON1 = BTN0,
+    BUTTON2 = BTN1,
 
     /* Expansion headers */
     EXP3  = PA8,
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32WG/TARGET_EFM32WG_STK3800/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32WG/TARGET_EFM32WG_STK3800/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -44,6 +44,9 @@
     SW1 = PB10,
     BTN0 = SW0,
     BTN1 = SW1,
+    // Standardized button names
+    BUTTON1 = BTN0,
+    BUTTON2 = BTN1,
 
     /* Serial */
     SERIAL_TX   = PD0,
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32ZG/TARGET_EFM32ZG_STK3200/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32ZG/TARGET_EFM32ZG_STK3200/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -44,6 +44,9 @@
     SW1 = PC9,
     BTN0 = SW0,
     BTN1 = SW1,
+    // Standardized button names
+    BUTTON1 = BTN0,
+    BUTTON2 = BTN1,
 
     /* Serial */
     SERIAL_TX   = PD7,
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/TARGET_EFR32MG1_BRD4150/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/TARGET_EFR32MG1_BRD4150/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -44,6 +44,9 @@
     SW1 = PF7,
     BTN0 = SW0,
     BTN1 = SW1,
+    // Standardized button names
+    BUTTON1 = BTN0,
+    BUTTON2 = BTN1,
 
     /* Serial (just some usable pins) */
     SERIAL_TX   = PD10,
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/TARGET_TB_SENSE_1/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -0,0 +1,68 @@
+/***************************************************************************//**
+ * @file PinNames.h
+ *******************************************************************************
+ * @section License
+ * <b>(C) Copyright 2015 Silicon Labs, http://www.silabs.com</b>
+ *******************************************************************************
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ ******************************************************************************/
+#ifndef MBED_PINNAMES_H
+#define MBED_PINNAMES_H
+
+#include "CommonPinNames.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum {
+    EFM32_STANDARD_PIN_DEFINITIONS,
+
+    /* Starter Kit says LED0 and LED1, but mbed expects 1 and 2. This way using 1 and 2 or 0 and 1 will work. */
+    LED0 = PD11,
+    LED1 = PD12,
+    LED2 = LED0,
+    LED3 = LED0,
+    LED4 = LED1,
+
+    /* Push Buttons */
+    SW0 = PD14,
+    SW1 = PD15,
+    BTN0 = SW0,
+    BTN1 = SW1,
+    // Standardized button names
+    BUTTON1 = BTN0,
+    BUTTON2 = BTN1,
+
+    /* Serial (just some usable pins) */
+    SERIAL_TX   = PD10,
+    SERIAL_RX   = PD11,
+
+    /* Board Controller UART (USB)*/
+    USBTX       = PA0,
+    USBRX       = PA1,
+
+    /* Board Controller */
+    STDIO_UART_TX = USBTX,
+    STDIO_UART_RX = USBRX
+} PinName;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/TARGET_TB_SENSE_1/device_peripherals.h	Wed May 10 12:06:41 2017 +0100
@@ -0,0 +1,57 @@
+/***************************************************************************//**
+ * @file device_peripherals.h
+ *******************************************************************************
+ * @section License
+ * <b>(C) Copyright 2015 Silicon Labs, http://www.silabs.com</b>
+ *******************************************************************************
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ ******************************************************************************/
+#ifndef MBED_DEVICE_PERIPHERALS_H
+#define MBED_DEVICE_PERIPHERALS_H
+
+/* us ticker */
+#define US_TICKER_TIMER         TIMER0
+#define US_TICKER_TIMER_CLOCK   cmuClock_TIMER0
+#define US_TICKER_TIMER_IRQ     TIMER0_IRQn
+
+/* PWM */
+#define PWM_TIMER        TIMER1
+#define PWM_TIMER_CLOCK  cmuClock_TIMER1
+#define PWM_ROUTE        TIMER_ROUTE_LOCATION_LOC1
+
+/* Crystal calibration */
+#if !defined(CMU_HFXOINIT_WSTK_DEFAULT)
+#define CMU_HFXOINIT_WSTK_DEFAULT                                               \
+{                                                                               \
+  false,        /* Low-noise mode for EFR32 */                                  \
+  false,        /* Disable auto-start on EM0/1 entry */                         \
+  false,        /* Disable auto-select on EM0/1 entry */                        \
+  false,        /* Disable auto-start and select on RAC wakeup */               \
+  _CMU_HFXOSTARTUPCTRL_CTUNE_DEFAULT,                                           \
+  0x142,        /* Steady-state CTUNE for TBSENSE boards without load caps */   \
+  _CMU_HFXOSTEADYSTATECTRL_REGISH_DEFAULT,                                      \
+  _CMU_HFXOSTARTUPCTRL_IBTRIMXOCORE_DEFAULT,                                    \
+  0x7,          /* Recommended steady-state XO core bias current */             \
+  0x6,          /* Recommended peak detection threshold */                      \
+  _CMU_HFXOTIMEOUTCTRL_SHUNTOPTTIMEOUT_DEFAULT,                                 \
+  0xA,          /* Recommended peak detection timeout  */                       \
+  _CMU_HFXOTIMEOUTCTRL_STEADYTIMEOUT_DEFAULT,                                   \
+  _CMU_HFXOTIMEOUTCTRL_STARTUPTIMEOUT_DEFAULT,                                  \
+  cmuOscMode_Crystal,                                                           \
+}
+#endif
+#endif
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/TARGET_THUNDERBOARD_SENSE/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,65 +0,0 @@
-/***************************************************************************//**
- * @file PinNames.h
- *******************************************************************************
- * @section License
- * <b>(C) Copyright 2015 Silicon Labs, http://www.silabs.com</b>
- *******************************************************************************
- *
- * SPDX-License-Identifier: Apache-2.0
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- ******************************************************************************/
-#ifndef MBED_PINNAMES_H
-#define MBED_PINNAMES_H
-
-#include "CommonPinNames.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-typedef enum {
-    EFM32_STANDARD_PIN_DEFINITIONS,
-
-    /* Starter Kit says LED0 and LED1, but mbed expects 1 and 2. This way using 1 and 2 or 0 and 1 will work. */
-    LED0 = PD11,
-    LED1 = PD12,
-    LED2 = LED0,
-    LED3 = LED0,
-    LED4 = LED1,
-
-    /* Push Buttons */
-    SW0 = PD14,
-    SW1 = PD15,
-    BTN0 = SW0,
-    BTN1 = SW1,
-
-    /* Serial (just some usable pins) */
-    SERIAL_TX   = PD10,
-    SERIAL_RX   = PD11,
-
-    /* Board Controller UART (USB)*/
-    USBTX       = PA0,
-    USBRX       = PA1,
-
-    /* Board Controller */
-    STDIO_UART_TX = USBTX,
-    STDIO_UART_RX = USBRX
-} PinName;
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/TARGET_THUNDERBOARD_SENSE/device_peripherals.h	Fri Apr 28 14:04:18 2017 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,57 +0,0 @@
-/***************************************************************************//**
- * @file device_peripherals.h
- *******************************************************************************
- * @section License
- * <b>(C) Copyright 2015 Silicon Labs, http://www.silabs.com</b>
- *******************************************************************************
- *
- * SPDX-License-Identifier: Apache-2.0
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- ******************************************************************************/
-#ifndef MBED_DEVICE_PERIPHERALS_H
-#define MBED_DEVICE_PERIPHERALS_H
-
-/* us ticker */
-#define US_TICKER_TIMER         TIMER0
-#define US_TICKER_TIMER_CLOCK   cmuClock_TIMER0
-#define US_TICKER_TIMER_IRQ     TIMER0_IRQn
-
-/* PWM */
-#define PWM_TIMER        TIMER1
-#define PWM_TIMER_CLOCK  cmuClock_TIMER1
-#define PWM_ROUTE        TIMER_ROUTE_LOCATION_LOC1
-
-/* Crystal calibration */
-#if !defined(CMU_HFXOINIT_WSTK_DEFAULT)
-#define CMU_HFXOINIT_WSTK_DEFAULT                                               \
-{                                                                               \
-  false,        /* Low-noise mode for EFR32 */                                  \
-  false,        /* Disable auto-start on EM0/1 entry */                         \
-  false,        /* Disable auto-select on EM0/1 entry */                        \
-  false,        /* Disable auto-start and select on RAC wakeup */               \
-  _CMU_HFXOSTARTUPCTRL_CTUNE_DEFAULT,                                           \
-  0x142,        /* Steady-state CTUNE for TBSENSE boards without load caps */   \
-  _CMU_HFXOSTEADYSTATECTRL_REGISH_DEFAULT,                                      \
-  _CMU_HFXOSTARTUPCTRL_IBTRIMXOCORE_DEFAULT,                                    \
-  0x7,          /* Recommended steady-state XO core bias current */             \
-  0x6,          /* Recommended peak detection threshold */                      \
-  _CMU_HFXOTIMEOUTCTRL_SHUNTOPTTIMEOUT_DEFAULT,                                 \
-  0xA,          /* Recommended peak detection timeout  */                       \
-  _CMU_HFXOTIMEOUTCTRL_STEADYTIMEOUT_DEFAULT,                                   \
-  _CMU_HFXOTIMEOUTCTRL_STARTUPTIMEOUT_DEFAULT,                                  \
-  cmuOscMode_Crystal,                                                           \
-}
-#endif
-#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG12/TARGET_TB_SENSE_12/PinNames.h	Wed May 10 12:06:41 2017 +0100
@@ -0,0 +1,84 @@
+/***************************************************************************//**
+ * @file PinNames.h
+ *******************************************************************************
+ * @section License
+ * <b>(C) Copyright 2015 Silicon Labs, http://www.silabs.com</b>
+ *******************************************************************************
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ ******************************************************************************/
+#ifndef MBED_PINNAMES_H
+#define MBED_PINNAMES_H
+
+#include "CommonPinNames.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum {
+    EFM32_STANDARD_PIN_DEFINITIONS,
+
+    /* Starter Kit says LED0 and LED1, but mbed expects 1 and 2. This way using 1 and 2 or 0 and 1 will work. */
+    LED0 = PD8,
+    LED1 = PD9,
+    LED2 = LED0,
+    LED3 = LED0,
+    LED4 = LED1,
+
+    /* Push Buttons */
+    SW0 = PD14,
+    SW1 = PD15,
+    BTN0 = SW0,
+    BTN1 = SW1,
+    // Standardized button names
+    BUTTON1 = BTN0,
+    BUTTON2 = BTN1,
+
+    /* Expansion headers */
+    EXP3  = PA8,
+    EXP4  = PC6,
+    EXP5  = PA9,
+    EXP6  = PC7,
+    EXP7  = PF3,
+    EXP8  = PC8,
+    EXP9  = PF4,
+    EXP10 = PC9,
+    EXP11 = PF5,
+    EXP12 = PA6,
+    EXP13 = PF6,
+    EXP14 = PA7,
+    EXP15 = PC11,
+    EXP16 = PC10,
+
+    /* Serial (just some usable pins) */
+    SERIAL_TX   = PA6,
+    SERIAL_RX   = PA7,
+
+    /* Board Controller UART (USB)*/
+    USBTX       = PA0,
+    USBRX       = PA1,
+
+    /* Board Controller */
+    STDIO_UART_TX = USBTX,
+    STDIO_UART_RX = USBRX
+} PinName;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG12/TARGET_TB_SENSE_12/device_peripherals.h	Wed May 10 12:06:41 2017 +0100
@@ -0,0 +1,57 @@
+/***************************************************************************//**
+ * @file device_peripherals.h
+ *******************************************************************************
+ * @section License
+ * <b>(C) Copyright 2015 Silicon Labs, http://www.silabs.com</b>
+ *******************************************************************************
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ ******************************************************************************/
+#ifndef MBED_DEVICE_PERIPHERALS_H
+#define MBED_DEVICE_PERIPHERALS_H
+
+/* us ticker */
+#define US_TICKER_TIMER         TIMER0
+#define US_TICKER_TIMER_CLOCK   cmuClock_TIMER0
+#define US_TICKER_TIMER_IRQ     TIMER0_IRQn
+
+/* PWM */
+#define PWM_TIMER        TIMER1
+#define PWM_TIMER_CLOCK  cmuClock_TIMER1
+#define PWM_ROUTE        TIMER_ROUTE_LOCATION_LOC1
+
+/* Crystal calibration */
+#if !defined(CMU_HFXOINIT_WSTK_DEFAULT)
+#define CMU_HFXOINIT_WSTK_DEFAULT                                               \
+{                                                                               \
+  false,        /* Low-noise mode for EFR32 */                                  \
+  false,        /* Disable auto-start on EM0/1 entry */                         \
+  false,        /* Disable auto-select on EM0/1 entry */                        \
+  false,        /* Disable auto-start and select on RAC wakeup */               \
+  _CMU_HFXOSTARTUPCTRL_CTUNE_DEFAULT,                                           \
+  0x142,        /* Steady-state CTUNE for TBSENSE boards without load caps */   \
+  _CMU_HFXOSTEADYSTATECTRL_REGISH_DEFAULT,                                      \
+  _CMU_HFXOSTARTUPCTRL_IBTRIMXOCORE_DEFAULT,                                    \
+  0x7,          /* Recommended steady-state XO core bias current */             \
+  0x6,          /* Recommended peak detection threshold */                      \
+  _CMU_HFXOTIMEOUTCTRL_SHUNTOPTTIMEOUT_DEFAULT,                                 \
+  0xA,          /* Recommended peak detection timeout  */                       \
+  _CMU_HFXOTIMEOUTCTRL_STEADYTIMEOUT_DEFAULT,                                   \
+  _CMU_HFXOTIMEOUTCTRL_STARTUPTIMEOUT_DEFAULT,                                  \
+  cmuOscMode_Crystal,                                                           \
+}
+#endif
+#endif
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG12/TARGET_THUNDERBOARD_SENSE_12/PinNames.h	Fri Apr 28 14:04:18 2017 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,81 +0,0 @@
-/***************************************************************************//**
- * @file PinNames.h
- *******************************************************************************
- * @section License
- * <b>(C) Copyright 2015 Silicon Labs, http://www.silabs.com</b>
- *******************************************************************************
- *
- * SPDX-License-Identifier: Apache-2.0
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- ******************************************************************************/
-#ifndef MBED_PINNAMES_H
-#define MBED_PINNAMES_H
-
-#include "CommonPinNames.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-typedef enum {
-    EFM32_STANDARD_PIN_DEFINITIONS,
-
-    /* Starter Kit says LED0 and LED1, but mbed expects 1 and 2. This way using 1 and 2 or 0 and 1 will work. */
-    LED0 = PD8,
-    LED1 = PD9,
-    LED2 = LED0,
-    LED3 = LED0,
-    LED4 = LED1,
-
-    /* Push Buttons */
-    SW0 = PD14,
-    SW1 = PD15,
-    BTN0 = SW0,
-    BTN1 = SW1,
-
-    /* Expansion headers */
-    EXP3  = PA8,
-    EXP4  = PC6,
-    EXP5  = PA9,
-    EXP6  = PC7,
-    EXP7  = PF3,
-    EXP8  = PC8,
-    EXP9  = PF4,
-    EXP10 = PC9,
-    EXP11 = PF5,
-    EXP12 = PA6,
-    EXP13 = PF6,
-    EXP14 = PA7,
-    EXP15 = PC11,
-    EXP16 = PC10,
-
-    /* Serial (just some usable pins) */
-    SERIAL_TX   = PA6,
-    SERIAL_RX   = PA7,
-
-    /* Board Controller UART (USB)*/
-    USBTX       = PA0,
-    USBRX       = PA1,
-
-    /* Board Controller */
-    STDIO_UART_TX = USBTX,
-    STDIO_UART_RX = USBRX
-} PinName;
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG12/TARGET_THUNDERBOARD_SENSE_12/device_peripherals.h	Fri Apr 28 14:04:18 2017 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,57 +0,0 @@
-/***************************************************************************//**
- * @file device_peripherals.h
- *******************************************************************************
- * @section License
- * <b>(C) Copyright 2015 Silicon Labs, http://www.silabs.com</b>
- *******************************************************************************
- *
- * SPDX-License-Identifier: Apache-2.0
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- ******************************************************************************/
-#ifndef MBED_DEVICE_PERIPHERALS_H
-#define MBED_DEVICE_PERIPHERALS_H
-
-/* us ticker */
-#define US_TICKER_TIMER         TIMER0
-#define US_TICKER_TIMER_CLOCK   cmuClock_TIMER0
-#define US_TICKER_TIMER_IRQ     TIMER0_IRQn
-
-/* PWM */
-#define PWM_TIMER        TIMER1
-#define PWM_TIMER_CLOCK  cmuClock_TIMER1
-#define PWM_ROUTE        TIMER_ROUTE_LOCATION_LOC1
-
-/* Crystal calibration */
-#if !defined(CMU_HFXOINIT_WSTK_DEFAULT)
-#define CMU_HFXOINIT_WSTK_DEFAULT                                               \
-{                                                                               \
-  false,        /* Low-noise mode for EFR32 */                                  \
-  false,        /* Disable auto-start on EM0/1 entry */                         \
-  false,        /* Disable auto-select on EM0/1 entry */                        \
-  false,        /* Disable auto-start and select on RAC wakeup */               \
-  _CMU_HFXOSTARTUPCTRL_CTUNE_DEFAULT,                                           \
-  0x142,        /* Steady-state CTUNE for TBSENSE boards without load caps */   \
-  _CMU_HFXOSTEADYSTATECTRL_REGISH_DEFAULT,                                      \
-  _CMU_HFXOSTARTUPCTRL_IBTRIMXOCORE_DEFAULT,                                    \
-  0x7,          /* Recommended steady-state XO core bias current */             \
-  0x6,          /* Recommended peak detection threshold */                      \
-  _CMU_HFXOTIMEOUTCTRL_SHUNTOPTTIMEOUT_DEFAULT,                                 \
-  0xA,          /* Recommended peak detection timeout  */                       \
-  _CMU_HFXOTIMEOUTCTRL_STEADYTIMEOUT_DEFAULT,                                   \
-  _CMU_HFXOTIMEOUTCTRL_STARTUPTIMEOUT_DEFAULT,                                  \
-  cmuOscMode_Crystal,                                                           \
-}
-#endif
-#endif
--- a/targets/TARGET_Silicon_Labs/TARGET_SL_RAIL/mbed_lib.json	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/TARGET_Silicon_Labs/TARGET_SL_RAIL/mbed_lib.json	Wed May 10 12:06:41 2017 +0100
@@ -21,10 +21,10 @@
         "pti-dframe-pin": 13
     },
     "target_overrides": {
-        "THUNDERBOARD_SENSE": {
+        "TB_SENSE_1": {
             "sl-rail.has-2p4": true
         },
-        "THUNDERBOARD_SENSE_12": {
+        "TB_SENSE_12": {
             "sl-rail.has-2p4": true
         },
         "EFR32MG1_BRD4150": {
--- a/targets/targets.json	Fri Apr 28 14:04:18 2017 +0100
+++ b/targets/targets.json	Wed May 10 12:06:41 2017 +0100
@@ -148,15 +148,7 @@
         "device_name": "LPC11U35FHI33/501"
     },
     "XADOW_M0": {
-        "inherits": ["LPCTarget"],
-        "core": "Cortex-M0",
-        "default_toolchain": "uARM",
-        "extra_labels": ["NXP", "LPC11UXX", "MCU_LPC11U35_501"],
-        "supported_toolchains": ["ARM", "uARM", "GCC_ARM", "GCC_CR", "IAR"],
-        "device_has": ["ANALOGIN", "ERROR_PATTERN", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "SERIAL", "SLEEP", "SPI", "SPISLAVE"],
-        "default_lib": "small",
-        "release_versions": ["2"],
-        "device_name": "LPC11U35FHI33/501"
+        "inherits": ["LPC11U35_501"]
     },
     "LPC11U35_Y5_MBUG": {
         "inherits": ["LPCTarget"],
@@ -347,6 +339,7 @@
             "function": "LPC4088Code.binary_hook"
         },
         "device_has": ["ANALOGIN", "ANALOGOUT", "CAN", "DEBUG_AWARENESS", "ERROR_PATTERN", "ETHERNET", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
+        "features": ["LWIP"],
         "device_name": "LPC4088FBD144"
     },
     "LPC4088": {
@@ -1292,10 +1285,10 @@
         "default_toolchain": "ARM",
         "extra_labels": ["STM", "STM32L1", "STM32L151CC"],
         "supported_toolchains": ["ARM", "GCC_ARM", "IAR"],
-        "progen": {"target": "xdot-l151cc"},
         "device_has": ["ANALOGIN", "ANALOGOUT", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "STDIO_MESSAGES"],
         "default_lib": "std",
-        "release_versions": ["5"]
+        "release_versions": ["5"],
+        "device_name": "STM32L151CC"
     },
     "MOTE_L152RC": {
         "inherits": ["Target"],
@@ -2320,7 +2313,7 @@
         },
         "public": false
     },
-    "THUNDERBOARD_SENSE": {
+    "TB_SENSE_1": {
         "inherits": ["EFR32MG1P233F256GM48"],
         "device_has": ["ANALOGIN", "ERROR_PATTERN", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_ASYNCH", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "STDIO_MESSAGES"],
         "forced_reset_timeout": 5,
@@ -2417,7 +2410,7 @@
         "release_versions": ["2", "5"],
         "public": false
     },
-	"THUNDERBOARD_SENSE_12": {
+	"TB_SENSE_12": {
         "inherits": ["EFR32MG12P332F1024GL125"],
         "device_has": ["ANALOGIN", "ERROR_PATTERN", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_ASYNCH", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "STDIO_MESSAGES"],
         "forced_reset_timeout": 5,