diff --git a/conf/airframes/FLIXR/flixr_conf.xml b/conf/airframes/FLIXR/flixr_conf.xml
index 844b767348..d9a37b5d17 100644
--- a/conf/airframes/FLIXR/flixr_conf.xml
+++ b/conf/airframes/FLIXR/flixr_conf.xml
@@ -32,17 +32,6 @@
settings_modules="modules/ahrs_int_cmpl_quat.xml modules/imu_common.xml"
gui_color="blue"
/>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/conf/airframes/untested/stm32f4_discovery_test.xml b/conf/airframes/untested/stm32f4_discovery_test.xml
deleted file mode 100644
index eeb45a10d8..0000000000
--- a/conf/airframes/untested/stm32f4_discovery_test.xml
+++ /dev/null
@@ -1,177 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/conf/boards/stm32f3_discovery_1.0_chibios.makefile b/conf/boards/stm32f3_discovery_1.0_chibios.makefile
deleted file mode 100644
index c04a4773d8..0000000000
--- a/conf/boards/stm32f3_discovery_1.0_chibios.makefile
+++ /dev/null
@@ -1,76 +0,0 @@
-# Hey Emacs, this is a -*- makefile -*-
-#
-# stm32f3_discovery_chibios.makefile
-#
-#
-
-BOARD=stm32f3_discovery
-BOARD_VERSION=1.0
-BOARD_DIR=$(BOARD)/chibios/v$(BOARD_VERSION)
-BOARD_CFG=\"boards/$(BOARD_DIR)/board.h\"
-
-ARCH=chibios
-$(TARGET).ARCHDIR = $(ARCH)
-
-RTOS=chibios
-
-## FPU on F3
-USE_FPU=hard
-
-$(TARGET).CFLAGS += -DSTM32F3 -DPPRZLINK_ENABLE_FD
-
-##############################################################################
-# Architecture or project specific options
-#
-# Define project name here (target)
-PROJECT = $(TARGET)
-
-# Project specific files and paths (see Makefile.chibios for details)
-CHIBIOS_BOARD_PLATFORM = STM32F3xx/platform.mk
-CHIBIOS_BOARD_LINKER = STM32F303xC.ld
-CHIBIOS_BOARD_STARTUP = startup_stm32f3xx.mk
-
-##############################################################################
-# Compiler settings
-#
-MCU = cortex-m4
-
-
-# default flash mode is via DFU-UTIL
-# possibilities: DFU-UTIL, SWD, STLINK
-FLASH_MODE ?= DFU-UTIL
-
-HAS_LUFTBOOT = FALSE
-
-#
-# default LED configuration
-#
-RADIO_CONTROL_LED ?= 4
-BARO_LED ?= none
-AHRS_ALIGNER_LED ?= 5
-GPS_LED ?= 6
-SYS_TIME_LED ?= 3
-
-#
-# default UART configuration (modem, gps, spektrum)
-#
-
-MODEM_PORT ?= UART1
-MODEM_BAUD ?= B57600
-
-GPS_PORT ?= UART2
-GPS_BAUD ?= B38400
-
-RADIO_CONTROL_SPEKTRUM_PRIMARY_PORT ?= UART3
-SBUS_PORT ?= UART3
-
-
-#
-# default actuator configuration
-#
-# you can use different actuators by adding a configure option to your firmware section
-# e.g.
-#
-ACTUATORS ?= actuators_pwm
diff --git a/conf/boards/stm32f4_discovery.makefile b/conf/boards/stm32f4_discovery.makefile
deleted file mode 100644
index 5a24412bac..0000000000
--- a/conf/boards/stm32f4_discovery.makefile
+++ /dev/null
@@ -1,55 +0,0 @@
-# Hey Emacs, this is a -*- makefile -*-
-#
-# stm32f4_discovery.makefile
-#
-#
-
-BOARD=stm32f4_discovery
-BOARD_VERSION=
-BOARD_CFG=\"boards/$(BOARD).h\"
-
-ARCH=stm32
-ARCH_L=f4
-ARCH_DIR=stm32
-SRC_ARCH=arch/$(ARCH_DIR)
-$(TARGET).ARCHDIR = $(ARCH)
-$(TARGET).LDSCRIPT=$(SRC_ARCH)/stm32f4_discovery.ld
-
-HARD_FLOAT=yes
-
-# default flash mode is via usb dfu bootloader
-# possibilities: STLINK, DFU-UTIL, SWD, JTAG_BMP
-FLASH_MODE ?= STLINK
-
-#
-# default LED configuration
-#
-RADIO_CONTROL_LED ?= 4
-BARO_LED ?= none
-AHRS_ALIGNER_LED ?= 5
-GPS_LED ?= 6
-SYS_TIME_LED ?= 3
-
-#
-# default UART configuration (modem, gps, spektrum)
-#
-
-MODEM_PORT ?= UART6
-MODEM_BAUD ?= B57600
-
-GPS_PORT ?= UART3
-GPS_BAUD ?= B38400
-
-RADIO_CONTROL_SPEKTRUM_PRIMARY_PORT ?= UART1
-
-
-#
-# default actuator configuration
-#
-# you can use different actuators by adding a configure option to your firmware section
-# e.g.
-#
-ACTUATORS ?= actuators_pwm
-
diff --git a/conf/flash_modes.xml b/conf/flash_modes.xml
index ac716cb007..29bf35be27 100644
--- a/conf/flash_modes.xml
+++ b/conf/flash_modes.xml
@@ -54,7 +54,6 @@
-
@@ -71,7 +70,6 @@
-
@@ -89,7 +87,6 @@
-
@@ -120,7 +117,6 @@
-
diff --git a/sw/airborne/arch/stm32/stm32f4_discovery.ld b/sw/airborne/arch/stm32/stm32f4_discovery.ld
deleted file mode 100644
index 19e9722028..0000000000
--- a/sw/airborne/arch/stm32/stm32f4_discovery.ld
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright (C) 2013 Gautier Hattenberger
- *
- * This file is part of Paparazzi.
- *
- * Paparazzi is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
- * any later version.
- *
- * Paparazzi is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with Paparazzi; see the file COPYING. If not, write to
- * the Free Software Foundation, 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-/* Linker script for ST STM32F4DISCOVERY (STM32F407VG, 1024K flash, 128K RAM). */
-
-/* Define memory regions. */
-MEMORY
-{
- ram (rwx) : ORIGIN = 0x20000000, LENGTH = 128K
- /* Reserving 128kb at the end of the flash for persistent settings. */
- rom (rx) : ORIGIN = 0x08000000, LENGTH = 896K
-}
-
-/* Include the common ld script. */
-INCLUDE libopencm3_stm32f4.ld
-
diff --git a/sw/airborne/boards/stm32f3_discovery/chibios/v1.0/board.c b/sw/airborne/boards/stm32f3_discovery/chibios/v1.0/board.c
deleted file mode 100644
index 6a0d8e81ff..0000000000
--- a/sw/airborne/boards/stm32f3_discovery/chibios/v1.0/board.c
+++ /dev/null
@@ -1,265 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- 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.
-*/
-
-/*
- * This file has been automatically generated using ChibiStudio board
- * generator plugin. Do not edit manually.
- */
-
-#include "hal.h"
-#include "stm32_gpio.h"
-
-/*===========================================================================*/
-/* Driver local definitions. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Driver exported variables. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Driver local variables and types. */
-/*===========================================================================*/
-
-/**
- * @brief Type of STM32 GPIO port setup.
- */
-typedef struct {
- uint32_t moder;
- uint32_t otyper;
- uint32_t ospeedr;
- uint32_t pupdr;
- uint32_t odr;
- uint32_t afrl;
- uint32_t afrh;
-} gpio_setup_t;
-
-/**
- * @brief Type of STM32 GPIO initialization data.
- */
-typedef struct {
-#if STM32_HAS_GPIOA || defined(__DOXYGEN__)
- gpio_setup_t PAData;
-#endif
-#if STM32_HAS_GPIOB || defined(__DOXYGEN__)
- gpio_setup_t PBData;
-#endif
-#if STM32_HAS_GPIOC || defined(__DOXYGEN__)
- gpio_setup_t PCData;
-#endif
-#if STM32_HAS_GPIOD || defined(__DOXYGEN__)
- gpio_setup_t PDData;
-#endif
-#if STM32_HAS_GPIOE || defined(__DOXYGEN__)
- gpio_setup_t PEData;
-#endif
-#if STM32_HAS_GPIOF || defined(__DOXYGEN__)
- gpio_setup_t PFData;
-#endif
-#if STM32_HAS_GPIOG || defined(__DOXYGEN__)
- gpio_setup_t PGData;
-#endif
-#if STM32_HAS_GPIOH || defined(__DOXYGEN__)
- gpio_setup_t PHData;
-#endif
-#if STM32_HAS_GPIOI || defined(__DOXYGEN__)
- gpio_setup_t PIData;
-#endif
-#if STM32_HAS_GPIOJ || defined(__DOXYGEN__)
- gpio_setup_t PJData;
-#endif
-#if STM32_HAS_GPIOK || defined(__DOXYGEN__)
- gpio_setup_t PKData;
-#endif
-} gpio_config_t;
-
-/**
- * @brief STM32 GPIO static initialization data.
- */
-static const gpio_config_t gpio_default_config = {
-#if STM32_HAS_GPIOA
- {VAL_GPIOA_MODER, VAL_GPIOA_OTYPER, VAL_GPIOA_OSPEEDR, VAL_GPIOA_PUPDR,
- VAL_GPIOA_ODR, VAL_GPIOA_AFRL, VAL_GPIOA_AFRH},
-#endif
-#if STM32_HAS_GPIOB
- {VAL_GPIOB_MODER, VAL_GPIOB_OTYPER, VAL_GPIOB_OSPEEDR, VAL_GPIOB_PUPDR,
- VAL_GPIOB_ODR, VAL_GPIOB_AFRL, VAL_GPIOB_AFRH},
-#endif
-#if STM32_HAS_GPIOC
- {VAL_GPIOC_MODER, VAL_GPIOC_OTYPER, VAL_GPIOC_OSPEEDR, VAL_GPIOC_PUPDR,
- VAL_GPIOC_ODR, VAL_GPIOC_AFRL, VAL_GPIOC_AFRH},
-#endif
-#if STM32_HAS_GPIOD
- {VAL_GPIOD_MODER, VAL_GPIOD_OTYPER, VAL_GPIOD_OSPEEDR, VAL_GPIOD_PUPDR,
- VAL_GPIOD_ODR, VAL_GPIOD_AFRL, VAL_GPIOD_AFRH},
-#endif
-#if STM32_HAS_GPIOE
- {VAL_GPIOE_MODER, VAL_GPIOE_OTYPER, VAL_GPIOE_OSPEEDR, VAL_GPIOE_PUPDR,
- VAL_GPIOE_ODR, VAL_GPIOE_AFRL, VAL_GPIOE_AFRH},
-#endif
-#if STM32_HAS_GPIOF
- {VAL_GPIOF_MODER, VAL_GPIOF_OTYPER, VAL_GPIOF_OSPEEDR, VAL_GPIOF_PUPDR,
- VAL_GPIOF_ODR, VAL_GPIOF_AFRL, VAL_GPIOF_AFRH},
-#endif
-#if STM32_HAS_GPIOG
- {VAL_GPIOG_MODER, VAL_GPIOG_OTYPER, VAL_GPIOG_OSPEEDR, VAL_GPIOG_PUPDR,
- VAL_GPIOG_ODR, VAL_GPIOG_AFRL, VAL_GPIOG_AFRH},
-#endif
-#if STM32_HAS_GPIOH
- {VAL_GPIOH_MODER, VAL_GPIOH_OTYPER, VAL_GPIOH_OSPEEDR, VAL_GPIOH_PUPDR,
- VAL_GPIOH_ODR, VAL_GPIOH_AFRL, VAL_GPIOH_AFRH},
-#endif
-#if STM32_HAS_GPIOI
- {VAL_GPIOI_MODER, VAL_GPIOI_OTYPER, VAL_GPIOI_OSPEEDR, VAL_GPIOI_PUPDR,
- VAL_GPIOI_ODR, VAL_GPIOI_AFRL, VAL_GPIOI_AFRH},
-#endif
-#if STM32_HAS_GPIOJ
- {VAL_GPIOJ_MODER, VAL_GPIOJ_OTYPER, VAL_GPIOJ_OSPEEDR, VAL_GPIOJ_PUPDR,
- VAL_GPIOJ_ODR, VAL_GPIOJ_AFRL, VAL_GPIOJ_AFRH},
-#endif
-#if STM32_HAS_GPIOK
- {VAL_GPIOK_MODER, VAL_GPIOK_OTYPER, VAL_GPIOK_OSPEEDR, VAL_GPIOK_PUPDR,
- VAL_GPIOK_ODR, VAL_GPIOK_AFRL, VAL_GPIOK_AFRH}
-#endif
-};
-
-/*===========================================================================*/
-/* Driver local functions. */
-/*===========================================================================*/
-
-static void gpio_init(stm32_gpio_t *gpiop, const gpio_setup_t *config) {
-
- gpiop->OTYPER = config->otyper;
- gpiop->OSPEEDR = config->ospeedr;
- gpiop->PUPDR = config->pupdr;
- gpiop->ODR = config->odr;
- gpiop->AFRL = config->afrl;
- gpiop->AFRH = config->afrh;
- gpiop->MODER = config->moder;
-}
-
-static void stm32_gpio_init(void) {
-
- /* Enabling GPIO-related clocks, the mask comes from the
- registry header file.*/
- rccResetAHB1(STM32_GPIO_EN_MASK);
- rccEnableAHB1(STM32_GPIO_EN_MASK, true);
-
- /* Initializing all the defined GPIO ports.*/
-#if STM32_HAS_GPIOA
- gpio_init(GPIOA, &gpio_default_config.PAData);
-#endif
-#if STM32_HAS_GPIOB
- gpio_init(GPIOB, &gpio_default_config.PBData);
-#endif
-#if STM32_HAS_GPIOC
- gpio_init(GPIOC, &gpio_default_config.PCData);
-#endif
-#if STM32_HAS_GPIOD
- gpio_init(GPIOD, &gpio_default_config.PDData);
-#endif
-#if STM32_HAS_GPIOE
- gpio_init(GPIOE, &gpio_default_config.PEData);
-#endif
-#if STM32_HAS_GPIOF
- gpio_init(GPIOF, &gpio_default_config.PFData);
-#endif
-#if STM32_HAS_GPIOG
- gpio_init(GPIOG, &gpio_default_config.PGData);
-#endif
-#if STM32_HAS_GPIOH
- gpio_init(GPIOH, &gpio_default_config.PHData);
-#endif
-#if STM32_HAS_GPIOI
- gpio_init(GPIOI, &gpio_default_config.PIData);
-#endif
-#if STM32_HAS_GPIOJ
- gpio_init(GPIOJ, &gpio_default_config.PJData);
-#endif
-#if STM32_HAS_GPIOK
- gpio_init(GPIOK, &gpio_default_config.PKData);
-#endif
-}
-
-/*===========================================================================*/
-/* Driver interrupt handlers. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Driver exported functions. */
-/*===========================================================================*/
-
-/**
- * @brief Early initialization code.
- * @details GPIO ports and system clocks are initialized before everything
- * else.
- */
-void __early_init(void) {
-
- stm32_gpio_init();
- stm32_clock_init();
-}
-
-#if HAL_USE_SDC || defined(__DOXYGEN__)
-/**
- * @brief SDC card detection.
- */
-bool sdc_lld_is_card_inserted(SDCDriver *sdcp) {
- static bool last_status = false;
-
- (void)sdcp;
- /* TODO: Fill the implementation.*/
- return true;
-}
-
-/**
- * @brief SDC card write protection detection.
- */
-bool sdc_lld_is_write_protected(SDCDriver *sdcp) {
-
- (void)sdcp;
- return false;
-}
-#endif /* HAL_USE_SDC */
-
-#if HAL_USE_MMC_SPI || defined(__DOXYGEN__)
-/**
- * @brief MMC_SPI card detection.
- */
-bool mmc_lld_is_card_inserted(MMCDriver *mmcp) {
-
- (void)mmcp;
- /* TODO: Fill the implementation.*/
- return true;
-}
-
-/**
- * @brief MMC_SPI card write protection detection.
- */
-bool mmc_lld_is_write_protected(MMCDriver *mmcp) {
-
- (void)mmcp;
- /* TODO: Fill the implementation.*/
- return false;
-}
-#endif
-
-/**
- * @brief Board-specific initialization code.
- * @todo Add your board-specific code, if any.
- */
-void boardInit(void) {
-}
diff --git a/sw/airborne/boards/stm32f3_discovery/chibios/v1.0/board.h b/sw/airborne/boards/stm32f3_discovery/chibios/v1.0/board.h
deleted file mode 100644
index 9a573c029c..0000000000
--- a/sw/airborne/boards/stm32f3_discovery/chibios/v1.0/board.h
+++ /dev/null
@@ -1,1628 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- 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.
-*/
-
-/*
- * This file has been automatically generated using ChibiStudio board
- * generator plugin. Do not edit manually.
- */
-
-#ifndef BOARD_H
-#define BOARD_H
-
-/*
- * Setup for STMicroelectronics STM32F3-Discovery board.
- */
-
-/*
- * Board identifier.
- */
-#define BOARD_ST_STM32F3_DISCOVERY
-#define BOARD_NAME "STMicroelectronics STM32F3-Discovery"
-
-/*
- * Board oscillators-related settings.
- * NOTE: LSE not fitted.
- */
-#if !defined(STM32_LSECLK)
-#define STM32_LSECLK 0U
-#endif
-
-#define STM32_LSEDRV (3U << 3U)
-
-#if !defined(STM32_HSECLK)
-#define STM32_HSECLK 8000000U
-#endif
-
-#define STM32_HSE_BYPASS
-
-/*
- * MCU type as defined in the ST header.
- */
-#define STM32F303xC
-
-/*
- * IO pins assignments.
- */
-#define GPIOA_BUTTON 0U
-#define GPIOA_PIN1 1U
-#define GPIOA_PIN2 2U
-#define GPIOA_PIN3 3U
-#define GPIOA_PIN4 4U
-#define GPIOA_SPI1_SCK 5U
-#define GPIOA_L3GD20_SCL 5U
-#define GPIOA_SPI1_MISO 6U
-#define GPIOA_L3GD20_SDO 6U
-#define GPIOA_SPI1_MOSI 7U
-#define GPIOA_L3GD20_SDI 7U
-#define GPIOA_PIN8 8U
-#define GPIOA_PIN9 9U
-#define GPIOA_PIN10 10U
-#define GPIOA_USB_DM 11U
-#define GPIOA_USB_DP 12U
-#define GPIOA_SWDIO 13U
-#define GPIOA_SWCLK 14U
-#define GPIOA_PIN15 15U
-
-#define GPIOB_PIN0 0U
-#define GPIOB_PIN1 1U
-#define GPIOB_PIN2 2U
-#define GPIOB_SWO 3U
-#define GPIOB_PIN4 4U
-#define GPIOB_PIN5 5U
-#define GPIOB_I2C1_SCL 6U
-#define GPIOB_LSM303DLHC_SCL 6U
-#define GPIOB_I2C1_SDA 7U
-#define GPIOB_LSM303DLHC_SDA 7U
-#define GPIOB_PIN8 8U
-#define GPIOB_PIN9 9U
-#define GPIOB_PIN10 10U
-#define GPIOB_PIN11 11U
-#define GPIOB_PIN12 12U
-#define GPIOB_PIN13 13U
-#define GPIOB_PIN14 14U
-#define GPIOB_PIN15 15U
-
-#define GPIOC_PIN0 0U
-#define GPIOC_PIN1 1U
-#define GPIOC_PIN2 2U
-#define GPIOC_PIN3 3U
-#define GPIOC_PIN4 4U
-#define GPIOC_PIN5 5U
-#define GPIOC_PIN6 6U
-#define GPIOC_PIN7 7U
-#define GPIOC_PIN8 8U
-#define GPIOC_PIN9 9U
-#define GPIOC_PIN10 10U
-#define GPIOC_PIN11 11U
-#define GPIOC_PIN12 12U
-#define GPIOC_PIN13 13U
-#define GPIOC_OSC32_IN 14U
-#define GPIOC_OSC32_OUT 15U
-
-#define GPIOD_PIN0 0U
-#define GPIOD_PIN1 1U
-#define GPIOD_PIN2 2U
-#define GPIOD_PIN3 3U
-#define GPIOD_PIN4 4U
-#define GPIOD_PIN5 5U
-#define GPIOD_PIN6 6U
-#define GPIOD_PIN7 7U
-#define GPIOD_PIN8 8U
-#define GPIOD_PIN9 9U
-#define GPIOD_PIN10 10U
-#define GPIOD_PIN11 11U
-#define GPIOD_PIN12 12U
-#define GPIOD_PIN13 13U
-#define GPIOD_PIN14 14U
-#define GPIOD_PIN15 15U
-
-#define GPIOE_L3GD20_INT1 0U
-#define GPIOE_L3GD20_INT2 1U
-#define GPIOE_LSM303DLHC_DRDY 2U
-#define GPIOE_SPI1_CS 3U
-#define GPIOE_L3GD20_CS 3U
-#define GPIOE_LSM303DLHC_INT1 4U
-#define GPIOE_LSM303DLHC_INT2 5U
-#define GPIOE_PIN6 6U
-#define GPIOE_PIN7 7U
-#define GPIOE_LED4_BLUE 8U
-#define GPIOE_LED3_RED 9U
-#define GPIOE_LED5_ORANGE 10U
-#define GPIOE_LED7_GREEN 11U
-#define GPIOE_LED9_BLUE 12U
-#define GPIOE_LED10_RED 13U
-#define GPIOE_LED8_ORANGE 14U
-#define GPIOE_LED6_GREEN 15U
-
-#define GPIOF_OSC_IN 0U
-#define GPIOF_OSC_OUT 1U
-#define GPIOF_PIN2 2U
-#define GPIOF_PIN3 3U
-#define GPIOF_PIN4 4U
-#define GPIOF_PIN5 5U
-#define GPIOF_PIN6 6U
-#define GPIOF_PIN7 7U
-#define GPIOF_PIN8 8U
-#define GPIOF_PIN9 9U
-#define GPIOF_PIN10 10U
-#define GPIOF_PIN11 11U
-#define GPIOF_PIN12 12U
-#define GPIOF_PIN13 13U
-#define GPIOF_PIN14 14U
-#define GPIOF_PIN15 15U
-
-#define GPIOG_PIN0 0U
-#define GPIOG_PIN1 1U
-#define GPIOG_PIN2 2U
-#define GPIOG_PIN3 3U
-#define GPIOG_PIN4 4U
-#define GPIOG_PIN5 5U
-#define GPIOG_PIN6 6U
-#define GPIOG_PIN7 7U
-#define GPIOG_PIN8 8U
-#define GPIOG_PIN9 9U
-#define GPIOG_PIN10 10U
-#define GPIOG_PIN11 11U
-#define GPIOG_PIN12 12U
-#define GPIOG_PIN13 13U
-#define GPIOG_PIN14 14U
-#define GPIOG_PIN15 15U
-
-#define GPIOH_PIN0 0U
-#define GPIOH_PIN1 1U
-#define GPIOH_PIN2 2U
-#define GPIOH_PIN3 3U
-#define GPIOH_PIN4 4U
-#define GPIOH_PIN5 5U
-#define GPIOH_PIN6 6U
-#define GPIOH_PIN7 7U
-#define GPIOH_PIN8 8U
-#define GPIOH_PIN9 9U
-#define GPIOH_PIN10 10U
-#define GPIOH_PIN11 11U
-#define GPIOH_PIN12 12U
-#define GPIOH_PIN13 13U
-#define GPIOH_PIN14 14U
-#define GPIOH_PIN15 15U
-
-/*
- * IO lines assignments.
- */
-#define LINE_BUTTON PAL_LINE(GPIOA, 0U)
-#define LINE_SPI1_SCK PAL_LINE(GPIOA, 5U)
-#define LINE_L3GD20_SCL PAL_LINE(GPIOA, 5U)
-#define LINE_SPI1_MISO PAL_LINE(GPIOA, 6U)
-#define LINE_L3GD20_SDO PAL_LINE(GPIOA, 6U)
-#define LINE_SPI1_MOSI PAL_LINE(GPIOA, 7U)
-#define LINE_L3GD20_SDI PAL_LINE(GPIOA, 7U)
-#define LINE_USB_DM PAL_LINE(GPIOA, 11U)
-#define LINE_USB_DP PAL_LINE(GPIOA, 12U)
-#define LINE_SWDIO PAL_LINE(GPIOA, 13U)
-#define LINE_SWCLK PAL_LINE(GPIOA, 14U)
-
-#define LINE_SWO PAL_LINE(GPIOB, 3U)
-#define LINE_I2C1_SCL PAL_LINE(GPIOB, 6U)
-#define LINE_LSM303DLHC_SCL PAL_LINE(GPIOB, 6U)
-#define LINE_I2C1_SDA PAL_LINE(GPIOB, 7U)
-#define LINE_LSM303DLHC_SDA PAL_LINE(GPIOB, 7U)
-
-#define LINE_OSC32_IN PAL_LINE(GPIOC, 14U)
-#define LINE_OSC32_OUT PAL_LINE(GPIOC, 15U)
-
-
-#define LINE_L3GD20_INT1 PAL_LINE(GPIOE, 0U)
-#define LINE_L3GD20_INT2 PAL_LINE(GPIOE, 1U)
-#define LINE_LSM303DLHC_DRDY PAL_LINE(GPIOE, 2U)
-#define LINE_SPI1_CS PAL_LINE(GPIOE, 3U)
-#define LINE_L3GD20_CS PAL_LINE(GPIOE, 3U)
-#define LINE_LSM303DLHC_INT1 PAL_LINE(GPIOE, 4U)
-#define LINE_LSM303DLHC_INT2 PAL_LINE(GPIOE, 5U)
-#define LINE_LED4_BLUE PAL_LINE(GPIOE, 8U)
-#define LINE_LED3_RED PAL_LINE(GPIOE, 9U)
-#define LINE_LED5_ORANGE PAL_LINE(GPIOE, 10U)
-#define LINE_LED7_GREEN PAL_LINE(GPIOE, 11U)
-#define LINE_LED9_BLUE PAL_LINE(GPIOE, 12U)
-#define LINE_LED10_RED PAL_LINE(GPIOE, 13U)
-#define LINE_LED8_ORANGE PAL_LINE(GPIOE, 14U)
-#define LINE_LED6_GREEN PAL_LINE(GPIOE, 15U)
-
-#define LINE_OSC_IN PAL_LINE(GPIOF, 0U)
-#define LINE_OSC_OUT PAL_LINE(GPIOF, 1U)
-
-
-
-/*
- * I/O ports initial setup, this configuration is established soon after reset
- * in the initialization code.
- * Please refer to the STM32 Reference Manual for details.
- */
-#define PIN_MODE_INPUT(n) (0U << ((n) * 2U))
-#define PIN_MODE_OUTPUT(n) (1U << ((n) * 2U))
-#define PIN_MODE_ALTERNATE(n) (2U << ((n) * 2U))
-#define PIN_MODE_ANALOG(n) (3U << ((n) * 2U))
-#define PIN_ODR_LOW(n) (0U << (n))
-#define PIN_ODR_HIGH(n) (1U << (n))
-#define PIN_OTYPE_PUSHPULL(n) (0U << (n))
-#define PIN_OTYPE_OPENDRAIN(n) (1U << (n))
-#define PIN_OSPEED_VERYLOW(n) (0U << ((n) * 2U))
-#define PIN_OSPEED_LOW(n) (1U << ((n) * 2U))
-#define PIN_OSPEED_MEDIUM(n) (2U << ((n) * 2U))
-#define PIN_OSPEED_HIGH(n) (3U << ((n) * 2U))
-#define PIN_PUPDR_FLOATING(n) (0U << ((n) * 2U))
-#define PIN_PUPDR_PULLUP(n) (1U << ((n) * 2U))
-#define PIN_PUPDR_PULLDOWN(n) (2U << ((n) * 2U))
-#define PIN_AFIO_AF(n, v) ((v) << (((n) % 8U) * 4U))
-
-/*
- * GPIOA setup:
- *
- * PA0 - BUTTON (input floating).
- * PA1 - PIN1 (input pullup).
- * PA2 - PIN2 (input pullup).
- * PA3 - PIN3 (input pullup).
- * PA4 - PIN4 (input pullup).
- * PA5 - SPI1_SCK L3GD20_SCL (alternate 5).
- * PA6 - SPI1_MISO L3GD20_SDO (alternate 5).
- * PA7 - SPI1_MOSI L3GD20_SDI (alternate 5).
- * PA8 - PIN8 (input pullup).
- * PA9 - PIN9 (input pullup).
- * PA10 - PIN10 (input pullup).
- * PA11 - USB_DM (alternate 14).
- * PA12 - USB_DP (alternate 14).
- * PA13 - SWDIO (alternate 0).
- * PA14 - SWCLK (alternate 0).
- * PA15 - PIN15 (input pullup).
- */
-#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \
- PIN_MODE_INPUT(GPIOA_PIN1) | \
- PIN_MODE_INPUT(GPIOA_PIN2) | \
- PIN_MODE_INPUT(GPIOA_PIN3) | \
- PIN_MODE_INPUT(GPIOA_PIN4) | \
- PIN_MODE_ALTERNATE(GPIOA_SPI1_SCK) | \
- PIN_MODE_ALTERNATE(GPIOA_SPI1_MISO) | \
- PIN_MODE_ALTERNATE(GPIOA_SPI1_MOSI) | \
- PIN_MODE_INPUT(GPIOA_PIN8) | \
- PIN_MODE_INPUT(GPIOA_PIN9) | \
- PIN_MODE_INPUT(GPIOA_PIN10) | \
- PIN_MODE_ALTERNATE(GPIOA_USB_DM) | \
- PIN_MODE_ALTERNATE(GPIOA_USB_DP) | \
- PIN_MODE_ALTERNATE(GPIOA_SWDIO) | \
- PIN_MODE_ALTERNATE(GPIOA_SWCLK) | \
- PIN_MODE_INPUT(GPIOA_PIN15))
-#define VAL_GPIOA_OTYPER (PIN_OTYPE_PUSHPULL(GPIOA_BUTTON) | \
- PIN_OTYPE_PUSHPULL(GPIOA_PIN1) | \
- PIN_OTYPE_PUSHPULL(GPIOA_PIN2) | \
- PIN_OTYPE_PUSHPULL(GPIOA_PIN3) | \
- PIN_OTYPE_PUSHPULL(GPIOA_PIN4) | \
- PIN_OTYPE_PUSHPULL(GPIOA_SPI1_SCK) | \
- PIN_OTYPE_PUSHPULL(GPIOA_SPI1_MISO) | \
- PIN_OTYPE_PUSHPULL(GPIOA_SPI1_MOSI) | \
- PIN_OTYPE_PUSHPULL(GPIOA_PIN8) | \
- PIN_OTYPE_PUSHPULL(GPIOA_PIN9) | \
- PIN_OTYPE_PUSHPULL(GPIOA_PIN10) | \
- PIN_OTYPE_PUSHPULL(GPIOA_USB_DM) | \
- PIN_OTYPE_PUSHPULL(GPIOA_USB_DP) | \
- PIN_OTYPE_PUSHPULL(GPIOA_SWDIO) | \
- PIN_OTYPE_PUSHPULL(GPIOA_SWCLK) | \
- PIN_OTYPE_PUSHPULL(GPIOA_PIN15))
-#define VAL_GPIOA_OSPEEDR (PIN_OSPEED_VERYLOW(GPIOA_BUTTON) | \
- PIN_OSPEED_VERYLOW(GPIOA_PIN1) | \
- PIN_OSPEED_VERYLOW(GPIOA_PIN2) | \
- PIN_OSPEED_VERYLOW(GPIOA_PIN3) | \
- PIN_OSPEED_VERYLOW(GPIOA_PIN4) | \
- PIN_OSPEED_HIGH(GPIOA_SPI1_SCK) | \
- PIN_OSPEED_HIGH(GPIOA_SPI1_MISO) | \
- PIN_OSPEED_HIGH(GPIOA_SPI1_MOSI) | \
- PIN_OSPEED_VERYLOW(GPIOA_PIN8) | \
- PIN_OSPEED_VERYLOW(GPIOA_PIN9) | \
- PIN_OSPEED_VERYLOW(GPIOA_PIN10) | \
- PIN_OSPEED_HIGH(GPIOA_USB_DM) | \
- PIN_OSPEED_VERYLOW(GPIOA_USB_DP) | \
- PIN_OSPEED_HIGH(GPIOA_SWDIO) | \
- PIN_OSPEED_HIGH(GPIOA_SWCLK) | \
- PIN_OSPEED_VERYLOW(GPIOA_PIN15))
-#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \
- PIN_PUPDR_PULLUP(GPIOA_PIN1) | \
- PIN_PUPDR_PULLUP(GPIOA_PIN2) | \
- PIN_PUPDR_PULLUP(GPIOA_PIN3) | \
- PIN_PUPDR_PULLUP(GPIOA_PIN4) | \
- PIN_PUPDR_FLOATING(GPIOA_SPI1_SCK) | \
- PIN_PUPDR_PULLUP(GPIOA_SPI1_MISO) | \
- PIN_PUPDR_FLOATING(GPIOA_SPI1_MOSI) | \
- PIN_PUPDR_PULLUP(GPIOA_PIN8) | \
- PIN_PUPDR_PULLUP(GPIOA_PIN9) | \
- PIN_PUPDR_PULLUP(GPIOA_PIN10) | \
- PIN_PUPDR_FLOATING(GPIOA_USB_DM) | \
- PIN_PUPDR_FLOATING(GPIOA_USB_DP) | \
- PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \
- PIN_PUPDR_PULLDOWN(GPIOA_SWCLK) | \
- PIN_PUPDR_PULLUP(GPIOA_PIN15))
-#define VAL_GPIOA_ODR (PIN_ODR_HIGH(GPIOA_BUTTON) | \
- PIN_ODR_HIGH(GPIOA_PIN1) | \
- PIN_ODR_HIGH(GPIOA_PIN2) | \
- PIN_ODR_HIGH(GPIOA_PIN3) | \
- PIN_ODR_HIGH(GPIOA_PIN4) | \
- PIN_ODR_HIGH(GPIOA_SPI1_SCK) | \
- PIN_ODR_HIGH(GPIOA_SPI1_MISO) | \
- PIN_ODR_HIGH(GPIOA_SPI1_MOSI) | \
- PIN_ODR_HIGH(GPIOA_PIN8) | \
- PIN_ODR_HIGH(GPIOA_PIN9) | \
- PIN_ODR_HIGH(GPIOA_PIN10) | \
- PIN_ODR_HIGH(GPIOA_USB_DM) | \
- PIN_ODR_HIGH(GPIOA_USB_DP) | \
- PIN_ODR_HIGH(GPIOA_SWDIO) | \
- PIN_ODR_HIGH(GPIOA_SWCLK) | \
- PIN_ODR_HIGH(GPIOA_PIN15))
-#define VAL_GPIOA_AFRL (PIN_AFIO_AF(GPIOA_BUTTON, 0U) | \
- PIN_AFIO_AF(GPIOA_PIN1, 0U) | \
- PIN_AFIO_AF(GPIOA_PIN2, 0U) | \
- PIN_AFIO_AF(GPIOA_PIN3, 0U) | \
- PIN_AFIO_AF(GPIOA_PIN4, 0U) | \
- PIN_AFIO_AF(GPIOA_SPI1_SCK, 5U) | \
- PIN_AFIO_AF(GPIOA_SPI1_MISO, 5U) | \
- PIN_AFIO_AF(GPIOA_SPI1_MOSI, 5U))
-#define VAL_GPIOA_AFRH (PIN_AFIO_AF(GPIOA_PIN8, 0U) | \
- PIN_AFIO_AF(GPIOA_PIN9, 0U) | \
- PIN_AFIO_AF(GPIOA_PIN10, 0U) | \
- PIN_AFIO_AF(GPIOA_USB_DM, 14U) | \
- PIN_AFIO_AF(GPIOA_USB_DP, 14U) | \
- PIN_AFIO_AF(GPIOA_SWDIO, 0U) | \
- PIN_AFIO_AF(GPIOA_SWCLK, 0U) | \
- PIN_AFIO_AF(GPIOA_PIN15, 0U))
-
-/*
- * GPIOB setup:
- *
- * PB0 - PIN0 (input pullup).
- * PB1 - PIN1 (input pullup).
- * PB2 - PIN2 (input pullup).
- * PB3 - SWO (alternate 0).
- * PB4 - PIN4 (input pullup).
- * PB5 - PIN5 (input pullup).
- * PB6 - I2C1_SCL LSM303DLHC_SCL (alternate 4).
- * PB7 - I2C1_SDA LSM303DLHC_SDA (alternate 4).
- * PB8 - PIN8 (input pullup).
- * PB9 - PIN9 (input pullup).
- * PB10 - PIN10 (input pullup).
- * PB11 - PIN11 (input pullup).
- * PB12 - PIN12 (input pullup).
- * PB13 - PIN13 (input pullup).
- * PB14 - PIN14 (input pullup).
- * PB15 - PIN15 (input pullup).
- */
-#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \
- PIN_MODE_INPUT(GPIOB_PIN1) | \
- PIN_MODE_INPUT(GPIOB_PIN2) | \
- PIN_MODE_ALTERNATE(GPIOB_SWO) | \
- PIN_MODE_INPUT(GPIOB_PIN4) | \
- PIN_MODE_INPUT(GPIOB_PIN5) | \
- PIN_MODE_ALTERNATE(GPIOB_I2C1_SCL) | \
- PIN_MODE_ALTERNATE(GPIOB_I2C1_SDA) | \
- PIN_MODE_INPUT(GPIOB_PIN8) | \
- PIN_MODE_INPUT(GPIOB_PIN9) | \
- PIN_MODE_INPUT(GPIOB_PIN10) | \
- PIN_MODE_INPUT(GPIOB_PIN11) | \
- PIN_MODE_INPUT(GPIOB_PIN12) | \
- PIN_MODE_INPUT(GPIOB_PIN13) | \
- PIN_MODE_INPUT(GPIOB_PIN14) | \
- PIN_MODE_INPUT(GPIOB_PIN15))
-#define VAL_GPIOB_OTYPER (PIN_OTYPE_PUSHPULL(GPIOB_PIN0) | \
- PIN_OTYPE_PUSHPULL(GPIOB_PIN1) | \
- PIN_OTYPE_PUSHPULL(GPIOB_PIN2) | \
- PIN_OTYPE_PUSHPULL(GPIOB_SWO) | \
- PIN_OTYPE_PUSHPULL(GPIOB_PIN4) | \
- PIN_OTYPE_PUSHPULL(GPIOB_PIN5) | \
- PIN_OTYPE_OPENDRAIN(GPIOB_I2C1_SCL) | \
- PIN_OTYPE_OPENDRAIN(GPIOB_I2C1_SDA) | \
- PIN_OTYPE_PUSHPULL(GPIOB_PIN8) | \
- PIN_OTYPE_PUSHPULL(GPIOB_PIN9) | \
- PIN_OTYPE_PUSHPULL(GPIOB_PIN10) | \
- PIN_OTYPE_PUSHPULL(GPIOB_PIN11) | \
- PIN_OTYPE_PUSHPULL(GPIOB_PIN12) | \
- PIN_OTYPE_PUSHPULL(GPIOB_PIN13) | \
- PIN_OTYPE_PUSHPULL(GPIOB_PIN14) | \
- PIN_OTYPE_PUSHPULL(GPIOB_PIN15))
-#define VAL_GPIOB_OSPEEDR (PIN_OSPEED_VERYLOW(GPIOB_PIN0) | \
- PIN_OSPEED_VERYLOW(GPIOB_PIN1) | \
- PIN_OSPEED_VERYLOW(GPIOB_PIN2) | \
- PIN_OSPEED_HIGH(GPIOB_SWO) | \
- PIN_OSPEED_VERYLOW(GPIOB_PIN4) | \
- PIN_OSPEED_VERYLOW(GPIOB_PIN5) | \
- PIN_OSPEED_HIGH(GPIOB_I2C1_SCL) | \
- PIN_OSPEED_HIGH(GPIOB_I2C1_SDA) | \
- PIN_OSPEED_VERYLOW(GPIOB_PIN8) | \
- PIN_OSPEED_VERYLOW(GPIOB_PIN9) | \
- PIN_OSPEED_VERYLOW(GPIOB_PIN10) | \
- PIN_OSPEED_VERYLOW(GPIOB_PIN11) | \
- PIN_OSPEED_VERYLOW(GPIOB_PIN12) | \
- PIN_OSPEED_VERYLOW(GPIOB_PIN13) | \
- PIN_OSPEED_VERYLOW(GPIOB_PIN14) | \
- PIN_OSPEED_VERYLOW(GPIOB_PIN15))
-#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLUP(GPIOB_PIN0) | \
- PIN_PUPDR_PULLUP(GPIOB_PIN1) | \
- PIN_PUPDR_PULLUP(GPIOB_PIN2) | \
- PIN_PUPDR_FLOATING(GPIOB_SWO) | \
- PIN_PUPDR_PULLUP(GPIOB_PIN4) | \
- PIN_PUPDR_PULLUP(GPIOB_PIN5) | \
- PIN_PUPDR_FLOATING(GPIOB_I2C1_SCL) | \
- PIN_PUPDR_FLOATING(GPIOB_I2C1_SDA) | \
- PIN_PUPDR_PULLUP(GPIOB_PIN8) | \
- PIN_PUPDR_PULLUP(GPIOB_PIN9) | \
- PIN_PUPDR_PULLUP(GPIOB_PIN10) | \
- PIN_PUPDR_PULLUP(GPIOB_PIN11) | \
- PIN_PUPDR_PULLUP(GPIOB_PIN12) | \
- PIN_PUPDR_PULLUP(GPIOB_PIN13) | \
- PIN_PUPDR_PULLUP(GPIOB_PIN14) | \
- PIN_PUPDR_PULLUP(GPIOB_PIN15))
-#define VAL_GPIOB_ODR (PIN_ODR_HIGH(GPIOB_PIN0) | \
- PIN_ODR_HIGH(GPIOB_PIN1) | \
- PIN_ODR_HIGH(GPIOB_PIN2) | \
- PIN_ODR_HIGH(GPIOB_SWO) | \
- PIN_ODR_HIGH(GPIOB_PIN4) | \
- PIN_ODR_HIGH(GPIOB_PIN5) | \
- PIN_ODR_HIGH(GPIOB_I2C1_SCL) | \
- PIN_ODR_HIGH(GPIOB_I2C1_SDA) | \
- PIN_ODR_HIGH(GPIOB_PIN8) | \
- PIN_ODR_HIGH(GPIOB_PIN9) | \
- PIN_ODR_HIGH(GPIOB_PIN10) | \
- PIN_ODR_HIGH(GPIOB_PIN11) | \
- PIN_ODR_HIGH(GPIOB_PIN12) | \
- PIN_ODR_HIGH(GPIOB_PIN13) | \
- PIN_ODR_HIGH(GPIOB_PIN14) | \
- PIN_ODR_HIGH(GPIOB_PIN15))
-#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \
- PIN_AFIO_AF(GPIOB_PIN1, 0U) | \
- PIN_AFIO_AF(GPIOB_PIN2, 0U) | \
- PIN_AFIO_AF(GPIOB_SWO, 0U) | \
- PIN_AFIO_AF(GPIOB_PIN4, 0U) | \
- PIN_AFIO_AF(GPIOB_PIN5, 0U) | \
- PIN_AFIO_AF(GPIOB_I2C1_SCL, 4U) | \
- PIN_AFIO_AF(GPIOB_I2C1_SDA, 4U))
-#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \
- PIN_AFIO_AF(GPIOB_PIN9, 0U) | \
- PIN_AFIO_AF(GPIOB_PIN10, 0U) | \
- PIN_AFIO_AF(GPIOB_PIN11, 0U) | \
- PIN_AFIO_AF(GPIOB_PIN12, 0U) | \
- PIN_AFIO_AF(GPIOB_PIN13, 0U) | \
- PIN_AFIO_AF(GPIOB_PIN14, 0U) | \
- PIN_AFIO_AF(GPIOB_PIN15, 0U))
-
-/*
- * GPIOC setup:
- *
- * PC0 - PIN0 (input pullup).
- * PC1 - PIN1 (input pullup).
- * PC2 - PIN2 (input pullup).
- * PC3 - PIN3 (input pullup).
- * PC4 - PIN4 (input pullup).
- * PC5 - PIN5 (input pullup).
- * PC6 - PIN6 (input pullup).
- * PC7 - PIN7 (input pullup).
- * PC8 - PIN8 (input pullup).
- * PC9 - PIN9 (input pullup).
- * PC10 - PIN10 (input pullup).
- * PC11 - PIN11 (input pullup).
- * PC12 - PIN12 (input pullup).
- * PC13 - PIN13 (input pullup).
- * PC14 - OSC32_IN (input floating).
- * PC15 - OSC32_OUT (input floating).
- */
-#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_PIN0) | \
- PIN_MODE_INPUT(GPIOC_PIN1) | \
- PIN_MODE_INPUT(GPIOC_PIN2) | \
- PIN_MODE_INPUT(GPIOC_PIN3) | \
- PIN_MODE_INPUT(GPIOC_PIN4) | \
- PIN_MODE_INPUT(GPIOC_PIN5) | \
- PIN_MODE_INPUT(GPIOC_PIN6) | \
- PIN_MODE_INPUT(GPIOC_PIN7) | \
- PIN_MODE_INPUT(GPIOC_PIN8) | \
- PIN_MODE_INPUT(GPIOC_PIN9) | \
- PIN_MODE_INPUT(GPIOC_PIN10) | \
- PIN_MODE_INPUT(GPIOC_PIN11) | \
- PIN_MODE_INPUT(GPIOC_PIN12) | \
- PIN_MODE_INPUT(GPIOC_PIN13) | \
- PIN_MODE_INPUT(GPIOC_OSC32_IN) | \
- PIN_MODE_INPUT(GPIOC_OSC32_OUT))
-#define VAL_GPIOC_OTYPER (PIN_OTYPE_PUSHPULL(GPIOC_PIN0) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN1) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN2) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN3) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN4) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN5) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN6) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN7) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN8) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN9) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN10) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN11) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN12) | \
- PIN_OTYPE_PUSHPULL(GPIOC_PIN13) | \
- PIN_OTYPE_PUSHPULL(GPIOC_OSC32_IN) | \
- PIN_OTYPE_PUSHPULL(GPIOC_OSC32_OUT))
-#define VAL_GPIOC_OSPEEDR (PIN_OSPEED_VERYLOW(GPIOC_PIN0) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN1) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN2) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN3) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN4) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN5) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN6) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN7) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN8) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN9) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN10) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN11) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN12) | \
- PIN_OSPEED_VERYLOW(GPIOC_PIN13) | \
- PIN_OSPEED_HIGH(GPIOC_OSC32_IN) | \
- PIN_OSPEED_HIGH(GPIOC_OSC32_OUT))
-#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_PIN0) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN1) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN2) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN3) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN4) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN5) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN6) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN7) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN8) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN9) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN10) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN11) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN12) | \
- PIN_PUPDR_PULLUP(GPIOC_PIN13) | \
- PIN_PUPDR_FLOATING(GPIOC_OSC32_IN) | \
- PIN_PUPDR_FLOATING(GPIOC_OSC32_OUT))
-#define VAL_GPIOC_ODR (PIN_ODR_HIGH(GPIOC_PIN0) | \
- PIN_ODR_HIGH(GPIOC_PIN1) | \
- PIN_ODR_HIGH(GPIOC_PIN2) | \
- PIN_ODR_HIGH(GPIOC_PIN3) | \
- PIN_ODR_HIGH(GPIOC_PIN4) | \
- PIN_ODR_HIGH(GPIOC_PIN5) | \
- PIN_ODR_HIGH(GPIOC_PIN6) | \
- PIN_ODR_HIGH(GPIOC_PIN7) | \
- PIN_ODR_HIGH(GPIOC_PIN8) | \
- PIN_ODR_HIGH(GPIOC_PIN9) | \
- PIN_ODR_HIGH(GPIOC_PIN10) | \
- PIN_ODR_HIGH(GPIOC_PIN11) | \
- PIN_ODR_HIGH(GPIOC_PIN12) | \
- PIN_ODR_HIGH(GPIOC_PIN13) | \
- PIN_ODR_HIGH(GPIOC_OSC32_IN) | \
- PIN_ODR_HIGH(GPIOC_OSC32_OUT))
-#define VAL_GPIOC_AFRL (PIN_AFIO_AF(GPIOC_PIN0, 0U) | \
- PIN_AFIO_AF(GPIOC_PIN1, 0U) | \
- PIN_AFIO_AF(GPIOC_PIN2, 0U) | \
- PIN_AFIO_AF(GPIOC_PIN3, 0U) | \
- PIN_AFIO_AF(GPIOC_PIN4, 0U) | \
- PIN_AFIO_AF(GPIOC_PIN5, 0U) | \
- PIN_AFIO_AF(GPIOC_PIN6, 0U) | \
- PIN_AFIO_AF(GPIOC_PIN7, 0U))
-#define VAL_GPIOC_AFRH (PIN_AFIO_AF(GPIOC_PIN8, 0U) | \
- PIN_AFIO_AF(GPIOC_PIN9, 0U) | \
- PIN_AFIO_AF(GPIOC_PIN10, 0U) | \
- PIN_AFIO_AF(GPIOC_PIN11, 0U) | \
- PIN_AFIO_AF(GPIOC_PIN12, 0U) | \
- PIN_AFIO_AF(GPIOC_PIN13, 0U) | \
- PIN_AFIO_AF(GPIOC_OSC32_IN, 0U) | \
- PIN_AFIO_AF(GPIOC_OSC32_OUT, 0U))
-
-/*
- * GPIOD setup:
- *
- * PD0 - PIN0 (input pullup).
- * PD1 - PIN1 (input pullup).
- * PD2 - PIN2 (input pullup).
- * PD3 - PIN3 (input pullup).
- * PD4 - PIN4 (input pullup).
- * PD5 - PIN5 (input pullup).
- * PD6 - PIN6 (input pullup).
- * PD7 - PIN7 (input pullup).
- * PD8 - PIN8 (input pullup).
- * PD9 - PIN9 (input pullup).
- * PD10 - PIN10 (input pullup).
- * PD11 - PIN11 (input pullup).
- * PD12 - PIN12 (input pullup).
- * PD13 - PIN13 (input pullup).
- * PD14 - PIN14 (input pullup).
- * PD15 - PIN15 (input pullup).
- */
-#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \
- PIN_MODE_INPUT(GPIOD_PIN1) | \
- PIN_MODE_INPUT(GPIOD_PIN2) | \
- PIN_MODE_INPUT(GPIOD_PIN3) | \
- PIN_MODE_INPUT(GPIOD_PIN4) | \
- PIN_MODE_INPUT(GPIOD_PIN5) | \
- PIN_MODE_INPUT(GPIOD_PIN6) | \
- PIN_MODE_INPUT(GPIOD_PIN7) | \
- PIN_MODE_INPUT(GPIOD_PIN8) | \
- PIN_MODE_INPUT(GPIOD_PIN9) | \
- PIN_MODE_INPUT(GPIOD_PIN10) | \
- PIN_MODE_INPUT(GPIOD_PIN11) | \
- PIN_MODE_INPUT(GPIOD_PIN12) | \
- PIN_MODE_INPUT(GPIOD_PIN13) | \
- PIN_MODE_INPUT(GPIOD_PIN14) | \
- PIN_MODE_INPUT(GPIOD_PIN15))
-#define VAL_GPIOD_OTYPER (PIN_OTYPE_PUSHPULL(GPIOD_PIN0) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN1) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN2) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN3) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN4) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN5) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN6) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN7) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN8) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN9) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN10) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN11) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN12) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN13) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN14) | \
- PIN_OTYPE_PUSHPULL(GPIOD_PIN15))
-#define VAL_GPIOD_OSPEEDR (PIN_OSPEED_VERYLOW(GPIOD_PIN0) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN1) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN2) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN3) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN4) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN5) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN6) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN7) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN8) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN9) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN10) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN11) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN12) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN13) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN14) | \
- PIN_OSPEED_VERYLOW(GPIOD_PIN15))
-#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN1) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN2) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN3) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN4) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN5) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN6) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN7) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN8) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN9) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN10) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN11) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN12) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN13) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN14) | \
- PIN_PUPDR_PULLUP(GPIOD_PIN15))
-#define VAL_GPIOD_ODR (PIN_ODR_HIGH(GPIOD_PIN0) | \
- PIN_ODR_HIGH(GPIOD_PIN1) | \
- PIN_ODR_HIGH(GPIOD_PIN2) | \
- PIN_ODR_HIGH(GPIOD_PIN3) | \
- PIN_ODR_HIGH(GPIOD_PIN4) | \
- PIN_ODR_HIGH(GPIOD_PIN5) | \
- PIN_ODR_HIGH(GPIOD_PIN6) | \
- PIN_ODR_HIGH(GPIOD_PIN7) | \
- PIN_ODR_HIGH(GPIOD_PIN8) | \
- PIN_ODR_HIGH(GPIOD_PIN9) | \
- PIN_ODR_HIGH(GPIOD_PIN10) | \
- PIN_ODR_HIGH(GPIOD_PIN11) | \
- PIN_ODR_HIGH(GPIOD_PIN12) | \
- PIN_ODR_HIGH(GPIOD_PIN13) | \
- PIN_ODR_HIGH(GPIOD_PIN14) | \
- PIN_ODR_HIGH(GPIOD_PIN15))
-#define VAL_GPIOD_AFRL (PIN_AFIO_AF(GPIOD_PIN0, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN1, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN2, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN3, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN4, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN5, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN6, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN7, 0U))
-#define VAL_GPIOD_AFRH (PIN_AFIO_AF(GPIOD_PIN8, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN9, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN10, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN11, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN12, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN13, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN14, 0U) | \
- PIN_AFIO_AF(GPIOD_PIN15, 0U))
-
-/*
- * GPIOE setup:
- *
- * PE0 - L3GD20_INT1 (input pullup).
- * PE1 - L3GD20_INT2 (input pullup).
- * PE2 - LSM303DLHC_DRDY (input pullup).
- * PE3 - SPI1_CS L3GD20_CS (output pushpull maximum).
- * PE4 - LSM303DLHC_INT1 (input pullup).
- * PE5 - LSM303DLHC_INT2 (input pullup).
- * PE6 - PIN6 (input pullup).
- * PE7 - PIN7 (input pullup).
- * PE8 - LED4_BLUE (output pushpull maximum).
- * PE9 - LED3_RED (output pushpull maximum).
- * PE10 - LED5_ORANGE (output pushpull maximum).
- * PE11 - LED7_GREEN (output pushpull maximum).
- * PE12 - LED9_BLUE (output pushpull maximum).
- * PE13 - LED10_RED (output pushpull maximum).
- * PE14 - LED8_ORANGE (output pushpull maximum).
- * PE15 - LED6_GREEN (output pushpull maximum).
- */
-#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \
- PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \
- PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\
- PIN_MODE_OUTPUT(GPIOE_SPI1_CS) | \
- PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\
- PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\
- PIN_MODE_INPUT(GPIOE_PIN6) | \
- PIN_MODE_INPUT(GPIOE_PIN7) | \
- PIN_MODE_OUTPUT(GPIOE_LED4_BLUE) | \
- PIN_MODE_OUTPUT(GPIOE_LED3_RED) | \
- PIN_MODE_OUTPUT(GPIOE_LED5_ORANGE) | \
- PIN_MODE_OUTPUT(GPIOE_LED7_GREEN) | \
- PIN_MODE_OUTPUT(GPIOE_LED9_BLUE) | \
- PIN_MODE_OUTPUT(GPIOE_LED10_RED) | \
- PIN_MODE_OUTPUT(GPIOE_LED8_ORANGE) | \
- PIN_MODE_OUTPUT(GPIOE_LED6_GREEN))
-#define VAL_GPIOE_OTYPER (PIN_OTYPE_PUSHPULL(GPIOE_L3GD20_INT1) |\
- PIN_OTYPE_PUSHPULL(GPIOE_L3GD20_INT2) |\
- PIN_OTYPE_PUSHPULL(GPIOE_LSM303DLHC_DRDY) |\
- PIN_OTYPE_PUSHPULL(GPIOE_SPI1_CS) | \
- PIN_OTYPE_PUSHPULL(GPIOE_LSM303DLHC_INT1) |\
- PIN_OTYPE_PUSHPULL(GPIOE_LSM303DLHC_INT2) |\
- PIN_OTYPE_PUSHPULL(GPIOE_PIN6) | \
- PIN_OTYPE_PUSHPULL(GPIOE_PIN7) | \
- PIN_OTYPE_PUSHPULL(GPIOE_LED4_BLUE) | \
- PIN_OTYPE_PUSHPULL(GPIOE_LED3_RED) | \
- PIN_OTYPE_PUSHPULL(GPIOE_LED5_ORANGE) |\
- PIN_OTYPE_PUSHPULL(GPIOE_LED7_GREEN) | \
- PIN_OTYPE_PUSHPULL(GPIOE_LED9_BLUE) | \
- PIN_OTYPE_PUSHPULL(GPIOE_LED10_RED) | \
- PIN_OTYPE_PUSHPULL(GPIOE_LED8_ORANGE) |\
- PIN_OTYPE_PUSHPULL(GPIOE_LED6_GREEN))
-#define VAL_GPIOE_OSPEEDR (PIN_OSPEED_VERYLOW(GPIOE_L3GD20_INT1) |\
- PIN_OSPEED_VERYLOW(GPIOE_L3GD20_INT2) |\
- PIN_OSPEED_VERYLOW(GPIOE_LSM303DLHC_DRDY) |\
- PIN_OSPEED_HIGH(GPIOE_SPI1_CS) | \
- PIN_OSPEED_VERYLOW(GPIOE_LSM303DLHC_INT1) |\
- PIN_OSPEED_VERYLOW(GPIOE_LSM303DLHC_INT2) |\
- PIN_OSPEED_VERYLOW(GPIOE_PIN6) | \
- PIN_OSPEED_VERYLOW(GPIOE_PIN7) | \
- PIN_OSPEED_HIGH(GPIOE_LED4_BLUE) | \
- PIN_OSPEED_HIGH(GPIOE_LED3_RED) | \
- PIN_OSPEED_HIGH(GPIOE_LED5_ORANGE) | \
- PIN_OSPEED_HIGH(GPIOE_LED7_GREEN) | \
- PIN_OSPEED_HIGH(GPIOE_LED9_BLUE) | \
- PIN_OSPEED_HIGH(GPIOE_LED10_RED) | \
- PIN_OSPEED_HIGH(GPIOE_LED8_ORANGE) | \
- PIN_OSPEED_HIGH(GPIOE_LED6_GREEN))
-#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \
- PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \
- PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\
- PIN_PUPDR_FLOATING(GPIOE_SPI1_CS) | \
- PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\
- PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\
- PIN_PUPDR_PULLUP(GPIOE_PIN6) | \
- PIN_PUPDR_PULLUP(GPIOE_PIN7) | \
- PIN_PUPDR_PULLUP(GPIOE_LED4_BLUE) | \
- PIN_PUPDR_PULLUP(GPIOE_LED3_RED) | \
- PIN_PUPDR_PULLUP(GPIOE_LED5_ORANGE) | \
- PIN_PUPDR_FLOATING(GPIOE_LED7_GREEN) | \
- PIN_PUPDR_PULLUP(GPIOE_LED9_BLUE) | \
- PIN_PUPDR_FLOATING(GPIOE_LED10_RED) | \
- PIN_PUPDR_FLOATING(GPIOE_LED8_ORANGE) |\
- PIN_PUPDR_FLOATING(GPIOE_LED6_GREEN))
-#define VAL_GPIOE_ODR (PIN_ODR_HIGH(GPIOE_L3GD20_INT1) | \
- PIN_ODR_HIGH(GPIOE_L3GD20_INT2) | \
- PIN_ODR_HIGH(GPIOE_LSM303DLHC_DRDY) | \
- PIN_ODR_HIGH(GPIOE_SPI1_CS) | \
- PIN_ODR_HIGH(GPIOE_LSM303DLHC_INT1) | \
- PIN_ODR_HIGH(GPIOE_LSM303DLHC_INT2) | \
- PIN_ODR_HIGH(GPIOE_PIN6) | \
- PIN_ODR_HIGH(GPIOE_PIN7) | \
- PIN_ODR_LOW(GPIOE_LED4_BLUE) | \
- PIN_ODR_LOW(GPIOE_LED3_RED) | \
- PIN_ODR_LOW(GPIOE_LED5_ORANGE) | \
- PIN_ODR_LOW(GPIOE_LED7_GREEN) | \
- PIN_ODR_LOW(GPIOE_LED9_BLUE) | \
- PIN_ODR_LOW(GPIOE_LED10_RED) | \
- PIN_ODR_LOW(GPIOE_LED8_ORANGE) | \
- PIN_ODR_LOW(GPIOE_LED6_GREEN))
-#define VAL_GPIOE_AFRL (PIN_AFIO_AF(GPIOE_L3GD20_INT1, 0U) | \
- PIN_AFIO_AF(GPIOE_L3GD20_INT2, 0U) | \
- PIN_AFIO_AF(GPIOE_LSM303DLHC_DRDY, 0U) |\
- PIN_AFIO_AF(GPIOE_SPI1_CS, 0U) | \
- PIN_AFIO_AF(GPIOE_LSM303DLHC_INT1, 0U) |\
- PIN_AFIO_AF(GPIOE_LSM303DLHC_INT2, 0U) |\
- PIN_AFIO_AF(GPIOE_PIN6, 0U) | \
- PIN_AFIO_AF(GPIOE_PIN7, 0U))
-#define VAL_GPIOE_AFRH (PIN_AFIO_AF(GPIOE_LED4_BLUE, 0U) | \
- PIN_AFIO_AF(GPIOE_LED3_RED, 0U) | \
- PIN_AFIO_AF(GPIOE_LED5_ORANGE, 0U) | \
- PIN_AFIO_AF(GPIOE_LED7_GREEN, 0U) | \
- PIN_AFIO_AF(GPIOE_LED9_BLUE, 0U) | \
- PIN_AFIO_AF(GPIOE_LED10_RED, 0U) | \
- PIN_AFIO_AF(GPIOE_LED8_ORANGE, 0U) | \
- PIN_AFIO_AF(GPIOE_LED6_GREEN, 0U))
-
-/*
- * GPIOF setup:
- *
- * PF0 - OSC_IN (input floating).
- * PF1 - OSC_OUT (input floating).
- * PF2 - PIN2 (input pullup).
- * PF3 - PIN3 (input pullup).
- * PF4 - PIN4 (input pullup).
- * PF5 - PIN5 (input pullup).
- * PF6 - PIN6 (input pullup).
- * PF7 - PIN7 (input pullup).
- * PF8 - PIN8 (input pullup).
- * PF9 - PIN9 (input pullup).
- * PF10 - PIN10 (input pullup).
- * PF11 - PIN11 (input pullup).
- * PF12 - PIN12 (input pullup).
- * PF13 - PIN13 (input pullup).
- * PF14 - PIN14 (input pullup).
- * PF15 - PIN15 (input pullup).
- */
-#define VAL_GPIOF_MODER (PIN_MODE_INPUT(GPIOF_OSC_IN) | \
- PIN_MODE_INPUT(GPIOF_OSC_OUT) | \
- PIN_MODE_INPUT(GPIOF_PIN2) | \
- PIN_MODE_INPUT(GPIOF_PIN3) | \
- PIN_MODE_INPUT(GPIOF_PIN4) | \
- PIN_MODE_INPUT(GPIOF_PIN5) | \
- PIN_MODE_INPUT(GPIOF_PIN6) | \
- PIN_MODE_INPUT(GPIOF_PIN7) | \
- PIN_MODE_INPUT(GPIOF_PIN8) | \
- PIN_MODE_INPUT(GPIOF_PIN9) | \
- PIN_MODE_INPUT(GPIOF_PIN10) | \
- PIN_MODE_INPUT(GPIOF_PIN11) | \
- PIN_MODE_INPUT(GPIOF_PIN12) | \
- PIN_MODE_INPUT(GPIOF_PIN13) | \
- PIN_MODE_INPUT(GPIOF_PIN14) | \
- PIN_MODE_INPUT(GPIOF_PIN15))
-#define VAL_GPIOF_OTYPER (PIN_OTYPE_PUSHPULL(GPIOF_OSC_IN) | \
- PIN_OTYPE_PUSHPULL(GPIOF_OSC_OUT) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN2) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN3) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN4) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN5) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN6) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN7) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN8) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN9) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN10) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN11) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN12) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN13) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN14) | \
- PIN_OTYPE_PUSHPULL(GPIOF_PIN15))
-#define VAL_GPIOF_OSPEEDR (PIN_OSPEED_HIGH(GPIOF_OSC_IN) | \
- PIN_OSPEED_HIGH(GPIOF_OSC_OUT) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN2) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN3) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN4) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN5) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN6) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN7) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN8) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN9) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN10) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN11) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN12) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN13) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN14) | \
- PIN_OSPEED_VERYLOW(GPIOF_PIN15))
-#define VAL_GPIOF_PUPDR (PIN_PUPDR_FLOATING(GPIOF_OSC_IN) | \
- PIN_PUPDR_FLOATING(GPIOF_OSC_OUT) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN2) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN3) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN4) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN5) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN6) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN7) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN8) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN9) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN10) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN11) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN12) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN13) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN14) | \
- PIN_PUPDR_PULLUP(GPIOF_PIN15))
-#define VAL_GPIOF_ODR (PIN_ODR_HIGH(GPIOF_OSC_IN) | \
- PIN_ODR_HIGH(GPIOF_OSC_OUT) | \
- PIN_ODR_HIGH(GPIOF_PIN2) | \
- PIN_ODR_HIGH(GPIOF_PIN3) | \
- PIN_ODR_HIGH(GPIOF_PIN4) | \
- PIN_ODR_HIGH(GPIOF_PIN5) | \
- PIN_ODR_HIGH(GPIOF_PIN6) | \
- PIN_ODR_HIGH(GPIOF_PIN7) | \
- PIN_ODR_HIGH(GPIOF_PIN8) | \
- PIN_ODR_HIGH(GPIOF_PIN9) | \
- PIN_ODR_HIGH(GPIOF_PIN10) | \
- PIN_ODR_HIGH(GPIOF_PIN11) | \
- PIN_ODR_HIGH(GPIOF_PIN12) | \
- PIN_ODR_HIGH(GPIOF_PIN13) | \
- PIN_ODR_HIGH(GPIOF_PIN14) | \
- PIN_ODR_HIGH(GPIOF_PIN15))
-#define VAL_GPIOF_AFRL (PIN_AFIO_AF(GPIOF_OSC_IN, 0U) | \
- PIN_AFIO_AF(GPIOF_OSC_OUT, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN2, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN3, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN4, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN5, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN6, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN7, 0U))
-#define VAL_GPIOF_AFRH (PIN_AFIO_AF(GPIOF_PIN8, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN9, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN10, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN11, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN12, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN13, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN14, 0U) | \
- PIN_AFIO_AF(GPIOF_PIN15, 0U))
-
-/*
- * GPIOG setup:
- *
- * PG0 - PIN0 (input pullup).
- * PG1 - PIN1 (input pullup).
- * PG2 - PIN2 (input pullup).
- * PG3 - PIN3 (input pullup).
- * PG4 - PIN4 (input pullup).
- * PG5 - PIN5 (input pullup).
- * PG6 - PIN6 (input pullup).
- * PG7 - PIN7 (input pullup).
- * PG8 - PIN8 (input pullup).
- * PG9 - PIN9 (input pullup).
- * PG10 - PIN10 (input pullup).
- * PG11 - PIN11 (input pullup).
- * PG12 - PIN12 (input pullup).
- * PG13 - PIN13 (input pullup).
- * PG14 - PIN14 (input pullup).
- * PG15 - PIN15 (input pullup).
- */
-#define VAL_GPIOG_MODER (PIN_MODE_INPUT(GPIOG_PIN0) | \
- PIN_MODE_INPUT(GPIOG_PIN1) | \
- PIN_MODE_INPUT(GPIOG_PIN2) | \
- PIN_MODE_INPUT(GPIOG_PIN3) | \
- PIN_MODE_INPUT(GPIOG_PIN4) | \
- PIN_MODE_INPUT(GPIOG_PIN5) | \
- PIN_MODE_INPUT(GPIOG_PIN6) | \
- PIN_MODE_INPUT(GPIOG_PIN7) | \
- PIN_MODE_INPUT(GPIOG_PIN8) | \
- PIN_MODE_INPUT(GPIOG_PIN9) | \
- PIN_MODE_INPUT(GPIOG_PIN10) | \
- PIN_MODE_INPUT(GPIOG_PIN11) | \
- PIN_MODE_INPUT(GPIOG_PIN12) | \
- PIN_MODE_INPUT(GPIOG_PIN13) | \
- PIN_MODE_INPUT(GPIOG_PIN14) | \
- PIN_MODE_INPUT(GPIOG_PIN15))
-#define VAL_GPIOG_OTYPER (PIN_OTYPE_PUSHPULL(GPIOG_PIN0) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN1) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN2) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN3) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN4) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN5) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN6) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN7) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN8) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN9) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN10) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN11) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN12) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN13) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN14) | \
- PIN_OTYPE_PUSHPULL(GPIOG_PIN15))
-#define VAL_GPIOG_OSPEEDR (PIN_OSPEED_VERYLOW(GPIOG_PIN0) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN1) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN2) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN3) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN4) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN5) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN6) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN7) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN8) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN9) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN10) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN11) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN12) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN13) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN14) | \
- PIN_OSPEED_VERYLOW(GPIOG_PIN15))
-#define VAL_GPIOG_PUPDR (PIN_PUPDR_PULLUP(GPIOG_PIN0) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN1) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN2) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN3) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN4) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN5) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN6) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN7) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN8) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN9) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN10) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN11) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN12) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN13) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN14) | \
- PIN_PUPDR_PULLUP(GPIOG_PIN15))
-#define VAL_GPIOG_ODR (PIN_ODR_HIGH(GPIOG_PIN0) | \
- PIN_ODR_HIGH(GPIOG_PIN1) | \
- PIN_ODR_HIGH(GPIOG_PIN2) | \
- PIN_ODR_HIGH(GPIOG_PIN3) | \
- PIN_ODR_HIGH(GPIOG_PIN4) | \
- PIN_ODR_HIGH(GPIOG_PIN5) | \
- PIN_ODR_HIGH(GPIOG_PIN6) | \
- PIN_ODR_HIGH(GPIOG_PIN7) | \
- PIN_ODR_HIGH(GPIOG_PIN8) | \
- PIN_ODR_HIGH(GPIOG_PIN9) | \
- PIN_ODR_HIGH(GPIOG_PIN10) | \
- PIN_ODR_HIGH(GPIOG_PIN11) | \
- PIN_ODR_HIGH(GPIOG_PIN12) | \
- PIN_ODR_HIGH(GPIOG_PIN13) | \
- PIN_ODR_HIGH(GPIOG_PIN14) | \
- PIN_ODR_HIGH(GPIOG_PIN15))
-#define VAL_GPIOG_AFRL (PIN_AFIO_AF(GPIOG_PIN0, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN1, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN2, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN3, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN4, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN5, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN6, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN7, 0U))
-#define VAL_GPIOG_AFRH (PIN_AFIO_AF(GPIOG_PIN8, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN9, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN10, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN11, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN12, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN13, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN14, 0U) | \
- PIN_AFIO_AF(GPIOG_PIN15, 0U))
-
-/*
- * GPIOH setup:
- *
- * PH0 - PIN0 (input pullup).
- * PH1 - PIN1 (input pullup).
- * PH2 - PIN2 (input pullup).
- * PH3 - PIN3 (input pullup).
- * PH4 - PIN4 (input pullup).
- * PH5 - PIN5 (input pullup).
- * PH6 - PIN6 (input pullup).
- * PH7 - PIN7 (input pullup).
- * PH8 - PIN8 (input pullup).
- * PH9 - PIN9 (input pullup).
- * PH10 - PIN10 (input pullup).
- * PH11 - PIN11 (input pullup).
- * PH12 - PIN12 (input pullup).
- * PH13 - PIN13 (input pullup).
- * PH14 - PIN14 (input pullup).
- * PH15 - PIN15 (input pullup).
- */
-#define VAL_GPIOH_MODER (PIN_MODE_INPUT(GPIOH_PIN0) | \
- PIN_MODE_INPUT(GPIOH_PIN1) | \
- PIN_MODE_INPUT(GPIOH_PIN2) | \
- PIN_MODE_INPUT(GPIOH_PIN3) | \
- PIN_MODE_INPUT(GPIOH_PIN4) | \
- PIN_MODE_INPUT(GPIOH_PIN5) | \
- PIN_MODE_INPUT(GPIOH_PIN6) | \
- PIN_MODE_INPUT(GPIOH_PIN7) | \
- PIN_MODE_INPUT(GPIOH_PIN8) | \
- PIN_MODE_INPUT(GPIOH_PIN9) | \
- PIN_MODE_INPUT(GPIOH_PIN10) | \
- PIN_MODE_INPUT(GPIOH_PIN11) | \
- PIN_MODE_INPUT(GPIOH_PIN12) | \
- PIN_MODE_INPUT(GPIOH_PIN13) | \
- PIN_MODE_INPUT(GPIOH_PIN14) | \
- PIN_MODE_INPUT(GPIOH_PIN15))
-#define VAL_GPIOH_OTYPER (PIN_OTYPE_PUSHPULL(GPIOH_PIN0) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN1) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN2) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN3) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN4) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN5) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN6) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN7) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN8) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN9) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN10) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN11) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN12) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN13) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN14) | \
- PIN_OTYPE_PUSHPULL(GPIOH_PIN15))
-#define VAL_GPIOH_OSPEEDR (PIN_OSPEED_VERYLOW(GPIOH_PIN0) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN1) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN2) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN3) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN4) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN5) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN6) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN7) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN8) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN9) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN10) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN11) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN12) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN13) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN14) | \
- PIN_OSPEED_VERYLOW(GPIOH_PIN15))
-#define VAL_GPIOH_PUPDR (PIN_PUPDR_PULLUP(GPIOH_PIN0) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN1) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN2) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN3) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN4) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN5) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN6) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN7) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN8) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN9) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN10) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN11) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN12) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN13) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN14) | \
- PIN_PUPDR_PULLUP(GPIOH_PIN15))
-#define VAL_GPIOH_ODR (PIN_ODR_HIGH(GPIOH_PIN0) | \
- PIN_ODR_HIGH(GPIOH_PIN1) | \
- PIN_ODR_HIGH(GPIOH_PIN2) | \
- PIN_ODR_HIGH(GPIOH_PIN3) | \
- PIN_ODR_HIGH(GPIOH_PIN4) | \
- PIN_ODR_HIGH(GPIOH_PIN5) | \
- PIN_ODR_HIGH(GPIOH_PIN6) | \
- PIN_ODR_HIGH(GPIOH_PIN7) | \
- PIN_ODR_HIGH(GPIOH_PIN8) | \
- PIN_ODR_HIGH(GPIOH_PIN9) | \
- PIN_ODR_HIGH(GPIOH_PIN10) | \
- PIN_ODR_HIGH(GPIOH_PIN11) | \
- PIN_ODR_HIGH(GPIOH_PIN12) | \
- PIN_ODR_HIGH(GPIOH_PIN13) | \
- PIN_ODR_HIGH(GPIOH_PIN14) | \
- PIN_ODR_HIGH(GPIOH_PIN15))
-#define VAL_GPIOH_AFRL (PIN_AFIO_AF(GPIOH_PIN0, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN1, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN2, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN3, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN4, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN5, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN6, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN7, 0U))
-#define VAL_GPIOH_AFRH (PIN_AFIO_AF(GPIOH_PIN8, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN9, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN10, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN11, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN12, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN13, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN14, 0U) | \
- PIN_AFIO_AF(GPIOH_PIN15, 0U))
-
-//*****************************************************************************
-
-/*
- * AHB_CLK
- */
-#define AHB_CLK STM32_HCLK
-
-/*
- * LEDs
- */
-/* red */
-#ifndef USE_LED_1
-#define USE_LED_1 1
-#endif
-#define LED_1_GPIO GPIOE
-#define LED_1_GPIO_PIN GPIO9
-#define LED_1_GPIO_ON gpio_clear
-#define LED_1_GPIO_OFF gpio_set
-
-/* blue */
-#ifndef USE_LED_2
-#define USE_LED_2 1
-#endif
-#define LED_2_GPIO GPIOE
-#define LED_2_GPIO_PIN GPIO8
-#define LED_2_GPIO_ON gpio_clear
-#define LED_2_GPIO_OFF gpio_set
-
-/*orange */
-#ifndef USE_LED_3
-#define USE_LED_3 1
-#endif
-#define LED_3_GPIO GPIOE
-#define LED_3_GPIO_PIN GPIO10
-#define LED_3_GPIO_ON gpio_clear
-#define LED_3_GPIO_OFF gpio_set
-
-/* green */
-#ifndef USE_LED_4
-#define USE_LED_4 1
-#endif
-#define LED_4_GPIO GPIOE
-#define LED_4_GPIO_PIN GPIO11
-#define LED_4_GPIO_ON gpio_clear
-#define LED_4_GPIO_OFF gpio_set
-
-/* blue*/
-#ifndef USE_LED_5
-#define USE_LED_5 0
-#endif
-#define LED_5_GPIO GPIOE
-#define LED_5_GPIO_PIN GPIO12
-#define LED_5_GPIO_ON gpio_set
-#define LED_5_GPIO_OFF gpio_clear
-
-/* red*/
-#ifndef USE_LED_6
-#define USE_LED_6 0
-#endif
-#define LED_6_GPIO GPIOE
-#define LED_6_GPIO_PIN GPIO13
-#define LED_6_GPIO_ON gpio_set
-#define LED_6_GPIO_OFF gpio_clear
-
-/* orange*/
-#ifndef USE_LED_7
-#define USE_LED_7 0
-#endif
-#define LED_7_GPIO GPIOE
-#define LED_7_GPIO_PIN GPIO13
-#define LED_7_GPIO_ON gpio_set
-#define LED_7_GPIO_OFF gpio_clear
-
-/* green*/
-#ifndef USE_LED_8
-#define USE_LED_8 0
-#endif
-#define LED_8_GPIO GPIOE
-#define LED_8_GPIO_PIN GPIO15
-#define LED_8_GPIO_ON gpio_set
-#define LED_8_GPIO_OFF gpio_clear
-
-
-/* Pint to set Uart2 RX polarity, on PB13, output high inverts, low doesn't */
-#define RC_POLARITY_GPIO_PORT GPIOB
-#define RC_POLARITY_GPIO_PIN GPIO13
-
-/*
- * ADCs
- */
-// AUX 1
-#if USE_ADC_1
-#define AD1_1_CHANNEL ADC_CHANNEL_IN9
-#define ADC_1 AD1_1
-#define ADC_1_GPIO_PORT GPIOB
-#define ADC_1_GPIO_PIN GPIO1
-#endif
-
-// AUX 2
-#if USE_ADC_2
-#define AD1_2_CHANNEL ADC_CHANNEL_IN15
-#define ADC_2 AD1_2
-#define ADC_2_GPIO_PORT GPIOC
-#define ADC_2_GPIO_PIN GPIO5
-#endif
-
-// AUX 3
-#if USE_ADC_3
-#define AD1_3_CHANNEL ADC_CHANNEL_IN14
-#define ADC_3 AD1_3
-#define ADC_3_GPIO_PORT GPIOC
-#define ADC_3_GPIO_PIN GPIO4
-#endif
-
-// Internal ADC for battery enabled by default
-#ifndef USE_ADC_4
-#define USE_ADC_4 1
-#endif
-#if USE_ADC_4
-#define AD1_4_CHANNEL ADC_CHANNEL_IN4
-#define ADC_4 AD1_4
-#define ADC_4_GPIO_PORT GPIOA
-#define ADC_4_GPIO_PIN GPIO4
-#endif
-
-/* allow to define ADC_CHANNEL_VSUPPLY in the airframe file*/
-#ifndef ADC_CHANNEL_VSUPPLY
-#define ADC_CHANNEL_VSUPPLY ADC_4
-#endif
-
-#define DefaultVoltageOfAdc(adc) (0.006185*adc)
-
-/*
- * PWM defines
- */
-#ifndef USE_PWM0
-#define USE_PWM0 1
-#endif
-#if USE_PWM0
-#define PWM_SERVO_0 0
-#define PWM_SERVO_0_GPIO GPIOB
-#define PWM_SERVO_0_PIN GPIO0
-#define PWM_SERVO_0_AF GPIO_AF2
-#define PWM_SERVO_0_DRIVER PWMD3
-#define PWM_SERVO_0_CHANNEL 2
-#define PWM_SERVO_0_ACTIVE PWM_OUTPUT_ACTIVE_HIGH
-#else
-#define PWM_SERVO_0_ACTIVE PWM_OUTPUT_DISABLED
-#endif
-
-#ifndef USE_PWM1
-#define USE_PWM1 1
-#endif
-#if USE_PWM1
-#define PWM_SERVO_1 1
-#define PWM_SERVO_1_GPIO GPIOA
-#define PWM_SERVO_1_PIN GPIO2
-#define PWM_SERVO_1_AF GPIO_AF1
-#define PWM_SERVO_1_DRIVER PWMD2
-#define PWM_SERVO_1_CHANNEL 2
-#define PWM_SERVO_1_ACTIVE PWM_OUTPUT_ACTIVE_HIGH
-#else
-#define PWM_SERVO_1_ACTIVE PWM_OUTPUT_DISABLED
-#endif
-
-#ifndef USE_PWM2
-#define USE_PWM2 1
-#endif
-#if USE_PWM2
-#define PWM_SERVO_2 2
-#define PWM_SERVO_2_GPIO GPIOB
-#define PWM_SERVO_2_PIN GPIO5
-#define PWM_SERVO_2_AF GPIO_AF2
-#define PWM_SERVO_2_DRIVER PWMD3
-#define PWM_SERVO_2_CHANNEL 1
-#define PWM_SERVO_2_ACTIVE PWM_OUTPUT_ACTIVE_HIGH
-#else
-#define PWM_SERVO_2_ACTIVE PWM_OUTPUT_DISABLED
-#endif
-
-#ifndef USE_PWM3
-#define USE_PWM3 1
-#endif
-#if USE_PWM3
-#define PWM_SERVO_3 3
-#define PWM_SERVO_3_GPIO GPIOB
-#define PWM_SERVO_3_PIN GPIO4
-#define PWM_SERVO_3_AF GPIO_AF2
-#define PWM_SERVO_3_DRIVER PWMD3
-#define PWM_SERVO_3_CHANNEL 0
-#define PWM_SERVO_3_ACTIVE PWM_OUTPUT_ACTIVE_HIGH
-#else
-#define PWM_SERVO_3_ACTIVE PWM_OUTPUT_DISABLED
-#endif
-
-#ifndef USE_PWM4
-#define USE_PWM4 1
-#endif
-#if USE_PWM4
-#define PWM_SERVO_4 4
-#define PWM_SERVO_4_GPIO GPIOB
-#define PWM_SERVO_4_PIN GPIO3
-#define PWM_SERVO_4_AF GPIO_AF1
-#define PWM_SERVO_4_DRIVER PWMD2
-#define PWM_SERVO_4_CHANNEL 1
-#define PWM_SERVO_4_ACTIVE PWM_OUTPUT_ACTIVE_HIGH
-#else
-#define PWM_SERVO_4_ACTIVE PWM_OUTPUT_DISABLED
-#endif
-
-#ifndef USE_PWM5
-#define USE_PWM5 1
-#endif
-#if USE_PWM5
-#define PWM_SERVO_5 5
-#define PWM_SERVO_5_GPIO GPIOA
-#define PWM_SERVO_5_PIN GPIO15
-#define PWM_SERVO_5_AF GPIO_AF1
-#define PWM_SERVO_5_DRIVER PWMD2
-#define PWM_SERVO_5_CHANNEL 0
-#define PWM_SERVO_5_ACTIVE PWM_OUTPUT_ACTIVE_HIGH
-#else
-#define PWM_SERVO_5_ACTIVE PWM_OUTPUT_DISABLED
-#endif
-
-#if USE_PWM6
-#define PWM_SERVO_6 6
-#define PWM_SERVO_6_GPIO GPIOB
-#define PWM_SERVO_6_PIN GPIO1
-#define PWM_SERVO_6_AF GPIO_AF2
-#define PWM_SERVO_6_DRIVER PWMD3
-#define PWM_SERVO_6_CHANNEL 3
-#define PWM_SERVO_6_ACTIVE PWM_OUTPUT_ACTIVE_HIGH
-#else
-#define PWM_SERVO_6_ACTIVE PWM_OUTPUT_DISABLED
-#endif
-
-
-#ifdef STM32_PWM_USE_TIM2
-#define PWM_CONF_TIM2 STM32_PWM_USE_TIM2
-#else
-#define PWM_CONF_TIM2 1
-#endif
-#define PWM_CONF2_DEF { \
- PWM_FREQUENCY, \
- PWM_FREQUENCY/TIM2_SERVO_HZ, \
- NULL, \
- { \
- { PWM_SERVO_5_ACTIVE, NULL }, \
- { PWM_SERVO_4_ACTIVE, NULL }, \
- { PWM_SERVO_1_ACTIVE, NULL }, \
- { PWM_OUTPUT_DISABLED, NULL }, \
- }, \
- 0, \
- 0 \
- }
-
-#ifdef STM32_PWM_USE_TIM3
-#define PWM_CONF_TIM3 STM32_PWM_USE_TIM3
-#else
-#define PWM_CONF_TIM3 1
-#endif
-#define PWM_CONF3_DEF { \
- PWM_FREQUENCY, \
- PWM_FREQUENCY/TIM3_SERVO_HZ, \
- NULL, \
- { \
- { PWM_SERVO_3_ACTIVE, NULL }, \
- { PWM_SERVO_2_ACTIVE, NULL }, \
- { PWM_SERVO_0_ACTIVE, NULL }, \
- { PWM_SERVO_6_ACTIVE, NULL }, \
- }, \
- 0, \
- 0 \
- }
-
-/**
- * PPM radio defines
- */
-#define RC_PPM_TICKS_PER_USEC 2
-#define PPM_TIMER_FREQUENCY 2000000
-#define PPM_CHANNEL ICU_CHANNEL_1
-#define PPM_TIMER ICUD1
-
-/*
- * PWM input
- */
-// PWM_INPUT 1 on PA8 (also PPM IN)
-#define PWM_INPUT1_ICU ICUD1
-#define PWM_INPUT1_CHANNEL ICU_CHANNEL_1
-// PPM in (aka PA8) is used: not compatible with PPM RC receiver
-#define PWM_INPUT1_GPIO_PORT GPIOA
-#define PWM_INPUT1_GPIO_PIN GPIO8
-#define PWM_INPUT1_GPIO_AF GPIO_AF1
-
-// PWM_INPUT 2 on PA3 (also SERVO 1)
-#if (USE_PWM1 && USE_PWM_INPUT2)
-#error "PW1 and PWM_INPUT2 are not compatible"
-#endif
-#define PWM_INPUT2_ICU ICUD9
-#define PWM_INPUT2_CHANNEL ICU_CHANNEL_1
-#define PWM_INPUT2_GPIO_PORT GPIOA
-#define PWM_INPUT2_GPIO_PIN GPIO2
-#define PWM_INPUT2_GPIO_AF GPIO_AF3
-
-/**
- * I2C defines
- */
-#ifndef I2C1_CLOCK_SPEED
-#define I2C1_CLOCK_SPEED 400000
-#endif
-#if I2C1_CLOCK_SPEED == 400000
-#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2
-#elif I2C1_CLOCK_SPEED == 100000
-#define I2C1_DUTY_CYCLE STD_DUTY_CYCLE
-#else
-#error Invalid I2C1 clock speed
-#endif
-#define I2C1_CFG_DEF { \
- OPMODE_I2C, \
- I2C1_CLOCK_SPEED, \
- I2C1_DUTY_CYCLE, \
- }
-
-#ifndef I2C2_CLOCK_SPEED
-#define I2C2_CLOCK_SPEED 400000
-#endif
-#if I2C2_CLOCK_SPEED == 400000
-#define I2C2_DUTY_CYCLE FAST_DUTY_CYCLE_2
-#elif I2C2_CLOCK_SPEED == 100000
-#define I2C2_DUTY_CYCLE STD_DUTY_CYCLE
-#else
-#error Invalid I2C2 clock speed
-#endif
-#define I2C2_CFG_DEF { \
- OPMODE_I2C, \
- I2C2_CLOCK_SPEED, \
- I2C2_DUTY_CYCLE, \
- }
-
-/**
- * SPI Config
- */
-#define SPI1_GPIO_AF GPIO_AF5
-#define SPI1_GPIO_PORT_MISO GPIOA
-#define SPI1_GPIO_MISO GPIO6
-#define SPI1_GPIO_PORT_MOSI GPIOA
-#define SPI1_GPIO_MOSI GPIO7
-#define SPI1_GPIO_PORT_SCK GPIOA
-#define SPI1_GPIO_SCK GPIO5
-
-// SLAVE0 on SPI connector
-#define SPI_SELECT_SLAVE0_PORT GPIOB
-#define SPI_SELECT_SLAVE0_PIN GPIO9
-// SLAVE1 on AUX1
-#define SPI_SELECT_SLAVE1_PORT GPIOB
-#define SPI_SELECT_SLAVE1_PIN GPIO1
-// SLAVE2 on AUX2
-#define SPI_SELECT_SLAVE2_PORT GPIOC
-#define SPI_SELECT_SLAVE2_PIN GPIO5
-// SLAVE3 on AUX3
-#define SPI_SELECT_SLAVE3_PORT GPIOC
-#define SPI_SELECT_SLAVE3_PIN GPIO4
-// SLAVE4 on AUX4
-#define SPI_SELECT_SLAVE4_PORT GPIOB
-#define SPI_SELECT_SLAVE4_PIN GPIO15
-
-/**
- * Baro
- *
- * Apparently needed for backwards compatibility
- * with the ancient onboard baro boards
- */
-// #ifndef USE_BARO_BOARD
-// #define USE_BARO_BOARD 1
-// #endif
-
-/*
- * Actuators for fixedwing
- */
-/* Default actuators driver */
-#define DEFAULT_ACTUATORS "subsystems/actuators/actuators_pwm.h"
-#define ActuatorDefaultSet(_x,_y) ActuatorPwmSet(_x,_y)
-#define ActuatorsDefaultInit() ActuatorsPwmInit()
-#define ActuatorsDefaultCommit() ActuatorsPwmCommit()
-
-
-/**
- * SDIO
- */
-#define SDIO_D0_PORT GPIOC
-#define SDIO_D0_PIN GPIOC_SDIO_D0
-#define SDIO_D1_PORT GPIOC
-#define SDIO_D1_PIN GPIOC_SDIO_D1
-#define SDIO_D2_PORT GPIOC
-#define SDIO_D2_PIN GPIOC_SDIO_D2
-#define SDIO_D3_PORT GPIOC
-#define SDIO_D3_PIN GPIOC_SDIO_D3
-#define SDIO_CK_PORT GPIOC
-#define SDIO_CK_PIN GPIOC_SDIO_CK
-#define SDIO_CMD_PORT GPIOD
-#define SDIO_CMD_PIN GPIOD_SDIO_CMD
-#define SDIO_AF 12
-// bat monitoring for file closing
-#define SDLOG_BAT_ADC ADCD1
-#define SDLOG_BAT_CHAN AD1_4_CHANNEL
-// usb led status
-#define SDLOG_USB_LED 4
-#define SDLOG_USB_VBUS_PORT GPIOA
-#define SDLOG_USB_VBUS_PIN GPIO9
-
-
-//*****************************************************************************
-#if !defined(_FROM_ASM_)
-#ifdef __cplusplus
-extern "C" {
-#endif
-void boardInit(void);
-#ifdef __cplusplus
-}
-#endif
-#endif /* _FROM_ASM_ */
-
-#endif /* BOARD_H */
diff --git a/sw/airborne/boards/stm32f3_discovery/chibios/v1.0/board.mk b/sw/airborne/boards/stm32f3_discovery/chibios/v1.0/board.mk
deleted file mode 100644
index 8d560f4385..0000000000
--- a/sw/airborne/boards/stm32f3_discovery/chibios/v1.0/board.mk
+++ /dev/null
@@ -1,24 +0,0 @@
-#
-# ChibiOS/RT - Copyright (C) 2006-2013 Giovanni Di Sirio
-#
-# 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.
-#
-# Required include directories
-BOARDINC = $(CHIBIOS_BOARD_DIR)
-
-# List of all the board related files.
-BOARDSRC = ${BOARDINC}/board.c
-
-# Shared variables
-ALLCSRC += $(BOARDSRC)
-ALLINC += $(BOARDINC)
diff --git a/sw/airborne/boards/stm32f3_discovery/chibios/v1.0/mcuconf.h b/sw/airborne/boards/stm32f3_discovery/chibios/v1.0/mcuconf.h
deleted file mode 100644
index 2a26642a2f..0000000000
--- a/sw/airborne/boards/stm32f3_discovery/chibios/v1.0/mcuconf.h
+++ /dev/null
@@ -1,301 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
-
- 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 MCUCONF_H
-#define MCUCONF_H
-
-/*
- * STM32F3xx drivers configuration.
- * The following settings override the default settings present in
- * the various device driver implementation headers.
- * Note that the settings for each driver only have effect if the whole
- * driver is enabled in halconf.h.
- *
- * IRQ priorities:
- * 15...0 Lowest...Highest.
- *
- * DMA priorities:
- * 0...3 Lowest...Highest.
- */
-
-#define STM32F3xx_MCUCONF
-
-/*
- * HAL driver system settings.
- */
-#define STM32_NO_INIT FALSE
-#define STM32_PVD_ENABLE FALSE
-#define STM32_PLS STM32_PLS_LEV0
-#define STM32_HSI_ENABLED TRUE
-#define STM32_LSI_ENABLED TRUE
-#define STM32_HSE_ENABLED TRUE
-#define STM32_LSE_ENABLED FALSE
-#define STM32_SW STM32_SW_PLL
-#define STM32_PLLSRC STM32_PLLSRC_HSE
-#define STM32_PREDIV_VALUE 1
-#define STM32_PLLMUL_VALUE 9
-#define STM32_HPRE STM32_HPRE_DIV1
-#define STM32_PPRE1 STM32_PPRE1_DIV2
-#define STM32_PPRE2 STM32_PPRE2_DIV2
-#define STM32_MCOSEL STM32_MCOSEL_NOCLOCK
-#define STM32_ADC12PRES STM32_ADC12PRES_DIV1
-#define STM32_ADC34PRES STM32_ADC34PRES_DIV1
-#define STM32_USART1SW STM32_USART1SW_PCLK
-#define STM32_USART2SW STM32_USART2SW_PCLK
-#define STM32_USART3SW STM32_USART3SW_PCLK
-#define STM32_UART4SW STM32_UART4SW_PCLK
-#define STM32_UART5SW STM32_UART5SW_PCLK
-#define STM32_I2C1SW STM32_I2C1SW_SYSCLK
-#define STM32_I2C2SW STM32_I2C2SW_SYSCLK
-#define STM32_TIM1SW STM32_TIM1SW_PCLK2
-#define STM32_TIM8SW STM32_TIM8SW_PCLK2
-#define STM32_RTCSEL STM32_RTCSEL_LSI
-#define STM32_USB_CLOCK_REQUIRED TRUE
-#define STM32_USBPRE STM32_USBPRE_DIV1P5
-
-/*
- * ADC driver system settings.
- */
-#define STM32_ADC_DUAL_MODE FALSE
-#define STM32_ADC_COMPACT_SAMPLES FALSE
-#define STM32_ADC_USE_ADC1 TRUE
-#define STM32_ADC_USE_ADC2 FALSE
-#define STM32_ADC_USE_ADC3 FALSE
-#define STM32_ADC_USE_ADC4 FALSE
-#define STM32_ADC_ADC1_DMA_STREAM STM32_DMA_STREAM_ID(1, 1)
-#define STM32_ADC_ADC2_DMA_STREAM STM32_DMA_STREAM_ID(2, 1)
-#define STM32_ADC_ADC3_DMA_STREAM STM32_DMA_STREAM_ID(2, 5)
-#define STM32_ADC_ADC4_DMA_STREAM STM32_DMA_STREAM_ID(2, 2)
-#define STM32_ADC_ADC1_DMA_PRIORITY 2
-#define STM32_ADC_ADC2_DMA_PRIORITY 2
-#define STM32_ADC_ADC3_DMA_PRIORITY 2
-#define STM32_ADC_ADC4_DMA_PRIORITY 2
-#define STM32_ADC_ADC12_IRQ_PRIORITY 5
-#define STM32_ADC_ADC3_IRQ_PRIORITY 5
-#define STM32_ADC_ADC4_IRQ_PRIORITY 5
-#define STM32_ADC_ADC1_DMA_IRQ_PRIORITY 5
-#define STM32_ADC_ADC2_DMA_IRQ_PRIORITY 5
-#define STM32_ADC_ADC3_DMA_IRQ_PRIORITY 5
-#define STM32_ADC_ADC4_DMA_IRQ_PRIORITY 5
-#define STM32_ADC_ADC12_CLOCK_MODE ADC_CCR_CKMODE_AHB_DIV1
-#define STM32_ADC_ADC34_CLOCK_MODE ADC_CCR_CKMODE_AHB_DIV1
-
-/*
- * CAN driver system settings.
- */
-#if USE_CAN1
-#define STM32_CAN_USE_CAN1 TRUE
-#else
-#define STM32_CAN_USE_CAN1 FALSE
-#endif
-#define STM32_CAN_CAN1_IRQ_PRIORITY 11
-
-/*
- * DAC driver system settings.
- */
-#define STM32_DAC_DUAL_MODE FALSE
-#define STM32_DAC_USE_DAC1_CH1 TRUE
-#define STM32_DAC_USE_DAC1_CH2 TRUE
-#define STM32_DAC_DAC1_CH1_IRQ_PRIORITY 10
-#define STM32_DAC_DAC1_CH2_IRQ_PRIORITY 10
-#define STM32_DAC_DAC1_CH1_DMA_PRIORITY 2
-#define STM32_DAC_DAC1_CH2_DMA_PRIORITY 2
-
-/*
- * EXT driver system settings.
- */
-#define STM32_EXT_EXTI0_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI1_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI2_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI3_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI4_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI5_9_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI10_15_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI16_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI17_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI18_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI19_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI20_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI21_22_29_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI30_32_IRQ_PRIORITY 6
-#define STM32_EXT_EXTI33_IRQ_PRIORITY 6
-
-/*
- * GPT driver system settings.
- */
-#define STM32_GPT_USE_TIM1 FALSE
-#define STM32_GPT_USE_TIM2 FALSE
-#define STM32_GPT_USE_TIM3 FALSE
-#define STM32_GPT_USE_TIM4 FALSE
-#define STM32_GPT_USE_TIM6 FALSE
-#define STM32_GPT_USE_TIM7 FALSE
-#define STM32_GPT_USE_TIM8 FALSE
-#define STM32_GPT_TIM1_IRQ_PRIORITY 7
-#define STM32_GPT_TIM2_IRQ_PRIORITY 7
-#define STM32_GPT_TIM3_IRQ_PRIORITY 7
-#define STM32_GPT_TIM4_IRQ_PRIORITY 7
-#define STM32_GPT_TIM6_IRQ_PRIORITY 7
-#define STM32_GPT_TIM7_IRQ_PRIORITY 7
-#define STM32_GPT_TIM8_IRQ_PRIORITY 7
-
-/*
- * I2C driver system settings.
- */
-#if USE_I2C1
-#define STM32_I2C_USE_I2C1 TRUE
-#else
-#define STM32_I2C_USE_I2C1 FALSE
-#endif
-#if USE_I2C2
-#define STM32_I2C_USE_I2C2 TRUE
-#else
-#define STM32_I2C_USE_I2C2 FALSE
-#endif
-#define STM32_I2C_BUSY_TIMEOUT 50
-#define STM32_I2C_I2C1_IRQ_PRIORITY 10
-#define STM32_I2C_I2C2_IRQ_PRIORITY 10
-#define STM32_I2C_USE_DMA TRUE
-#define STM32_I2C_I2C1_DMA_PRIORITY 1
-#define STM32_I2C_I2C2_DMA_PRIORITY 1
-#define STM32_I2C_DMA_ERROR_HOOK(i2cp) osalSysHalt("DMA failure")
-
-/*
- * ICU driver system settings.
- */
-#define STM32_ICU_USE_TIM1 FALSE
-#define STM32_ICU_USE_TIM2 FALSE
-#define STM32_ICU_USE_TIM3 FALSE
-#define STM32_ICU_USE_TIM4 FALSE
-#define STM32_ICU_USE_TIM8 FALSE
-#define STM32_ICU_TIM1_IRQ_PRIORITY 7
-#define STM32_ICU_TIM2_IRQ_PRIORITY 7
-#define STM32_ICU_TIM3_IRQ_PRIORITY 7
-#define STM32_ICU_TIM4_IRQ_PRIORITY 7
-#define STM32_ICU_TIM8_IRQ_PRIORITY 7
-
-/*
- * PWM driver system settings.
- */
-#define STM32_PWM_USE_ADVANCED FALSE
-#define STM32_PWM_USE_TIM1 FALSE
-#ifndef STM32_PWM_USE_TIM2
-#define STM32_PWM_USE_TIM2 TRUE
-#endif
-#ifndef STM32_PWM_USE_TIM3
-#define STM32_PWM_USE_TIM3 TRUE
-#endif
-#define STM32_PWM_USE_TIM4 FALSE
-#define STM32_PWM_USE_TIM8 FALSE
-#define STM32_PWM_TIM1_IRQ_PRIORITY 7
-#define STM32_PWM_TIM2_IRQ_PRIORITY 7
-#define STM32_PWM_TIM3_IRQ_PRIORITY 7
-#define STM32_PWM_TIM4_IRQ_PRIORITY 7
-#define STM32_PWM_TIM8_IRQ_PRIORITY 7
-
-/*
- * SERIAL driver system settings.
- */
-#if USE_UART1
-#define STM32_SERIAL_USE_USART1 TRUE
-#else
-#define STM32_SERIAL_USE_USART1 FALSE
-#endif
-#if USE_UART2
-#define STM32_SERIAL_USE_USART2 TRUE
-#else
-#define STM32_SERIAL_USE_USART2 FALSE
-#endif
-#if USE_UART3
-#define STM32_SERIAL_USE_USART3 TRUE
-#else
-#define STM32_SERIAL_USE_USART3 FALSE
-#endif
-#if USE_UART4
-#define STM32_SERIAL_USE_UART4 TRUE
-#else
-#define STM32_SERIAL_USE_UART4 FALSE
-#endif
-#if USE_UART5
-#define STM32_SERIAL_USE_UART5 TRUE
-#else
-#define STM32_SERIAL_USE_UART5 FALSE
-#endif
-#define STM32_SERIAL_USART1_PRIORITY 12
-#define STM32_SERIAL_USART2_PRIORITY 12
-#define STM32_SERIAL_USART3_PRIORITY 12
-#define STM32_SERIAL_UART4_PRIORITY 12
-#define STM32_SERIAL_UART5_PRIORITY 12
-
-/*
- * SPI driver system settings.
- */
-#if USE_SPI1
-#define STM32_SPI_USE_SPI1 TRUE
-#else
-#define STM32_SPI_USE_SPI1 FALSE
-#endif
-#if USE_SPI2
-#define STM32_SPI_USE_SPI2 TRUE
-#else
-#define STM32_SPI_USE_SPI2 FALSE
-#endif
-#if USE_SPI3
-#define STM32_SPI_USE_SPI3 TRUE
-#else
-#define STM32_SPI_USE_SPI3 FALSE
-#endif
-#define STM32_SPI_SPI1_DMA_PRIORITY 1
-#define STM32_SPI_SPI2_DMA_PRIORITY 1
-#define STM32_SPI_SPI3_DMA_PRIORITY 1
-#define STM32_SPI_SPI1_IRQ_PRIORITY 10
-#define STM32_SPI_SPI2_IRQ_PRIORITY 10
-#define STM32_SPI_SPI3_IRQ_PRIORITY 10
-#define STM32_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DMA failure")
-
-/*
- * ST driver system settings.
- */
-#define STM32_ST_IRQ_PRIORITY 8
-#define STM32_ST_USE_TIMER 2
-
-/*
- * UART driver system settings.
- */
-#define STM32_UART_USE_USART1 FALSE
-#define STM32_UART_USE_USART2 FALSE
-#define STM32_UART_USE_USART3 FALSE
-#define STM32_UART_USART1_IRQ_PRIORITY 12
-#define STM32_UART_USART2_IRQ_PRIORITY 12
-#define STM32_UART_USART3_IRQ_PRIORITY 12
-#define STM32_UART_USART1_DMA_PRIORITY 0
-#define STM32_UART_USART2_DMA_PRIORITY 0
-#define STM32_UART_USART3_DMA_PRIORITY 0
-#define STM32_UART_DMA_ERROR_HOOK(uartp) osalSysHalt("DMA failure")
-
-/*
- * USB driver system settings.
- */
-#define STM32_USB_USE_USB1 TRUE
-#define STM32_USB_LOW_POWER_ON_SUSPEND FALSE
-#define STM32_USB_USB1_HP_IRQ_PRIORITY 13
-#define STM32_USB_USB1_LP_IRQ_PRIORITY 14
-
-/*
- * WDG driver system settings.
- */
-#define STM32_WDG_USE_IWDG FALSE
-
-#endif /* MCUCONF_H */
diff --git a/sw/airborne/boards/stm32f4_discovery.h b/sw/airborne/boards/stm32f4_discovery.h
deleted file mode 100644
index bfb66286a5..0000000000
--- a/sw/airborne/boards/stm32f4_discovery.h
+++ /dev/null
@@ -1,601 +0,0 @@
-/*
- * STM32F4 DISCOVERY BOARD DEFINITIONS FOR THE PAPARAZZI AUTOPILOT.
- *
- * DISCOVERY USED FOR THE AUTOPILOT PINS
- * PA0 = PWM9 + user-wake up button switch b1 normaly open.
- * PA1 = PWM8
- * PA2 = PWM7
- * PA3 = PWM6
- * PA4 = ADC_4 (ADC12 IN 4)+CS43L22 DAC out, capacitively coupled+100Kohm, should not interfere.
- * PA5 = SPI1 SCK if STM32F4_DISCOVERY_SPI1_FOR_LIS302
- * PA6 = SPI1 MISO if STM32F4_DISCOVERY_SPI1_FOR_LIS302
- * PA7 = SPI1 MOSI if STM32F4_DISCOVERY_SPI1_FOR_LIS302
- * PA8 = SPECTRUM BIND
- * PA9 = FREE (ONLY if usb is not active during runtime, PC0 must be high or input )
- * PA10 = UART1 RX (Spektrum input)
- * PA11 = FREE if usb is not active during runtime
- * PA12 = FREE if usb is not active during runtime
- * PA13 = FREE
- * PA14 = FREE
- * PA15 = FREE
- *
- * PB0 = FREE
- * PB1 = ADC_1 (ADC12 IN 9)
- * PB2 = FREE
- * PB3 = SPI1 SCL
- * PB4 = SPI1 MISO
- * PB5 = SPI1 MOSI
- * PB6 = UART1 TX + 4K7 Ohm pull up resistor normaly used for i2c
- * PB7 = UART1 RX
- * PB8 = I2C1 SCL
- * PB9 = I2C1 SDA + 4K7 Ohm pull up resistor normaly used for i2c
- * PB10 = I2C2 SCL + MP45DT02 MEMS MIC clock in
- * PB11 = I2C2 SDA
- * PB12 = FREE
- * PB13 = SPI2 SCL
- * PB14 = PWM 10 OR SPI2 MISO
- * PB15 = PWM 11 OR SPI2 MOSI
- *
- * PC0 = CANNOT BE USED, pulled up to 3.3v (10Kohm), low = usb power on directly applied to PA9)
- * PC1 = ADC_5 (ADC123 IN 11)
- * PC2 = ADC_6 (ADC123 IN 12)
- * PC3 = CANNOT BE USED (MEMS microphone output)
- * PC4 = ADC_3 (ADC12 IN 14)
- * PC5 = ADC_2 (ADC12 IN 15)
- * PC6 = UART6 TX
- * PC7 = UART6 RX
- * PC8 = FREE
- * PC9 = PPM INPUT FROM RC RECEIVER
- * PC10 = UART4 TX OR SPI3 SCL
- * PC11 = UART4 RX OR SPI3 MISO
- * PC12 = UART5 TX OR SPI3 MOSI
- * PC13 = FREE max 3ma sink
- * PC14 = FREE max 3ma sink, short circuit the relevant PCB bridge with solder to activate
- * PC15 = FREE max 3ma sink, short circuit the relevant PCB bridge with solder to activate
- *
- * PD0 = FREE
- * PD1 = FREE
- * PD2 = UART5 RX
- * PD3 = FREE
- * PD4 = FREE
- * PD5 = UART2 TX (usb power management fault output open drain)
- * PD6 = UART2 RX
- * PD7 = FREE
- * PD8 = UART3 TX
- * PD9 = UART3 RX
- * PD10 = FREE
- * PD11 = FREE
- * PD12 = LED_4
- * PD13 = LED_3
- * PD14 = LED_5
- * PD15 = LED_6
- *
- * PE0 = CANNOT BE USED (Accel int output)
- * PE1 = CANNOT BE USED (Accel int output)
- * PE2 = SPI SLAVE 0
- * PE3 = SPI SLAVE 2 (used for the LIS302DL accel spi/i2c select pin)
- * PE4 = FREE
- * PE5 = PWM4
- * PE6 = PWM5
- * PE7 = SPI SLAVE 1
- * PE8 = FREE
- * PE9 = PWM0
- * PE10 = FREE
- * PE11 = PWM1
- * PE12 = FREE
- * PE13 = PWM2
- * PE14 = PWM3
- * PE15 = FREE
- *
- * PH0 = CRYSTAL - OSC IN
- * PH1 = CRYSTAL - OSC OUT
- */
-
-#ifndef CONFIG_STM32F4_DISCOVERY_H
-#define CONFIG_STM32F4_DISCOVERY_H
-
-#define BOARD_STM32F4_DISCOVERY
-
-/* STM32F4_DISCOVERY has a 8MHz external clock and 168MHz internal. */
-#define EXT_CLK 8000000
-#define AHB_CLK 168000000
-
-/*
- * Onboard LEDs
- */
-
-/* orange, on PD13 */
-#ifndef USE_LED_3
-#define USE_LED_3 1
-#endif
-#define LED_3_GPIO GPIOD
-#define LED_3_GPIO_PIN GPIO13
-#define LED_3_AFIO_REMAP ((void)0)
-#define LED_3_GPIO_ON gpio_set
-#define LED_3_GPIO_OFF gpio_clear
-
-/* green, on PD12 */
-#ifndef USE_LED_4
-#define USE_LED_4 1
-#endif
-#define LED_4_GPIO GPIOD
-#define LED_4_GPIO_PIN GPIO12
-#define LED_4_AFIO_REMAP ((void)0)
-#define LED_4_GPIO_ON gpio_set
-#define LED_4_GPIO_OFF gpio_clear
-
-/* red, PD14 */
-#ifndef USE_LED_5
-#define USE_LED_5 1
-#endif
-#define LED_5_GPIO GPIOD
-#define LED_5_GPIO_PIN GPIO14
-#define LED_5_AFIO_REMAP ((void)0)
-#define LED_5_GPIO_ON gpio_set
-#define LED_5_GPIO_OFF gpio_clear
-
-/* blue, PD15 */
-#ifndef USE_LED_6
-#define USE_LED_6 1
-#endif
-#define LED_6_GPIO GPIOD
-#define LED_6_GPIO_PIN GPIO15
-#define LED_6_AFIO_REMAP ((void)0)
-#define LED_6_GPIO_ON gpio_set
-#define LED_6_GPIO_OFF gpio_clear
-
-
-
-/*
-// LED 9 (Green) of the STM32F4 discovery board same as USB power (VBUS).
-#ifndef USE_LED_9
-#define USE_LED_9 1
-#endif
-#define LED_9_GPIO GPIOA
-#define LED_9_GPIO_PIN GPIO9
-#define LED_9_AFIO_REMAP ((void)0)
-#define LED_9_GPIO_ON gpio_set
-#define LED_9_GPIO_OFF gpio_clear
-*/
-
-
-/***************************************************************************************************/
-/************************************** UART *************************************************/
-/***************************************************************************************************/
-
-// If you don't need all those uarts comment a uart block out to free pins.
-#define UART1_GPIO_AF GPIO_AF7
-#define UART1_GPIO_PORT_TX GPIOB
-#define UART1_GPIO_TX GPIO6
-#define UART1_GPIO_PORT_RX GPIOB
-#define UART1_GPIO_RX GPIO7
-
-// UART2 is used for the Spectrum rx input also
-#define UART2_GPIO_AF GPIO_AF7
-#define UART2_GPIO_PORT_TX GPIOD
-#define UART2_GPIO_TX GPIO5
-#define UART2_GPIO_PORT_RX GPIOD
-#define UART2_GPIO_RX GPIO6
-
-#define UART3_GPIO_AF GPIO_AF7
-#define UART3_GPIO_PORT_TX GPIOD
-#define UART3_GPIO_TX GPIO8
-#define UART3_GPIO_PORT_RX GPIOD
-#define UART3_GPIO_RX GPIO9
-
-// UARTS 4 AND 5 CANT BE USED IF SPI3 IS NEEDED
-#if !USE_SPI3
-#define UART4_GPIO_AF GPIO_AF8
-#define UART4_GPIO_PORT_TX GPIOC
-#define UART4_GPIO_TX GPIO10
-#define UART4_GPIO_PORT_RX GPIOC
-#define UART4_GPIO_RX GPIO11
-
-#define UART5_GPIO_AF GPIO_AF8
-#define UART5_GPIO_PORT_TX GPIOC
-#define UART5_GPIO_TX GPIO12
-#define UART5_GPIO_PORT_RX GPIOD
-#define UART5_GPIO_RX GPIO2
-#endif
-
-#define UART6_GPIO_AF GPIO_AF8
-#define UART6_GPIO_PORT_TX GPIOC
-#define UART6_GPIO_TX GPIO6
-#define UART6_GPIO_PORT_RX GPIOC
-#define UART6_GPIO_RX GPIO7
-
-
-/***************************************************************************************************/
-/************************************** SPI *************************************************/
-/***************************************************************************************************/
-
-#if STM32F4_DISCOVERY_SPI1_FOR_LIS302
-#define SPI1_GPIO_AF GPIO_AF5
-#define SPI1_GPIO_PORT_SCK GPIOA
-#define SPI1_GPIO_SCK GPIO5
-#define SPI1_GPIO_PORT_MISO GPIOA
-#define SPI1_GPIO_MISO GPIO6
-#define SPI1_GPIO_PORT_MOSI GPIOA
-#define SPI1_GPIO_MOSI GPIO7
-#else
-#define SPI1_GPIO_AF GPIO_AF5
-#define SPI1_GPIO_PORT_SCK GPIOB
-#define SPI1_GPIO_SCK GPIO3
-#define SPI1_GPIO_PORT_MISO GPIOB
-#define SPI1_GPIO_MISO GPIO4
-#define SPI1_GPIO_PORT_MOSI GPIOB
-#define SPI1_GPIO_MOSI GPIO5
-
-#endif
-
-/* CANNOT BE USED IF PWM CHANNELS 10 & 11 ARE ACTIVE !!! */
-#define SPI2_GPIO_AF GPIO_AF5
-#define SPI2_GPIO_PORT_SCK GPIOB
-#define SPI2_GPIO_SCK GPIO13
-#define SPI2_GPIO_PORT_MISO GPIOB
-#define SPI2_GPIO_MISO GPIO14
-#define SPI2_GPIO_PORT_MOSI GPIOB
-#define SPI2_GPIO_MOSI GPIO15
-
-/* CANNOT BE USED IF UARTS 4 & 5 ARE ACTIVE !!! */
-#define SPI3_GPIO_AF GPIO_AF6
-#define SPI3_GPIO_PORT_SCK GPIOC
-#define SPI3_GPIO_SCK GPIO10
-#define SPI3_GPIO_PORT_MISO GPIOC
-#define SPI3_GPIO_MISO GPIO11
-#define SPI3_GPIO_PORT_MOSI GPIOC
-#define SPI3_GPIO_MOSI GPIO12
-
-#define SPI_SELECT_SLAVE0_PORT GPIOE
-#define SPI_SELECT_SLAVE0_PIN GPIO2
-#define SPI_SELECT_SLAVE1_PORT GPIOE
-#define SPI_SELECT_SLAVE1_PIN GPIO7
-#define SPI_SELECT_SLAVE2_PORT GPIOE
-#define SPI_SELECT_SLAVE2_PIN GPIO3
-
-#define SPI1_GPIO_PORT_NSS GPIOA
-#define SPI1_GPIO_NSS GPIO4
-
-#define SPI2_GPIO_PORT_NSS GPIOB
-#define SPI2_GPIO_NSS GPIO12
-
-#define SPI3_GPIO_PORT_NSS GPIOA
-#define SPI3_GPIO_NSS GPIO15
-
-/***************************************************************************************************/
-/************************************** I2C *************************************************/
-/***************************************************************************************************/
-#define I2C1_GPIO_PORT GPIOB
-#define I2C1_GPIO_SCL GPIO8
-#define I2C1_GPIO_SDA GPIO9
-
-#define I2C2_GPIO_PORT GPIOB
-#define I2C2_GPIO_SCL GPIO10
-#define I2C2_GPIO_SDA GPIO11
-
-//#define I2C3_GPIO_PORT_SCL GPIOA
-//#define I2C3_GPIO_SCL GPIO8
-//#define I2C3_GPIO_PORT_SDA GPIOC
-//#define I2C3_GPIO_SDA GPIO9
-
-
-/***************************************************************************************************/
-/************************************** ADC *************************************************/
-/***************************************************************************************************/
-
-#define USE_AD_TIM2 1
-
-// For experimenting only
-#define USE_ADC_1 1
-#define USE_ADC_2 1
-#define USE_ADC_3 1
-#define USE_ADC_4 1
-#define USE_ADC_5 1
-#define USE_ADC_6 1
-//#define USE_ADC_7 1
-
-/* allow to define ADC_CHANNEL_VSUPPLY in the airframe file */
-#ifndef ADC_CHANNEL_VSUPPLY
-#define ADC_CHANNEL_VSUPPLY ADC_4
-#endif
-#if !defined(USE_ADC_4)
-#define USE_ADC_4 1
-#endif
-
-#define DefaultVoltageOfAdc(adc) (0.00485*adc)
-
-/* provide defines that can be used to access the ADC_x in the code or airframe file
- * these directly map to the index number of the 4 adc channels defined above
- * 4th (index 3) is used for bat monitoring by default
- */
-
-// AUX 1
-#if USE_ADC_1
-#define AD1_1_CHANNEL 9
-#define ADC_1 AD1_1 // THIS CHANNEL USES THE ADC 1 CONVERTER
-#define ADC_1_GPIO_PORT GPIOB
-#define ADC_1_GPIO_PIN GPIO1
-#endif
-
-// AUX 2
-#if USE_ADC_2
-#define AD1_2_CHANNEL 15
-#define ADC_2 AD1_2 // THIS CHANNEL USES THE ADC 1 CONVERTER
-#define ADC_2_GPIO_PORT GPIOC
-#define ADC_2_GPIO_PIN GPIO5
-#endif
-
-// AUX 3
-#if USE_ADC_3
-#define AD2_1_CHANNEL 14
-#define ADC_3 AD2_1 // THIS CHANNEL USES THE ADC 2 CONVERTER
-#define ADC_3_GPIO_PORT GPIOC
-#define ADC_3_GPIO_PIN GPIO4
-#endif
-
-// BAT
-#if USE_ADC_4
-#define AD2_2_CHANNEL 4
-#define ADC_4 AD2_2 // THIS CHANNEL USES THE ADC 2 CONVERTER
-#define ADC_4_GPIO_PORT GPIOA
-#define ADC_4_GPIO_PIN GPIO4
-#endif
-
-#if USE_ADC_5
-#define AD3_1_CHANNEL 11
-#define ADC_5 AD3_1 // THIS CHANNEL USES THE ADC 3 CONVERTER
-#define ADC_5_GPIO_PORT GPIOC
-#define ADC_5_GPIO_PIN GPIO1
-#endif
-
-#if USE_ADC_6
-#define AD3_2_CHANNEL 12
-#define ADC_6 AD3_2 // THIS CHANNEL USES THE ADC 3 CONVERTER
-#define ADC_6_GPIO_PORT GPIOC
-#define ADC_6_GPIO_PIN GPIO2
-#endif
-
-
-/***************************************************************************************************/
-/************************************ ACTUATORS ************************************************/
-/***************************************************************************************************/
-
-/* Default actuators driver */
-#define DEFAULT_ACTUATORS "subsystems/actuators/actuators_pwm.h"
-#define ActuatorDefaultSet(_x,_y) ActuatorPwmSet(_x,_y)
-#define ActuatorsDefaultInit() ActuatorsPwmInit()
-#define ActuatorsDefaultCommit() ActuatorsPwmCommit()
-
-
-/***************************************************************************************************/
-/********************************** SERVO PWM *************************************************/
-/***************************************************************************************************/
-
-#define PWM_USE_TIM1 1
-//#define PWM_USE_TIM3 1
-#define PWM_USE_TIM5 1
-#define PWM_USE_TIM9 1
-#define PWM_USE_TIM12 1
-
-#define USE_PWM0 1
-#define USE_PWM1 1
-#define USE_PWM2 1
-#define USE_PWM3 1
-#define USE_PWM4 1
-#define USE_PWM5 1
-#define USE_PWM6 1
-#define USE_PWM7 1
-#define USE_PWM8 1
-#define USE_PWM9 1
-#if USE_SPI2
-#define USE_PWM10 0
-#define USE_PWM11 0
-#else
-#define USE_PWM10 1
-#define USE_PWM11 1
-#endif
-
-#define ACTUATORS_PWM_NB 12
-
-// PWM_SERVO_x is the index of the servo in the actuators_pwm_values array
-#if USE_PWM0
-#define PWM_SERVO_0 0
-#define PWM_SERVO_0_TIMER TIM1
-#define PWM_SERVO_0_GPIO GPIOE
-#define PWM_SERVO_0_PIN GPIO9
-#define PWM_SERVO_0_AF GPIO_AF1
-#define PWM_SERVO_0_OC TIM_OC1
-#define PWM_SERVO_0_OC_BIT (1<<0)
-#else
-#define PWM_SERVO_0_OC_BIT 0
-#endif
-
-#if USE_PWM1
-#define PWM_SERVO_1 1
-#define PWM_SERVO_1_TIMER TIM1
-#define PWM_SERVO_1_GPIO GPIOE
-#define PWM_SERVO_1_PIN GPIO11
-#define PWM_SERVO_1_AF GPIO_AF1
-#define PWM_SERVO_1_OC TIM_OC2
-#define PWM_SERVO_1_OC_BIT (1<<1)
-#else
-#define PWM_SERVO_1_OC_BIT 0
-#endif
-
-#if USE_PWM2
-#define PWM_SERVO_2 2
-#define PWM_SERVO_2_TIMER TIM1
-#define PWM_SERVO_2_GPIO GPIOE
-#define PWM_SERVO_2_PIN GPIO13
-#define PWM_SERVO_2_AF GPIO_AF1
-#define PWM_SERVO_2_OC TIM_OC3
-#define PWM_SERVO_2_OC_BIT (1<<2)
-#else
-#define PWM_SERVO_2_OC_BIT 0
-#endif
-
-#if USE_PWM3
-#define PWM_SERVO_3 3
-#define PWM_SERVO_3_TIMER TIM1
-#define PWM_SERVO_3_GPIO GPIOE
-#define PWM_SERVO_3_PIN GPIO14
-#define PWM_SERVO_3_AF GPIO_AF1
-#define PWM_SERVO_3_OC TIM_OC4
-#define PWM_SERVO_3_OC_BIT (1<<3)
-#else
-#define PWM_SERVO_3_OC_BIT 0
-#endif
-
-#if USE_PWM4
-#define PWM_SERVO_4 4
-#define PWM_SERVO_4_TIMER TIM9
-#define PWM_SERVO_4_GPIO GPIOE
-#define PWM_SERVO_4_PIN GPIO5
-#define PWM_SERVO_4_AF GPIO_AF3
-#define PWM_SERVO_4_OC TIM_OC1
-#define PWM_SERVO_4_OC_BIT (1<<0)
-#else
-#define PWM_SERVO_4_OC_BIT 0
-#endif
-
-#if USE_PWM5
-#define PWM_SERVO_5 5
-#define PWM_SERVO_5_TIMER TIM9
-#define PWM_SERVO_5_GPIO GPIOE
-#define PWM_SERVO_5_PIN GPIO6
-#define PWM_SERVO_5_AF GPIO_AF3
-#define PWM_SERVO_5_OC TIM_OC2
-#define PWM_SERVO_5_OC_BIT (1<<1)
-#else
-#define PWM_SERVO_5_OC_BIT 0
-#endif
-
-
-#if USE_PWM6
-#define PWM_SERVO_6 6
-#define PWM_SERVO_6_TIMER TIM5
-#define PWM_SERVO_6_GPIO GPIOA
-#define PWM_SERVO_6_PIN GPIO3
-#define PWM_SERVO_6_AF GPIO_AF2
-#define PWM_SERVO_6_OC TIM_OC4
-#define PWM_SERVO_6_OC_BIT (1<<3)
-#else
-#define PWM_SERVO_6_OC_BIT 0
-#endif
-
-#if USE_PWM7
-#define PWM_SERVO_7 7
-#define PWM_SERVO_7_TIMER TIM5
-#define PWM_SERVO_7_GPIO GPIOA
-#define PWM_SERVO_7_PIN GPIO2
-#define PWM_SERVO_7_AF GPIO_AF2
-#define PWM_SERVO_7_OC TIM_OC3
-#define PWM_SERVO_7_OC_BIT (1<<2)
-#else
-#define PWM_SERVO_7_OC_BIT 0
-#endif
-
-#if USE_PWM8
-#define PWM_SERVO_8 8
-#define PWM_SERVO_8_TIMER TIM5
-#define PWM_SERVO_8_GPIO GPIOA
-#define PWM_SERVO_8_PIN GPIO1
-#define PWM_SERVO_8_AF GPIO_AF2
-#define PWM_SERVO_8_OC TIM_OC2
-#define PWM_SERVO_8_OC_BIT (1<<1)
-#else
-#define PWM_SERVO_8_OC_BIT 0
-#endif
-
-#if USE_PWM9
-#define PWM_SERVO_9 9
-#define PWM_SERVO_9_TIMER TIM5
-#define PWM_SERVO_9_GPIO GPIOA
-#define PWM_SERVO_9_PIN GPIO0
-#define PWM_SERVO_9_AF GPIO_AF2
-#define PWM_SERVO_9_OC TIM_OC1
-#define PWM_SERVO_9_OC_BIT (1<<0)
-#else
-#define PWM_SERVO_9_OC_BIT 0
-#endif
-
-/* PWM10 AND PWM11 cannot be used if SPI2 is active. */
-#if USE_PWM10
-#define PWM_SERVO_10 10
-#define PWM_SERVO_10_TIMER TIM12
-#define PWM_SERVO_10_GPIO GPIOB
-#define PWM_SERVO_10_PIN GPIO14
-#define PWM_SERVO_10_AF GPIO_AF9
-#define PWM_SERVO_10_OC TIM_OC1
-#define PWM_SERVO_10_OC_BIT (1<<0)
-#else
-#define PWM_SERVO_10_OC_BIT 0
-#endif
-
-#if USE_PWM11
-#define PWM_SERVO_11 11
-#define PWM_SERVO_11_TIMER TIM12
-#define PWM_SERVO_11_GPIO GPIOB
-#define PWM_SERVO_11_PIN GPIO15
-#define PWM_SERVO_11_AF GPIO_AF9
-#define PWM_SERVO_11_OC TIM_OC2
-#define PWM_SERVO_11_OC_BIT (1<<1)
-#else
-#define PWM_SERVO_11_OC_BIT 0
-#endif
-
-#define PWM_TIM1_CHAN_MASK (PWM_SERVO_0_OC_BIT|PWM_SERVO_1_OC_BIT|PWM_SERVO_2_OC_BIT|PWM_SERVO_3_OC_BIT)
-#define PWM_TIM9_CHAN_MASK (PWM_SERVO_4_OC_BIT|PWM_SERVO_5_OC_BIT)
-#define PWM_TIM5_CHAN_MASK (PWM_SERVO_6_OC_BIT|PWM_SERVO_7_OC_BIT|PWM_SERVO_8_OC_BIT|PWM_SERVO_9_OC_BIT)
-#define PWM_TIM12_CHAN_MASK (PWM_SERVO_10_OC_BIT|PWM_SERVO_11_OC_BIT)
-
-/***************************************************************************************************/
-/*********************************** PPM INPUT *************************************************/
-/***************************************************************************************************/
-
-/*
-#define USE_PPM_TIM1 1
-
-#define PPM_CHANNEL TIM_IC1
-#define PPM_TIMER_INPUT TIM_IC_IN_TI1
-#define PPM_IRQ NVIC_TIM1_CC_IRQ
-#define PPM_IRQ2 NVIC_TIM1_UP_TIM10_IRQ
-// Capture/Compare InteruptEnable and InterruptFlag
-#define PPM_CC_IE TIM_DIER_CC1IE
-#define PPM_CC_IF TIM_SR_CC1IF
-#define PPM_GPIO_PORT GPIOA
-#define PPM_GPIO_PIN GPIO8
-#define PPM_GPIO_AF GPIO_AF1
-*/
-
-#define USE_PPM_TIM8 1
-
-#define PPM_CHANNEL TIM_IC4
-#define PPM_TIMER_INPUT TIM_IC_IN_TI4
-#define PPM_IRQ NVIC_TIM8_CC_IRQ
-#define PPM_IRQ2 NVIC_TIM8_UP_TIM13_IRQ
-// Capture/Compare InteruptEnable and InterruptFlag
-#define PPM_CC_IE TIM_DIER_CC4IE
-#define PPM_CC_IF TIM_SR_CC4IF
-#define PPM_GPIO_PORT GPIOC
-#define PPM_GPIO_PIN GPIO9
-#define PPM_GPIO_AF GPIO_AF3
-
-/***************************************************************************************************/
-/********************************* SPECTRUM UART *************************************************/
-/***************************************************************************************************/
-
-/* The line that is pulled low at power up to initiate the bind process */
-#define SPEKTRUM_BIND_PIN GPIO8
-#define SPEKTRUM_BIND_PIN_PORT GPIOA
-
-#define SPEKTRUM_UART1_RCC RCC_USART1
-#define SPEKTRUM_UART1_BANK GPIOA
-#define SPEKTRUM_UART1_PIN GPIO10
-#define SPEKTRUM_UART1_AF GPIO_AF7
-#define SPEKTRUM_UART1_IRQ NVIC_USART1_IRQ
-#define SPEKTRUM_UART1_ISR usart1_isr
-#define SPEKTRUM_UART1_DEV USART1
-
-
-#endif /* CONFIG_STM32F4_DISCOVERY_H */