This is an automated email from the ASF dual-hosted git repository.

xiaoxiang781216 pushed a commit to branch releases/13.0
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit 420aec6313d85541d7db5d05551f2ceeb583f7bd
Author: raiden00pl <[email protected]>
AuthorDate: Mon May 25 22:44:13 2026 +0200

    !arch/stm32: move stm32f2 to its own directory
    
    BREAKING CHANGE:
    
    Part of splitting the legacy stm32 super-directory; relocates
    the stm32f2 sources, headers and boards into arch/arm/src/stm32f2,
    arch/arm/include/stm32f2 and boards/arm/stm32f2.
    
    Signed-off-by: raiden00pl <[email protected]>
---
 arch/arm/include/stm32f2/chip.h                    | 189 +++++++++++++++++
 .../{stm32/stm32f20xxx_irq.h => stm32f2/irq.h}     |  78 ++++---
 .../arm/src/stm32f2}/CMakeLists.txt                |   9 +-
 arch/arm/src/stm32f2/Kconfig                       | 184 ++++++++++++++++
 .../emw3162/src => arch/arm/src/stm32f2}/Make.defs |  21 +-
 .../src/stm32_usb.c => arch/arm/src/stm32f2/chip.h |  59 +++---
 arch/arm/src/stm32f2/hardware/stm32_memorymap.h    |  17 ++
 arch/arm/src/stm32f2/hardware/stm32_pinmap.h       |  17 ++
 .../{stm32 => stm32f2}/hardware/stm32f20xxx_gpio.h |   2 +-
 .../hardware/stm32f20xxx_memorymap.h               |   2 +-
 .../hardware/stm32f20xxx_pinmap.h                  |   2 +-
 .../{stm32 => stm32f2}/hardware/stm32f20xxx_rcc.h  |   2 +-
 .../hardware/stm32f20xxx_syscfg.h                  |   2 +-
 .../stm32_usb.c => arch/arm/src/stm32f2/stm32.h    |  75 +++----
 arch/arm/src/stm32f2/stm32_rcc.c                   | 234 +++++++++++++++++++++
 arch/arm/src/{stm32 => stm32f2}/stm32f20xxx_rcc.c  |   2 +-
 .../cloudctrl => stm32f2/common}/CMakeLists.txt    |   6 +-
 .../nucleo-f207zg => stm32f2/common}/Kconfig       |   4 +-
 .../src/Make.defs => stm32f2/common/Makefile}      |  39 ++--
 .../cloudctrl => stm32f2/emw3162}/CMakeLists.txt   |   2 +-
 boards/arm/{stm32 => stm32f2}/emw3162/Kconfig      |   0
 .../emw3162/configs/nsh/defconfig                  |   2 +-
 .../emw3162/configs/wlan/defconfig                 |   2 +-
 .../arm/{stm32 => stm32f2}/emw3162/include/board.h |   2 +-
 .../{stm32 => stm32f2}/emw3162/scripts/Make.defs   |   2 +-
 .../{stm32 => stm32f2}/emw3162/scripts/ld.script   |   2 +-
 .../{stm32 => stm32f2}/emw3162/src/CMakeLists.txt  |   2 +-
 .../arm/{stm32 => stm32f2}/emw3162/src/Make.defs   |   2 +-
 .../arm/{stm32 => stm32f2}/emw3162/src/emw3162.h   |   4 +-
 .../emw3162/src/stm32_autoleds.c                   |   2 +-
 .../{stm32 => stm32f2}/emw3162/src/stm32_boot.c    |   2 +-
 .../{stm32 => stm32f2}/emw3162/src/stm32_bringup.c |   2 +-
 .../emw3162/src/stm32_userleds.c                   |   2 +-
 .../{stm32 => stm32f2}/emw3162/src/stm32_wlan.c    |   2 +-
 .../emw3162/src/stm32_wlan_firmware.c              |   0
 .../nucleo-f207zg}/CMakeLists.txt                  |   2 +-
 .../arm/{stm32 => stm32f2}/nucleo-f207zg/Kconfig   |   0
 .../nucleo-f207zg/configs/adc/defconfig            |   2 +-
 .../nucleo-f207zg/configs/nsh/defconfig            |   2 +-
 .../nucleo-f207zg/configs/pwm/defconfig            |   2 +-
 .../nucleo-f207zg/include/board.h                  |   2 +-
 .../nucleo-f207zg}/scripts/Make.defs               |   2 +-
 .../nucleo-f207zg/scripts/ld.script                |   2 +-
 .../nucleo-f207zg/src/CMakeLists.txt               |   2 +-
 .../{stm32 => stm32f2}/nucleo-f207zg/src/Make.defs |   2 +-
 .../nucleo-f207zg/src/nucleo-f207zg.h              |   2 +-
 .../nucleo-f207zg/src/stm32_adc.c                  |   2 +-
 .../nucleo-f207zg/src/stm32_autoleds.c             |   2 +-
 .../nucleo-f207zg/src/stm32_boot.c                 |   2 +-
 .../nucleo-f207zg/src/stm32_bringup.c              |   2 +-
 .../nucleo-f207zg/src/stm32_buttons.c              |   2 +-
 .../nucleo-f207zg/src/stm32_pwm.c                  |   2 +-
 .../nucleo-f207zg/src/stm32_usb.c                  |   2 +-
 .../nucleo-f207zg/src/stm32_userleds.c             |   2 +-
 .../olimex-stm32-p207}/CMakeLists.txt              |   2 +-
 .../{stm32 => stm32f2}/olimex-stm32-p207/Kconfig   |   0
 .../olimex-stm32-p207/configs/nsh/defconfig        |   2 +-
 .../olimex-stm32-p207/include/board.h              |   2 +-
 .../olimex-stm32-p207}/scripts/Make.defs           |   2 +-
 .../olimex-stm32-p207/scripts/ld.script            |   2 +-
 .../olimex-stm32-p207}/src/CMakeLists.txt          |   2 +-
 .../olimex-stm32-p207/src/Make.defs                |   2 +-
 .../olimex-stm32-p207/src/olimex-stm32-p207.h      |   2 +-
 .../olimex-stm32-p207/src/stm32_adc.c              |   2 +-
 .../olimex-stm32-p207/src/stm32_autoleds.c         |   2 +-
 .../olimex-stm32-p207/src/stm32_boot.c             |   2 +-
 .../olimex-stm32-p207/src/stm32_buttons.c          |   2 +-
 .../olimex-stm32-p207/src/stm32_can.c              |   2 +-
 .../olimex-stm32-p207/src/stm32_usb.c              |   2 +-
 .../olimex-stm32-p207/src/stm32_userleds.c         |   2 +-
 .../odrive36 => stm32f2/photon}/CMakeLists.txt     |   2 +-
 boards/arm/{stm32 => stm32f2}/photon/Kconfig       |   0
 .../photon/configs/adb/defconfig                   |   2 +-
 .../photon/configs/nsh/defconfig                   |   2 +-
 .../photon/configs/rgbled/defconfig                |   2 +-
 .../photon/configs/usbnsh/defconfig                |   2 +-
 .../photon/configs/wlan-perf/defconfig             |   2 +-
 .../photon/configs/wlan/defconfig                  |   2 +-
 .../arm/{stm32 => stm32f2}/photon/include/board.h  |   2 +-
 .../{stm32 => stm32f2}/photon/scripts/Make.defs    |   2 +-
 .../photon/scripts/photon_dfu.ld                   |   2 +-
 .../photon/scripts/photon_jtag.ld                  |   2 +-
 .../{stm32 => stm32f2}/photon/src/CMakeLists.txt   |   2 +-
 boards/arm/{stm32 => stm32f2}/photon/src/Make.defs |   2 +-
 .../{stm32 => stm32f2}/photon/src/dfu_signature.c  |   2 +-
 boards/arm/{stm32 => stm32f2}/photon/src/photon.h  |   4 +-
 .../{stm32 => stm32f2}/photon/src/stm32_autoleds.c |   2 +-
 .../arm/{stm32 => stm32f2}/photon/src/stm32_boot.c |   2 +-
 .../{stm32 => stm32f2}/photon/src/stm32_bringup.c  |   2 +-
 .../{stm32 => stm32f2}/photon/src/stm32_buttons.c  |   2 +-
 .../photon/src/stm32_composite.c                   |   2 +-
 .../{stm32 => stm32f2}/photon/src/stm32_rgbled.c   |   2 +-
 .../arm/{stm32 => stm32f2}/photon/src/stm32_spi.c  |   2 +-
 .../arm/{stm32 => stm32f2}/photon/src/stm32_usb.c  |   2 +-
 .../{stm32 => stm32f2}/photon/src/stm32_userleds.c |   2 +-
 .../arm/{stm32 => stm32f2}/photon/src/stm32_wdt.c  |   2 +-
 .../arm/{stm32 => stm32f2}/photon/src/stm32_wlan.c |   2 +-
 .../photon/src/stm32_wlan_firmware.c               |   2 +-
 .../stm3220g-eval}/CMakeLists.txt                  |   2 +-
 .../arm/{stm32 => stm32f2}/stm3220g-eval/Kconfig   |   0
 .../stm3220g-eval/configs/dhcpd/defconfig          |   2 +-
 .../stm3220g-eval/configs/nettest/defconfig        |   2 +-
 .../stm3220g-eval/configs/nsh/defconfig            |   2 +-
 .../stm3220g-eval/configs/nsh2/defconfig           |   2 +-
 .../stm3220g-eval/configs/nxwm/defconfig           |   2 +-
 .../stm3220g-eval/configs/telnetd/defconfig        |   2 +-
 .../stm3220g-eval/include/board.h                  |   2 +-
 .../stm3220g-eval}/scripts/Make.defs               |   2 +-
 .../stm3220g-eval/scripts/ld.script                |   2 +-
 .../stm3220g-eval/src/CMakeLists.txt               |   2 +-
 .../{stm32 => stm32f2}/stm3220g-eval/src/Make.defs |   2 +-
 .../stm3220g-eval/src/stm3220g-eval.h              |   2 +-
 .../stm3220g-eval/src/stm32_adc.c                  |   2 +-
 .../stm3220g-eval/src/stm32_autoleds.c             |   2 +-
 .../stm3220g-eval/src/stm32_boot.c                 |   2 +-
 .../stm3220g-eval/src/stm32_buttons.c              |   2 +-
 .../stm3220g-eval/src/stm32_can.c                  |   2 +-
 .../stm3220g-eval/src/stm32_deselectlcd.c          |   2 +-
 .../stm3220g-eval/src/stm32_deselectsram.c         |   2 +-
 .../stm3220g-eval/src/stm32_extmem.c               |   2 +-
 .../stm3220g-eval/src/stm32_lcd.c                  |   2 +-
 .../stm3220g-eval/src/stm32_pwm.c                  |   2 +-
 .../stm3220g-eval/src/stm32_selectlcd.c            |   2 +-
 .../stm3220g-eval/src/stm32_selectsram.c           |   2 +-
 .../stm3220g-eval/src/stm32_spi.c                  |   2 +-
 .../stm3220g-eval/src/stm32_stmpe811.c             |   2 +-
 .../stm3220g-eval/src/stm32_usb.c                  |   2 +-
 .../stm3220g-eval/src/stm32_userleds.c             |   2 +-
 .../stm3220g-eval/tools/olimex-arm-usb-ocd.cfg     |   0
 .../{stm32 => stm32f2}/stm3220g-eval/tools/oocd.sh |   2 +-
 .../stm3220g-eval/tools/stm32.cfg                  |   0
 .../stm3220g-eval/tools/usb-driver.txt             |   0
 132 files changed, 882 insertions(+), 274 deletions(-)

diff --git a/arch/arm/include/stm32f2/chip.h b/arch/arm/include/stm32f2/chip.h
new file mode 100644
index 00000000000..6252fc7ad06
--- /dev/null
+++ b/arch/arm/include/stm32f2/chip.h
@@ -0,0 +1,189 @@
+/****************************************************************************
+ * arch/arm/include/stm32f2/chip.h
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.  The
+ * ASF licenses this file to you 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 __ARCH_ARM_INCLUDE_STM32F2_CHIP_H
+#define __ARCH_ARM_INCLUDE_STM32F2_CHIP_H
+
+/****************************************************************************
+ * Included Files
+ ****************************************************************************/
+
+#include <nuttx/config.h>
+
+/****************************************************************************
+ * Pre-processor Prototypes
+ ****************************************************************************/
+
+/* Get customizations for each supported chip and provide alternate function
+ * pin-mapping
+ *
+ * NOTE: Each GPIO pin may serve either for general purpose I/O or for a
+ * special alternate function (such as USART, CAN, USB, SDIO, etc.).  That
+ * particular pin-mapping will depend on the package and STM32 family.  If
+ * you are incorporating a new STM32 chip into NuttX, you will need to add
+ * the pin-mapping to a header file and to include that header file below.
+ * The chip-specific pin-mapping is defined in the chip datasheet.
+ */
+
+#if defined(CONFIG_ARCH_CHIP_STM32F205RG)  /* UFBGA-176 1024Kb FLASH 128Kb 
SRAM */
+#  define STM32_NFSMC                    0   /* No FSMC */
+#  define STM32_NATIM                    2   /* Two advanced timers TIM1 and 8 
*/
+#  define STM32_NGTIM                    4   /* 16-bit general timers TIM3 and 
4 with DMA
+                                              * 32-bit general timers TIM2 and 
5 with DMA */
+#  define STM32_NGTIMNDMA                6   /* 16-bit general timers TIM9-14 
without DMA */
+#  define STM32_NBTIM                    2   /* Two basic timers, TIM6-7 */
+#  define STM32_NDMA                     2   /* DMA1-2 */
+#  define STM32_NSPI                     3   /* SPI1-3 */
+#  define STM32_NI2S                     2   /* I2S1-2 (multiplexed with 
SPI2-3) */
+#  define STM32_NUSART                   6   /* USART1-3 and 6, UART 4-5 */
+#  define STM32_NLPUART                  0   /* No LPUART */
+#  define STM32_NI2C                     3   /* I2C1-3 */
+#  define STM32_NCAN                     2   /* CAN1-2 */
+#  define STM32_NSDIO                    1   /* SDIO */
+#  define STM32_NLCD                     0   /* No LCD */
+#  define STM32_NUSBOTG                  1   /* USB OTG FS/HS */
+#  define STM32_NGPIO                    51  /* GPIOA-I */
+#  define STM32_NADC                     3   /* 12-bit ADC1-3, 16 channels */
+#  define STM32_NDAC                     2   /* 12-bit DAC1, 2 channels */
+#  define STM32_NCAPSENSE                0   /* No capacitive sensing channels 
*/
+#  define STM32_NCRC                     1   /* CRC */
+#  define STM32_NETHERNET                0   /* No Ethernet MAC */
+#  define STM32_NRNG                     1   /* Random number generator (RNG) 
*/
+#  define STM32_NDCMI                    0   /* No digital camera interface 
(DCMI) */
+
+#elif defined(CONFIG_ARCH_CHIP_STM32F207VC) || 
defined(CONFIG_ARCH_CHIP_STM32F207VE) || \
+      defined(CONFIG_ARCH_CHIP_STM32F207VF) || 
defined(CONFIG_ARCH_CHIP_STM32F207VG)
+#  define STM32_NFSMC                    1   /* FSMC */
+#  define STM32_NATIM                    2   /* Two advanced timers TIM1 and 8 
*/
+#  define STM32_NGTIM                    4   /* 16-bit general timers TIM3 and 
4 with DMA
+                                              * 32-bit general timers TIM2 and 
5 with DMA */
+#  define STM32_NGTIMNDMA                6   /* 16-bit general timers TIM9-14 
without DMA */
+#  define STM32_NBTIM                    2   /* Two basic timers, TIM6-7 */
+#  define STM32_NDMA                     2   /* DMA1-2 */
+#  define STM32_NSPI                     3   /* SPI1-3 */
+#  define STM32_NI2S                     2   /* I2S1-2 (multiplexed with 
SPI2-3) */
+#  define STM32_NUSART                   6   /* USART1-3 and 6, UART 4-5 */
+#  define STM32_NLPUART                  0   /* No LPUART */
+#  define STM32_NI2C                     3   /* I2C1-3 */
+#  define STM32_NCAN                     2   /* CAN1-2 */
+#  define STM32_NSDIO                    1   /* SDIO */
+#  define STM32_NLCD                     0   /* No LCD */
+#  define STM32_NUSBOTG                  1   /* USB OTG FS/HS */
+#  define STM32_NGPIO                    82  /* GPIOA-I */
+#  define STM32_NADC                     3   /* 12-bit ADC1-3, 24 channels */
+#  define STM32_NDAC                     2   /* 12-bit DAC1, 2 channels */
+#  define STM32_NCAPSENSE                0   /* No capacitive sensing channels 
*/
+#  define STM32_NCRC                     1   /* CRC */
+#  define STM32_NETHERNET                1   /* 100/100 Ethernet MAC */
+#  define STM32_NRNG                     1   /* Random number generator (RNG) 
*/
+#  define STM32_NDCMI                    1   /* Digital camera interface 
(DCMI) */
+
+#elif defined(CONFIG_ARCH_CHIP_STM32F207IC) || 
defined(CONFIG_ARCH_CHIP_STM32F207IE) || \
+      defined(CONFIG_ARCH_CHIP_STM32F207IF) || 
defined(CONFIG_ARCH_CHIP_STM32F207IG)
+#  define STM32_NFSMC                    1   /* FSMC */
+#  define STM32_NATIM                    2   /* Two advanced timers TIM1 and 8 
*/
+#  define STM32_NGTIM                    4   /* 16-bit general timers TIM3 and 
4 with DMA
+                                              * 32-bit general timers TIM2 and 
5 with DMA */
+#  define STM32_NGTIMNDMA                6   /* 16-bit general timers TIM9-14 
without DMA */
+#  define STM32_NBTIM                    2   /* Two basic timers, TIM6-7 */
+#  define STM32_NDMA                     2   /* DMA1-2 */
+#  define STM32_NSPI                     3   /* SPI1-3 */
+#  define STM32_NI2S                     2   /* I2S1-2 (multiplexed with 
SPI2-3) */
+#  define STM32_NUSART                   6   /* USART1-3 and 6, UART 4-5 */
+#  define STM32_NLPUART                  0   /* No LPUART */
+#  define STM32_NI2C                     3   /* I2C1-3 */
+#  define STM32_NCAN                     2   /* CAN1-2 */
+#  define STM32_NSDIO                    1   /* SDIO */
+#  define STM32_NLCD                     0   /* No LCD */
+#  define STM32_NUSBOTG                  1   /* USB OTG FS/HS */
+#  define STM32_NGPIO                    140 /* GPIOA-I */
+#  define STM32_NADC                     3   /* 12-bit ADC1-3, 24 channels */
+#  define STM32_NDAC                     2   /* 12-bit DAC1, 2 channels */
+#  define STM32_NCAPSENSE                0   /* No capacitive sensing channels 
*/
+#  define STM32_NCRC                     1   /* CRC */
+#  define STM32_NETHERNET                1   /* 100/100 Ethernet MAC */
+#  define STM32_NRNG                     1   /* Random number generator (RNG) 
*/
+#  define STM32_NDCMI                    1   /* Digital camera interface 
(DCMI) */
+
+#elif defined(CONFIG_ARCH_CHIP_STM32F207ZC)  || 
defined(CONFIG_ARCH_CHIP_STM32F207ZE) || \
+      defined(CONFIG_ARCH_CHIP_STM32F207ZF) || 
defined(CONFIG_ARCH_CHIP_STM32F207ZG)
+#  define STM32_NFSMC                    1   /* FSMC */
+#  define STM32_NATIM                    2   /* Two advanced timers TIM1 and 8 
*/
+#  define STM32_NGTIM                    4   /* 16-bit general timers TIM3 and 
4 with DMA
+                                              * 32-bit general timers TIM2 and 
5 with DMA */
+#  define STM32_NGTIMNDMA                6   /* 16-bit general timers TIM9-14 
without DMA */
+#  define STM32_NBTIM                    2   /* Two basic timers, TIM6-7 */
+#  define STM32_NDMA                     2   /* DMA1-2 */
+#  define STM32_NSPI                     3   /* SPI1-3 */
+#  define STM32_NI2S                     2   /* I2S1-2 (multiplexed with 
SPI2-3) */
+#  define STM32_NUSART                   6   /* USART1-3 and 6, UART 4-5 */
+#  define STM32_NLPUART                  0   /* No LPUART */
+#  define STM32_NI2C                     3   /* I2C1-3 */
+#  define STM32_NCAN                     2   /* CAN1-2 */
+#  define STM32_NSDIO                    1   /* SDIO */
+#  define STM32_NLCD                     0   /* No LCD */
+#  define STM32_NUSBOTG                  1   /* USB OTG FS/HS */
+#  define STM32_NGPIO                    114 /* GPIOA-I */
+#  define STM32_NADC                     3   /* 12-bit ADC1-3, 24 channels */
+#  define STM32_NDAC                     2   /* 12-bit DAC1, 2 channels */
+#  define STM32_NCAPSENSE                0   /* No capacitive sensing channels 
*/
+#  define STM32_NCRC                     1   /* CRC */
+#  define STM32_NETHERNET                1   /* 100/100 Ethernet MAC */
+#  define STM32_NRNG                     1   /* Random number generator (RNG) 
*/
+#  define STM32_NDCMI                    1   /* Digital camera interface 
(DCMI) */
+
+/* STM23 F3 Family **********************************************************/
+
+/* Part Numbering: STM32Fssscfxxx
+ *
+ *  Where
+ *     sss = 302/303, 334 or 372/373
+ *     c   = C (48pins) R (68 pins) V (100 pins)
+ *     c   = K (32 pins), C (48 pins), R (68 pins), V (100 pins)
+ *     f   = 6 (32KB FLASH), 8 (64KB FLASH), B (128KB FLASH), C (256KB FLASH)
+ *     xxx = Package, temperature range, options (ignored here)
+ */
+
+#else
+#  error "Unsupported STM32 chip"
+#endif
+
+/* Peripheral IP versions ***************************************************/
+
+/* Peripheral IP versions are invariant and should be decided here, not in
+ * Kconfig.
+ *
+ * REVISIT: Currently only SPI IP version is handled here, with others being
+ *          handled in Kconfig. Those others need to be gradually refactored
+ *          and resolved here.
+ */
+
+#define STM32_HAVE_IP_SPI_V2
+
+/* NVIC priority levels *****************************************************/
+
+#define NVIC_SYSH_PRIORITY_MIN     0xf0 /* All bits set in minimum priority */
+#define NVIC_SYSH_PRIORITY_DEFAULT 0x80 /* Midpoint is the default */
+#define NVIC_SYSH_PRIORITY_MAX     0x00 /* Zero is maximum priority */
+#define NVIC_SYSH_PRIORITY_STEP    0x10 /* Four bits of interrupt priority 
used */
+
+#endif /* __ARCH_ARM_INCLUDE_STM32F2_CHIP_H */
diff --git a/arch/arm/include/stm32/stm32f20xxx_irq.h 
b/arch/arm/include/stm32f2/irq.h
similarity index 85%
rename from arch/arm/include/stm32/stm32f20xxx_irq.h
rename to arch/arm/include/stm32f2/irq.h
index fddc9841359..b91d6952fa9 100644
--- a/arch/arm/include/stm32/stm32f20xxx_irq.h
+++ b/arch/arm/include/stm32f2/irq.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/include/stm32/stm32f20xxx_irq.h
+ * arch/arm/include/stm32f2/irq.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -20,12 +20,12 @@
  *
  ****************************************************************************/
 
-/* This file should never be included directly but, rather, only indirectly
- * through nuttx/irq.h
+/* This file should never be included directly but, rather,
+ * only indirectly through nuttx/irq.h
  */
 
-#ifndef __ARCH_ARM_INCLUDE_STM32_STM32F20XXX_IRQ_H
-#define __ARCH_ARM_INCLUDE_STM32_STM32F20XXX_IRQ_H
+#ifndef __ARCH_ARM_INCLUDE_STM32F2_IRQ_H
+#define __ARCH_ARM_INCLUDE_STM32F2_IRQ_H
 
 /****************************************************************************
  * Included Files
@@ -33,21 +33,44 @@
 
 #include <nuttx/config.h>
 #include <nuttx/irq.h>
+#include <arch/stm32f2/chip.h>
 
 /****************************************************************************
  * Pre-processor Prototypes
  ****************************************************************************/
 
-/* IRQ numbers.  The IRQ number corresponds vector number and hence map
- * directly to bits in the NVIC.  This does, however, waste several words of
- * memory in the IRQ to handle mapping tables.
- *
- * Processor Exceptions (vectors 0-15).  These common definitions can be
- * found in nuttx/arch/arm/include/stm32/irq.h
- *
- * External interrupts (vectors >= 16)
+/* IRQ numbers.
+ * The IRQ number corresponds vector number and hence map directly to
+ * bits in the NVIC.  This does, however, waste several words of memory in
+ * the IRQ to handle mapping tables.
+ */
+
+/* Processor Exceptions (vectors 0-15) */
+
+#define STM32_IRQ_RESERVED       (0) /* Reserved vector (only used with 
CONFIG_DEBUG_FEATURES) */
+                                     /* Vector  0: Reset stack pointer value */
+                                     /* Vector  1: Reset (not handler as an 
IRQ) */
+#define STM32_IRQ_NMI            (2) /* Vector  2: Non-Maskable Interrupt 
(NMI) */
+#define STM32_IRQ_HARDFAULT      (3) /* Vector  3: Hard fault */
+#define STM32_IRQ_MEMFAULT       (4) /* Vector  4: Memory management (MPU) */
+#define STM32_IRQ_BUSFAULT       (5) /* Vector  5: Bus fault */
+#define STM32_IRQ_USAGEFAULT     (6) /* Vector  6: Usage fault */
+#define STM32_IRQ_SVCALL        (11) /* Vector 11: SVC call */
+#define STM32_IRQ_DBGMONITOR    (12) /* Vector 12: Debug Monitor */
+                                     /* Vector 13: Reserved */
+#define STM32_IRQ_PENDSV        (14) /* Vector 14: Pendable system service 
request */
+#define STM32_IRQ_SYSTICK       (15) /* Vector 15: System tick */
+
+/* External interrupts (vectors >= 16).
+ * These definitions are chip-specific
  */
 
+#define STM32_IRQ_FIRST         (16) /* Vector number of the first external 
interrupt */
+
+/****************************************************************************
+ * Included Files
+ ****************************************************************************/
+
 #define STM32_IRQ_WWDG        (STM32_IRQ_FIRST + 0)  /* 0:  Window Watchdog 
interrupt */
 #define STM32_IRQ_PVD         (STM32_IRQ_FIRST + 1)  /* 1:  PVD through EXTI 
Line detection interrupt */
 #define STM32_IRQ_TAMPER      (STM32_IRQ_FIRST + 2)  /* 2:  Tamper and time 
stamp interrupts */
@@ -142,31 +165,4 @@
 #define STM32_IRQ_NEXTINTS    (81)
 #define NR_IRQS               (STM32_IRQ_FIRST + STM32_IRQ_NEXTINTS)
 
-/****************************************************************************
- * Public Types
- ****************************************************************************/
-
-/****************************************************************************
- * Public Data
- ****************************************************************************/
-
-#ifndef __ASSEMBLY__
-#ifdef __cplusplus
-#define EXTERN extern "C"
-extern "C"
-{
-#else
-#define EXTERN extern
-#endif
-
-/****************************************************************************
- * Public Function Prototypes
- ****************************************************************************/
-
-#undef EXTERN
-#ifdef __cplusplus
-}
-#endif
-#endif
-
-#endif /* __ARCH_ARM_INCLUDE_STM32_STM32F20XXX_IRQ_H */
+#endif /* __ARCH_ARM_INCLUDE_STM32F2_IRQ_H */
diff --git a/boards/arm/stm32/cloudctrl/CMakeLists.txt 
b/arch/arm/src/stm32f2/CMakeLists.txt
similarity index 84%
copy from boards/arm/stm32/cloudctrl/CMakeLists.txt
copy to arch/arm/src/stm32f2/CMakeLists.txt
index 17ccd5a4c78..79b7a470297 100644
--- a/boards/arm/stm32/cloudctrl/CMakeLists.txt
+++ b/arch/arm/src/stm32f2/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/cloudctrl/CMakeLists.txt
+# arch/arm/src/stm32f2/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
@@ -20,4 +20,9 @@
 #
 # 
##############################################################################
 
-add_subdirectory(src)
+set(SRCS)
+
+list(APPEND SRCS stm32_rcc.c)
+
+target_sources(arch PRIVATE ${SRCS})
+add_subdirectory(${NUTTX_DIR}/arch/arm/src/common/stm32 stm32_common)
diff --git a/arch/arm/src/stm32f2/Kconfig b/arch/arm/src/stm32f2/Kconfig
new file mode 100644
index 00000000000..a93ae1f0118
--- /dev/null
+++ b/arch/arm/src/stm32f2/Kconfig
@@ -0,0 +1,184 @@
+#
+# For a description of the syntax of this configuration file,
+# see the file kconfig-language.txt in the NuttX tools repository.
+#
+comment "STM32 F2 configuration"
+
+if ARCH_CHIP_STM32F2
+
+choice
+       prompt "STM32F2 Chip Selection"
+       depends on ARCH_CHIP_STM32F2
+
+config ARCH_CHIP_STM32F205RG
+       bool "STM32F205RG"
+       select STM32_STM32F20XX
+       select STM32_STM32F205
+
+config ARCH_CHIP_STM32F207VC
+       bool "STM32F207VC"
+       select STM32_STM32F20XX
+       select STM32_STM32F207
+
+config ARCH_CHIP_STM32F207VE
+       bool "STM32F207VE"
+       select STM32_STM32F20XX
+       select STM32_STM32F207
+
+config ARCH_CHIP_STM32F207VF
+       bool "STM32F207VF"
+       select STM32_STM32F20XX
+       select STM32_STM32F207
+
+config ARCH_CHIP_STM32F207VG
+       bool "STM32F207VG"
+       select STM32_STM32F20XX
+       select STM32_STM32F207
+
+config ARCH_CHIP_STM32F207IC
+       bool "STM32F207IC"
+       select STM32_STM32F20XX
+       select STM32_STM32F207
+
+config ARCH_CHIP_STM32F207IE
+       bool "STM32F207IE"
+       select STM32_STM32F20XX
+       select STM32_STM32F207
+
+config ARCH_CHIP_STM32F207IF
+       bool "STM32F207IF"
+       select STM32_STM32F20XX
+       select STM32_STM32F207
+
+config ARCH_CHIP_STM32F207IG
+       bool "STM32F207IG"
+       select STM32_STM32F20XX
+       select STM32_STM32F207
+
+config ARCH_CHIP_STM32F207ZC
+       bool "STM32F207ZC"
+       select STM32_STM32F20XX
+       select STM32_STM32F207
+
+config ARCH_CHIP_STM32F207ZE
+       bool "STM32F207ZE"
+       select STM32_STM32F20XX
+       select STM32_STM32F207
+
+config ARCH_CHIP_STM32F207ZF
+       bool "STM32F207ZF"
+       select STM32_STM32F20XX
+       select STM32_STM32F207
+
+config ARCH_CHIP_STM32F207ZG
+       bool "STM32F207ZG"
+       select STM32_STM32F20XX
+       select STM32_STM32F207
+
+endchoice
+
+endif
+
+config STM32_STM32F20XX
+       bool
+       default n
+       select STM32_HAVE_DMA1
+       select STM32_HAVE_DMA2
+       select ARCH_CORTEXM3
+       select STM32_HAVE_DCMI
+       select STM32_HAVE_USART1
+       select STM32_HAVE_USART2
+       select STM32_HAVE_FLASH_ICACHE
+       select STM32_HAVE_FLASH_DCACHE
+       select STM32_HAVE_CRYP
+       select STM32_HAVE_HASH
+       select STM32_HAVE_I2C1
+       select STM32_HAVE_OTGFS
+       select STM32_HAVE_OTGHS
+       select STM32_HAVE_SPI1
+       select STM32_HAVE_USART3
+       select STM32_HAVE_UART4
+       select STM32_HAVE_UART5
+       select STM32_HAVE_USART6
+       select STM32_HAVE_SYSCFG
+       select STM32_HAVE_TIM1
+       select STM32_HAVE_TIM2
+       select STM32_HAVE_TIM3
+       select STM32_HAVE_TIM4
+       select STM32_HAVE_TIM5
+       select STM32_HAVE_TIM6
+       select STM32_HAVE_TIM7
+       select STM32_HAVE_TIM8
+       select STM32_HAVE_TIM9
+       select STM32_HAVE_TIM10
+       select STM32_HAVE_TIM11
+       select STM32_HAVE_TIM12
+       select STM32_HAVE_TIM13
+       select STM32_HAVE_TIM14
+       select STM32_HAVE_ADC2
+       select STM32_HAVE_ADC3
+       select STM32_HAVE_DAC1
+       select STM32_HAVE_I2C2
+       select STM32_HAVE_I2C3
+       select STM32_HAVE_CAN1
+       select STM32_HAVE_CAN2
+       select STM32_HAVE_RNG
+       select STM32_HAVE_SPI2
+       select STM32_HAVE_SPI3
+       select STM32_HAVE_IOCOMPENSATION
+       select STM32_HAVE_IP_AES_M3M4_V1 if STM32_HAVE_AES
+       select STM32_HAVE_IP_BBSRAM_M3M4_V1
+       select STM32_HAVE_IP_BKP_M3M4_V1
+       select STM32_HAVE_IP_CAN_BXCAN_M3M4_V1
+       select STM32_HAVE_IP_CCM_M3M4_V1 if STM32_HAVE_CCM
+       select STM32_HAVE_IP_CRYPTO_M3M4_V1
+       select STM32_HAVE_IP_DBGMCU_M3M4_V2
+       select STM32_HAVE_IP_ADC_M3M4_V1
+       select STM32_HAVE_COMMON_FOC
+       select STM32_HAVE_IP_DCMI_V1
+       select STM32_HAVE_IP_DAC_M3M4_V1
+       select STM32_HAVE_IP_DFUMODE_M3M4_V1
+       select STM32_HAVE_IP_DMA_V2
+       select STM32_HAVE_IP_DMA_V2_STREAM
+       select STM32_HAVE_ETHERNET if STM32_HAVE_ETHMAC
+       select STM32_HAVE_IP_EXTI_V1
+       select STM32_HAVE_IP_ETHMAC_M3M4_V1 if STM32_HAVE_ETHMAC
+       select STM32_HAVE_IP_FLASH_M3M4_V1
+       select STM32_HAVE_IP_FLASH_M3M4_F2F4
+       select STM32_HAVE_IP_FMC_M3M4_V1 if STM32_HAVE_FMC
+       select STM32_HAVE_IP_FREERUN_M3M4_V1
+       select STM32_HAVE_IP_FSMC_M3M4_V1 if STM32_HAVE_FSMC
+       select STM32_HAVE_IP_GPIO_M3M4_V1
+       select STM32_HAVE_IP_I2C_M3M4_V1
+       select STM32_HAVE_IP_I2S_M3M4_V1
+       select STM32_HAVE_IP_ONESHOT_M3M4_V1
+       select STM32_HAVE_IP_OTGFS_M3M4_V1 if STM32_HAVE_OTGFS
+       select STM32_HAVE_IP_OTGHS_M3M4_V1
+       select STM32_HAVE_IP_PWR_M3M4_V1
+       select STM32_HAVE_IP_RNG_M3M4_V1 if STM32_HAVE_RNG
+       select STM32_HAVE_IP_RTC_M3M4_V1
+       select STM32_HAVE_IP_RTCC_M3M4_V1
+       select STM32_HAVE_RTC_MAGIC
+       select STM32_HAVE_RTC
+       select STM32_HAVE_CRC
+       select STM32_HAVE_PWR
+       select STM32_HAVE_BKPSRAM
+       select STM32_HAVE_IP_SDIO_M3M4_V1
+       select STM32_HAVE_IP_SPI_V2
+       select STM32_HAVE_IP_SYSCFG_M3M4_V1
+       select STM32_HAVE_IP_TIMERS_M3M4_V1
+       select STM32_HAVE_IP_UID_M3M4_V1
+       select STM32_HAVE_IP_USART_V2
+       select STM32_HAVE_IP_USBDEV_M3M4_V1 if STM32_HAVE_USBDEV
+       select STM32_HAVE_IP_USBFS_M3M4_V1 if STM32_HAVE_USBFS
+       select STM32_HAVE_IP_WDG_M3M4_V1
+
+config STM32_STM32F205
+       bool
+       default n
+
+config STM32_STM32F207
+       bool
+       default n
+       select STM32_HAVE_FSMC
+       select STM32_HAVE_ETHMAC
diff --git a/boards/arm/stm32/emw3162/src/Make.defs 
b/arch/arm/src/stm32f2/Make.defs
similarity index 68%
copy from boards/arm/stm32/emw3162/src/Make.defs
copy to arch/arm/src/stm32f2/Make.defs
index f397baef02b..b98256025f3 100644
--- a/boards/arm/stm32/emw3162/src/Make.defs
+++ b/arch/arm/src/stm32f2/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/emw3162/src/Make.defs
+# arch/arm/src/stm32f2/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
@@ -20,21 +20,8 @@
 #
 ############################################################################
 
-include $(TOPDIR)/Make.defs
+include armv7-m/Make.defs
 
-CSRCS = stm32_boot.c stm32_bringup.c
+CHIP_CSRCS  = stm32_rcc.c
 
-ifeq ($(CONFIG_ARCH_LEDS),y)
-CSRCS += stm32_autoleds.c
-else
-CSRCS += stm32_userleds.c
-endif
-
-ifeq ($(CONFIG_EMW3162_WLAN),y)
-CSRCS += stm32_wlan.c
-CSRCS += stm32_wlan_firmware.c
-endif
-
-DEPPATH += --dep-path board
-VPATH += :board
-CFLAGS += 
${INCDIR_PREFIX}$(TOPDIR)$(DELIM)arch$(DELIM)$(CONFIG_ARCH)$(DELIM)src$(DELIM)board$(DELIM)board
+include common/stm32/Make.defs
diff --git a/boards/arm/stm32/photon/src/stm32_usb.c 
b/arch/arm/src/stm32f2/chip.h
similarity index 54%
copy from boards/arm/stm32/photon/src/stm32_usb.c
copy to arch/arm/src/stm32f2/chip.h
index d8f58624854..4b555d13fb7 100644
--- a/boards/arm/stm32/photon/src/stm32_usb.c
+++ b/arch/arm/src/stm32f2/chip.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_usb.c
+ * arch/arm/src/stm32f2/chip.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -20,49 +20,40 @@
  *
  ****************************************************************************/
 
+#ifndef __ARCH_ARM_SRC_STM32F2_CHIP_H
+#define __ARCH_ARM_SRC_STM32F2_CHIP_H
+
 /****************************************************************************
  * Included Files
  ****************************************************************************/
 
 #include <nuttx/config.h>
-#include "photon.h"
-#include <nuttx/debug.h>
 
-#include <stdbool.h>
-#include <nuttx/usb/usbdev.h>
+/* Include the chip capabilities file */
 
-/****************************************************************************
- * Public Functions
- ****************************************************************************/
+#include <arch/stm32f2/chip.h>
 
-/****************************************************************************
- * Name: stm32_usbinitialize
- *
- * Description:
- *   Called from stm32_usbinitialize very early in initialization to setup
- *   USB-related GPIO pins for the Photon board.
- *
- ****************************************************************************/
+/* Include the chip interrupt definition file */
+
+#include <arch/stm32f2/irq.h>
 
-void stm32_usbinitialize(void)
-{
-}
+/* Include the chip memory map */
+
+#include "hardware/stm32_memorymap.h"
+
+/* Include the chip pinmap */
+
+#include "hardware/stm32_pinmap.h"
 
 /****************************************************************************
- * Name:  stm32_usbsuspend
- *
- * Description:
- *   Board logic must provide the stm32_usbsuspend logic if the USBDEV driver
- *   is used.
- *   This function is called whenever the USB enters or leaves suspend mode.
- *   This is an opportunity for the board logic to shutdown clocks, power,
- *   etc. while the USB is suspended.
- *
+ * Pre-processor Definitions
  ****************************************************************************/
 
-#ifdef CONFIG_USBDEV
-void stm32_usbsuspend(struct usbdev_s *dev, bool resume)
-{
-  uinfo("resume: %d\n", resume);
-}
-#endif
+/* Provide the required number of peripheral interrupt vector
+ * definitions as * well. The definition STM32_IRQ_NEXTINTS simply comes
+ * from the chip-specific * IRQ header file included by arch/stm32/irq.h.
+ */
+
+#define ARMV7M_PERIPHERAL_INTERRUPTS  STM32_IRQ_NEXTINTS
+
+#endif /* __ARCH_ARM_SRC_STM32F2_CHIP_H */
diff --git a/arch/arm/src/stm32f2/hardware/stm32_memorymap.h 
b/arch/arm/src/stm32f2/hardware/stm32_memorymap.h
new file mode 100644
index 00000000000..4037ce463e1
--- /dev/null
+++ b/arch/arm/src/stm32f2/hardware/stm32_memorymap.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ * arch/arm/src/stm32f2/hardware/stm32_memorymap.h
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ ****************************************************************************/
+
+#ifndef __ARCH_ARM_SRC_STM32F2_HARDWARE_STM32_MEMORYMAP_H
+#define __ARCH_ARM_SRC_STM32F2_HARDWARE_STM32_MEMORYMAP_H
+
+/****************************************************************************
+ * Included Files
+ ****************************************************************************/
+
+#include "hardware/stm32f20xxx_memorymap.h"
+
+#endif /* __ARCH_ARM_SRC_STM32F2_HARDWARE_STM32_MEMORYMAP_H */
diff --git a/arch/arm/src/stm32f2/hardware/stm32_pinmap.h 
b/arch/arm/src/stm32f2/hardware/stm32_pinmap.h
new file mode 100644
index 00000000000..e9a0e492b35
--- /dev/null
+++ b/arch/arm/src/stm32f2/hardware/stm32_pinmap.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ * arch/arm/src/stm32f2/hardware/stm32_pinmap.h
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ ****************************************************************************/
+
+#ifndef __ARCH_ARM_SRC_STM32F2_HARDWARE_STM32_PINMAP_H
+#define __ARCH_ARM_SRC_STM32F2_HARDWARE_STM32_PINMAP_H
+
+/****************************************************************************
+ * Included Files
+ ****************************************************************************/
+
+#include "hardware/stm32f20xxx_pinmap.h"
+
+#endif /* __ARCH_ARM_SRC_STM32F2_HARDWARE_STM32_PINMAP_H */
diff --git a/arch/arm/src/stm32/hardware/stm32f20xxx_gpio.h 
b/arch/arm/src/stm32f2/hardware/stm32f20xxx_gpio.h
similarity index 99%
rename from arch/arm/src/stm32/hardware/stm32f20xxx_gpio.h
rename to arch/arm/src/stm32f2/hardware/stm32f20xxx_gpio.h
index ebb05948282..32ab85cc3df 100644
--- a/arch/arm/src/stm32/hardware/stm32f20xxx_gpio.h
+++ b/arch/arm/src/stm32f2/hardware/stm32f20xxx_gpio.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/src/stm32/hardware/stm32f20xxx_gpio.h
+ * arch/arm/src/stm32f2/hardware/stm32f20xxx_gpio.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/arch/arm/src/stm32/hardware/stm32f20xxx_memorymap.h 
b/arch/arm/src/stm32f2/hardware/stm32f20xxx_memorymap.h
similarity index 99%
rename from arch/arm/src/stm32/hardware/stm32f20xxx_memorymap.h
rename to arch/arm/src/stm32f2/hardware/stm32f20xxx_memorymap.h
index 189e5a7a081..d55645a1ac5 100644
--- a/arch/arm/src/stm32/hardware/stm32f20xxx_memorymap.h
+++ b/arch/arm/src/stm32f2/hardware/stm32f20xxx_memorymap.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/src/stm32/hardware/stm32f20xxx_memorymap.h
+ * arch/arm/src/stm32f2/hardware/stm32f20xxx_memorymap.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/arch/arm/src/stm32/hardware/stm32f20xxx_pinmap.h 
b/arch/arm/src/stm32f2/hardware/stm32f20xxx_pinmap.h
similarity index 99%
rename from arch/arm/src/stm32/hardware/stm32f20xxx_pinmap.h
rename to arch/arm/src/stm32f2/hardware/stm32f20xxx_pinmap.h
index aa7f4da6bfb..544806fd181 100644
--- a/arch/arm/src/stm32/hardware/stm32f20xxx_pinmap.h
+++ b/arch/arm/src/stm32f2/hardware/stm32f20xxx_pinmap.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/src/stm32/hardware/stm32f20xxx_pinmap.h
+ * arch/arm/src/stm32f2/hardware/stm32f20xxx_pinmap.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/arch/arm/src/stm32/hardware/stm32f20xxx_rcc.h 
b/arch/arm/src/stm32f2/hardware/stm32f20xxx_rcc.h
similarity index 99%
rename from arch/arm/src/stm32/hardware/stm32f20xxx_rcc.h
rename to arch/arm/src/stm32f2/hardware/stm32f20xxx_rcc.h
index c447c70bf6a..31af35f07a1 100644
--- a/arch/arm/src/stm32/hardware/stm32f20xxx_rcc.h
+++ b/arch/arm/src/stm32f2/hardware/stm32f20xxx_rcc.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/src/stm32/hardware/stm32f20xxx_rcc.h
+ * arch/arm/src/stm32f2/hardware/stm32f20xxx_rcc.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/arch/arm/src/stm32/hardware/stm32f20xxx_syscfg.h 
b/arch/arm/src/stm32f2/hardware/stm32f20xxx_syscfg.h
similarity index 99%
rename from arch/arm/src/stm32/hardware/stm32f20xxx_syscfg.h
rename to arch/arm/src/stm32f2/hardware/stm32f20xxx_syscfg.h
index 954c0466331..c4ad192e1ee 100644
--- a/arch/arm/src/stm32/hardware/stm32f20xxx_syscfg.h
+++ b/arch/arm/src/stm32f2/hardware/stm32f20xxx_syscfg.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/src/stm32/hardware/stm32f20xxx_syscfg.h
+ * arch/arm/src/stm32f2/hardware/stm32f20xxx_syscfg.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/stm32_usb.c 
b/arch/arm/src/stm32f2/stm32.h
similarity index 50%
copy from boards/arm/stm32/photon/src/stm32_usb.c
copy to arch/arm/src/stm32f2/stm32.h
index d8f58624854..9069ebcbca6 100644
--- a/boards/arm/stm32/photon/src/stm32_usb.c
+++ b/arch/arm/src/stm32f2/stm32.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_usb.c
+ * arch/arm/src/stm32f2/stm32.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -20,49 +20,50 @@
  *
  ****************************************************************************/
 
+#ifndef __ARCH_ARM_SRC_STM32_STM32_H
+#define __ARCH_ARM_SRC_STM32_STM32_H
+
 /****************************************************************************
  * Included Files
  ****************************************************************************/
 
 #include <nuttx/config.h>
-#include "photon.h"
-#include <nuttx/debug.h>
-
+#include <sys/types.h>
+#include <stdint.h>
 #include <stdbool.h>
-#include <nuttx/usb/usbdev.h>
 
-/****************************************************************************
- * Public Functions
- ****************************************************************************/
+#include "arm_internal.h"
 
-/****************************************************************************
- * Name: stm32_usbinitialize
- *
- * Description:
- *   Called from stm32_usbinitialize very early in initialization to setup
- *   USB-related GPIO pins for the Photon board.
- *
- ****************************************************************************/
+/* Peripherals **************************************************************/
 
-void stm32_usbinitialize(void)
-{
-}
-
-/****************************************************************************
- * Name:  stm32_usbsuspend
- *
- * Description:
- *   Board logic must provide the stm32_usbsuspend logic if the USBDEV driver
- *   is used.
- *   This function is called whenever the USB enters or leaves suspend mode.
- *   This is an opportunity for the board logic to shutdown clocks, power,
- *   etc. while the USB is suspended.
- *
- ****************************************************************************/
-
-#ifdef CONFIG_USBDEV
-void stm32_usbsuspend(struct usbdev_s *dev, bool resume)
-{
-  uinfo("resume: %d\n", resume);
-}
+#include "chip.h"
+#include "stm32_adc.h"
+#include "stm32_can.h"
+#include "stm32_comp.h"
+#include "stm32_dbgmcu.h"
+#include "stm32_dma.h"
+#include "stm32_dac_m3m4_v1.h"
+#include "stm32_exti.h"
+#include "stm32_flash.h"
+#include "stm32_fmc_m3m4_v1.h"
+#include "stm32_fsmc_m3m4_v1.h"
+#include "stm32_gpio.h"
+#include "stm32_i2c.h"
+#include "stm32_ltdc_m3m4_v1.h"
+#include "stm32_opamp_m3m4_v1.h"
+#include "stm32_pwr.h"
+#include "stm32_rcc.h"
+#include "stm32_rtc.h"
+#include "stm32_sdio_m3m4_v1.h"
+#include "stm32_spi.h"
+#include "stm32_i2s.h"
+#include "stm32_tim.h"
+#include "stm32_uart.h"
+#if defined(CONFIG_USBDEV) && defined(CONFIG_STM32_USB)
+#  include "stm32_usbdev.h"
 #endif
+#include "stm32_wdg.h"
+#include "stm32_lowputc.h"
+#include "stm32_eth_m3m4_v1.h"
+
+#endif /* __ARCH_ARM_SRC_STM32_STM32_H */
diff --git a/arch/arm/src/stm32f2/stm32_rcc.c b/arch/arm/src/stm32f2/stm32_rcc.c
new file mode 100644
index 00000000000..7452375136a
--- /dev/null
+++ b/arch/arm/src/stm32f2/stm32_rcc.c
@@ -0,0 +1,234 @@
+/****************************************************************************
+ * arch/arm/src/stm32f2/stm32_rcc.c
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.  The
+ * ASF licenses this file to you 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.
+ *
+ ****************************************************************************/
+
+/****************************************************************************
+ * Included Files
+ ****************************************************************************/
+
+#include <nuttx/config.h>
+
+#include <stdint.h>
+#include <stdio.h>
+#include <assert.h>
+#include <nuttx/debug.h>
+
+#include <arch/board/board.h>
+
+#include "arm_internal.h"
+#include "chip.h"
+#include "stm32_gpio.h"
+#include "stm32_rcc.h"
+#include "stm32_rtc.h"
+#include "stm32_flash.h"
+#include "stm32.h"
+#include "stm32_waste.h"
+
+/****************************************************************************
+ * Pre-processor Definitions
+ ****************************************************************************/
+
+static_assert(CONFIG_BOARD_LOOPSPERMSEC != -1,
+              "Configure BOARD_LOOPSPERMSEC to non-default value.");
+
+/* Allow up to 100 milliseconds for the high speed clock to become ready.
+ * that is a very long delay, but if the clock does not become ready we are
+ * hosed anyway.
+ */
+
+#define HSERDY_TIMEOUT (100 * CONFIG_BOARD_LOOPSPERMSEC)
+
+/****************************************************************************
+ * Included Files
+ ****************************************************************************/
+
+/* Include chip-specific clocking initialization logic */
+
+#include "stm32f20xxx_rcc.c"
+
+/****************************************************************************
+ * Pre-processor Definitions
+ ****************************************************************************/
+
+#if defined(CONFIG_STM32_STM32L15XX)
+#  define STM32_RCC_XXX      STM32_RCC_CSR
+#  define RCC_XXX_YYYRST     RCC_CSR_RTCRST
+#else
+#  define STM32_RCC_XXX      STM32_RCC_BDCR
+#  define RCC_XXX_YYYRST     RCC_BDCR_BDRST
+#endif
+
+/****************************************************************************
+ * Public Functions
+ ****************************************************************************/
+
+/****************************************************************************
+ * Name: rcc_resetbkp
+ *
+ * Description:
+ *   The RTC needs to reset the Backup Domain to change RTCSEL and resetting
+ *   the Backup Domain renders to disabling the LSE as consequence.
+ *   In order to avoid resetting the Backup Domain when we already
+ *   configured LSE we will reset the Backup Domain early (here).
+ *
+ * Input Parameters:
+ *   None
+ *
+ * Returned Value:
+ *   None
+ *
+ ****************************************************************************/
+
+#if defined(CONFIG_STM32_RTC) && defined(CONFIG_STM32_PWR) && 
!defined(CONFIG_STM32_STM32F10XX)
+static inline void rcc_resetbkp(void)
+{
+  uint32_t regval;
+
+  /* Check if the RTC is already configured */
+
+  stm32_pwr_initbkp(false);
+
+  regval = getreg32(RTC_MAGIC_REG);
+  if (regval != RTC_MAGIC && regval != RTC_MAGIC_TIME_SET)
+    {
+      stm32_pwr_enablebkp(true);
+
+      /* We might be changing RTCSEL - to ensure such changes work, we must
+       * reset the backup domain (having backed up the RTC_MAGIC token)
+       */
+
+      modifyreg32(STM32_RCC_XXX, 0, RCC_XXX_YYYRST);
+      modifyreg32(STM32_RCC_XXX, RCC_XXX_YYYRST, 0);
+
+      stm32_pwr_enablebkp(false);
+    }
+}
+#else
+#  define rcc_resetbkp()
+#endif
+
+/****************************************************************************
+ * Public Functions
+ ****************************************************************************/
+
+/****************************************************************************
+ * Name: stm32_clockconfig
+ *
+ * Description:
+ *   Called to establish the clock settings based on the values in board.h.
+ *   This function (by default) will reset most everything, enable the PLL,
+ *   and enable peripheral clocking for all peripherals enabled in the NuttX
+ *   configuration file.
+ *
+ *   If CONFIG_ARCH_BOARD_STM32_CUSTOM_CLOCKCONFIG is defined, then clocking
+ *   will be enabled by an externally provided, board-specific function
+ *   called stm32_board_clockconfig().
+ *
+ * Input Parameters:
+ *   None
+ *
+ * Returned Value:
+ *   None
+ *
+ ****************************************************************************/
+
+void stm32_clockconfig(void)
+{
+  /* Make sure that we are starting in the reset state */
+
+  rcc_reset();
+
+  /* Reset backup domain if appropriate */
+
+  rcc_resetbkp();
+
+#if defined(CONFIG_ARCH_BOARD_STM32_CUSTOM_CLOCKCONFIG)
+
+  /* Invoke Board Custom Clock Configuration */
+
+  stm32_board_clockconfig();
+
+#else
+
+  /* Invoke standard, fixed clock configuration based on definitions
+   * in board.h
+   */
+
+  stm32_stdclockconfig();
+
+#endif
+
+  /* Enable peripheral clocking */
+
+  rcc_enableperipherals();
+
+#ifdef CONFIG_STM32_SYSCFG_IOCOMPENSATION
+  /* Enable I/O Compensation */
+
+  stm32_iocompensation();
+#endif
+}
+
+/****************************************************************************
+ * Name: stm32_clockenable
+ *
+ * Description:
+ *   Re-enable the clock and restore the clock settings based on settings
+ *   in board.h. This function is only available to support low-power
+ *   modes of operation:  When re-awakening from deep-sleep modes, it is
+ *   necessary to re-enable/re-start the PLL
+ *
+ *   This functional performs a subset of the operations performed by
+ *   stm32_clockconfig():  It does not reset any devices, and it does not
+ *   reset the currently enabled peripheral clocks.
+ *
+ *   If CONFIG_ARCH_BOARD_STM32_CUSTOM_CLOCKCONFIG is defined, then clocking
+ *   will be enabled by an externally provided, board-specific function
+ *   called stm32_board_clockconfig().
+ *
+ * Input Parameters:
+ *   None
+ *
+ * Returned Value:
+ *   None
+ *
+ ****************************************************************************/
+
+#ifdef CONFIG_PM
+void stm32_clockenable(void)
+{
+#if defined(CONFIG_ARCH_BOARD_STM32_CUSTOM_CLOCKCONFIG)
+
+  /* Invoke Board Custom Clock Configuration */
+
+  stm32_board_clockconfig();
+
+#else
+
+  /* Invoke standard, fixed clock configuration based on definitions
+   * in board.h
+   */
+
+  stm32_stdclockconfig();
+
+#endif
+}
+#endif
diff --git a/arch/arm/src/stm32/stm32f20xxx_rcc.c 
b/arch/arm/src/stm32f2/stm32f20xxx_rcc.c
similarity index 99%
rename from arch/arm/src/stm32/stm32f20xxx_rcc.c
rename to arch/arm/src/stm32f2/stm32f20xxx_rcc.c
index eb9e97e0ed8..30c8f34740d 100644
--- a/arch/arm/src/stm32/stm32f20xxx_rcc.c
+++ b/arch/arm/src/stm32f2/stm32f20xxx_rcc.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/src/stm32/stm32f20xxx_rcc.c
+ * arch/arm/src/stm32f2/stm32f20xxx_rcc.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/cloudctrl/CMakeLists.txt 
b/boards/arm/stm32f2/common/CMakeLists.txt
similarity index 86%
copy from boards/arm/stm32/cloudctrl/CMakeLists.txt
copy to boards/arm/stm32f2/common/CMakeLists.txt
index 17ccd5a4c78..05c541018bc 100644
--- a/boards/arm/stm32/cloudctrl/CMakeLists.txt
+++ b/boards/arm/stm32f2/common/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/cloudctrl/CMakeLists.txt
+# boards/arm/stm32f2/common/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
@@ -20,4 +20,6 @@
 #
 # 
##############################################################################
 
-add_subdirectory(src)
+if(CONFIG_ARCH_BOARD_COMMON)
+  add_subdirectory(${NUTTX_DIR}/boards/arm/common/stm32 stm32_common)
+endif()
diff --git a/boards/arm/stm32/nucleo-f207zg/Kconfig 
b/boards/arm/stm32f2/common/Kconfig
similarity index 76%
copy from boards/arm/stm32/nucleo-f207zg/Kconfig
copy to boards/arm/stm32f2/common/Kconfig
index c8a98cc27b3..5c48f62a025 100644
--- a/boards/arm/stm32/nucleo-f207zg/Kconfig
+++ b/boards/arm/stm32f2/common/Kconfig
@@ -3,6 +3,4 @@
 # see the file kconfig-language.txt in the NuttX tools repository.
 #
 
-if ARCH_BOARD_NUCLEO_F207ZG
-
-endif
+source "boards/arm/common/stm32/Kconfig"
diff --git a/boards/arm/stm32/olimex-stm32-p207/src/Make.defs 
b/boards/arm/stm32f2/common/Makefile
similarity index 63%
copy from boards/arm/stm32/olimex-stm32-p207/src/Make.defs
copy to boards/arm/stm32f2/common/Makefile
index 42ceed74368..e87bad2ffe0 100644
--- a/boards/arm/stm32/olimex-stm32-p207/src/Make.defs
+++ b/boards/arm/stm32f2/common/Makefile
@@ -1,5 +1,5 @@
-############################################################################
-# boards/arm/stm32/olimex-stm32-p207/src/Make.defs
+#############################################################################
+# boards/arm/stm32f2/common/Makefile
 #
 # SPDX-License-Identifier: Apache-2.0
 #
@@ -18,34 +18,21 @@
 # License for the specific language governing permissions and limitations
 # under the License.
 #
-############################################################################
+#############################################################################
 
 include $(TOPDIR)/Make.defs
 
-CSRCS = stm32_boot.c
+STM32_BOARD_COMMON_DIR := 
$(TOPDIR)$(DELIM)boards$(DELIM)arm$(DELIM)common$(DELIM)stm32
+STM32_COMMON_SRCDIR := 
$(TOPDIR)$(DELIM)arch$(DELIM)$(CONFIG_ARCH)$(DELIM)src$(DELIM)common$(DELIM)stm32
 
-ifeq ($(CONFIG_ARCH_LEDS),y)
-CSRCS += stm32_autoleds.c
-else
-CSRCS += stm32_userleds.c
-endif
+include board/Make.defs
+include $(STM32_BOARD_COMMON_DIR)$(DELIM)src$(DELIM)Make.defs
 
-ifeq ($(CONFIG_ARCH_BUTTONS),y)
-CSRCS +=  stm32_buttons.c
-endif
-
-ifeq ($(CONFIG_STM32_OTGFS),y)
-CSRCS += stm32_usb.c
-endif
-
-ifeq ($(CONFIG_ADC),y)
-CSRCS +=  stm32_adc.c
-endif
+DEPPATH += --dep-path board
 
-ifeq ($(CONFIG_STM32_CAN_CHARDRIVER),y)
-CSRCS += stm32_can.c
-endif
+include $(TOPDIR)/boards/Board.mk
 
-DEPPATH += --dep-path board
-VPATH += :board
-CFLAGS += 
${INCDIR_PREFIX}$(TOPDIR)$(DELIM)arch$(DELIM)$(CONFIG_ARCH)$(DELIM)src$(DELIM)board$(DELIM)board
+ARCHSRCDIR = $(TOPDIR)$(DELIM)arch$(DELIM)$(CONFIG_ARCH)$(DELIM)src
+BOARDDIR = $(ARCHSRCDIR)$(DELIM)board
+CFLAGS += ${INCDIR_PREFIX}$(BOARDDIR)$(DELIM)include
+CFLAGS += ${INCDIR_PREFIX}$(STM32_COMMON_SRCDIR)
diff --git a/boards/arm/stm32/cloudctrl/CMakeLists.txt 
b/boards/arm/stm32f2/emw3162/CMakeLists.txt
similarity index 95%
copy from boards/arm/stm32/cloudctrl/CMakeLists.txt
copy to boards/arm/stm32f2/emw3162/CMakeLists.txt
index 17ccd5a4c78..3ae13f51fc4 100644
--- a/boards/arm/stm32/cloudctrl/CMakeLists.txt
+++ b/boards/arm/stm32f2/emw3162/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/cloudctrl/CMakeLists.txt
+# boards/arm/stm32f2/emw3162/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/emw3162/Kconfig 
b/boards/arm/stm32f2/emw3162/Kconfig
similarity index 100%
rename from boards/arm/stm32/emw3162/Kconfig
rename to boards/arm/stm32f2/emw3162/Kconfig
diff --git a/boards/arm/stm32/emw3162/configs/nsh/defconfig 
b/boards/arm/stm32f2/emw3162/configs/nsh/defconfig
similarity index 97%
rename from boards/arm/stm32/emw3162/configs/nsh/defconfig
rename to boards/arm/stm32f2/emw3162/configs/nsh/defconfig
index fc40697134b..ba23a8e0b0e 100644
--- a/boards/arm/stm32/emw3162/configs/nsh/defconfig
+++ b/boards/arm/stm32f2/emw3162/configs/nsh/defconfig
@@ -10,7 +10,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="emw3162"
 CONFIG_ARCH_BOARD_EMW3162=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F205RG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/emw3162/configs/wlan/defconfig 
b/boards/arm/stm32f2/emw3162/configs/wlan/defconfig
similarity index 98%
rename from boards/arm/stm32/emw3162/configs/wlan/defconfig
rename to boards/arm/stm32f2/emw3162/configs/wlan/defconfig
index ccfcd0a4584..a623c00de35 100644
--- a/boards/arm/stm32/emw3162/configs/wlan/defconfig
+++ b/boards/arm/stm32f2/emw3162/configs/wlan/defconfig
@@ -13,7 +13,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="emw3162"
 CONFIG_ARCH_BOARD_EMW3162=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F205RG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/emw3162/include/board.h 
b/boards/arm/stm32f2/emw3162/include/board.h
similarity index 99%
rename from boards/arm/stm32/emw3162/include/board.h
rename to boards/arm/stm32f2/emw3162/include/board.h
index 96825cff434..04fe380ce64 100644
--- a/boards/arm/stm32/emw3162/include/board.h
+++ b/boards/arm/stm32f2/emw3162/include/board.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/emw3162/include/board.h
+ * boards/arm/stm32f2/emw3162/include/board.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/emw3162/scripts/Make.defs 
b/boards/arm/stm32f2/emw3162/scripts/Make.defs
similarity index 97%
rename from boards/arm/stm32/emw3162/scripts/Make.defs
rename to boards/arm/stm32f2/emw3162/scripts/Make.defs
index bc77620c6b4..0f1c1fb18dd 100644
--- a/boards/arm/stm32/emw3162/scripts/Make.defs
+++ b/boards/arm/stm32f2/emw3162/scripts/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/emw3162/scripts/Make.defs
+# boards/arm/stm32f2/emw3162/scripts/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/emw3162/scripts/ld.script 
b/boards/arm/stm32f2/emw3162/scripts/ld.script
similarity index 98%
rename from boards/arm/stm32/emw3162/scripts/ld.script
rename to boards/arm/stm32f2/emw3162/scripts/ld.script
index 469fdbf5198..6728bf250c6 100644
--- a/boards/arm/stm32/emw3162/scripts/ld.script
+++ b/boards/arm/stm32f2/emw3162/scripts/ld.script
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/emw3162/scripts/ld.script
+ * boards/arm/stm32f2/emw3162/scripts/ld.script
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/emw3162/src/CMakeLists.txt 
b/boards/arm/stm32f2/emw3162/src/CMakeLists.txt
similarity index 96%
rename from boards/arm/stm32/emw3162/src/CMakeLists.txt
rename to boards/arm/stm32f2/emw3162/src/CMakeLists.txt
index 8c94250123d..74410fcc34e 100644
--- a/boards/arm/stm32/emw3162/src/CMakeLists.txt
+++ b/boards/arm/stm32f2/emw3162/src/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/emw3162/src/CMakeLists.txt
+# boards/arm/stm32f2/emw3162/src/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/emw3162/src/Make.defs 
b/boards/arm/stm32f2/emw3162/src/Make.defs
similarity index 96%
rename from boards/arm/stm32/emw3162/src/Make.defs
rename to boards/arm/stm32f2/emw3162/src/Make.defs
index f397baef02b..1cd6ec0b13d 100644
--- a/boards/arm/stm32/emw3162/src/Make.defs
+++ b/boards/arm/stm32f2/emw3162/src/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/emw3162/src/Make.defs
+# boards/arm/stm32f2/emw3162/src/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/emw3162/src/emw3162.h 
b/boards/arm/stm32f2/emw3162/src/emw3162.h
similarity index 98%
rename from boards/arm/stm32/emw3162/src/emw3162.h
rename to boards/arm/stm32f2/emw3162/src/emw3162.h
index 6142ab2310e..2930b329265 100644
--- a/boards/arm/stm32/emw3162/src/emw3162.h
+++ b/boards/arm/stm32f2/emw3162/src/emw3162.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/emw3162/src/emw3162.h
+ * boards/arm/stm32f2/emw3162/src/emw3162.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -29,7 +29,7 @@
 
 #include <nuttx/config.h>
 #include <nuttx/compiler.h>
-#include <arch/stm32/chip.h>
+#include <arch/chip/chip.h>
 
 /****************************************************************************
  * Pre-processor Definitions
diff --git a/boards/arm/stm32/emw3162/src/stm32_autoleds.c 
b/boards/arm/stm32f2/emw3162/src/stm32_autoleds.c
similarity index 98%
rename from boards/arm/stm32/emw3162/src/stm32_autoleds.c
rename to boards/arm/stm32f2/emw3162/src/stm32_autoleds.c
index cb2dd8f580b..e385fbbbd86 100644
--- a/boards/arm/stm32/emw3162/src/stm32_autoleds.c
+++ b/boards/arm/stm32f2/emw3162/src/stm32_autoleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/emw3162/src/stm32_autoleds.c
+ * boards/arm/stm32f2/emw3162/src/stm32_autoleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/emw3162/src/stm32_boot.c 
b/boards/arm/stm32f2/emw3162/src/stm32_boot.c
similarity index 98%
rename from boards/arm/stm32/emw3162/src/stm32_boot.c
rename to boards/arm/stm32f2/emw3162/src/stm32_boot.c
index fc3647ca0cf..afed8722823 100644
--- a/boards/arm/stm32/emw3162/src/stm32_boot.c
+++ b/boards/arm/stm32f2/emw3162/src/stm32_boot.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/emw3162/src/stm32_boot.c
+ * boards/arm/stm32f2/emw3162/src/stm32_boot.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/emw3162/src/stm32_bringup.c 
b/boards/arm/stm32f2/emw3162/src/stm32_bringup.c
similarity index 98%
rename from boards/arm/stm32/emw3162/src/stm32_bringup.c
rename to boards/arm/stm32f2/emw3162/src/stm32_bringup.c
index 0ffd40553fc..f78b630f138 100644
--- a/boards/arm/stm32/emw3162/src/stm32_bringup.c
+++ b/boards/arm/stm32f2/emw3162/src/stm32_bringup.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/emw3162/src/stm32_bringup.c
+ * boards/arm/stm32f2/emw3162/src/stm32_bringup.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/emw3162/src/stm32_userleds.c 
b/boards/arm/stm32f2/emw3162/src/stm32_userleds.c
similarity index 97%
rename from boards/arm/stm32/emw3162/src/stm32_userleds.c
rename to boards/arm/stm32f2/emw3162/src/stm32_userleds.c
index 61d304b6cf6..51cadf4321b 100644
--- a/boards/arm/stm32/emw3162/src/stm32_userleds.c
+++ b/boards/arm/stm32f2/emw3162/src/stm32_userleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/emw3162/src/stm32_userleds.c
+ * boards/arm/stm32f2/emw3162/src/stm32_userleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/emw3162/src/stm32_wlan.c 
b/boards/arm/stm32f2/emw3162/src/stm32_wlan.c
similarity index 99%
rename from boards/arm/stm32/emw3162/src/stm32_wlan.c
rename to boards/arm/stm32f2/emw3162/src/stm32_wlan.c
index d8a110dc14f..ff0e8ccaf1d 100644
--- a/boards/arm/stm32/emw3162/src/stm32_wlan.c
+++ b/boards/arm/stm32f2/emw3162/src/stm32_wlan.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/emw3162/src/stm32_wlan.c
+ * boards/arm/stm32f2/emw3162/src/stm32_wlan.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/emw3162/src/stm32_wlan_firmware.c 
b/boards/arm/stm32f2/emw3162/src/stm32_wlan_firmware.c
similarity index 100%
rename from boards/arm/stm32/emw3162/src/stm32_wlan_firmware.c
rename to boards/arm/stm32f2/emw3162/src/stm32_wlan_firmware.c
diff --git a/boards/arm/stm32/cloudctrl/CMakeLists.txt 
b/boards/arm/stm32f2/nucleo-f207zg/CMakeLists.txt
similarity index 95%
copy from boards/arm/stm32/cloudctrl/CMakeLists.txt
copy to boards/arm/stm32f2/nucleo-f207zg/CMakeLists.txt
index 17ccd5a4c78..4f4af60fbff 100644
--- a/boards/arm/stm32/cloudctrl/CMakeLists.txt
+++ b/boards/arm/stm32f2/nucleo-f207zg/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/cloudctrl/CMakeLists.txt
+# boards/arm/stm32f2/nucleo-f207zg/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/nucleo-f207zg/Kconfig 
b/boards/arm/stm32f2/nucleo-f207zg/Kconfig
similarity index 100%
rename from boards/arm/stm32/nucleo-f207zg/Kconfig
rename to boards/arm/stm32f2/nucleo-f207zg/Kconfig
diff --git a/boards/arm/stm32/nucleo-f207zg/configs/adc/defconfig 
b/boards/arm/stm32f2/nucleo-f207zg/configs/adc/defconfig
similarity index 97%
rename from boards/arm/stm32/nucleo-f207zg/configs/adc/defconfig
rename to boards/arm/stm32f2/nucleo-f207zg/configs/adc/defconfig
index 019a6cec7cb..53b10cb1c26 100644
--- a/boards/arm/stm32/nucleo-f207zg/configs/adc/defconfig
+++ b/boards/arm/stm32f2/nucleo-f207zg/configs/adc/defconfig
@@ -12,7 +12,7 @@ CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="nucleo-f207zg"
 CONFIG_ARCH_BOARD_NUCLEO_F207ZG=y
 CONFIG_ARCH_BUTTONS=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F207ZG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/nucleo-f207zg/configs/nsh/defconfig 
b/boards/arm/stm32f2/nucleo-f207zg/configs/nsh/defconfig
similarity index 97%
rename from boards/arm/stm32/nucleo-f207zg/configs/nsh/defconfig
rename to boards/arm/stm32f2/nucleo-f207zg/configs/nsh/defconfig
index 0bba482d3d2..2679b5c5e8b 100644
--- a/boards/arm/stm32/nucleo-f207zg/configs/nsh/defconfig
+++ b/boards/arm/stm32f2/nucleo-f207zg/configs/nsh/defconfig
@@ -9,7 +9,7 @@ CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="nucleo-f207zg"
 CONFIG_ARCH_BOARD_NUCLEO_F207ZG=y
 CONFIG_ARCH_BUTTONS=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F207ZG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/nucleo-f207zg/configs/pwm/defconfig 
b/boards/arm/stm32f2/nucleo-f207zg/configs/pwm/defconfig
similarity index 97%
rename from boards/arm/stm32/nucleo-f207zg/configs/pwm/defconfig
rename to boards/arm/stm32f2/nucleo-f207zg/configs/pwm/defconfig
index 785cc7e2c1b..04c5b15c502 100644
--- a/boards/arm/stm32/nucleo-f207zg/configs/pwm/defconfig
+++ b/boards/arm/stm32f2/nucleo-f207zg/configs/pwm/defconfig
@@ -9,7 +9,7 @@ CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="nucleo-f207zg"
 CONFIG_ARCH_BOARD_NUCLEO_F207ZG=y
 CONFIG_ARCH_BUTTONS=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F207ZG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/nucleo-f207zg/include/board.h 
b/boards/arm/stm32f2/nucleo-f207zg/include/board.h
similarity index 99%
rename from boards/arm/stm32/nucleo-f207zg/include/board.h
rename to boards/arm/stm32f2/nucleo-f207zg/include/board.h
index bf2ce642c59..62f9ed1e30e 100644
--- a/boards/arm/stm32/nucleo-f207zg/include/board.h
+++ b/boards/arm/stm32f2/nucleo-f207zg/include/board.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f207zg/include/board.h
+ * boards/arm/stm32f2/nucleo-f207zg/include/board.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/mikroe-stm32f4/scripts/Make.defs 
b/boards/arm/stm32f2/nucleo-f207zg/scripts/Make.defs
similarity index 97%
rename from boards/arm/stm32/mikroe-stm32f4/scripts/Make.defs
rename to boards/arm/stm32f2/nucleo-f207zg/scripts/Make.defs
index 36864251081..63f3a3eb5ce 100644
--- a/boards/arm/stm32/mikroe-stm32f4/scripts/Make.defs
+++ b/boards/arm/stm32f2/nucleo-f207zg/scripts/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/mikroe-stm32f4/scripts/Make.defs
+# boards/arm/stm32f2/nucleo-f207zg/scripts/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/nucleo-f207zg/scripts/ld.script 
b/boards/arm/stm32f2/nucleo-f207zg/scripts/ld.script
similarity index 98%
rename from boards/arm/stm32/nucleo-f207zg/scripts/ld.script
rename to boards/arm/stm32f2/nucleo-f207zg/scripts/ld.script
index 0f8ef1906b0..5ea1a69efb1 100644
--- a/boards/arm/stm32/nucleo-f207zg/scripts/ld.script
+++ b/boards/arm/stm32f2/nucleo-f207zg/scripts/ld.script
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f207zg/scripts/ld.script
+ * boards/arm/stm32f2/nucleo-f207zg/scripts/ld.script
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/nucleo-f207zg/src/CMakeLists.txt 
b/boards/arm/stm32f2/nucleo-f207zg/src/CMakeLists.txt
similarity index 96%
rename from boards/arm/stm32/nucleo-f207zg/src/CMakeLists.txt
rename to boards/arm/stm32f2/nucleo-f207zg/src/CMakeLists.txt
index 5ca78ff3da4..06e696f9570 100644
--- a/boards/arm/stm32/nucleo-f207zg/src/CMakeLists.txt
+++ b/boards/arm/stm32f2/nucleo-f207zg/src/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/nucleo-f207zg/src/CMakeLists.txt
+# boards/arm/stm32f2/nucleo-f207zg/src/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/nucleo-f207zg/src/Make.defs 
b/boards/arm/stm32f2/nucleo-f207zg/src/Make.defs
similarity index 96%
rename from boards/arm/stm32/nucleo-f207zg/src/Make.defs
rename to boards/arm/stm32f2/nucleo-f207zg/src/Make.defs
index 3962a5368fd..71bb086e057 100644
--- a/boards/arm/stm32/nucleo-f207zg/src/Make.defs
+++ b/boards/arm/stm32f2/nucleo-f207zg/src/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/nucleo-f207zg/src/Make.defs
+# boards/arm/stm32f2/nucleo-f207zg/src/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/nucleo-f207zg/src/nucleo-f207zg.h 
b/boards/arm/stm32f2/nucleo-f207zg/src/nucleo-f207zg.h
similarity index 98%
rename from boards/arm/stm32/nucleo-f207zg/src/nucleo-f207zg.h
rename to boards/arm/stm32f2/nucleo-f207zg/src/nucleo-f207zg.h
index c6d2497a864..26ec0f5cb09 100644
--- a/boards/arm/stm32/nucleo-f207zg/src/nucleo-f207zg.h
+++ b/boards/arm/stm32f2/nucleo-f207zg/src/nucleo-f207zg.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f207zg/src/nucleo-f207zg.h
+ * boards/arm/stm32f2/nucleo-f207zg/src/nucleo-f207zg.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/nucleo-f207zg/src/stm32_adc.c 
b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_adc.c
similarity index 99%
rename from boards/arm/stm32/nucleo-f207zg/src/stm32_adc.c
rename to boards/arm/stm32f2/nucleo-f207zg/src/stm32_adc.c
index 6a7e27ca6b7..3e2a2c19e32 100644
--- a/boards/arm/stm32/nucleo-f207zg/src/stm32_adc.c
+++ b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_adc.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f207zg/src/stm32_adc.c
+ * boards/arm/stm32f2/nucleo-f207zg/src/stm32_adc.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/nucleo-f207zg/src/stm32_autoleds.c 
b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_autoleds.c
similarity index 98%
rename from boards/arm/stm32/nucleo-f207zg/src/stm32_autoleds.c
rename to boards/arm/stm32f2/nucleo-f207zg/src/stm32_autoleds.c
index 9a1986701ba..10db82a159e 100644
--- a/boards/arm/stm32/nucleo-f207zg/src/stm32_autoleds.c
+++ b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_autoleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f207zg/src/stm32_autoleds.c
+ * boards/arm/stm32f2/nucleo-f207zg/src/stm32_autoleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/nucleo-f207zg/src/stm32_boot.c 
b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_boot.c
similarity index 98%
rename from boards/arm/stm32/nucleo-f207zg/src/stm32_boot.c
rename to boards/arm/stm32f2/nucleo-f207zg/src/stm32_boot.c
index 3f7ae0c33c1..5828a05c690 100644
--- a/boards/arm/stm32/nucleo-f207zg/src/stm32_boot.c
+++ b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_boot.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f207zg/src/stm32_boot.c
+ * boards/arm/stm32f2/nucleo-f207zg/src/stm32_boot.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/nucleo-f207zg/src/stm32_bringup.c 
b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_bringup.c
similarity index 97%
rename from boards/arm/stm32/nucleo-f207zg/src/stm32_bringup.c
rename to boards/arm/stm32f2/nucleo-f207zg/src/stm32_bringup.c
index 149f1cc0930..1927f3bca09 100644
--- a/boards/arm/stm32/nucleo-f207zg/src/stm32_bringup.c
+++ b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_bringup.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f207zg/src/stm32_bringup.c
+ * boards/arm/stm32f2/nucleo-f207zg/src/stm32_bringup.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/nucleo-f207zg/src/stm32_buttons.c 
b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_buttons.c
similarity index 98%
rename from boards/arm/stm32/nucleo-f207zg/src/stm32_buttons.c
rename to boards/arm/stm32f2/nucleo-f207zg/src/stm32_buttons.c
index 861f569c31f..8638a37a4b6 100644
--- a/boards/arm/stm32/nucleo-f207zg/src/stm32_buttons.c
+++ b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_buttons.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f207zg/src/stm32_buttons.c
+ * boards/arm/stm32f2/nucleo-f207zg/src/stm32_buttons.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/nucleo-f207zg/src/stm32_pwm.c 
b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_pwm.c
similarity index 98%
rename from boards/arm/stm32/nucleo-f207zg/src/stm32_pwm.c
rename to boards/arm/stm32f2/nucleo-f207zg/src/stm32_pwm.c
index 298ae7ce617..a43f95dc57e 100644
--- a/boards/arm/stm32/nucleo-f207zg/src/stm32_pwm.c
+++ b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_pwm.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f207zg/src/stm32_pwm.c
+ * boards/arm/stm32f2/nucleo-f207zg/src/stm32_pwm.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/nucleo-f207zg/src/stm32_usb.c 
b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_usb.c
similarity index 99%
rename from boards/arm/stm32/nucleo-f207zg/src/stm32_usb.c
rename to boards/arm/stm32f2/nucleo-f207zg/src/stm32_usb.c
index d9840309112..6d3390be492 100644
--- a/boards/arm/stm32/nucleo-f207zg/src/stm32_usb.c
+++ b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_usb.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f207zg/src/stm32_usb.c
+ * boards/arm/stm32f2/nucleo-f207zg/src/stm32_usb.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/nucleo-f207zg/src/stm32_userleds.c 
b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_userleds.c
similarity index 98%
rename from boards/arm/stm32/nucleo-f207zg/src/stm32_userleds.c
rename to boards/arm/stm32f2/nucleo-f207zg/src/stm32_userleds.c
index d0ce94829ee..7ee325e6000 100644
--- a/boards/arm/stm32/nucleo-f207zg/src/stm32_userleds.c
+++ b/boards/arm/stm32f2/nucleo-f207zg/src/stm32_userleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f207zg/src/stm32_userleds.c
+ * boards/arm/stm32f2/nucleo-f207zg/src/stm32_userleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/cloudctrl/CMakeLists.txt 
b/boards/arm/stm32f2/olimex-stm32-p207/CMakeLists.txt
similarity index 94%
copy from boards/arm/stm32/cloudctrl/CMakeLists.txt
copy to boards/arm/stm32f2/olimex-stm32-p207/CMakeLists.txt
index 17ccd5a4c78..f2381912c11 100644
--- a/boards/arm/stm32/cloudctrl/CMakeLists.txt
+++ b/boards/arm/stm32f2/olimex-stm32-p207/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/cloudctrl/CMakeLists.txt
+# boards/arm/stm32f2/olimex-stm32-p207/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/olimex-stm32-p207/Kconfig 
b/boards/arm/stm32f2/olimex-stm32-p207/Kconfig
similarity index 100%
rename from boards/arm/stm32/olimex-stm32-p207/Kconfig
rename to boards/arm/stm32f2/olimex-stm32-p207/Kconfig
diff --git a/boards/arm/stm32/olimex-stm32-p207/configs/nsh/defconfig 
b/boards/arm/stm32f2/olimex-stm32-p207/configs/nsh/defconfig
similarity index 98%
rename from boards/arm/stm32/olimex-stm32-p207/configs/nsh/defconfig
rename to boards/arm/stm32f2/olimex-stm32-p207/configs/nsh/defconfig
index d8e2974ccfc..d74bd22eb86 100644
--- a/boards/arm/stm32/olimex-stm32-p207/configs/nsh/defconfig
+++ b/boards/arm/stm32f2/olimex-stm32-p207/configs/nsh/defconfig
@@ -13,7 +13,7 @@ CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="olimex-stm32-p207"
 CONFIG_ARCH_BOARD_OLIMEX_STM32P207=y
 CONFIG_ARCH_BUTTONS=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F207ZE=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/olimex-stm32-p207/include/board.h 
b/boards/arm/stm32f2/olimex-stm32-p207/include/board.h
similarity index 99%
rename from boards/arm/stm32/olimex-stm32-p207/include/board.h
rename to boards/arm/stm32f2/olimex-stm32-p207/include/board.h
index 6a632373c9b..7ad51256922 100644
--- a/boards/arm/stm32/olimex-stm32-p207/include/board.h
+++ b/boards/arm/stm32f2/olimex-stm32-p207/include/board.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/olimex-stm32-p207/include/board.h
+ * boards/arm/stm32f2/olimex-stm32-p207/include/board.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/olimex-stm32-h405/scripts/Make.defs 
b/boards/arm/stm32f2/olimex-stm32-p207/scripts/Make.defs
similarity index 96%
rename from boards/arm/stm32/olimex-stm32-h405/scripts/Make.defs
rename to boards/arm/stm32f2/olimex-stm32-p207/scripts/Make.defs
index ecd20a669ce..d8143a48fee 100644
--- a/boards/arm/stm32/olimex-stm32-h405/scripts/Make.defs
+++ b/boards/arm/stm32f2/olimex-stm32-p207/scripts/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/olimex-stm32-h405/scripts/Make.defs
+# boards/arm/stm32f2/olimex-stm32-p207/scripts/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/olimex-stm32-p207/scripts/ld.script 
b/boards/arm/stm32f2/olimex-stm32-p207/scripts/ld.script
similarity index 98%
rename from boards/arm/stm32/olimex-stm32-p207/scripts/ld.script
rename to boards/arm/stm32f2/olimex-stm32-p207/scripts/ld.script
index d8e4a95fc73..b658404f87c 100644
--- a/boards/arm/stm32/olimex-stm32-p207/scripts/ld.script
+++ b/boards/arm/stm32f2/olimex-stm32-p207/scripts/ld.script
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/olimex-stm32-p207/scripts/ld.script
+ * boards/arm/stm32f2/olimex-stm32-p207/scripts/ld.script
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/olimex-stm32-h405/src/CMakeLists.txt 
b/boards/arm/stm32f2/olimex-stm32-p207/src/CMakeLists.txt
similarity index 96%
rename from boards/arm/stm32/olimex-stm32-h405/src/CMakeLists.txt
rename to boards/arm/stm32f2/olimex-stm32-p207/src/CMakeLists.txt
index 0fb338eadb5..1f6060c53a7 100644
--- a/boards/arm/stm32/olimex-stm32-h405/src/CMakeLists.txt
+++ b/boards/arm/stm32f2/olimex-stm32-p207/src/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/olimex-stm32-h405/src/CMakeLists.txt
+# boards/arm/stm32f2/olimex-stm32-p207/src/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/olimex-stm32-p207/src/Make.defs 
b/boards/arm/stm32f2/olimex-stm32-p207/src/Make.defs
similarity index 96%
rename from boards/arm/stm32/olimex-stm32-p207/src/Make.defs
rename to boards/arm/stm32f2/olimex-stm32-p207/src/Make.defs
index 42ceed74368..f506294680b 100644
--- a/boards/arm/stm32/olimex-stm32-p207/src/Make.defs
+++ b/boards/arm/stm32f2/olimex-stm32-p207/src/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/olimex-stm32-p207/src/Make.defs
+# boards/arm/stm32f2/olimex-stm32-p207/src/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/olimex-stm32-p207/src/olimex-stm32-p207.h 
b/boards/arm/stm32f2/olimex-stm32-p207/src/olimex-stm32-p207.h
similarity index 98%
rename from boards/arm/stm32/olimex-stm32-p207/src/olimex-stm32-p207.h
rename to boards/arm/stm32f2/olimex-stm32-p207/src/olimex-stm32-p207.h
index 5f69d7f4934..30f8489f633 100644
--- a/boards/arm/stm32/olimex-stm32-p207/src/olimex-stm32-p207.h
+++ b/boards/arm/stm32f2/olimex-stm32-p207/src/olimex-stm32-p207.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/olimex-stm32-p207/src/olimex-stm32-p207.h
+ * boards/arm/stm32f2/olimex-stm32-p207/src/olimex-stm32-p207.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/olimex-stm32-p207/src/stm32_adc.c 
b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_adc.c
similarity index 98%
rename from boards/arm/stm32/olimex-stm32-p207/src/stm32_adc.c
rename to boards/arm/stm32f2/olimex-stm32-p207/src/stm32_adc.c
index 82241854400..4c75b624f49 100644
--- a/boards/arm/stm32/olimex-stm32-p207/src/stm32_adc.c
+++ b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_adc.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/olimex-stm32-p207/src/stm32_adc.c
+ * boards/arm/stm32f2/olimex-stm32-p207/src/stm32_adc.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/olimex-stm32-p207/src/stm32_autoleds.c 
b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_autoleds.c
similarity index 98%
rename from boards/arm/stm32/olimex-stm32-p207/src/stm32_autoleds.c
rename to boards/arm/stm32f2/olimex-stm32-p207/src/stm32_autoleds.c
index 7455e3582f3..a748ff57c4c 100644
--- a/boards/arm/stm32/olimex-stm32-p207/src/stm32_autoleds.c
+++ b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_autoleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/olimex-stm32-p207/src/stm32_autoleds.c
+ * boards/arm/stm32f2/olimex-stm32-p207/src/stm32_autoleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/olimex-stm32-p207/src/stm32_boot.c 
b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_boot.c
similarity index 99%
rename from boards/arm/stm32/olimex-stm32-p207/src/stm32_boot.c
rename to boards/arm/stm32f2/olimex-stm32-p207/src/stm32_boot.c
index 3ce6df06ea4..1fee37320cf 100644
--- a/boards/arm/stm32/olimex-stm32-p207/src/stm32_boot.c
+++ b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_boot.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/olimex-stm32-p207/src/stm32_boot.c
+ * boards/arm/stm32f2/olimex-stm32-p207/src/stm32_boot.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/olimex-stm32-p207/src/stm32_buttons.c 
b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_buttons.c
similarity index 98%
rename from boards/arm/stm32/olimex-stm32-p207/src/stm32_buttons.c
rename to boards/arm/stm32f2/olimex-stm32-p207/src/stm32_buttons.c
index fbf2d1236ba..20089fe607e 100644
--- a/boards/arm/stm32/olimex-stm32-p207/src/stm32_buttons.c
+++ b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_buttons.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/olimex-stm32-p207/src/stm32_buttons.c
+ * boards/arm/stm32f2/olimex-stm32-p207/src/stm32_buttons.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/olimex-stm32-p207/src/stm32_can.c 
b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_can.c
similarity index 98%
rename from boards/arm/stm32/olimex-stm32-p207/src/stm32_can.c
rename to boards/arm/stm32f2/olimex-stm32-p207/src/stm32_can.c
index b2bf59dacf7..f64cb2f25b3 100644
--- a/boards/arm/stm32/olimex-stm32-p207/src/stm32_can.c
+++ b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_can.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/olimex-stm32-p207/src/stm32_can.c
+ * boards/arm/stm32f2/olimex-stm32-p207/src/stm32_can.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/olimex-stm32-p207/src/stm32_usb.c 
b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_usb.c
similarity index 99%
rename from boards/arm/stm32/olimex-stm32-p207/src/stm32_usb.c
rename to boards/arm/stm32f2/olimex-stm32-p207/src/stm32_usb.c
index 0217d0bdfd1..3931c992d82 100644
--- a/boards/arm/stm32/olimex-stm32-p207/src/stm32_usb.c
+++ b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_usb.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/olimex-stm32-p207/src/stm32_usb.c
+ * boards/arm/stm32f2/olimex-stm32-p207/src/stm32_usb.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/olimex-stm32-p207/src/stm32_userleds.c 
b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_userleds.c
similarity index 98%
rename from boards/arm/stm32/olimex-stm32-p207/src/stm32_userleds.c
rename to boards/arm/stm32f2/olimex-stm32-p207/src/stm32_userleds.c
index 044ff84794d..b552c74f237 100644
--- a/boards/arm/stm32/olimex-stm32-p207/src/stm32_userleds.c
+++ b/boards/arm/stm32f2/olimex-stm32-p207/src/stm32_userleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/olimex-stm32-p207/src/stm32_userleds.c
+ * boards/arm/stm32f2/olimex-stm32-p207/src/stm32_userleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/odrive36/CMakeLists.txt 
b/boards/arm/stm32f2/photon/CMakeLists.txt
similarity index 95%
rename from boards/arm/stm32/odrive36/CMakeLists.txt
rename to boards/arm/stm32f2/photon/CMakeLists.txt
index 430752bb2ce..425a22bcb9f 100644
--- a/boards/arm/stm32/odrive36/CMakeLists.txt
+++ b/boards/arm/stm32f2/photon/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/odrive36/CMakeLists.txt
+# boards/arm/stm32f2/photon/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/photon/Kconfig b/boards/arm/stm32f2/photon/Kconfig
similarity index 100%
rename from boards/arm/stm32/photon/Kconfig
rename to boards/arm/stm32f2/photon/Kconfig
diff --git a/boards/arm/stm32/photon/configs/adb/defconfig 
b/boards/arm/stm32f2/photon/configs/adb/defconfig
similarity index 98%
rename from boards/arm/stm32/photon/configs/adb/defconfig
rename to boards/arm/stm32f2/photon/configs/adb/defconfig
index 51b74bca0df..08ea7b35969 100644
--- a/boards/arm/stm32/photon/configs/adb/defconfig
+++ b/boards/arm/stm32f2/photon/configs/adb/defconfig
@@ -18,7 +18,7 @@ CONFIG_ADBD_USB_SERVER=y
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="photon"
 CONFIG_ARCH_BOARD_PHOTON=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F205RG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/photon/configs/nsh/defconfig 
b/boards/arm/stm32f2/photon/configs/nsh/defconfig
similarity index 97%
rename from boards/arm/stm32/photon/configs/nsh/defconfig
rename to boards/arm/stm32f2/photon/configs/nsh/defconfig
index 4401baf4dfd..e5d1d5b3b9c 100644
--- a/boards/arm/stm32/photon/configs/nsh/defconfig
+++ b/boards/arm/stm32f2/photon/configs/nsh/defconfig
@@ -11,7 +11,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="photon"
 CONFIG_ARCH_BOARD_PHOTON=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F205RG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/photon/configs/rgbled/defconfig 
b/boards/arm/stm32f2/photon/configs/rgbled/defconfig
similarity index 98%
rename from boards/arm/stm32/photon/configs/rgbled/defconfig
rename to boards/arm/stm32f2/photon/configs/rgbled/defconfig
index c8935b1083d..dc5e7d9718c 100644
--- a/boards/arm/stm32/photon/configs/rgbled/defconfig
+++ b/boards/arm/stm32f2/photon/configs/rgbled/defconfig
@@ -12,7 +12,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="photon"
 CONFIG_ARCH_BOARD_PHOTON=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F205RG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/photon/configs/usbnsh/defconfig 
b/boards/arm/stm32f2/photon/configs/usbnsh/defconfig
similarity index 98%
rename from boards/arm/stm32/photon/configs/usbnsh/defconfig
rename to boards/arm/stm32f2/photon/configs/usbnsh/defconfig
index 80a40d20e62..d364c6b0c33 100644
--- a/boards/arm/stm32/photon/configs/usbnsh/defconfig
+++ b/boards/arm/stm32f2/photon/configs/usbnsh/defconfig
@@ -11,7 +11,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="photon"
 CONFIG_ARCH_BOARD_PHOTON=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F205RG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/photon/configs/wlan-perf/defconfig 
b/boards/arm/stm32f2/photon/configs/wlan-perf/defconfig
similarity index 98%
rename from boards/arm/stm32/photon/configs/wlan-perf/defconfig
rename to boards/arm/stm32f2/photon/configs/wlan-perf/defconfig
index ccd836bce23..d763e1d77aa 100644
--- a/boards/arm/stm32/photon/configs/wlan-perf/defconfig
+++ b/boards/arm/stm32f2/photon/configs/wlan-perf/defconfig
@@ -14,7 +14,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="photon"
 CONFIG_ARCH_BOARD_PHOTON=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F205RG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/photon/configs/wlan/defconfig 
b/boards/arm/stm32f2/photon/configs/wlan/defconfig
similarity index 98%
rename from boards/arm/stm32/photon/configs/wlan/defconfig
rename to boards/arm/stm32f2/photon/configs/wlan/defconfig
index 97ef2d948dd..98f29fac9ed 100644
--- a/boards/arm/stm32/photon/configs/wlan/defconfig
+++ b/boards/arm/stm32f2/photon/configs/wlan/defconfig
@@ -14,7 +14,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="photon"
 CONFIG_ARCH_BOARD_PHOTON=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F205RG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/photon/include/board.h 
b/boards/arm/stm32f2/photon/include/board.h
similarity index 99%
rename from boards/arm/stm32/photon/include/board.h
rename to boards/arm/stm32f2/photon/include/board.h
index 6c5ac34d01c..a26b8826bff 100644
--- a/boards/arm/stm32/photon/include/board.h
+++ b/boards/arm/stm32f2/photon/include/board.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/include/board.h
+ * boards/arm/stm32f2/photon/include/board.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/scripts/Make.defs 
b/boards/arm/stm32f2/photon/scripts/Make.defs
similarity index 98%
rename from boards/arm/stm32/photon/scripts/Make.defs
rename to boards/arm/stm32f2/photon/scripts/Make.defs
index 12f4622680f..930772652d6 100644
--- a/boards/arm/stm32/photon/scripts/Make.defs
+++ b/boards/arm/stm32f2/photon/scripts/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/photon/scripts/Make.defs
+# boards/arm/stm32f2/photon/scripts/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/photon/scripts/photon_dfu.ld 
b/boards/arm/stm32f2/photon/scripts/photon_dfu.ld
similarity index 98%
rename from boards/arm/stm32/photon/scripts/photon_dfu.ld
rename to boards/arm/stm32f2/photon/scripts/photon_dfu.ld
index 0272b8a7157..d5fdad6367d 100644
--- a/boards/arm/stm32/photon/scripts/photon_dfu.ld
+++ b/boards/arm/stm32f2/photon/scripts/photon_dfu.ld
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/scripts/photon_dfu.ld
+ * boards/arm/stm32f2/photon/scripts/photon_dfu.ld
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/scripts/photon_jtag.ld 
b/boards/arm/stm32f2/photon/scripts/photon_jtag.ld
similarity index 98%
rename from boards/arm/stm32/photon/scripts/photon_jtag.ld
rename to boards/arm/stm32f2/photon/scripts/photon_jtag.ld
index ca944b41a41..ad1ecad2b09 100644
--- a/boards/arm/stm32/photon/scripts/photon_jtag.ld
+++ b/boards/arm/stm32f2/photon/scripts/photon_jtag.ld
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/scripts/photon_jtag.ld
+ * boards/arm/stm32f2/photon/scripts/photon_jtag.ld
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/CMakeLists.txt 
b/boards/arm/stm32f2/photon/src/CMakeLists.txt
similarity index 97%
rename from boards/arm/stm32/photon/src/CMakeLists.txt
rename to boards/arm/stm32f2/photon/src/CMakeLists.txt
index e6e55c00a00..e9248b8107f 100644
--- a/boards/arm/stm32/photon/src/CMakeLists.txt
+++ b/boards/arm/stm32f2/photon/src/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/photon/src/CMakeLists.txt
+# boards/arm/stm32f2/photon/src/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/photon/src/Make.defs 
b/boards/arm/stm32f2/photon/src/Make.defs
similarity index 97%
rename from boards/arm/stm32/photon/src/Make.defs
rename to boards/arm/stm32f2/photon/src/Make.defs
index 6edf5dce2d9..36c65e38e42 100644
--- a/boards/arm/stm32/photon/src/Make.defs
+++ b/boards/arm/stm32f2/photon/src/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/photon/src/Make.defs
+# boards/arm/stm32f2/photon/src/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/photon/src/dfu_signature.c 
b/boards/arm/stm32f2/photon/src/dfu_signature.c
similarity index 98%
rename from boards/arm/stm32/photon/src/dfu_signature.c
rename to boards/arm/stm32f2/photon/src/dfu_signature.c
index 0ac237a3852..3738ed93a42 100644
--- a/boards/arm/stm32/photon/src/dfu_signature.c
+++ b/boards/arm/stm32f2/photon/src/dfu_signature.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/dfu_signature.c
+ * boards/arm/stm32f2/photon/src/dfu_signature.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/photon.h 
b/boards/arm/stm32f2/photon/src/photon.h
similarity index 98%
rename from boards/arm/stm32/photon/src/photon.h
rename to boards/arm/stm32f2/photon/src/photon.h
index 299fe0294ec..30f904847d1 100644
--- a/boards/arm/stm32/photon/src/photon.h
+++ b/boards/arm/stm32f2/photon/src/photon.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/photon.h
+ * boards/arm/stm32f2/photon/src/photon.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -29,7 +29,7 @@
 
 #include <nuttx/config.h>
 #include <nuttx/compiler.h>
-#include <arch/stm32/chip.h>
+#include <arch/chip/chip.h>
 
 /****************************************************************************
  * Pre-processor Definitions
diff --git a/boards/arm/stm32/photon/src/stm32_autoleds.c 
b/boards/arm/stm32f2/photon/src/stm32_autoleds.c
similarity index 98%
rename from boards/arm/stm32/photon/src/stm32_autoleds.c
rename to boards/arm/stm32f2/photon/src/stm32_autoleds.c
index f78cd9a89a0..fe1a324f455 100644
--- a/boards/arm/stm32/photon/src/stm32_autoleds.c
+++ b/boards/arm/stm32f2/photon/src/stm32_autoleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_autoleds.c
+ * boards/arm/stm32f2/photon/src/stm32_autoleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/stm32_boot.c 
b/boards/arm/stm32f2/photon/src/stm32_boot.c
similarity index 98%
rename from boards/arm/stm32/photon/src/stm32_boot.c
rename to boards/arm/stm32f2/photon/src/stm32_boot.c
index 631df3142d6..8acf417ab0f 100644
--- a/boards/arm/stm32/photon/src/stm32_boot.c
+++ b/boards/arm/stm32f2/photon/src/stm32_boot.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_boot.c
+ * boards/arm/stm32f2/photon/src/stm32_boot.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/stm32_bringup.c 
b/boards/arm/stm32f2/photon/src/stm32_bringup.c
similarity index 98%
rename from boards/arm/stm32/photon/src/stm32_bringup.c
rename to boards/arm/stm32f2/photon/src/stm32_bringup.c
index 5096dad8d0b..7bcb3c0afa0 100644
--- a/boards/arm/stm32/photon/src/stm32_bringup.c
+++ b/boards/arm/stm32f2/photon/src/stm32_bringup.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_bringup.c
+ * boards/arm/stm32f2/photon/src/stm32_bringup.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/stm32_buttons.c 
b/boards/arm/stm32f2/photon/src/stm32_buttons.c
similarity index 98%
rename from boards/arm/stm32/photon/src/stm32_buttons.c
rename to boards/arm/stm32f2/photon/src/stm32_buttons.c
index 9288ec789f6..c4f6bd29b3a 100644
--- a/boards/arm/stm32/photon/src/stm32_buttons.c
+++ b/boards/arm/stm32f2/photon/src/stm32_buttons.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_buttons.c
+ * boards/arm/stm32f2/photon/src/stm32_buttons.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/stm32_composite.c 
b/boards/arm/stm32f2/photon/src/stm32_composite.c
similarity index 99%
rename from boards/arm/stm32/photon/src/stm32_composite.c
rename to boards/arm/stm32f2/photon/src/stm32_composite.c
index f0eec287904..49f82ed1d23 100644
--- a/boards/arm/stm32/photon/src/stm32_composite.c
+++ b/boards/arm/stm32f2/photon/src/stm32_composite.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_composite.c
+ * boards/arm/stm32f2/photon/src/stm32_composite.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/stm32_rgbled.c 
b/boards/arm/stm32f2/photon/src/stm32_rgbled.c
similarity index 98%
rename from boards/arm/stm32/photon/src/stm32_rgbled.c
rename to boards/arm/stm32f2/photon/src/stm32_rgbled.c
index c43f21b604b..3b56149af24 100644
--- a/boards/arm/stm32/photon/src/stm32_rgbled.c
+++ b/boards/arm/stm32f2/photon/src/stm32_rgbled.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_rgbled.c
+ * boards/arm/stm32f2/photon/src/stm32_rgbled.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/stm32_spi.c 
b/boards/arm/stm32f2/photon/src/stm32_spi.c
similarity index 99%
rename from boards/arm/stm32/photon/src/stm32_spi.c
rename to boards/arm/stm32f2/photon/src/stm32_spi.c
index 618331bb43d..775b45ed32d 100644
--- a/boards/arm/stm32/photon/src/stm32_spi.c
+++ b/boards/arm/stm32f2/photon/src/stm32_spi.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_spi.c
+ * boards/arm/stm32f2/photon/src/stm32_spi.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/stm32_usb.c 
b/boards/arm/stm32f2/photon/src/stm32_usb.c
similarity index 98%
rename from boards/arm/stm32/photon/src/stm32_usb.c
rename to boards/arm/stm32f2/photon/src/stm32_usb.c
index d8f58624854..3bb76c85e31 100644
--- a/boards/arm/stm32/photon/src/stm32_usb.c
+++ b/boards/arm/stm32f2/photon/src/stm32_usb.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_usb.c
+ * boards/arm/stm32f2/photon/src/stm32_usb.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/stm32_userleds.c 
b/boards/arm/stm32f2/photon/src/stm32_userleds.c
similarity index 98%
rename from boards/arm/stm32/photon/src/stm32_userleds.c
rename to boards/arm/stm32f2/photon/src/stm32_userleds.c
index 1d78b7ecd2a..30b2933307b 100644
--- a/boards/arm/stm32/photon/src/stm32_userleds.c
+++ b/boards/arm/stm32f2/photon/src/stm32_userleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_userleds.c
+ * boards/arm/stm32f2/photon/src/stm32_userleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/stm32_wdt.c 
b/boards/arm/stm32f2/photon/src/stm32_wdt.c
similarity index 98%
rename from boards/arm/stm32/photon/src/stm32_wdt.c
rename to boards/arm/stm32f2/photon/src/stm32_wdt.c
index 738312db16e..09db859e1df 100644
--- a/boards/arm/stm32/photon/src/stm32_wdt.c
+++ b/boards/arm/stm32f2/photon/src/stm32_wdt.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_wdt.c
+ * boards/arm/stm32f2/photon/src/stm32_wdt.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/stm32_wlan.c 
b/boards/arm/stm32f2/photon/src/stm32_wlan.c
similarity index 98%
rename from boards/arm/stm32/photon/src/stm32_wlan.c
rename to boards/arm/stm32f2/photon/src/stm32_wlan.c
index 2c0edcbca37..88bfa4561e9 100644
--- a/boards/arm/stm32/photon/src/stm32_wlan.c
+++ b/boards/arm/stm32f2/photon/src/stm32_wlan.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_wlan.c
+ * boards/arm/stm32f2/photon/src/stm32_wlan.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/photon/src/stm32_wlan_firmware.c 
b/boards/arm/stm32f2/photon/src/stm32_wlan_firmware.c
similarity index 99%
rename from boards/arm/stm32/photon/src/stm32_wlan_firmware.c
rename to boards/arm/stm32f2/photon/src/stm32_wlan_firmware.c
index 2374ae038c9..ace87343d4e 100644
--- a/boards/arm/stm32/photon/src/stm32_wlan_firmware.c
+++ b/boards/arm/stm32f2/photon/src/stm32_wlan_firmware.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/photon/src/stm32_wlan_firmware.c
+ * boards/arm/stm32f2/photon/src/stm32_wlan_firmware.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/cloudctrl/CMakeLists.txt 
b/boards/arm/stm32f2/stm3220g-eval/CMakeLists.txt
similarity index 95%
rename from boards/arm/stm32/cloudctrl/CMakeLists.txt
rename to boards/arm/stm32f2/stm3220g-eval/CMakeLists.txt
index 17ccd5a4c78..9107f3bbd27 100644
--- a/boards/arm/stm32/cloudctrl/CMakeLists.txt
+++ b/boards/arm/stm32f2/stm3220g-eval/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/cloudctrl/CMakeLists.txt
+# boards/arm/stm32f2/stm3220g-eval/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/stm3220g-eval/Kconfig 
b/boards/arm/stm32f2/stm3220g-eval/Kconfig
similarity index 100%
rename from boards/arm/stm32/stm3220g-eval/Kconfig
rename to boards/arm/stm32f2/stm3220g-eval/Kconfig
diff --git a/boards/arm/stm32/stm3220g-eval/configs/dhcpd/defconfig 
b/boards/arm/stm32f2/stm3220g-eval/configs/dhcpd/defconfig
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/configs/dhcpd/defconfig
rename to boards/arm/stm32f2/stm3220g-eval/configs/dhcpd/defconfig
index 99c464911f8..4e83650fdf4 100644
--- a/boards/arm/stm32/stm3220g-eval/configs/dhcpd/defconfig
+++ b/boards/arm/stm32f2/stm3220g-eval/configs/dhcpd/defconfig
@@ -9,7 +9,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3220g-eval"
 CONFIG_ARCH_BOARD_STM3220G_EVAL=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F207IG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/stm3220g-eval/configs/nettest/defconfig 
b/boards/arm/stm32f2/stm3220g-eval/configs/nettest/defconfig
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/configs/nettest/defconfig
rename to boards/arm/stm32f2/stm3220g-eval/configs/nettest/defconfig
index 1d654ac87eb..431b3151a62 100644
--- a/boards/arm/stm32/stm3220g-eval/configs/nettest/defconfig
+++ b/boards/arm/stm32f2/stm3220g-eval/configs/nettest/defconfig
@@ -8,7 +8,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3220g-eval"
 CONFIG_ARCH_BOARD_STM3220G_EVAL=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F207IG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/stm3220g-eval/configs/nsh/defconfig 
b/boards/arm/stm32f2/stm3220g-eval/configs/nsh/defconfig
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/configs/nsh/defconfig
rename to boards/arm/stm32f2/stm3220g-eval/configs/nsh/defconfig
index fc5b0a1d607..26a63e10c07 100644
--- a/boards/arm/stm32/stm3220g-eval/configs/nsh/defconfig
+++ b/boards/arm/stm32f2/stm3220g-eval/configs/nsh/defconfig
@@ -12,7 +12,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3220g-eval"
 CONFIG_ARCH_BOARD_STM3220G_EVAL=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F207IG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/stm3220g-eval/configs/nsh2/defconfig 
b/boards/arm/stm32f2/stm3220g-eval/configs/nsh2/defconfig
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/configs/nsh2/defconfig
rename to boards/arm/stm32f2/stm3220g-eval/configs/nsh2/defconfig
index 5c70dff6840..5dff42667f2 100644
--- a/boards/arm/stm32/stm3220g-eval/configs/nsh2/defconfig
+++ b/boards/arm/stm32f2/stm3220g-eval/configs/nsh2/defconfig
@@ -14,7 +14,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3220g-eval"
 CONFIG_ARCH_BOARD_STM3220G_EVAL=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F207IG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/stm3220g-eval/configs/nxwm/defconfig 
b/boards/arm/stm32f2/stm3220g-eval/configs/nxwm/defconfig
similarity index 99%
rename from boards/arm/stm32/stm3220g-eval/configs/nxwm/defconfig
rename to boards/arm/stm32f2/stm3220g-eval/configs/nxwm/defconfig
index 560ebc95176..8a2c4444608 100644
--- a/boards/arm/stm32/stm3220g-eval/configs/nxwm/defconfig
+++ b/boards/arm/stm32f2/stm3220g-eval/configs/nxwm/defconfig
@@ -17,7 +17,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3220g-eval"
 CONFIG_ARCH_BOARD_STM3220G_EVAL=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F207IG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/stm3220g-eval/configs/telnetd/defconfig 
b/boards/arm/stm32f2/stm3220g-eval/configs/telnetd/defconfig
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/configs/telnetd/defconfig
rename to boards/arm/stm32f2/stm3220g-eval/configs/telnetd/defconfig
index 6ff3b7d474f..5d80ddff92c 100644
--- a/boards/arm/stm32/stm3220g-eval/configs/telnetd/defconfig
+++ b/boards/arm/stm32f2/stm3220g-eval/configs/telnetd/defconfig
@@ -8,7 +8,7 @@
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3220g-eval"
 CONFIG_ARCH_BOARD_STM3220G_EVAL=y
-CONFIG_ARCH_CHIP="stm32"
+CONFIG_ARCH_CHIP="stm32f2"
 CONFIG_ARCH_CHIP_STM32=y
 CONFIG_ARCH_CHIP_STM32F207IG=y
 CONFIG_ARCH_CHIP_STM32F2=y
diff --git a/boards/arm/stm32/stm3220g-eval/include/board.h 
b/boards/arm/stm32f2/stm3220g-eval/include/board.h
similarity index 99%
rename from boards/arm/stm32/stm3220g-eval/include/board.h
rename to boards/arm/stm32f2/stm3220g-eval/include/board.h
index 86ebef53bb0..fb3043eada2 100644
--- a/boards/arm/stm32/stm3220g-eval/include/board.h
+++ b/boards/arm/stm32f2/stm3220g-eval/include/board.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/include/board.h
+ * boards/arm/stm32f2/stm3220g-eval/include/board.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/nucleo-f103rb/scripts/Make.defs 
b/boards/arm/stm32f2/stm3220g-eval/scripts/Make.defs
similarity index 97%
rename from boards/arm/stm32/nucleo-f103rb/scripts/Make.defs
rename to boards/arm/stm32f2/stm3220g-eval/scripts/Make.defs
index a9ad56f5283..3b902ef1830 100644
--- a/boards/arm/stm32/nucleo-f103rb/scripts/Make.defs
+++ b/boards/arm/stm32f2/stm3220g-eval/scripts/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/nucleo-f103rb/scripts/Make.defs
+# boards/arm/stm32f2/stm3220g-eval/scripts/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/stm3220g-eval/scripts/ld.script 
b/boards/arm/stm32f2/stm3220g-eval/scripts/ld.script
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/scripts/ld.script
rename to boards/arm/stm32f2/stm3220g-eval/scripts/ld.script
index 0133f9415af..bb2f5e12f4c 100644
--- a/boards/arm/stm32/stm3220g-eval/scripts/ld.script
+++ b/boards/arm/stm32f2/stm3220g-eval/scripts/ld.script
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/scripts/ld.script
+ * boards/arm/stm32f2/stm3220g-eval/scripts/ld.script
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/CMakeLists.txt 
b/boards/arm/stm32f2/stm3220g-eval/src/CMakeLists.txt
similarity index 97%
rename from boards/arm/stm32/stm3220g-eval/src/CMakeLists.txt
rename to boards/arm/stm32f2/stm3220g-eval/src/CMakeLists.txt
index 7f0321dd1b8..c198e622bed 100644
--- a/boards/arm/stm32/stm3220g-eval/src/CMakeLists.txt
+++ b/boards/arm/stm32f2/stm3220g-eval/src/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/stm3220g-eval/src/CMakeLists.txt
+# boards/arm/stm32f2/stm3220g-eval/src/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/stm3220g-eval/src/Make.defs 
b/boards/arm/stm32f2/stm3220g-eval/src/Make.defs
similarity index 97%
rename from boards/arm/stm32/stm3220g-eval/src/Make.defs
rename to boards/arm/stm32f2/stm3220g-eval/src/Make.defs
index e77785ac6fa..3c938b32998 100644
--- a/boards/arm/stm32/stm3220g-eval/src/Make.defs
+++ b/boards/arm/stm32f2/stm3220g-eval/src/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/stm3220g-eval/src/Make.defs
+# boards/arm/stm32f2/stm3220g-eval/src/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm3220g-eval.h 
b/boards/arm/stm32f2/stm3220g-eval/src/stm3220g-eval.h
similarity index 99%
rename from boards/arm/stm32/stm3220g-eval/src/stm3220g-eval.h
rename to boards/arm/stm32f2/stm3220g-eval/src/stm3220g-eval.h
index 7908e0a422c..775b69a377d 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm3220g-eval.h
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm3220g-eval.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm3220g-eval.h
+ * boards/arm/stm32f2/stm3220g-eval/src/stm3220g-eval.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_adc.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_adc.c
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_adc.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_adc.c
index d3bfcd0a171..347835c5d36 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_adc.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_adc.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_adc.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_adc.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_autoleds.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_autoleds.c
similarity index 99%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_autoleds.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_autoleds.c
index 2cd09b07a13..58d3ebc7653 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_autoleds.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_autoleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_autoleds.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_autoleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_boot.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_boot.c
similarity index 99%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_boot.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_boot.c
index a3693105506..f73fd6ed35a 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_boot.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_boot.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_boot.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_boot.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_buttons.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_buttons.c
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_buttons.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_buttons.c
index 8c177aa3ed4..f054a70494d 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_buttons.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_buttons.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_buttons.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_buttons.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_can.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_can.c
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_can.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_can.c
index 0145c3b0a51..5a2826f4674 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_can.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_can.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_can.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_can.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_deselectlcd.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_deselectlcd.c
similarity index 97%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_deselectlcd.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_deselectlcd.c
index a6239db7ecf..3ef672f986d 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_deselectlcd.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_deselectlcd.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_deselectlcd.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_deselectlcd.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_deselectsram.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_deselectsram.c
similarity index 97%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_deselectsram.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_deselectsram.c
index 9c0696c9849..e1fe12d86a5 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_deselectsram.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_deselectsram.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_deselectsram.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_deselectsram.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_extmem.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_extmem.c
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_extmem.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_extmem.c
index 1b61bc8e502..7a0344fcc7e 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_extmem.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_extmem.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_extmem.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_extmem.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_lcd.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_lcd.c
similarity index 99%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_lcd.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_lcd.c
index 2828d7eb768..d8c10b46395 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_lcd.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_lcd.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_lcd.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_lcd.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_pwm.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_pwm.c
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_pwm.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_pwm.c
index 546c8335f2d..55325a9f41d 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_pwm.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_pwm.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_pwm.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_pwm.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_selectlcd.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_selectlcd.c
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_selectlcd.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_selectlcd.c
index 45603a50da5..99317669252 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_selectlcd.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_selectlcd.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_selectlcd.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_selectlcd.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_selectsram.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_selectsram.c
similarity index 99%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_selectsram.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_selectsram.c
index 5c1553a1aa4..3a0016a1a49 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_selectsram.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_selectsram.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_selectsram.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_selectsram.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_spi.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_spi.c
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_spi.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_spi.c
index 5d99e643455..c766ed8ca44 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_spi.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_spi.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_spi.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_spi.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_stmpe811.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_stmpe811.c
similarity index 99%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_stmpe811.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_stmpe811.c
index 190e897501d..4b37d489a8e 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_stmpe811.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_stmpe811.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_stmpe811.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_stmpe811.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_usb.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_usb.c
similarity index 99%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_usb.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_usb.c
index 3252daf95d9..18abe851b16 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_usb.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_usb.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_usb.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_usb.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/src/stm32_userleds.c 
b/boards/arm/stm32f2/stm3220g-eval/src/stm32_userleds.c
similarity index 98%
rename from boards/arm/stm32/stm3220g-eval/src/stm32_userleds.c
rename to boards/arm/stm32f2/stm3220g-eval/src/stm32_userleds.c
index 9a69e756ae0..c7c5a9f1c70 100644
--- a/boards/arm/stm32/stm3220g-eval/src/stm32_userleds.c
+++ b/boards/arm/stm32f2/stm3220g-eval/src/stm32_userleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/stm3220g-eval/src/stm32_userleds.c
+ * boards/arm/stm32f2/stm3220g-eval/src/stm32_userleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/stm3220g-eval/tools/olimex-arm-usb-ocd.cfg 
b/boards/arm/stm32f2/stm3220g-eval/tools/olimex-arm-usb-ocd.cfg
similarity index 100%
rename from boards/arm/stm32/stm3220g-eval/tools/olimex-arm-usb-ocd.cfg
rename to boards/arm/stm32f2/stm3220g-eval/tools/olimex-arm-usb-ocd.cfg
diff --git a/boards/arm/stm32/stm3220g-eval/tools/oocd.sh 
b/boards/arm/stm32f2/stm3220g-eval/tools/oocd.sh
similarity index 96%
rename from boards/arm/stm32/stm3220g-eval/tools/oocd.sh
rename to boards/arm/stm32f2/stm3220g-eval/tools/oocd.sh
index 66a7cca63d0..9d01a7c8756 100755
--- a/boards/arm/stm32/stm3220g-eval/tools/oocd.sh
+++ b/boards/arm/stm32f2/stm3220g-eval/tools/oocd.sh
@@ -44,7 +44,7 @@ fi
 
 # Local search directory and configurations
 
-OPENOCD_SEARCHDIR="${TOPDIR}/boards/arm/stm32/stm3210e-eval/tools"
+OPENOCD_SEARCHDIR="${TOPDIR}/boards/arm/stm32f2/stm3220g-eval/tools"
 OPENOCD_WSEARCHDIR="`cygpath -w ${OPENOCD_SEARCHDIR}`"
 
 OPENOCD_PATH="/cygdrive/c/Program Files (x86)/OpenOCD/0.4.0/bin"
diff --git a/boards/arm/stm32/stm3220g-eval/tools/stm32.cfg 
b/boards/arm/stm32f2/stm3220g-eval/tools/stm32.cfg
similarity index 100%
rename from boards/arm/stm32/stm3220g-eval/tools/stm32.cfg
rename to boards/arm/stm32f2/stm3220g-eval/tools/stm32.cfg
diff --git a/boards/arm/stm32/stm3220g-eval/tools/usb-driver.txt 
b/boards/arm/stm32f2/stm3220g-eval/tools/usb-driver.txt
similarity index 100%
rename from boards/arm/stm32/stm3220g-eval/tools/usb-driver.txt
rename to boards/arm/stm32f2/stm3220g-eval/tools/usb-driver.txt

Reply via email to