mbed library sources

Fork of mbed-src by mbed official

Revision:
613:bc40b8d2aec4
Parent:
612:fba1c7dc54c0
Child:
614:9d86c2ae5de0
--- a/targets/hal/TARGET_Atmel/TARGET_SAM21/TARGET_SAMD21J18A/SAMD21_XPLAINED_PRO/samd21_xplained_pro.h	Tue Aug 18 15:00:09 2015 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,662 +0,0 @@
-#ifndef SAMD21_XPLAINED_PRO_H_INCLUDED
-#define SAMD21_XPLAINED_PRO_H_INCLUDED
-
-#include <conf_board.h>
-#include <compiler.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
- * \ingroup group_common_boards
- * \defgroup samd21_xplained_pro_group SAM D21 Xplained Pro board
- *
- * @{
- */
-
-void system_board_init(void);
-
-/**
- * \defgroup samd21_xplained_pro_features_group Features
- *
- * Symbols that describe features and capabilities of the board.
- *
- * @{
- */
-
-/** Name string macro */
-#define BOARD_NAME                "SAMD21_XPLAINED_PRO"
-
-/** \name Resonator definitions
- *  @{ */
-#define BOARD_FREQ_SLCK_XTAL      (32768U)
-#define BOARD_FREQ_SLCK_BYPASS    (32768U)
-#define BOARD_FREQ_MAINCK_XTAL    0 /* Not Mounted */
-#define BOARD_FREQ_MAINCK_BYPASS  0 /* Not Mounted */
-#define BOARD_MCK                 CHIP_FREQ_CPU_MAX
-#define BOARD_OSC_STARTUP_US      15625
-/** @} */
-
-/** \name LED0 definitions
- *  @{ */
-#define LED0_PIN                  PIN_PB30
-#define LED0_ACTIVE               false
-#define LED0_INACTIVE             !LED0_ACTIVE
-/** @} */
-
-/** \name SW0 definitions
- *  @{ */
-#define SW0_PIN                   PIN_PA15
-#define SW0_ACTIVE                false
-#define SW0_INACTIVE              !SW0_ACTIVE
-#define SW0_EIC_PIN               PIN_PA15A_EIC_EXTINT15
-#define SW0_EIC_MUX               MUX_PA15A_EIC_EXTINT15
-#define SW0_EIC_PINMUX            PINMUX_PA15A_EIC_EXTINT15
-#define SW0_EIC_LINE              15
-/** @} */
-
-/**
- * \name LED #0 definitions
- *
- * Wrapper macros for LED0, to ensure common naming across all Xplained Pro
- * boards.
- *
- *  @{ */
-#define LED_0_NAME                "LED0 (yellow)"
-#define LED_0_PIN                 LED0_PIN
-#define LED_0_ACTIVE              LED0_ACTIVE
-#define LED_0_INACTIVE            LED0_INACTIVE
-#define LED0_GPIO                 LED0_PIN
-#define LED0                      LED0_PIN
-
-#define LED_0_PWM4CTRL_MODULE     TCC0
-#define LED_0_PWM4CTRL_CHANNEL    0
-#define LED_0_PWM4CTRL_OUTPUT     0
-#define LED_0_PWM4CTRL_PIN        PIN_PB30E_TCC0_WO0
-#define LED_0_PWM4CTRL_MUX        MUX_PB30E_TCC0_WO0
-#define LED_0_PWM4CTRL_PINMUX     PINMUX_PB30E_TCC0_WO0
-/** @} */
-
-/** Number of on-board LEDs */
-#define LED_COUNT                 1
-
-/**
- * \name Serialflash definitions
- *
- * On board Serialflash definitions.
- *
- *  @{ */
-#define SERIALFLASH_SPI_MODULE      SERCOM5
-#define SERIALFLASH_SPI_MUX_SETTING SPI_SIGNAL_MUX_SETTING_E
-#define SERIALFLASH_SPI_PINMUX_PAD0 PINMUX_PB16C_SERCOM5_PAD0
-#define SERIALFLASH_SPI_PINMUX_PAD1 PINMUX_UNUSED
-#define SERIALFLASH_SPI_PINMUX_PAD2 PINMUX_PB22D_SERCOM5_PAD2
-#define SERIALFLASH_SPI_PINMUX_PAD3 PINMUX_PB23D_SERCOM5_PAD3
-#define SERIALFLASH_SPI_CS PIN_PA13
-/** @} */
-
-/**
- * \name Button #0 definitions
- *
- * Wrapper macros for SW0, to ensure common naming across all Xplained Pro
- * boards.
- *
- *  @{ */
-#define BUTTON_0_NAME             "SW0"
-#define BUTTON_0_PIN              SW0_PIN
-#define BUTTON_0_ACTIVE           SW0_ACTIVE
-#define BUTTON_0_INACTIVE         SW0_INACTIVE
-#define BUTTON_0_EIC_PIN          SW0_EIC_PIN
-#define BUTTON_0_EIC_MUX          SW0_EIC_MUX
-#define BUTTON_0_EIC_PINMUX       SW0_EIC_PINMUX
-#define BUTTON_0_EIC_LINE         SW0_EIC_LINE
-/** @} */
-
-/** Number of on-board buttons */
-#define BUTTON_COUNT 1
-
-/** \name Extension header #1 pin definitions
- *  @{
- */
-#define EXT1_PIN_3                PIN_PB00
-#define EXT1_PIN_4                PIN_PB01
-#define EXT1_PIN_5                PIN_PB06
-#define EXT1_PIN_6                PIN_PB07
-#define EXT1_PIN_7                PIN_PB02
-#define EXT1_PIN_8                PIN_PB03
-#define EXT1_PIN_9                PIN_PB04
-#define EXT1_PIN_10               PIN_PB05
-#define EXT1_PIN_11               PIN_PA08
-#define EXT1_PIN_12               PIN_PA09
-#define EXT1_PIN_13               PIN_PB09
-#define EXT1_PIN_14               PIN_PB08
-#define EXT1_PIN_15               PIN_PA05
-#define EXT1_PIN_16               PIN_PA06
-#define EXT1_PIN_17               PIN_PA04
-#define EXT1_PIN_18               PIN_PA07
-/** @} */
-
-/** \name Extension header #1 pin definitions by function
- *  @{
- */
-#define EXT1_PIN_ADC_0            EXT1_PIN_3
-#define EXT1_PIN_ADC_1            EXT1_PIN_4
-#define EXT1_PIN_GPIO_0           EXT1_PIN_5
-#define EXT1_PIN_GPIO_1           EXT1_PIN_6
-#define EXT1_PIN_PWM_0            EXT1_PIN_7
-#define EXT1_PIN_PWM_1            EXT1_PIN_8
-#define EXT1_PIN_IRQ              EXT1_PIN_9
-#define EXT1_PIN_I2C_SDA          EXT1_PIN_11
-#define EXT1_PIN_I2C_SCL          EXT1_PIN_12
-#define EXT1_PIN_UART_RX          EXT1_PIN_13
-#define EXT1_PIN_UART_TX          EXT1_PIN_14
-#define EXT1_PIN_SPI_SS_1         EXT1_PIN_10
-#define EXT1_PIN_SPI_SS_0         EXT1_PIN_15
-#define EXT1_PIN_SPI_MOSI         EXT1_PIN_16
-#define EXT1_PIN_SPI_MISO         EXT1_PIN_17
-#define EXT1_PIN_SPI_SCK          EXT1_PIN_18
-/** @} */
-
-/** \name Extension header #1 ADC definitions
- *  @{
- */
-#define EXT1_ADC_MODULE           ADC
-#define EXT1_ADC_0_CHANNEL        8
-#define EXT1_ADC_0_PIN            PIN_PB00B_ADC_AIN8
-#define EXT1_ADC_0_MUX            MUX_PB00B_ADC_AIN8
-#define EXT1_ADC_0_PINMUX         PINMUX_PB00B_ADC_AIN8
-#define EXT1_ADC_1_CHANNEL        9
-#define EXT1_ADC_1_PIN            PIN_PB01B_ADC_AIN9
-#define EXT1_ADC_1_MUX            MUX_PB01B_ADC_AIN9
-#define EXT1_ADC_1_PINMUX         PINMUX_PB01B_ADC_AIN9
-/** @} */
-
-/** \name Extension header #1 PWM definitions
- *  @{
- */
-#define EXT1_PWM_MODULE           TC6
-#define EXT1_PWM_0_CHANNEL        0
-#define EXT1_PWM_0_PIN            PIN_PB02E_TC6_WO0
-#define EXT1_PWM_0_MUX            MUX_PB02E_TC6_WO0
-#define EXT1_PWM_0_PINMUX         PINMUX_PB02E_TC6_WO0
-#define EXT1_PWM_1_CHANNEL        1
-#define EXT1_PWM_1_PIN            PIN_PB03E_TC6_WO1
-#define EXT1_PWM_1_MUX            MUX_PB03E_TC6_WO1
-#define EXT1_PWM_1_PINMUX         PINMUX_PB03E_TC6_WO1
-/** @} */
-
-/** \name Extension header #1 IRQ/External interrupt definitions
- *  @{
- */
-#define EXT1_IRQ_MODULE           EIC
-#define EXT1_IRQ_INPUT            4
-#define EXT1_IRQ_PIN              PIN_PB04A_EIC_EXTINT4
-#define EXT1_IRQ_MUX              MUX_PB04A_EIC_EXTINT4
-#define EXT1_IRQ_PINMUX           PINMUX_PB04A_EIC_EXTINT4
-/** @} */
-
-/** \name Extension header #1 I2C definitions
- *  @{
- */
-#define EXT1_I2C_MODULE              SERCOM2
-#define EXT1_I2C_SERCOM_PINMUX_PAD0  PINMUX_PA08D_SERCOM2_PAD0
-#define EXT1_I2C_SERCOM_PINMUX_PAD1  PINMUX_PA09D_SERCOM2_PAD1
-#define EXT1_I2C_SERCOM_DMAC_ID_TX   SERCOM2_DMAC_ID_TX
-#define EXT1_I2C_SERCOM_DMAC_ID_RX   SERCOM2_DMAC_ID_RX
-/** @} */
-
-/** \name Extension header #1 UART definitions
- *  @{
- */
-#define EXT1_UART_MODULE              SERCOM4
-#define EXT1_UART_SERCOM_MUX_SETTING  USART_RX_1_TX_0_XCK_1
-#define EXT1_UART_SERCOM_PINMUX_PAD0  PINMUX_PB08D_SERCOM4_PAD0
-#define EXT1_UART_SERCOM_PINMUX_PAD1  PINMUX_PB09D_SERCOM4_PAD1
-#define EXT1_UART_SERCOM_PINMUX_PAD2  PINMUX_UNUSED
-#define EXT1_UART_SERCOM_PINMUX_PAD3  PINMUX_UNUSED
-#define EXT1_UART_SERCOM_DMAC_ID_TX   SERCOM4_DMAC_ID_TX
-#define EXT1_UART_SERCOM_DMAC_ID_RX   SERCOM4_DMAC_ID_RX
-/** @} */
-
-/** \name Extension header #1 SPI definitions
- *  @{
- */
-#define EXT1_SPI_MODULE              SERCOM0
-#define EXT1_SPI_SERCOM_MUX_SETTING  SPI_SIGNAL_MUX_SETTING_E
-#define EXT1_SPI_SERCOM_PINMUX_PAD0  PINMUX_PA04D_SERCOM0_PAD0
-#define EXT1_SPI_SERCOM_PINMUX_PAD1  PINMUX_PA05D_SERCOM0_PAD1
-#define EXT1_SPI_SERCOM_PINMUX_PAD2  PINMUX_PA06D_SERCOM0_PAD2
-#define EXT1_SPI_SERCOM_PINMUX_PAD3  PINMUX_PA07D_SERCOM0_PAD3
-#define EXT1_SPI_SERCOM_DMAC_ID_TX   SERCOM0_DMAC_ID_TX
-#define EXT1_SPI_SERCOM_DMAC_ID_RX   SERCOM0_DMAC_ID_RX
-/** @} */
-
-/** \name Extension header #2 pin definitions
- *  @{
- */
-#define EXT2_PIN_3                PIN_PA10
-#define EXT2_PIN_4                PIN_PA11
-#define EXT2_PIN_5                PIN_PA20
-#define EXT2_PIN_6                PIN_PA21
-#define EXT2_PIN_7                PIN_PB12
-#define EXT2_PIN_8                PIN_PB13
-#define EXT2_PIN_9                PIN_PB14
-#define EXT2_PIN_10               PIN_PB15
-#define EXT2_PIN_11               PIN_PA08
-#define EXT2_PIN_12               PIN_PA09
-#define EXT2_PIN_13               PIN_PB11
-#define EXT2_PIN_14               PIN_PB10
-#define EXT2_PIN_15               PIN_PA17
-#define EXT2_PIN_16               PIN_PA18
-#define EXT2_PIN_17               PIN_PA16
-#define EXT2_PIN_18               PIN_PA19
-/** @} */
-
-/** \name Extension header #2 pin definitions by function
- *  @{
- */
-#define EXT2_PIN_ADC_0            EXT2_PIN_3
-#define EXT2_PIN_ADC_1            EXT2_PIN_4
-#define EXT2_PIN_GPIO_0           EXT2_PIN_5
-#define EXT2_PIN_GPIO_1           EXT2_PIN_6
-#define EXT2_PIN_PWM_0            EXT2_PIN_7
-#define EXT2_PIN_PWM_1            EXT2_PIN_8
-#define EXT2_PIN_IRQ              EXT2_PIN_9
-#define EXT2_PIN_I2C_SDA          EXT2_PIN_11
-#define EXT2_PIN_I2C_SCL          EXT2_PIN_12
-#define EXT2_PIN_UART_RX          EXT2_PIN_13
-#define EXT2_PIN_UART_TX          EXT2_PIN_14
-#define EXT2_PIN_SPI_SS_1         EXT2_PIN_10
-#define EXT2_PIN_SPI_SS_0         EXT2_PIN_15
-#define EXT2_PIN_SPI_MOSI         EXT2_PIN_16
-#define EXT2_PIN_SPI_MISO         EXT2_PIN_17
-#define EXT2_PIN_SPI_SCK          EXT2_PIN_18
-/** @} */
-
-/** \name Extension header #2 ADC definitions
- *  @{
- */
-#define EXT2_ADC_MODULE           ADC
-#define EXT2_ADC_0_CHANNEL        18
-#define EXT2_ADC_0_PIN            PIN_PA10B_ADC_AIN18
-#define EXT2_ADC_0_MUX            MUX_PA10B_ADC_AIN18
-#define EXT2_ADC_0_PINMUX         PINMUX_PA10B_ADC_AIN18
-#define EXT2_ADC_1_CHANNEL        19
-#define EXT2_ADC_1_PIN            PIN_PA11B_ADC_AIN19
-#define EXT2_ADC_1_MUX            MUX_PA11B_ADC_AIN19
-#define EXT2_ADC_1_PINMUX         PINMUX_PA11B_ADC_AIN19
-/** @} */
-
-/** \name Extension header #2 PWM definitions
- *  @{
- */
-#define EXT2_PWM_MODULE           TC4
-#define EXT2_PWM_0_CHANNEL        0
-#define EXT2_PWM_0_PIN            PIN_PB12E_TC4_WO0
-#define EXT2_PWM_0_MUX            MUX_PB12E_TC4_WO0
-#define EXT2_PWM_0_PINMUX         PINMUX_PB12E_TC4_WO0
-#define EXT2_PWM_1_CHANNEL        1
-#define EXT2_PWM_1_PIN            PIN_PB13E_TC4_WO1
-#define EXT2_PWM_1_MUX            MUX_PB13E_TC4_WO1
-#define EXT2_PWM_1_PINMUX         PINMUX_PB13E_TC4_WO1
-/** @} */
-
-/** \name Extension header #2 PWM for Control definitions
- *  @{
- */
-#define EXT2_PWM4CTRL_MODULE      TCC0
-#define EXT2_PWM4CTRL_0_CHANNEL   2
-#define EXT2_PWM4CTRL_0_OUTPUT    6
-#define EXT2_PWM4CTRL_0_PIN       PIN_PB12F_TCC0_WO6
-#define EXT2_PWM4CTRL_0_MUX       MUX_PB12F_TCC0_WO6
-#define EXT2_PWM4CTRL_0_PINMUX    PINMUX_PB12F_TCC0_WO6
-#define EXT2_PWM4CTRL_1_CHANNEL   3
-#define EXT2_PWM4CTRL_1_OUTPUT    7
-#define EXT2_PWM4CTRL_1_PIN       PIN_PB13F_TCC0_WO7
-#define EXT2_PWM4CTRL_1_MUX       MUX_PB13F_TCC0_WO7
-#define EXT2_PWM4CTRL_1_PINMUX    PINMUX_PB13F_TCC0_WO7
-/** @} */
-
-/** \name Extension header #2 IRQ/External interrupt definitions
- *  @{
- */
-#define EXT2_IRQ_MODULE           EIC
-#define EXT2_IRQ_INPUT            14
-#define EXT2_IRQ_PIN              PIN_PB14A_EIC_EXTINT14
-#define EXT2_IRQ_MUX              MUX_PB14A_EIC_EXTINT14
-#define EXT2_IRQ_PINMUX           PINMUX_PB14A_EIC_EXTINT14
-/** @} */
-
-/** \name Extension header #2 I2C definitions
-*  @{
-*/
-#define EXT2_I2C_MODULE              SERCOM2
-#define EXT2_I2C_SERCOM_PINMUX_PAD0  PINMUX_PA08D_SERCOM2_PAD0
-#define EXT2_I2C_SERCOM_PINMUX_PAD1  PINMUX_PA09D_SERCOM2_PAD1
-#define EXT2_I2C_SERCOM_DMAC_ID_TX   SERCOM2_DMAC_ID_TX
-#define EXT2_I2C_SERCOM_DMAC_ID_RX   SERCOM2_DMAC_ID_RX
-/** @} */
-
-/** \name Extension header #2 UART definitions
- *  @{
- */
-#define EXT2_UART_MODULE              SERCOM4
-#define EXT2_UART_SERCOM_MUX_SETTING  USART_RX_1_TX_0_XCK_1
-#define EXT2_UART_SERCOM_PINMUX_PAD0  PINMUX_PB12C_SERCOM4_PAD0
-#define EXT2_UART_SERCOM_PINMUX_PAD1  PINMUX_PB13C_SERCOM4_PAD1
-#define EXT2_UART_SERCOM_PINMUX_PAD2  PINMUX_UNUSED
-#define EXT2_UART_SERCOM_PINMUX_PAD3  PINMUX_UNUSED
-#define EXT2_UART_SERCOM_DMAC_ID_TX   SERCOM4_DMAC_ID_TX
-#define EXT2_UART_SERCOM_DMAC_ID_RX   SERCOM4_DMAC_ID_RX
-/** @} */
-
-/** \name Extension header #2 SPI definitions
- *  @{
- */
-#define EXT2_SPI_MODULE              SERCOM1
-#define EXT2_SPI_SERCOM_MUX_SETTING  SPI_SIGNAL_MUX_SETTING_E
-#define EXT2_SPI_SERCOM_PINMUX_PAD0  PINMUX_PA16C_SERCOM1_PAD0
-#define EXT2_SPI_SERCOM_PINMUX_PAD1  PINMUX_PA17C_SERCOM1_PAD1
-#define EXT2_SPI_SERCOM_PINMUX_PAD2  PINMUX_PA18C_SERCOM1_PAD2
-#define EXT2_SPI_SERCOM_PINMUX_PAD3  PINMUX_PA19C_SERCOM1_PAD3
-#define EXT2_SPI_SERCOM_DMAC_ID_TX   SERCOM1_DMAC_ID_TX
-#define EXT2_SPI_SERCOM_DMAC_ID_RX   SERCOM1_DMAC_ID_RX
-/** @} */
-
-/** \name Extension header #3 pin definitions
- *  @{
- */
-#define EXT3_PIN_3                PIN_PA02
-#define EXT3_PIN_4                PIN_PA03
-#define EXT3_PIN_5                PIN_PB30
-#define EXT3_PIN_6                PIN_PA15
-#define EXT3_PIN_7                PIN_PA12
-#define EXT3_PIN_8                PIN_PA13
-#define EXT3_PIN_9                PIN_PA28
-#define EXT3_PIN_10               PIN_PA27
-#define EXT3_PIN_11               PIN_PA08
-#define EXT3_PIN_12               PIN_PA09
-#define EXT3_PIN_13               PIN_PB11
-#define EXT3_PIN_14               PIN_PB10
-#define EXT3_PIN_15               PIN_PB17
-#define EXT3_PIN_16               PIN_PB22
-#define EXT3_PIN_17               PIN_PB16
-#define EXT3_PIN_18               PIN_PB23
-/** @} */
-
-/** \name Extension header #3 pin definitions by function
- *  @{
- */
-#define EXT3_PIN_ADC_0            EXT3_PIN_3
-#define EXT3_PIN_ADC_1            EXT3_PIN_4
-#define EXT3_PIN_GPIO_0           EXT3_PIN_5
-#define EXT3_PIN_GPIO_1           EXT3_PIN_6
-#define EXT3_PIN_PWM_0            EXT3_PIN_7
-#define EXT3_PIN_PWM_1            EXT3_PIN_8
-#define EXT3_PIN_IRQ              EXT3_PIN_9
-#define EXT3_PIN_I2C_SDA          EXT3_PIN_11
-#define EXT3_PIN_I2C_SCL          EXT3_PIN_12
-#define EXT3_PIN_UART_RX          EXT3_PIN_13
-#define EXT3_PIN_UART_TX          EXT3_PIN_14
-#define EXT3_PIN_SPI_SS_1         EXT3_PIN_10
-#define EXT3_PIN_SPI_SS_0         EXT3_PIN_15
-#define EXT3_PIN_SPI_MOSI         EXT3_PIN_16
-#define EXT3_PIN_SPI_MISO         EXT3_PIN_17
-#define EXT3_PIN_SPI_SCK          EXT3_PIN_18
-/** @} */
-
-/** \name Extension header #3 ADC definitions
- *  @{
- */
-#define EXT3_ADC_MODULE           ADC
-#define EXT3_ADC_0_CHANNEL        0
-#define EXT3_ADC_0_PIN            PIN_PA02B_ADC_AIN0
-#define EXT3_ADC_0_MUX            MUX_PA02B_ADC_AIN0
-#define EXT3_ADC_0_PINMUX         PINMUX_PA02B_ADC_AIN0
-#define EXT3_ADC_1_CHANNEL        1
-#define EXT3_ADC_1_PIN            PIN_PA03B_ADC_AIN1
-#define EXT3_ADC_1_MUX            MUX_PA03B_ADC_AIN1
-#define EXT3_ADC_1_PINMUX         PINMUX_PA03B_ADC_AIN1
-/** @} */
-
-/** \name Extension header #3 PWM for Control definitions
- *  @{
- */
-#define EXT3_PWM4CTRL_MODULE      TCC2
-#define EXT3_PWM4CTRL_0_CHANNEL   0
-#define EXT3_PWM4CTRL_0_OUTPUT    0
-#define EXT3_PWM4CTRL_0_PIN       PIN_PA12E_TCC2_WO0
-#define EXT3_PWM4CTRL_0_MUX       MUX_PA12E_TCC2_WO0
-#define EXT3_PWM4CTRL_0_PINMUX    PINMUX_PA12E_TCC2_WO0
-#define EXT3_PWM4CTRL_1_CHANNEL   1
-#define EXT3_PWM4CTRL_1_OUTPUT    1
-#define EXT3_PWM4CTRL_1_PIN       PIN_PA13E_TCC2_WO1
-#define EXT3_PWM4CTRL_1_MUX       MUX_PA13E_TCC2_WO1
-#define EXT3_PWM4CTRL_1_PINMUX    PINMUX_PA13E_TCC2_WO1
-/** @} */
-
-/** \name Extension header #3 IRQ/External interrupt definitions
- *  @{
- */
-#define EXT3_IRQ_MODULE           EIC
-#define EXT3_IRQ_INPUT            8
-#define EXT3_IRQ_PIN              PIN_PA28A_EIC_EXTINT8
-#define EXT3_IRQ_MUX              MUX_PA28A_EIC_EXTINT8
-#define EXT3_IRQ_PINMUX           PINMUX_PA28A_EIC_EXTINT8
-/** @} */
-
-/** \name Extension header #3 I2C definitions
- *  @{
- */
-#define EXT3_I2C_MODULE              SERCOM2
-#define EXT3_I2C_SERCOM_PINMUX_PAD0  PINMUX_PA08D_SERCOM2_PAD0
-#define EXT3_I2C_SERCOM_PINMUX_PAD1  PINMUX_PA09D_SERCOM2_PAD1
-#define EXT3_I2C_SERCOM_DMAC_ID_TX   SERCOM2_DMAC_ID_TX
-#define EXT3_I2C_SERCOM_DMAC_ID_RX   SERCOM2_DMAC_ID_RX
-/** @} */
-
-/** \name Extension header #3 UART definitions
- *  @{
- */
-#define EXT3_UART_MODULE              SERCOM4
-#define EXT3_UART_SERCOM_MUX_SETTING  USART_RX_3_TX_2_XCK_3
-#define EXT3_UART_SERCOM_PINMUX_PAD0  PINMUX_UNUSED
-#define EXT3_UART_SERCOM_PINMUX_PAD1  PINMUX_UNUSED
-#define EXT3_UART_SERCOM_PINMUX_PAD2  PINMUX_PB10D_SERCOM4_PAD2
-#define EXT3_UART_SERCOM_PINMUX_PAD3  PINMUX_PB11D_SERCOM4_PAD3
-#define EXT3_UART_SERCOM_DMAC_ID_TX   SERCOM4_DMAC_ID_TX
-#define EXT3_UART_SERCOM_DMAC_ID_RX   SERCOM4_DMAC_ID_RX
-/** @} */
-
-/** \name Extension header #3 SPI definitions
- *  @{
- */
-#define EXT3_SPI_MODULE              SERCOM5
-#define EXT3_SPI_SERCOM_MUX_SETTING  SPI_SIGNAL_MUX_SETTING_E
-#define EXT3_SPI_SERCOM_PINMUX_PAD0  PINMUX_PB16C_SERCOM5_PAD0
-#define EXT3_SPI_SERCOM_PINMUX_PAD1  PINMUX_PB17C_SERCOM5_PAD1
-#define EXT3_SPI_SERCOM_PINMUX_PAD2  PINMUX_PB22D_SERCOM5_PAD2
-#define EXT3_SPI_SERCOM_PINMUX_PAD3  PINMUX_PB23D_SERCOM5_PAD3
-#define EXT3_SPI_SERCOM_DMAC_ID_TX   SERCOM5_DMAC_ID_TX
-#define EXT3_SPI_SERCOM_DMAC_ID_RX   SERCOM5_DMAC_ID_RX
-/** @} */
-
-/** \name Extension header #3 Dataflash
- *  @{
- */
-#define EXT3_DATAFLASH_SPI_MODULE      EXT3_SPI_MODULE
-#define EXT3_DATAFLASH_SPI_MUX_SETTING EXT3_SPI_SERCOM_MUX_SETTING
-#define EXT3_DATAFLASH_SPI_PINMUX_PAD0 EXT3_SPI_SERCOM_PINMUX_PAD0
-#define EXT3_DATAFLASH_SPI_PINMUX_PAD1 EXT3_SPI_SERCOM_PINMUX_PAD1
-#define EXT3_DATAFLASH_SPI_PINMUX_PAD2 EXT3_SPI_SERCOM_PINMUX_PAD2
-#define EXT3_DATAFLASH_SPI_PINMUX_PAD3 EXT3_SPI_SERCOM_PINMUX_PAD3
-/** @} */
-
-/** \name USB definitions
- * @{
- */
-#define USB_ID
-#define USB_TARGET_DP_PIN            PIN_PA25G_USB_DP
-#define USB_TARGET_DP_MUX            MUX_PA25G_USB_DP
-#define USB_TARGET_DP_PINMUX         PINMUX_PA25G_USB_DP
-#define USB_TARGET_DM_PIN            PIN_PA24G_USB_DM
-#define USB_TARGET_DM_MUX            MUX_PA24G_USB_DM
-#define USB_TARGET_DM_PINMUX         PINMUX_PA24G_USB_DM
-#define USB_VBUS_PIN                 PIN_PA14
-#define USB_VBUS_EIC_LINE            14
-#define USB_VBUS_EIC_MUX             MUX_PA14A_EIC_EXTINT14
-#define USB_VBUS_EIC_PINMUX          PINMUX_PA14A_EIC_EXTINT14
-#define USB_ID_PIN                   PIN_PA03
-#define USB_ID_EIC_LINE              3
-#define USB_ID_EIC_MUX               MUX_PA03A_EIC_EXTINT3
-#define USB_ID_EIC_PINMUX            PINMUX_PA03A_EIC_EXTINT3
-/** @} */
-
-/** \name Embedded debugger GPIO interface definitions
- * @{
- */
-#define EDBG_GPIO0_PIN            PIN_PA27
-#define EDBG_GPIO1_PIN            PIN_PA28
-#define EDBG_GPIO2_PIN            PIN_PA20
-#define EDBG_GPIO3_PIN            PIN_PA21
-/** @} */
-
-/** \name Embedded debugger USART interface definitions
- * @{
- */
-#define EDBG_UART_MODULE          -1 /* Not available on this board */
-#define EDBG_UART_RX_PIN          -1 /* Not available on this board */
-#define EDBG_UART_RX_MUX          -1 /* Not available on this board */
-#define EDBG_UART_RX_PINMUX       -1 /* Not available on this board */
-#define EDBG_UART_RX_SERCOM_PAD   -1 /* Not available on this board */
-#define EDBG_UART_TX_PIN          -1 /* Not available on this board */
-#define EDBG_UART_TX_MUX          -1 /* Not available on this board */
-#define EDBG_UART_TX_PINMUX       -1 /* Not available on this board */
-#define EDBG_UART_TX_SERCOM_PAD   -1 /* Not available on this board */
-/** @} */
-
-/** \name Embedded debugger I2C interface definitions
- * @{
- */
-#define EDBG_I2C_MODULE              SERCOM2
-#define EDBG_I2C_SERCOM_PINMUX_PAD0  PINMUX_PA08D_SERCOM2_PAD0
-#define EDBG_I2C_SERCOM_PINMUX_PAD1  PINMUX_PA09D_SERCOM2_PAD1
-#define EDBG_I2C_SERCOM_DMAC_ID_TX   SERCOM2_DMAC_ID_TX
-#define EDBG_I2C_SERCOM_DMAC_ID_RX   SERCOM2_DMAC_ID_RX
-/** @} */
-
-/** \name Embedded debugger SPI interface definitions
- * @{
- */
-#define EDBG_SPI_MODULE              SERCOM5
-#define EDBG_SPI_SERCOM_MUX_SETTING  SPI_SIGNAL_MUX_SETTING_E
-#define EDBG_SPI_SERCOM_PINMUX_PAD0  PINMUX_PB16C_SERCOM5_PAD0
-#define EDBG_SPI_SERCOM_PINMUX_PAD1  PINMUX_PB31D_SERCOM5_PAD1
-#define EDBG_SPI_SERCOM_PINMUX_PAD2  PINMUX_PB22D_SERCOM5_PAD2
-#define EDBG_SPI_SERCOM_PINMUX_PAD3  PINMUX_PB23D_SERCOM5_PAD3
-#define EDBG_SPI_SERCOM_DMAC_ID_TX   SERCOM5_DMAC_ID_TX
-#define EDBG_SPI_SERCOM_DMAC_ID_RX   SERCOM5_DMAC_ID_RX
-/** @} */
-
-/** \name Embedded debugger CDC Gateway USART interface definitions
- * @{
- */
-#define EDBG_CDC_MODULE              SERCOM3
-#define EDBG_CDC_SERCOM_MUX_SETTING  USART_RX_1_TX_0_XCK_1
-#define EDBG_CDC_SERCOM_PINMUX_PAD0  PINMUX_PA22C_SERCOM3_PAD0
-#define EDBG_CDC_SERCOM_PINMUX_PAD1  PINMUX_PA23C_SERCOM3_PAD1
-#define EDBG_CDC_SERCOM_PINMUX_PAD2  PINMUX_UNUSED
-#define EDBG_CDC_SERCOM_PINMUX_PAD3  PINMUX_UNUSED
-#define EDBG_CDC_SERCOM_DMAC_ID_TX   SERCOM3_DMAC_ID_TX
-#define EDBG_CDC_SERCOM_DMAC_ID_RX   SERCOM3_DMAC_ID_RX
-/** @} */
-
-/** @} */
-
-/** \name 802.15.4 TRX Interface definitions
- * @{
- */
-
-#define AT86RFX_SPI                  EXT1_SPI_MODULE
-#define AT86RFX_RST_PIN              EXT1_PIN_7
-#define AT86RFX_MISC_PIN             EXT1_PIN_12
-#define AT86RFX_IRQ_PIN              EXT1_PIN_9
-#define AT86RFX_SLP_PIN              EXT1_PIN_10
-#define AT86RFX_SPI_CS               EXT1_PIN_15
-#define AT86RFX_SPI_MOSI             EXT1_PIN_16
-#define AT86RFX_SPI_MISO             EXT1_PIN_17
-#define AT86RFX_SPI_SCK              EXT1_PIN_18
-#define AT86RFX_CSD                  EXT1_PIN_5
-#define AT86RFX_CPS                  EXT1_PIN_8
-
-#define AT86RFX_SPI_SERCOM_MUX_SETTING   EXT1_SPI_SERCOM_MUX_SETTING
-#define AT86RFX_SPI_SERCOM_PINMUX_PAD0   EXT1_SPI_SERCOM_PINMUX_PAD0
-#define AT86RFX_SPI_SERCOM_PINMUX_PAD1   PINMUX_UNUSED
-#define AT86RFX_SPI_SERCOM_PINMUX_PAD2   EXT1_SPI_SERCOM_PINMUX_PAD2
-#define AT86RFX_SPI_SERCOM_PINMUX_PAD3   EXT1_SPI_SERCOM_PINMUX_PAD3
-
-#define AT86RFX_IRQ_CHAN       EXT1_IRQ_INPUT
-#define AT86RFX_IRQ_PINMUX     EXT1_IRQ_PINMUX
-
-
-/** Enables the transceiver main interrupt. */
-#define ENABLE_TRX_IRQ()     \
-		extint_chan_enable_callback(AT86RFX_IRQ_CHAN, EXTINT_CALLBACK_TYPE_DETECT)
-
-/** Disables the transceiver main interrupt. */
-#define DISABLE_TRX_IRQ()    \
-		extint_chan_disable_callback(AT86RFX_IRQ_CHAN, EXTINT_CALLBACK_TYPE_DETECT)
-
-/** Clears the transceiver main interrupt. */
-#define CLEAR_TRX_IRQ()      \
-		extint_chan_clear_detected(AT86RFX_IRQ_CHAN);
-
-/*
- * This macro saves the trx interrupt status and disables the trx interrupt.
- */
-#define ENTER_TRX_REGION()   \
-		{ extint_chan_disable_callback(AT86RFX_IRQ_CHAN, EXTINT_CALLBACK_TYPE_DETECT)
-
-/*
- *  This macro restores the transceiver interrupt status
- */
-#define LEAVE_TRX_REGION()   \
-		extint_chan_enable_callback(AT86RFX_IRQ_CHAN, EXTINT_CALLBACK_TYPE_DETECT); }
-
-/** @} */
-
-/**
- * \brief Turns off the specified LEDs.
- *
- * \param led_gpio LED to turn off (LEDx_GPIO).
- *
- * \note The pins of the specified LEDs are set to GPIO output mode.
- */
-#define LED_Off(led_gpio)     port_pin_set_output_level(led_gpio,true)
-
-/**
- * \brief Turns on the specified LEDs.
- *
- * \param led_gpio LED to turn on (LEDx_GPIO).
- *
- * \note The pins of the specified LEDs are set to GPIO output mode.
- */
-#define LED_On(led_gpio)      port_pin_set_output_level(led_gpio,false)
-
-/**
- * \brief Toggles the specified LEDs.
- *
- * \param led_gpio LED to toggle (LEDx_GPIO).
- *
- * \note The pins of the specified LEDs are set to GPIO output mode.
- */
-#define LED_Toggle(led_gpio)  port_pin_toggle_output_level(led_gpio)
-
-/** @} */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif  /* SAMD21_XPLAINED_PRO_H_INCLUDED */