diff --git a/boards/arduino-duemilanove/Makefile b/boards/arduino-duemilanove/Makefile
index b597cd662a6ff3933f96f819ddea9ccef91a05d9..8c6f44eb536f7d60fb02b940c6c6a018e8fafdb0 100644
--- a/boards/arduino-duemilanove/Makefile
+++ b/boards/arduino-duemilanove/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/arduino-atmega-common
+DIRS = $(RIOTBOARD)/common/arduino-atmega
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/arduino-duemilanove/Makefile.features b/boards/arduino-duemilanove/Makefile.features
index dea129ce0fb16f0d574c33ce167a56284f4e4d4c..8ade47474f65bc909aaa48e71175a1ff66b2772c 100644
--- a/boards/arduino-duemilanove/Makefile.features
+++ b/boards/arduino-duemilanove/Makefile.features
@@ -1,3 +1,3 @@
-include $(RIOTBOARD)/arduino-atmega-common/Makefile.features
+include $(RIOTBOARD)/common/arduino-atmega/Makefile.features
 
 -include $(RIOTCPU)/atmega328p/Makefile.features
diff --git a/boards/arduino-duemilanove/Makefile.include b/boards/arduino-duemilanove/Makefile.include
index 51fdbd905cebb91796eff689b94cc577fceed7ad..e2fce678d4acb92cc50e6b85986b15be2c4933b8 100644
--- a/boards/arduino-duemilanove/Makefile.include
+++ b/boards/arduino-duemilanove/Makefile.include
@@ -1,7 +1,7 @@
 # define the cpu used by the ardudino duemilanove board
 export CPU = atmega328p
 
-USEMODULE += arduino-atmega-common
+USEMODULE += boards_common_arduino-atmega
 
 #export needed for flash rule
 export PORT_LINUX ?= /dev/ttyUSB0
@@ -14,4 +14,4 @@ export FFLAGS += -p m328p
 # overridden for debugging (which requires changes that require to use an ISP)
 export PROGRAMMER ?= arduino
 
-include $(RIOTBOARD)/arduino-atmega-common/Makefile.include
+include $(RIOTBOARD)/common/arduino-atmega/Makefile.include
diff --git a/boards/arduino-mega2560/Makefile b/boards/arduino-mega2560/Makefile
index b597cd662a6ff3933f96f819ddea9ccef91a05d9..8c6f44eb536f7d60fb02b940c6c6a018e8fafdb0 100644
--- a/boards/arduino-mega2560/Makefile
+++ b/boards/arduino-mega2560/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/arduino-atmega-common
+DIRS = $(RIOTBOARD)/common/arduino-atmega
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/arduino-mega2560/Makefile.features b/boards/arduino-mega2560/Makefile.features
index ee597e19953f68e784be9b03ab8dbc6e1bfc1277..42491f5a94b6f7f9295179f39acb8b9d60e567cb 100644
--- a/boards/arduino-mega2560/Makefile.features
+++ b/boards/arduino-mega2560/Makefile.features
@@ -1,3 +1,3 @@
-include $(RIOTBOARD)/arduino-atmega-common/Makefile.features
+include $(RIOTBOARD)/common/arduino-atmega/Makefile.features
 
 -include $(RIOTCPU)/atmega2560/Makefile.features
diff --git a/boards/arduino-mega2560/Makefile.include b/boards/arduino-mega2560/Makefile.include
index fedd10f136547abd77c992817285e26b97267a73..074a9e28870cd9c95753c2a57b09127b6f082149 100644
--- a/boards/arduino-mega2560/Makefile.include
+++ b/boards/arduino-mega2560/Makefile.include
@@ -1,7 +1,7 @@
 # define the cpu used by the arduino mega2560 board
 export CPU = atmega2560
 
-USEMODULE += arduino-atmega-common
+USEMODULE += boards_common_arduino-atmega
 
 #export needed for flash rule
 export PORT_LINUX ?= /dev/ttyACM0
@@ -14,4 +14,4 @@ export FFLAGS += -p m2560
 # overridden for debugging (which requires changes that require to use an ISP)
 export PROGRAMMER ?= stk500v2
 
-include $(RIOTBOARD)/arduino-atmega-common/Makefile.include
+include $(RIOTBOARD)/common/arduino-atmega/Makefile.include
diff --git a/boards/arduino-mkr1000/Makefile b/boards/arduino-mkr1000/Makefile
index f2684f1e543a83d89eb07f8a6e9ffefe5f8f6c87..392f7d5c56a44660650be5838dff657b62005bf3 100644
--- a/boards/arduino-mkr1000/Makefile
+++ b/boards/arduino-mkr1000/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/arduino-mkr-common
+DIRS = $(RIOTBOARD)/common/arduino-mkr
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/arduino-mkr1000/Makefile.dep b/boards/arduino-mkr1000/Makefile.dep
index 2b61789eafdfafc8d4ddf8da6d196ed863f157e4..698c09c572a1e5b6f4dbbd9fcaa3a57f5752b412 100644
--- a/boards/arduino-mkr1000/Makefile.dep
+++ b/boards/arduino-mkr1000/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/arduino-mkr-common/Makefile.dep
+include $(RIOTBOARD)/common/arduino-mkr/Makefile.dep
diff --git a/boards/arduino-mkr1000/Makefile.features b/boards/arduino-mkr1000/Makefile.features
index 75f211c04ca1e43c0926b55e4e92f8a855e9e8ca..bc8c9ae857bcd05ca625e58ce8ae770abf0940ba 100644
--- a/boards/arduino-mkr1000/Makefile.features
+++ b/boards/arduino-mkr1000/Makefile.features
@@ -1,3 +1,3 @@
-include $(RIOTBOARD)/arduino-mkr-common/Makefile.features
+include $(RIOTBOARD)/common/arduino-mkr/Makefile.features
 
 -include $(RIOTCPU)/samd21/Makefile.features
diff --git a/boards/arduino-mkr1000/Makefile.include b/boards/arduino-mkr1000/Makefile.include
index 83a2f983f79163975294c134782fab0c29f6e6a5..49453ce50d82c2a4631f9632893883e610695715 100644
--- a/boards/arduino-mkr1000/Makefile.include
+++ b/boards/arduino-mkr1000/Makefile.include
@@ -1,10 +1,10 @@
-USEMODULE += arduino-mkr-common
+USEMODULE += boards_common_arduino-mkr
 
 ifeq ($(PROGRAMMER),jlink)
   export MKR_JLINK_DEVICE = atsamw25
 endif
 
-include $(RIOTBOARD)/arduino-mkr-common/Makefile.include
+include $(RIOTBOARD)/common/arduino-mkr/Makefile.include
 
 # add arduino-mkr1000 include path
 INCLUDES += -I$(RIOTBOARD)/$(BOARD)/include
diff --git a/boards/arduino-mkrzero/Makefile b/boards/arduino-mkrzero/Makefile
index f2684f1e543a83d89eb07f8a6e9ffefe5f8f6c87..392f7d5c56a44660650be5838dff657b62005bf3 100644
--- a/boards/arduino-mkrzero/Makefile
+++ b/boards/arduino-mkrzero/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/arduino-mkr-common
+DIRS = $(RIOTBOARD)/common/arduino-mkr
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/arduino-mkrzero/Makefile.dep b/boards/arduino-mkrzero/Makefile.dep
index 2b61789eafdfafc8d4ddf8da6d196ed863f157e4..698c09c572a1e5b6f4dbbd9fcaa3a57f5752b412 100644
--- a/boards/arduino-mkrzero/Makefile.dep
+++ b/boards/arduino-mkrzero/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/arduino-mkr-common/Makefile.dep
+include $(RIOTBOARD)/common/arduino-mkr/Makefile.dep
diff --git a/boards/arduino-mkrzero/Makefile.features b/boards/arduino-mkrzero/Makefile.features
index 75f211c04ca1e43c0926b55e4e92f8a855e9e8ca..bc8c9ae857bcd05ca625e58ce8ae770abf0940ba 100644
--- a/boards/arduino-mkrzero/Makefile.features
+++ b/boards/arduino-mkrzero/Makefile.features
@@ -1,3 +1,3 @@
-include $(RIOTBOARD)/arduino-mkr-common/Makefile.features
+include $(RIOTBOARD)/common/arduino-mkr/Makefile.features
 
 -include $(RIOTCPU)/samd21/Makefile.features
diff --git a/boards/arduino-mkrzero/Makefile.include b/boards/arduino-mkrzero/Makefile.include
index 6f992cd0bb6eb484c29a5744df2e892ddacecc36..4b920dfa56a1c5971a6ad134282f0cc26fb011f6 100644
--- a/boards/arduino-mkrzero/Makefile.include
+++ b/boards/arduino-mkrzero/Makefile.include
@@ -1,10 +1,10 @@
-USEMODULE += arduino-mkr-common
+USEMODULE += boards_common_arduino-mkr
 
 ifeq ($(PROGRAMMER),jlink)
   export MKR_JLINK_DEVICE = atsamd21
 endif
 
-include $(RIOTBOARD)/arduino-mkr-common/Makefile.include
+include $(RIOTBOARD)/common/arduino-mkr/Makefile.include
 
 # add arduino-mkrzero include path
 INCLUDES += -I$(RIOTBOARD)/$(BOARD)/include
diff --git a/boards/arduino-uno/Makefile b/boards/arduino-uno/Makefile
index b597cd662a6ff3933f96f819ddea9ccef91a05d9..8c6f44eb536f7d60fb02b940c6c6a018e8fafdb0 100644
--- a/boards/arduino-uno/Makefile
+++ b/boards/arduino-uno/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/arduino-atmega-common
+DIRS = $(RIOTBOARD)/common/arduino-atmega
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/arduino-uno/Makefile.features b/boards/arduino-uno/Makefile.features
index dea129ce0fb16f0d574c33ce167a56284f4e4d4c..8ade47474f65bc909aaa48e71175a1ff66b2772c 100644
--- a/boards/arduino-uno/Makefile.features
+++ b/boards/arduino-uno/Makefile.features
@@ -1,3 +1,3 @@
-include $(RIOTBOARD)/arduino-atmega-common/Makefile.features
+include $(RIOTBOARD)/common/arduino-atmega/Makefile.features
 
 -include $(RIOTCPU)/atmega328p/Makefile.features
diff --git a/boards/arduino-uno/Makefile.include b/boards/arduino-uno/Makefile.include
index 16616f50dc3c8d5d92d7faa22564875be403ad1b..c05afa46e82916574920008122f4265c3624a900 100644
--- a/boards/arduino-uno/Makefile.include
+++ b/boards/arduino-uno/Makefile.include
@@ -1,7 +1,7 @@
 # define the cpu used by the arduino uno board
 export CPU = atmega328p
 
-USEMODULE += arduino-atmega-common
+USEMODULE += boards_common_arduino-atmega
 
 # export needed for flash rule
 export PORT_LINUX ?= /dev/ttyACM0
@@ -14,4 +14,4 @@ export FFLAGS += -p m328p
 # overridden for debugging (which requires changes that require to use an ISP)
 export PROGRAMMER ?= arduino
 
-include $(RIOTBOARD)/arduino-atmega-common/Makefile.include
+include $(RIOTBOARD)/common/arduino-atmega/Makefile.include
diff --git a/boards/avsextrem/Makefile b/boards/avsextrem/Makefile
index 5f15bf5c405cc0fd68d21bdd0a68df27ff01872e..ad7c73d4ef8657b094c9e04ef84b5b90d644c29b 100644
--- a/boards/avsextrem/Makefile
+++ b/boards/avsextrem/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/msba2-common
+DIRS = $(RIOTBOARD)/common/msba2
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/avsextrem/Makefile.dep b/boards/avsextrem/Makefile.dep
index 82bd24939dfe1b1ce936cc01f2a8f0dbbcd482ba..130eea588a8b371cc6890830398f261dab0abd3f 100644
--- a/boards/avsextrem/Makefile.dep
+++ b/boards/avsextrem/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/msba2-common/Makefile.dep
+include $(RIOTBOARD)/common/msba2/Makefile.dep
diff --git a/boards/avsextrem/Makefile.include b/boards/avsextrem/Makefile.include
index 00607d49c09fb7667f4c7c67f69165bdb36a5117..8c26e275d07bdd47871c09b957dea6aa66148515 100644
--- a/boards/avsextrem/Makefile.include
+++ b/boards/avsextrem/Makefile.include
@@ -1,3 +1,3 @@
-USEMODULE += msba2-common
+USEMODULE += boards_common_msba2
 
-include $(RIOTBOARD)/msba2-common/Makefile.include
+include $(RIOTBOARD)/common/msba2/Makefile.include
diff --git a/boards/common/arduino-atmega/Makefile b/boards/common/arduino-atmega/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..8cf36dd2468e848fd068afb1d5e1afe627ac80b5
--- /dev/null
+++ b/boards/common/arduino-atmega/Makefile
@@ -0,0 +1,3 @@
+MODULE = boards_common_arduino-atmega
+
+include $(RIOTBASE)/Makefile.base
diff --git a/boards/arduino-atmega-common/Makefile.dep b/boards/common/arduino-atmega/Makefile.dep
similarity index 100%
rename from boards/arduino-atmega-common/Makefile.dep
rename to boards/common/arduino-atmega/Makefile.dep
diff --git a/boards/arduino-atmega-common/Makefile.features b/boards/common/arduino-atmega/Makefile.features
similarity index 100%
rename from boards/arduino-atmega-common/Makefile.features
rename to boards/common/arduino-atmega/Makefile.features
diff --git a/boards/arduino-atmega-common/Makefile.include b/boards/common/arduino-atmega/Makefile.include
similarity index 86%
rename from boards/arduino-atmega-common/Makefile.include
rename to boards/common/arduino-atmega/Makefile.include
index 3c8ed3399044467e8abac0a443940ece1aec973c..a6a57822e16d7f6096e46900a7c43803f08b135e 100644
--- a/boards/arduino-atmega-common/Makefile.include
+++ b/boards/common/arduino-atmega/Makefile.include
@@ -1,7 +1,7 @@
 # include optional dependencies
-include $(RIOTBOARD)/arduino-atmega-common/Makefile.dep
+include $(RIOTBOARD)/common/arduino-atmega/Makefile.dep
 
-INCLUDES += -I$(RIOTBOARD)/arduino-atmega-common/include
+INCLUDES += -I$(RIOTBOARD)/common/arduino-atmega/include
 
 # refine serial port information
 export BAUD ?= 9600
diff --git a/boards/arduino-atmega-common/board.c b/boards/common/arduino-atmega/board.c
similarity index 100%
rename from boards/arduino-atmega-common/board.c
rename to boards/common/arduino-atmega/board.c
diff --git a/boards/arduino-atmega-common/dist/debug.sh b/boards/common/arduino-atmega/dist/debug.sh
similarity index 100%
rename from boards/arduino-atmega-common/dist/debug.sh
rename to boards/common/arduino-atmega/dist/debug.sh
diff --git a/boards/arduino-atmega-common/dist/debug_srv.sh b/boards/common/arduino-atmega/dist/debug_srv.sh
similarity index 100%
rename from boards/arduino-atmega-common/dist/debug_srv.sh
rename to boards/common/arduino-atmega/dist/debug_srv.sh
diff --git a/boards/arduino-atmega-common/dist/gdb.conf b/boards/common/arduino-atmega/dist/gdb.conf
similarity index 100%
rename from boards/arduino-atmega-common/dist/gdb.conf
rename to boards/common/arduino-atmega/dist/gdb.conf
diff --git a/boards/arduino-atmega-common/doc.txt b/boards/common/arduino-atmega/doc.txt
similarity index 100%
rename from boards/arduino-atmega-common/doc.txt
rename to boards/common/arduino-atmega/doc.txt
diff --git a/boards/arduino-atmega-common/include/arduino_board.h b/boards/common/arduino-atmega/include/arduino_board.h
similarity index 100%
rename from boards/arduino-atmega-common/include/arduino_board.h
rename to boards/common/arduino-atmega/include/arduino_board.h
diff --git a/boards/arduino-atmega-common/include/arduino_pinmap.h b/boards/common/arduino-atmega/include/arduino_pinmap.h
similarity index 100%
rename from boards/arduino-atmega-common/include/arduino_pinmap.h
rename to boards/common/arduino-atmega/include/arduino_pinmap.h
diff --git a/boards/arduino-atmega-common/include/board_common.h b/boards/common/arduino-atmega/include/board_common.h
similarity index 100%
rename from boards/arduino-atmega-common/include/board_common.h
rename to boards/common/arduino-atmega/include/board_common.h
diff --git a/boards/arduino-atmega-common/include/gpio_params.h b/boards/common/arduino-atmega/include/gpio_params.h
similarity index 100%
rename from boards/arduino-atmega-common/include/gpio_params.h
rename to boards/common/arduino-atmega/include/gpio_params.h
diff --git a/boards/arduino-atmega-common/include/periph_conf.h b/boards/common/arduino-atmega/include/periph_conf.h
similarity index 100%
rename from boards/arduino-atmega-common/include/periph_conf.h
rename to boards/common/arduino-atmega/include/periph_conf.h
diff --git a/boards/arduino-atmega-common/Makefile b/boards/common/arduino-mkr/Makefile
similarity index 50%
rename from boards/arduino-atmega-common/Makefile
rename to boards/common/arduino-mkr/Makefile
index b2ec734f93a3e29efbcecea072e48d7ad483f9e1..7c64bc0598f7f206f06ea3c2bfbd408f22182f17 100644
--- a/boards/arduino-atmega-common/Makefile
+++ b/boards/common/arduino-mkr/Makefile
@@ -1,3 +1,3 @@
-MODULE = arduino-atmega-common
+MODULE = boards_common_arduino-mkr
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/arduino-mkr-common/Makefile.dep b/boards/common/arduino-mkr/Makefile.dep
similarity index 100%
rename from boards/arduino-mkr-common/Makefile.dep
rename to boards/common/arduino-mkr/Makefile.dep
diff --git a/boards/arduino-mkr-common/Makefile.features b/boards/common/arduino-mkr/Makefile.features
similarity index 100%
rename from boards/arduino-mkr-common/Makefile.features
rename to boards/common/arduino-mkr/Makefile.features
diff --git a/boards/arduino-mkr-common/Makefile.include b/boards/common/arduino-mkr/Makefile.include
similarity index 93%
rename from boards/arduino-mkr-common/Makefile.include
rename to boards/common/arduino-mkr/Makefile.include
index e25b6865a4ee827ed968b3f665da3d14b075271e..6e1e0b7bb398a7a30194cd9d9e5d635f8ac7b4a8 100644
--- a/boards/arduino-mkr-common/Makefile.include
+++ b/boards/common/arduino-mkr/Makefile.include
@@ -22,7 +22,7 @@ else
   include $(RIOTMAKE)/tools/bossa.inc.mk
 endif
 
-INCLUDES += -I$(RIOTBOARD)/arduino-mkr-common/include
+INCLUDES += -I$(RIOTBOARD)/common/arduino-mkr/include
 
 # setup the boards dependencies
 include $(RIOTBOARD)/$(BOARD)/Makefile.dep
diff --git a/boards/arduino-mkr-common/board.c b/boards/common/arduino-mkr/board.c
similarity index 100%
rename from boards/arduino-mkr-common/board.c
rename to boards/common/arduino-mkr/board.c
diff --git a/boards/arduino-mkr-common/include/arduino_board.h b/boards/common/arduino-mkr/include/arduino_board.h
similarity index 100%
rename from boards/arduino-mkr-common/include/arduino_board.h
rename to boards/common/arduino-mkr/include/arduino_board.h
diff --git a/boards/arduino-mkr-common/include/arduino_pinmap.h b/boards/common/arduino-mkr/include/arduino_pinmap.h
similarity index 100%
rename from boards/arduino-mkr-common/include/arduino_pinmap.h
rename to boards/common/arduino-mkr/include/arduino_pinmap.h
diff --git a/boards/arduino-mkr-common/include/board_common.h b/boards/common/arduino-mkr/include/board_common.h
similarity index 100%
rename from boards/arduino-mkr-common/include/board_common.h
rename to boards/common/arduino-mkr/include/board_common.h
diff --git a/boards/arduino-mkr-common/include/gpio_params.h b/boards/common/arduino-mkr/include/gpio_params.h
similarity index 100%
rename from boards/arduino-mkr-common/include/gpio_params.h
rename to boards/common/arduino-mkr/include/gpio_params.h
diff --git a/boards/arduino-mkr-common/include/periph_conf.h b/boards/common/arduino-mkr/include/periph_conf.h
similarity index 100%
rename from boards/arduino-mkr-common/include/periph_conf.h
rename to boards/common/arduino-mkr/include/periph_conf.h
diff --git a/boards/frdm-common/Makefile.include b/boards/common/frdm/Makefile.include
similarity index 92%
rename from boards/frdm-common/Makefile.include
rename to boards/common/frdm/Makefile.include
index 5b994901fe94d26cf11347b68ed70b235bbbbcba..f71451d9feed3743c45bda8b67a9afa76ce15ec7 100644
--- a/boards/frdm-common/Makefile.include
+++ b/boards/common/frdm/Makefile.include
@@ -29,11 +29,11 @@ flash: $(RIOTCPU)/$(CPU)/dist/wdog-disable.bin
 # Reset the default goal.
 .DEFAULT_GOAL :=
 
-export OPENOCD_CONFIG ?= $(RIOTBOARD)/frdm-common/dist/old-openocd-$(CPU_FAMILY).cfg
+export OPENOCD_CONFIG ?= $(RIOTBOARD)/common/frdm/dist/old-openocd-$(CPU_FAMILY).cfg
 endif
 
 # Configuration for OpenOCD v0.10.0 and newer
-export OPENOCD_CONFIG ?= $(RIOTBOARD)/frdm-common/dist/openocd-$(CPU_FAMILY).cfg
+export OPENOCD_CONFIG ?= $(RIOTBOARD)/common/frdm/dist/openocd-$(CPU_FAMILY).cfg
 
 # Check the flash configuration field before flashing
 export PRE_FLASH_CHECK_SCRIPT = $(RIOTCPU)/$(CPU)/dist/check-fcfield-elf.sh
diff --git a/boards/frdm-common/dist/old-openocd-kx.cfg b/boards/common/frdm/dist/old-openocd-kx.cfg
similarity index 100%
rename from boards/frdm-common/dist/old-openocd-kx.cfg
rename to boards/common/frdm/dist/old-openocd-kx.cfg
diff --git a/boards/frdm-common/dist/openocd-kx.cfg b/boards/common/frdm/dist/openocd-kx.cfg
similarity index 100%
rename from boards/frdm-common/dist/openocd-kx.cfg
rename to boards/common/frdm/dist/openocd-kx.cfg
diff --git a/boards/remote-common/Makefile b/boards/common/iotlab/Makefile
similarity index 53%
rename from boards/remote-common/Makefile
rename to boards/common/iotlab/Makefile
index d21fafef89e0a5a4731d39035972df90765cda55..38548256916df11295233d8fa896f3d5321a51ad 100644
--- a/boards/remote-common/Makefile
+++ b/boards/common/iotlab/Makefile
@@ -1,3 +1,3 @@
-MODULE = remote-common
+MODULE = boards_common_iotlab
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/iotlab-common/Makefile.dep b/boards/common/iotlab/Makefile.dep
similarity index 100%
rename from boards/iotlab-common/Makefile.dep
rename to boards/common/iotlab/Makefile.dep
diff --git a/boards/iotlab-common/Makefile.features b/boards/common/iotlab/Makefile.features
similarity index 100%
rename from boards/iotlab-common/Makefile.features
rename to boards/common/iotlab/Makefile.features
diff --git a/boards/iotlab-common/Makefile.include b/boards/common/iotlab/Makefile.include
similarity index 89%
rename from boards/iotlab-common/Makefile.include
rename to boards/common/iotlab/Makefile.include
index 93260391c7c07d5e9f2da9360af009b4daf4e092..99b3803c74510919836e986b7711e42d0183a3af 100644
--- a/boards/iotlab-common/Makefile.include
+++ b/boards/common/iotlab/Makefile.include
@@ -14,4 +14,4 @@ include $(RIOTMAKE)/tools/serial.inc.mk
 include $(RIOTMAKE)/tools/openocd.inc.mk
 
 # add the common header files to the include path
-INCLUDES += -I$(RIOTBOARD)/iotlab-common/include
+INCLUDES += -I$(RIOTBOARD)/common/iotlab/include
diff --git a/boards/iotlab-common/board_init.c b/boards/common/iotlab/board_init.c
similarity index 100%
rename from boards/iotlab-common/board_init.c
rename to boards/common/iotlab/board_init.c
diff --git a/boards/iotlab-common/include/board_common.h b/boards/common/iotlab/include/board_common.h
similarity index 100%
rename from boards/iotlab-common/include/board_common.h
rename to boards/common/iotlab/include/board_common.h
diff --git a/boards/iotlab-common/include/gpio_params.h b/boards/common/iotlab/include/gpio_params.h
similarity index 100%
rename from boards/iotlab-common/include/gpio_params.h
rename to boards/common/iotlab/include/gpio_params.h
diff --git a/boards/iotlab-common/include/l3g4200d_params.h b/boards/common/iotlab/include/l3g4200d_params.h
similarity index 100%
rename from boards/iotlab-common/include/l3g4200d_params.h
rename to boards/common/iotlab/include/l3g4200d_params.h
diff --git a/boards/iotlab-common/include/lsm303dlhc_params.h b/boards/common/iotlab/include/lsm303dlhc_params.h
similarity index 100%
rename from boards/iotlab-common/include/lsm303dlhc_params.h
rename to boards/common/iotlab/include/lsm303dlhc_params.h
diff --git a/boards/iotlab-common/include/periph_conf_common.h b/boards/common/iotlab/include/periph_conf_common.h
similarity index 100%
rename from boards/iotlab-common/include/periph_conf_common.h
rename to boards/common/iotlab/include/periph_conf_common.h
diff --git a/boards/msb-430-common/Makefile b/boards/common/msb-430/Makefile
similarity index 62%
rename from boards/msb-430-common/Makefile
rename to boards/common/msb-430/Makefile
index afb0e3e9010882b46b72182861aaba19f6300362..baa55d873151f46154b83eaf906cf985093e8d3b 100644
--- a/boards/msb-430-common/Makefile
+++ b/boards/common/msb-430/Makefile
@@ -1,4 +1,4 @@
-MODULE = msb-430-common
+MODULE = boards_common_msb-430
 
 DIRS = drivers
 
diff --git a/boards/msb-430-common/Makefile.features b/boards/common/msb-430/Makefile.features
similarity index 100%
rename from boards/msb-430-common/Makefile.features
rename to boards/common/msb-430/Makefile.features
diff --git a/boards/msb-430-common/Makefile.include b/boards/common/msb-430/Makefile.include
similarity index 80%
rename from boards/msb-430-common/Makefile.include
rename to boards/common/msb-430/Makefile.include
index 7a9d36b5b3d5f19dcc287d5c2087e002b781023f..e7ce2c6d836359897407bb1d508ebbe70bbdf11e 100644
--- a/boards/msb-430-common/Makefile.include
+++ b/boards/common/msb-430/Makefile.include
@@ -24,8 +24,8 @@ export DEBUGSERVER_FLAGS = $(MSPDEBUGFLAGS) gdb
 export DEBUGGER = $(PREFIX)gdb
 export DEBUGGER_FLAGS = --tui --ex="target remote localhost:2000" --ex "monitor reset halt" --ex load -ex "monitor reset halt"  $(ELFFILE)
 
-# export msb-430-common includes
-export INCLUDES += -I$(RIOTBOARD)/msb-430-common/include
-export INCLUDES += -I$(RIOTBOARD)/msb-430-common/drivers/include
+# export common msb-430 includes
+export INCLUDES += -I$(RIOTBOARD)/common/msb-430/include
+export INCLUDES += -I$(RIOTBOARD)/common/msb-430/drivers/include
 
-USEMODULE += msb-430-common-drivers
+USEMODULE += boards_common_msb-430-drivers
diff --git a/boards/msb-430-common/board_init.c b/boards/common/msb-430/board_init.c
similarity index 100%
rename from boards/msb-430-common/board_init.c
rename to boards/common/msb-430/board_init.c
diff --git a/boards/msb-430-common/drivers/Makefile b/boards/common/msb-430/drivers/Makefile
similarity index 68%
rename from boards/msb-430-common/drivers/Makefile
rename to boards/common/msb-430/drivers/Makefile
index a9f8e5e470ed284c053ea254d1231229c0157002..ed11f0ae340a4b762ad012b7380fdc0f9e5aaecf 100644
--- a/boards/msb-430-common/drivers/Makefile
+++ b/boards/common/msb-430/drivers/Makefile
@@ -1,4 +1,4 @@
-MODULE = msb-430-common-drivers
+MODULE = boards_common_msb-430-drivers
 
 include $(RIOTBOARD)/$(BOARD)/Makefile.include
 
diff --git a/boards/msb-430-common/drivers/include/sht11-board.h b/boards/common/msb-430/drivers/include/sht11-board.h
similarity index 100%
rename from boards/msb-430-common/drivers/include/sht11-board.h
rename to boards/common/msb-430/drivers/include/sht11-board.h
diff --git a/boards/msb-430-common/include/board_common.h b/boards/common/msb-430/include/board_common.h
similarity index 100%
rename from boards/msb-430-common/include/board_common.h
rename to boards/common/msb-430/include/board_common.h
diff --git a/boards/msba2-common/Makefile b/boards/common/msba2/Makefile
similarity index 63%
rename from boards/msba2-common/Makefile
rename to boards/common/msba2/Makefile
index da37386c49e0fb9d0ad2d61edb16ddf965e6872a..a8c0997289fe79230595a9ce38d8fe672455deb8 100644
--- a/boards/msba2-common/Makefile
+++ b/boards/common/msba2/Makefile
@@ -1,4 +1,4 @@
-MODULE = msba2-common
+MODULE = boards_common_msba2
 
 DIRS = drivers
 
diff --git a/boards/msba2-common/Makefile.dep b/boards/common/msba2/Makefile.dep
similarity index 100%
rename from boards/msba2-common/Makefile.dep
rename to boards/common/msba2/Makefile.dep
diff --git a/boards/msba2-common/Makefile.include b/boards/common/msba2/Makefile.include
similarity index 86%
rename from boards/msba2-common/Makefile.include
rename to boards/common/msba2/Makefile.include
index c1a340a7b1956466002173438b259ed31669f722..6618753cb59ac0c3191ed25578618b7e818f6ff0 100644
--- a/boards/msba2-common/Makefile.include
+++ b/boards/common/msba2/Makefile.include
@@ -26,10 +26,11 @@ ifeq ($(PORT),)
 endif
 export FFLAGS = $(PORT) $(HEXFILE)
 
-export INCLUDES += -I$(RIOTBOARD)/msba2-common/include -I$(RIOTBOARD)/msba2-common/drivers/include
+INCLUDES += -I$(RIOTBOARD)/common/msba2/include
+INCLUDES += -I$(RIOTBOARD)/common/msba2/drivers/include
 
 export OFLAGS = -O ihex
 
 export UNDEF += $(BINDIR)/cpu/startup.o
 
-USEMODULE += msba2-common-drivers
+USEMODULE += boards_common_msba2-drivers
diff --git a/boards/msba2-common/board_common_init.c b/boards/common/msba2/board_common_init.c
similarity index 100%
rename from boards/msba2-common/board_common_init.c
rename to boards/common/msba2/board_common_init.c
diff --git a/boards/common/msba2/drivers/Makefile b/boards/common/msba2/drivers/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..26dd1f4f5da09469500439c62212c5d5f9aa905b
--- /dev/null
+++ b/boards/common/msba2/drivers/Makefile
@@ -0,0 +1,3 @@
+MODULE = boards_common_msba2-drivers
+
+include $(RIOTBASE)/Makefile.base
diff --git a/boards/msba2-common/drivers/include/sht11-board.h b/boards/common/msba2/drivers/include/sht11-board.h
similarity index 100%
rename from boards/msba2-common/drivers/include/sht11-board.h
rename to boards/common/msba2/drivers/include/sht11-board.h
diff --git a/boards/msba2-common/include/msba2_common.h b/boards/common/msba2/include/msba2_common.h
similarity index 100%
rename from boards/msba2-common/include/msba2_common.h
rename to boards/common/msba2/include/msba2_common.h
diff --git a/boards/msba2-common/tools/CHANGES b/boards/common/msba2/tools/CHANGES
similarity index 100%
rename from boards/msba2-common/tools/CHANGES
rename to boards/common/msba2/tools/CHANGES
diff --git a/boards/msba2-common/tools/COPYING b/boards/common/msba2/tools/COPYING
similarity index 100%
rename from boards/msba2-common/tools/COPYING
rename to boards/common/msba2/tools/COPYING
diff --git a/boards/msba2-common/tools/Makefile b/boards/common/msba2/tools/Makefile
similarity index 100%
rename from boards/msba2-common/tools/Makefile
rename to boards/common/msba2/tools/Makefile
diff --git a/boards/msba2-common/tools/README.txt b/boards/common/msba2/tools/README.txt
similarity index 100%
rename from boards/msba2-common/tools/README.txt
rename to boards/common/msba2/tools/README.txt
diff --git a/boards/msba2-common/tools/armtools.txt b/boards/common/msba2/tools/armtools.txt
similarity index 100%
rename from boards/msba2-common/tools/armtools.txt
rename to boards/common/msba2/tools/armtools.txt
diff --git a/boards/msba2-common/tools/flash.cmd b/boards/common/msba2/tools/flash.cmd
similarity index 100%
rename from boards/msba2-common/tools/flash.cmd
rename to boards/common/msba2/tools/flash.cmd
diff --git a/boards/msba2-common/tools/flashutil.sh b/boards/common/msba2/tools/flashutil.sh
similarity index 100%
rename from boards/msba2-common/tools/flashutil.sh
rename to boards/common/msba2/tools/flashutil.sh
diff --git a/boards/msba2-common/tools/mkbootc b/boards/common/msba2/tools/mkbootc
similarity index 100%
rename from boards/msba2-common/tools/mkbootc
rename to boards/common/msba2/tools/mkbootc
diff --git a/boards/msba2-common/tools/mkstaticlist b/boards/common/msba2/tools/mkstaticlist
similarity index 100%
rename from boards/msba2-common/tools/mkstaticlist
rename to boards/common/msba2/tools/mkstaticlist
diff --git a/boards/msba2-common/tools/obj/.gitignore b/boards/common/msba2/tools/obj/.gitignore
similarity index 100%
rename from boards/msba2-common/tools/obj/.gitignore
rename to boards/common/msba2/tools/obj/.gitignore
diff --git a/boards/msba2-common/tools/src/boot.h b/boards/common/msba2/tools/src/boot.h
similarity index 100%
rename from boards/msba2-common/tools/src/boot.h
rename to boards/common/msba2/tools/src/boot.h
diff --git a/boards/msba2-common/tools/src/boot_23xx.armasm b/boards/common/msba2/tools/src/boot_23xx.armasm
similarity index 100%
rename from boards/msba2-common/tools/src/boot_23xx.armasm
rename to boards/common/msba2/tools/src/boot_23xx.armasm
diff --git a/boards/msba2-common/tools/src/boot_23xx.c b/boards/common/msba2/tools/src/boot_23xx.c
similarity index 100%
rename from boards/msba2-common/tools/src/boot_23xx.c
rename to boards/common/msba2/tools/src/boot_23xx.c
diff --git a/boards/msba2-common/tools/src/boot_23xx.h b/boards/common/msba2/tools/src/boot_23xx.h
similarity index 100%
rename from boards/msba2-common/tools/src/boot_23xx.h
rename to boards/common/msba2/tools/src/boot_23xx.h
diff --git a/boards/msba2-common/tools/src/boot_2xxx.armasm b/boards/common/msba2/tools/src/boot_2xxx.armasm
similarity index 100%
rename from boards/msba2-common/tools/src/boot_2xxx.armasm
rename to boards/common/msba2/tools/src/boot_2xxx.armasm
diff --git a/boards/msba2-common/tools/src/boot_2xxx.c b/boards/common/msba2/tools/src/boot_2xxx.c
similarity index 100%
rename from boards/msba2-common/tools/src/boot_2xxx.c
rename to boards/common/msba2/tools/src/boot_2xxx.c
diff --git a/boards/msba2-common/tools/src/boot_2xxx.h b/boards/common/msba2/tools/src/boot_2xxx.h
similarity index 100%
rename from boards/msba2-common/tools/src/boot_2xxx.h
rename to boards/common/msba2/tools/src/boot_2xxx.h
diff --git a/boards/msba2-common/tools/src/chipinfo.c b/boards/common/msba2/tools/src/chipinfo.c
similarity index 100%
rename from boards/msba2-common/tools/src/chipinfo.c
rename to boards/common/msba2/tools/src/chipinfo.c
diff --git a/boards/msba2-common/tools/src/chipinfo.h b/boards/common/msba2/tools/src/chipinfo.h
similarity index 100%
rename from boards/msba2-common/tools/src/chipinfo.h
rename to boards/common/msba2/tools/src/chipinfo.h
diff --git a/boards/msba2-common/tools/src/cksum_test.c b/boards/common/msba2/tools/src/cksum_test.c
similarity index 100%
rename from boards/msba2-common/tools/src/cksum_test.c
rename to boards/common/msba2/tools/src/cksum_test.c
diff --git a/boards/msba2-common/tools/src/control_2xxx.c b/boards/common/msba2/tools/src/control_2xxx.c
similarity index 100%
rename from boards/msba2-common/tools/src/control_2xxx.c
rename to boards/common/msba2/tools/src/control_2xxx.c
diff --git a/boards/msba2-common/tools/src/control_2xxx.h b/boards/common/msba2/tools/src/control_2xxx.h
similarity index 100%
rename from boards/msba2-common/tools/src/control_2xxx.h
rename to boards/common/msba2/tools/src/control_2xxx.h
diff --git a/boards/msba2-common/tools/src/download.c b/boards/common/msba2/tools/src/download.c
similarity index 100%
rename from boards/msba2-common/tools/src/download.c
rename to boards/common/msba2/tools/src/download.c
diff --git a/boards/msba2-common/tools/src/download.h b/boards/common/msba2/tools/src/download.h
similarity index 100%
rename from boards/msba2-common/tools/src/download.h
rename to boards/common/msba2/tools/src/download.h
diff --git a/boards/msba2-common/tools/src/gui.c b/boards/common/msba2/tools/src/gui.c
similarity index 100%
rename from boards/msba2-common/tools/src/gui.c
rename to boards/common/msba2/tools/src/gui.c
diff --git a/boards/msba2-common/tools/src/gui.h b/boards/common/msba2/tools/src/gui.h
similarity index 100%
rename from boards/msba2-common/tools/src/gui.h
rename to boards/common/msba2/tools/src/gui.h
diff --git a/boards/msba2-common/tools/src/ihex.c b/boards/common/msba2/tools/src/ihex.c
similarity index 100%
rename from boards/msba2-common/tools/src/ihex.c
rename to boards/common/msba2/tools/src/ihex.c
diff --git a/boards/msba2-common/tools/src/ihex.h b/boards/common/msba2/tools/src/ihex.h
similarity index 100%
rename from boards/msba2-common/tools/src/ihex.h
rename to boards/common/msba2/tools/src/ihex.h
diff --git a/boards/msba2-common/tools/src/lpc2k_pgm.c b/boards/common/msba2/tools/src/lpc2k_pgm.c
similarity index 100%
rename from boards/msba2-common/tools/src/lpc2k_pgm.c
rename to boards/common/msba2/tools/src/lpc2k_pgm.c
diff --git a/boards/msba2-common/tools/src/lpc2k_pgm.h b/boards/common/msba2/tools/src/lpc2k_pgm.h
similarity index 100%
rename from boards/msba2-common/tools/src/lpc2k_pgm.h
rename to boards/common/msba2/tools/src/lpc2k_pgm.h
diff --git a/boards/msba2-common/tools/src/pseudoterm.c b/boards/common/msba2/tools/src/pseudoterm.c
similarity index 100%
rename from boards/msba2-common/tools/src/pseudoterm.c
rename to boards/common/msba2/tools/src/pseudoterm.c
diff --git a/boards/msba2-common/tools/src/serial.c b/boards/common/msba2/tools/src/serial.c
similarity index 100%
rename from boards/msba2-common/tools/src/serial.c
rename to boards/common/msba2/tools/src/serial.c
diff --git a/boards/msba2-common/tools/src/serial.h b/boards/common/msba2/tools/src/serial.h
similarity index 100%
rename from boards/msba2-common/tools/src/serial.h
rename to boards/common/msba2/tools/src/serial.h
diff --git a/boards/msba2-common/tools/src/settings.c b/boards/common/msba2/tools/src/settings.c
similarity index 100%
rename from boards/msba2-common/tools/src/settings.c
rename to boards/common/msba2/tools/src/settings.c
diff --git a/boards/msba2-common/tools/src/settings.h b/boards/common/msba2/tools/src/settings.h
similarity index 100%
rename from boards/msba2-common/tools/src/settings.h
rename to boards/common/msba2/tools/src/settings.h
diff --git a/boards/msba2-common/tools/src/uuencode.c b/boards/common/msba2/tools/src/uuencode.c
similarity index 100%
rename from boards/msba2-common/tools/src/uuencode.c
rename to boards/common/msba2/tools/src/uuencode.c
diff --git a/boards/msba2-common/tools/src/uuencode.h b/boards/common/msba2/tools/src/uuencode.h
similarity index 100%
rename from boards/msba2-common/tools/src/uuencode.h
rename to boards/common/msba2/tools/src/uuencode.h
diff --git a/boards/msba2-common/tools/termctrl.sh b/boards/common/msba2/tools/termctrl.sh
similarity index 100%
rename from boards/msba2-common/tools/termctrl.sh
rename to boards/common/msba2/tools/termctrl.sh
diff --git a/boards/nucleo-common/Makefile b/boards/common/nucleo/Makefile
similarity index 100%
rename from boards/nucleo-common/Makefile
rename to boards/common/nucleo/Makefile
diff --git a/boards/nucleo-common/Makefile.dep b/boards/common/nucleo/Makefile.dep
similarity index 100%
rename from boards/nucleo-common/Makefile.dep
rename to boards/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-common/Makefile.features b/boards/common/nucleo/Makefile.features
similarity index 100%
rename from boards/nucleo-common/Makefile.features
rename to boards/common/nucleo/Makefile.features
diff --git a/boards/common/nucleo/Makefile.include b/boards/common/nucleo/Makefile.include
new file mode 100644
index 0000000000000000000000000000000000000000..21b714a355851525ad216777df874c8d3c8fa6a5
--- /dev/null
+++ b/boards/common/nucleo/Makefile.include
@@ -0,0 +1,5 @@
+# include nucleo common serial configuration
+include $(RIOTBOARD)/common/nucleo/Makefile.include.serial
+
+# add the common header files to the include path
+INCLUDES += -I$(RIOTBOARD)/common/nucleo/include
diff --git a/boards/nucleo-common/Makefile.include.serial b/boards/common/nucleo/Makefile.include.serial
similarity index 59%
rename from boards/nucleo-common/Makefile.include.serial
rename to boards/common/nucleo/Makefile.include.serial
index 20bc2220d4e8d3a29671bb1507d5574780c63316..a5e9afab2c56ebb361bd7c7ff7d6f52811a15858 100644
--- a/boards/nucleo-common/Makefile.include.serial
+++ b/boards/common/nucleo/Makefile.include.serial
@@ -12,23 +12,23 @@ export STLINK_VERSION ?= 2-1
 # Choose OpenOCD board configuration depending on CPU type
 ifeq (,$(OPENOCD_CONFIG))
   ifeq ($(CPU),stm32f0)
-    export OPENOCD_CONFIG := $(RIOTBOARD)/nucleo-common/dist/openocd-f0.cfg
+    export OPENOCD_CONFIG := $(RIOTBOARD)/common/nucleo/dist/openocd-f0.cfg
   else ifeq ($(CPU),stm32f1)
-    export OPENOCD_CONFIG := $(RIOTBOARD)/nucleo-common/dist/openocd-f1.cfg
+    export OPENOCD_CONFIG := $(RIOTBOARD)/common/nucleo/dist/openocd-f1.cfg
   else ifeq ($(CPU),stm32f2)
-    export OPENOCD_CONFIG := $(RIOTBOARD)/nucleo-common/dist/openocd-f2.cfg
+    export OPENOCD_CONFIG := $(RIOTBOARD)/common/nucleo/dist/openocd-f2.cfg
   else ifeq ($(CPU),stm32f3)
-    export OPENOCD_CONFIG := $(RIOTBOARD)/nucleo-common/dist/openocd-f3.cfg
+    export OPENOCD_CONFIG := $(RIOTBOARD)/common/nucleo/dist/openocd-f3.cfg
   else ifeq ($(CPU),stm32f4)
-    export OPENOCD_CONFIG := $(RIOTBOARD)/nucleo-common/dist/openocd-f4.cfg
+    export OPENOCD_CONFIG := $(RIOTBOARD)/common/nucleo/dist/openocd-f4.cfg
   else ifeq ($(CPU),stm32f7)
-    export OPENOCD_CONFIG := $(RIOTBOARD)/nucleo-common/dist/openocd-f7.cfg
+    export OPENOCD_CONFIG := $(RIOTBOARD)/common/nucleo/dist/openocd-f7.cfg
   else ifeq ($(CPU),stm32l0)
-    export OPENOCD_CONFIG := $(RIOTBOARD)/nucleo-common/dist/openocd-l0.cfg
+    export OPENOCD_CONFIG := $(RIOTBOARD)/common/nucleo/dist/openocd-l0.cfg
   else ifeq ($(CPU),stm32l1)
-    export OPENOCD_CONFIG := $(RIOTBOARD)/nucleo-common/dist/openocd-l1.cfg
+    export OPENOCD_CONFIG := $(RIOTBOARD)/common/nucleo/dist/openocd-l1.cfg
   else ifeq ($(CPU),stm32l4)
-    export OPENOCD_CONFIG := $(RIOTBOARD)/nucleo-common/dist/openocd-l4.cfg
+    export OPENOCD_CONFIG := $(RIOTBOARD)/common/nucleo/dist/openocd-l4.cfg
   endif
 endif
 
diff --git a/boards/nucleo-common/dist/openocd-f0.cfg b/boards/common/nucleo/dist/openocd-f0.cfg
similarity index 100%
rename from boards/nucleo-common/dist/openocd-f0.cfg
rename to boards/common/nucleo/dist/openocd-f0.cfg
diff --git a/boards/nucleo-common/dist/openocd-f1.cfg b/boards/common/nucleo/dist/openocd-f1.cfg
similarity index 100%
rename from boards/nucleo-common/dist/openocd-f1.cfg
rename to boards/common/nucleo/dist/openocd-f1.cfg
diff --git a/boards/nucleo-common/dist/openocd-f2.cfg b/boards/common/nucleo/dist/openocd-f2.cfg
similarity index 100%
rename from boards/nucleo-common/dist/openocd-f2.cfg
rename to boards/common/nucleo/dist/openocd-f2.cfg
diff --git a/boards/nucleo-common/dist/openocd-f3.cfg b/boards/common/nucleo/dist/openocd-f3.cfg
similarity index 100%
rename from boards/nucleo-common/dist/openocd-f3.cfg
rename to boards/common/nucleo/dist/openocd-f3.cfg
diff --git a/boards/nucleo-common/dist/openocd-f4.cfg b/boards/common/nucleo/dist/openocd-f4.cfg
similarity index 100%
rename from boards/nucleo-common/dist/openocd-f4.cfg
rename to boards/common/nucleo/dist/openocd-f4.cfg
diff --git a/boards/nucleo-common/dist/openocd-f7.cfg b/boards/common/nucleo/dist/openocd-f7.cfg
similarity index 100%
rename from boards/nucleo-common/dist/openocd-f7.cfg
rename to boards/common/nucleo/dist/openocd-f7.cfg
diff --git a/boards/nucleo-common/dist/openocd-l0.cfg b/boards/common/nucleo/dist/openocd-l0.cfg
similarity index 100%
rename from boards/nucleo-common/dist/openocd-l0.cfg
rename to boards/common/nucleo/dist/openocd-l0.cfg
diff --git a/boards/nucleo-common/dist/openocd-l1.cfg b/boards/common/nucleo/dist/openocd-l1.cfg
similarity index 100%
rename from boards/nucleo-common/dist/openocd-l1.cfg
rename to boards/common/nucleo/dist/openocd-l1.cfg
diff --git a/boards/nucleo-common/dist/openocd-l4.cfg b/boards/common/nucleo/dist/openocd-l4.cfg
similarity index 100%
rename from boards/nucleo-common/dist/openocd-l4.cfg
rename to boards/common/nucleo/dist/openocd-l4.cfg
diff --git a/boards/nucleo-common/include/arduino_board.h b/boards/common/nucleo/include/arduino_board.h
similarity index 100%
rename from boards/nucleo-common/include/arduino_board.h
rename to boards/common/nucleo/include/arduino_board.h
diff --git a/boards/nucleo-common/include/arduino_pinmap.h b/boards/common/nucleo/include/arduino_pinmap.h
similarity index 100%
rename from boards/nucleo-common/include/arduino_pinmap.h
rename to boards/common/nucleo/include/arduino_pinmap.h
diff --git a/boards/nucleo-common/include/board_common.h b/boards/common/nucleo/include/board_common.h
similarity index 100%
rename from boards/nucleo-common/include/board_common.h
rename to boards/common/nucleo/include/board_common.h
diff --git a/boards/nucleo-common/include/gpio_params.h b/boards/common/nucleo/include/gpio_params.h
similarity index 100%
rename from boards/nucleo-common/include/gpio_params.h
rename to boards/common/nucleo/include/gpio_params.h
diff --git a/boards/nucleo144-common/Makefile b/boards/common/nucleo144/Makefile
similarity index 100%
rename from boards/nucleo144-common/Makefile
rename to boards/common/nucleo144/Makefile
diff --git a/boards/nucleo144-common/Makefile.features b/boards/common/nucleo144/Makefile.features
similarity index 100%
rename from boards/nucleo144-common/Makefile.features
rename to boards/common/nucleo144/Makefile.features
diff --git a/boards/common/nucleo144/Makefile.include b/boards/common/nucleo144/Makefile.include
new file mode 100644
index 0000000000000000000000000000000000000000..64c4ada071a1665f8b4f7bdd2c407697529f4293
--- /dev/null
+++ b/boards/common/nucleo144/Makefile.include
@@ -0,0 +1,5 @@
+# include nucleo common serial configuration
+include $(RIOTBOARD)/common/nucleo/Makefile.include.serial
+
+# add the common header files to the include path
+INCLUDES += -I$(RIOTBOARD)/common/nucleo144/include
diff --git a/boards/nucleo144-common/include/arduino_board.h b/boards/common/nucleo144/include/arduino_board.h
similarity index 100%
rename from boards/nucleo144-common/include/arduino_board.h
rename to boards/common/nucleo144/include/arduino_board.h
diff --git a/boards/nucleo144-common/include/arduino_pinmap.h b/boards/common/nucleo144/include/arduino_pinmap.h
similarity index 100%
rename from boards/nucleo144-common/include/arduino_pinmap.h
rename to boards/common/nucleo144/include/arduino_pinmap.h
diff --git a/boards/nucleo144-common/include/board_common.h b/boards/common/nucleo144/include/board_common.h
similarity index 100%
rename from boards/nucleo144-common/include/board_common.h
rename to boards/common/nucleo144/include/board_common.h
diff --git a/boards/nucleo144-common/include/gpio_params.h b/boards/common/nucleo144/include/gpio_params.h
similarity index 100%
rename from boards/nucleo144-common/include/gpio_params.h
rename to boards/common/nucleo144/include/gpio_params.h
diff --git a/boards/nucleo32-common/Makefile b/boards/common/nucleo32/Makefile
similarity index 100%
rename from boards/nucleo32-common/Makefile
rename to boards/common/nucleo32/Makefile
diff --git a/boards/nucleo32-common/Makefile.features b/boards/common/nucleo32/Makefile.features
similarity index 100%
rename from boards/nucleo32-common/Makefile.features
rename to boards/common/nucleo32/Makefile.features
diff --git a/boards/common/nucleo32/Makefile.include b/boards/common/nucleo32/Makefile.include
new file mode 100644
index 0000000000000000000000000000000000000000..2e01f540c39fa204b824d2938eb2d8863469a84f
--- /dev/null
+++ b/boards/common/nucleo32/Makefile.include
@@ -0,0 +1,5 @@
+# include nucleo common serial configuration
+include $(RIOTBOARD)/common/nucleo/Makefile.include.serial
+
+# add the common header files to the include path
+INCLUDES += -I$(RIOTBOARD)/common/nucleo32/include
diff --git a/boards/nucleo32-common/include/arduino_board.h b/boards/common/nucleo32/include/arduino_board.h
similarity index 100%
rename from boards/nucleo32-common/include/arduino_board.h
rename to boards/common/nucleo32/include/arduino_board.h
diff --git a/boards/nucleo32-common/include/arduino_pinmap.h b/boards/common/nucleo32/include/arduino_pinmap.h
similarity index 100%
rename from boards/nucleo32-common/include/arduino_pinmap.h
rename to boards/common/nucleo32/include/arduino_pinmap.h
diff --git a/boards/nucleo32-common/include/board_common.h b/boards/common/nucleo32/include/board_common.h
similarity index 100%
rename from boards/nucleo32-common/include/board_common.h
rename to boards/common/nucleo32/include/board_common.h
diff --git a/boards/nucleo32-common/include/gpio_params.h b/boards/common/nucleo32/include/gpio_params.h
similarity index 100%
rename from boards/nucleo32-common/include/gpio_params.h
rename to boards/common/nucleo32/include/gpio_params.h
diff --git a/boards/iotlab-common/Makefile b/boards/common/remote/Makefile
similarity index 53%
rename from boards/iotlab-common/Makefile
rename to boards/common/remote/Makefile
index 1e821e6765d3338f7e7930fa317eb89e4ec4f76f..0bb0abf137c7a09ff2e75b7cad679ad4a7267478 100644
--- a/boards/iotlab-common/Makefile
+++ b/boards/common/remote/Makefile
@@ -1,3 +1,3 @@
-MODULE = iotlab-common
+MODULE = boards_common_remote
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/remote-common/Makefile.dep b/boards/common/remote/Makefile.dep
similarity index 100%
rename from boards/remote-common/Makefile.dep
rename to boards/common/remote/Makefile.dep
diff --git a/boards/remote-common/Makefile.include b/boards/common/remote/Makefile.include
similarity index 92%
rename from boards/remote-common/Makefile.include
rename to boards/common/remote/Makefile.include
index 9f3e9fca7621b54d86b60a8bcd18816c9650ce8e..362cd778ed05668685ede2ea31ac017de965cc9a 100644
--- a/boards/remote-common/Makefile.include
+++ b/boards/common/remote/Makefile.include
@@ -28,8 +28,8 @@ export DEBUGGER_FLAGS = $(BINDIR) $(ELFFILE)
 export RESET_FLAGS = $(BINDIR)
 export OBJDUMPFLAGS += --disassemble --source --disassembler-options=force-thumb
 
-# include remote-common includes
-export INCLUDES += -I$(RIOTBOARD)/remote-common/include
+# include common remote includes
+export INCLUDES += -I$(RIOTBOARD)/common/remote/include
 
 # setup serial terminal
 include $(RIOTMAKE)/tools/serial.inc.mk
diff --git a/boards/remote-common/dist/debug.sh b/boards/common/remote/dist/debug.sh
similarity index 100%
rename from boards/remote-common/dist/debug.sh
rename to boards/common/remote/dist/debug.sh
diff --git a/boards/remote-common/dist/flash.sh b/boards/common/remote/dist/flash.sh
similarity index 100%
rename from boards/remote-common/dist/flash.sh
rename to boards/common/remote/dist/flash.sh
diff --git a/boards/remote-common/dist/reset.sh b/boards/common/remote/dist/reset.sh
similarity index 100%
rename from boards/remote-common/dist/reset.sh
rename to boards/common/remote/dist/reset.sh
diff --git a/boards/remote-common/include/board_common.h b/boards/common/remote/include/board_common.h
similarity index 100%
rename from boards/remote-common/include/board_common.h
rename to boards/common/remote/include/board_common.h
diff --git a/boards/remote-common/include/fancy_leds.h b/boards/common/remote/include/fancy_leds.h
similarity index 100%
rename from boards/remote-common/include/fancy_leds.h
rename to boards/common/remote/include/fancy_leds.h
diff --git a/boards/remote-common/include/periph_common.h b/boards/common/remote/include/periph_common.h
similarity index 100%
rename from boards/remote-common/include/periph_common.h
rename to boards/common/remote/include/periph_common.h
diff --git a/boards/arduino-mkr-common/Makefile b/boards/common/wsn430/Makefile
similarity index 53%
rename from boards/arduino-mkr-common/Makefile
rename to boards/common/wsn430/Makefile
index 8caef4864eaa532fc91dbfc9e122d8c5f9a4c15e..68565d52e894738dc6965103002d5c29a9748845 100644
--- a/boards/arduino-mkr-common/Makefile
+++ b/boards/common/wsn430/Makefile
@@ -1,3 +1,3 @@
-MODULE = arduino-mkr-common
+MODULE = boards_common_wsn430
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/wsn430-common/Makefile.include b/boards/common/wsn430/Makefile.include
similarity index 82%
rename from boards/wsn430-common/Makefile.include
rename to boards/common/wsn430/Makefile.include
index f129be19a618d362cb4fff66a621355df0dc3df7..3d197451b76c4b326e03f300790113373d375bb1 100644
--- a/boards/wsn430-common/Makefile.include
+++ b/boards/common/wsn430/Makefile.include
@@ -13,5 +13,5 @@ export OFLAGS = -O ihex
 export FLASHER = mspdebug
 export FFLAGS = -d $(PORT) -j uif "prog $(HEXFILE)"
 
-# include wsn430-common includes
-export INCLUDES += -I$(RIOTBOARD)/wsn430-common/include
+# include common wsn430 includes
+export INCLUDES += -I$(RIOTBOARD)/common/wsn430/include
diff --git a/boards/wsn430-common/board_init.c b/boards/common/wsn430/board_init.c
similarity index 100%
rename from boards/wsn430-common/board_init.c
rename to boards/common/wsn430/board_init.c
diff --git a/boards/wsn430-common/include/board_common.h b/boards/common/wsn430/include/board_common.h
similarity index 100%
rename from boards/wsn430-common/include/board_common.h
rename to boards/common/wsn430/include/board_common.h
diff --git a/boards/wsn430-common/include/periph_conf.h b/boards/common/wsn430/include/periph_conf.h
similarity index 100%
rename from boards/wsn430-common/include/periph_conf.h
rename to boards/common/wsn430/include/periph_conf.h
diff --git a/boards/frdm-k22f/Makefile.include b/boards/frdm-k22f/Makefile.include
index d6d6feec03cdec61f4eceb5a8bae21a2e403b0fb..3b80df57d4363bbed07a23988c5e37cd6655c8f2 100644
--- a/boards/frdm-k22f/Makefile.include
+++ b/boards/frdm-k22f/Makefile.include
@@ -3,4 +3,4 @@ export CPU = kinetis
 export CPU_MODEL = mk22fn512vlh12
 
 # Include default FRDM board config
-include $(RIOTBOARD)/frdm-common/Makefile.include
+include $(RIOTBOARD)/common/frdm/Makefile.include
diff --git a/boards/frdm-k64f/Makefile.include b/boards/frdm-k64f/Makefile.include
index 0599e132bd9a82228708b7e235a963287cf96bd4..1e9a59d3a6c2d981be14569a0890da2803c63168 100644
--- a/boards/frdm-k64f/Makefile.include
+++ b/boards/frdm-k64f/Makefile.include
@@ -3,4 +3,4 @@ export CPU = kinetis
 export CPU_MODEL = mk64fn1m0vll12
 
 # Include default FRDM board config
-include $(RIOTBOARD)/frdm-common/Makefile.include
+include $(RIOTBOARD)/common/frdm/Makefile.include
diff --git a/boards/iotlab-a8-m3/Makefile b/boards/iotlab-a8-m3/Makefile
index 1e46aa27d7e14a7133bdc2caf01f00003f60b0f7..c6ebb50a7487fc469e996083ffeb007a080882ad 100644
--- a/boards/iotlab-a8-m3/Makefile
+++ b/boards/iotlab-a8-m3/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/iotlab-common
+DIRS = $(RIOTBOARD)/common/iotlab
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/iotlab-a8-m3/Makefile.dep b/boards/iotlab-a8-m3/Makefile.dep
index 784ed5a0019aba65fcd2236c375fe2d5f642c854..a8b46ed78f534f82cc6fc69c153be51c831f1faf 100644
--- a/boards/iotlab-a8-m3/Makefile.dep
+++ b/boards/iotlab-a8-m3/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/iotlab-common/Makefile.dep
+include $(RIOTBOARD)/common/iotlab/Makefile.dep
diff --git a/boards/iotlab-a8-m3/Makefile.features b/boards/iotlab-a8-m3/Makefile.features
index 6a08fbcdd3ad50c0fced01a0efd4493d7191693c..ba052b7a220f564ad66cb411530c80c19238a9ee 100644
--- a/boards/iotlab-a8-m3/Makefile.features
+++ b/boards/iotlab-a8-m3/Makefile.features
@@ -1,3 +1,3 @@
-include $(RIOTBOARD)/iotlab-common/Makefile.features
+include $(RIOTBOARD)/common/iotlab/Makefile.features
 
 -include $(RIOTCPU)/stm32f1/Makefile.features
diff --git a/boards/iotlab-a8-m3/Makefile.include b/boards/iotlab-a8-m3/Makefile.include
index 9bf181cc04afe70e996b0aec8dd52cb4e0a40381..b28dc220fbcc3d904184f182babb0039ca1e7535 100644
--- a/boards/iotlab-a8-m3/Makefile.include
+++ b/boards/iotlab-a8-m3/Makefile.include
@@ -1,6 +1,6 @@
-USEMODULE += iotlab-common
+USEMODULE += boards_common_iotlab
 
-include $(RIOTBOARD)/iotlab-common/Makefile.include
+include $(RIOTBOARD)/common/iotlab/Makefile.include
 
 # add iotlab-a8-m3 include path
 INCLUDES += -I$(RIOTBOARD)/$(BOARD)/include
diff --git a/boards/iotlab-m3/Makefile b/boards/iotlab-m3/Makefile
index 1e46aa27d7e14a7133bdc2caf01f00003f60b0f7..c6ebb50a7487fc469e996083ffeb007a080882ad 100644
--- a/boards/iotlab-m3/Makefile
+++ b/boards/iotlab-m3/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/iotlab-common
+DIRS = $(RIOTBOARD)/common/iotlab
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/iotlab-m3/Makefile.dep b/boards/iotlab-m3/Makefile.dep
index 4475ce73cc634754078422f7240e39664d861416..bb828bd7066d7ae93be1cb376567e7363e341ad0 100644
--- a/boards/iotlab-m3/Makefile.dep
+++ b/boards/iotlab-m3/Makefile.dep
@@ -1,4 +1,4 @@
-include $(RIOTBOARD)/iotlab-common/Makefile.dep
+include $(RIOTBOARD)/common/iotlab/Makefile.dep
 
 ifneq (,$(filter saul_default,$(USEMODULE)))
   USEMODULE += isl29020
diff --git a/boards/iotlab-m3/Makefile.features b/boards/iotlab-m3/Makefile.features
index 6a08fbcdd3ad50c0fced01a0efd4493d7191693c..ba052b7a220f564ad66cb411530c80c19238a9ee 100644
--- a/boards/iotlab-m3/Makefile.features
+++ b/boards/iotlab-m3/Makefile.features
@@ -1,3 +1,3 @@
-include $(RIOTBOARD)/iotlab-common/Makefile.features
+include $(RIOTBOARD)/common/iotlab/Makefile.features
 
 -include $(RIOTCPU)/stm32f1/Makefile.features
diff --git a/boards/iotlab-m3/Makefile.include b/boards/iotlab-m3/Makefile.include
index 2cf474cce5e522dd989468ae3cee58683de07a81..ec728d367a4f08e5a9103214864baa4acc5d367a 100644
--- a/boards/iotlab-m3/Makefile.include
+++ b/boards/iotlab-m3/Makefile.include
@@ -1,6 +1,6 @@
-USEMODULE += iotlab-common
+USEMODULE += boards_common_iotlab
 
-include $(RIOTBOARD)/iotlab-common/Makefile.include
+include $(RIOTBOARD)/common/iotlab/Makefile.include
 
 # add iotlab-m3 include path
 INCLUDES += -I$(RIOTBOARD)/$(BOARD)/include
diff --git a/boards/msb-430/Makefile b/boards/msb-430/Makefile
index 7746dd4dd9f1579207402398d57c46a142289838..854fb859cc9dd678725a338c4e1427ab8e704efc 100644
--- a/boards/msb-430/Makefile
+++ b/boards/msb-430/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/msb-430-common
+DIRS = $(RIOTBOARD)/common/msb-430
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/msb-430/Makefile.include b/boards/msb-430/Makefile.include
index 2f65afb5d925b39cfa35e882689216bb3cd8bc5b..92d0ca027fa16aeeb5147f565fc1375acec0a49a 100644
--- a/boards/msb-430/Makefile.include
+++ b/boards/msb-430/Makefile.include
@@ -1,2 +1,2 @@
-USEMODULE += msb-430-common
-include $(RIOTBOARD)/msb-430-common/Makefile.include
+USEMODULE += boards_common_msb-430
+include $(RIOTBOARD)/common/msb-430/Makefile.include
diff --git a/boards/msb-430h/Makefile b/boards/msb-430h/Makefile
index 7746dd4dd9f1579207402398d57c46a142289838..854fb859cc9dd678725a338c4e1427ab8e704efc 100644
--- a/boards/msb-430h/Makefile
+++ b/boards/msb-430h/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/msb-430-common
+DIRS = $(RIOTBOARD)/common/msb-430
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/msb-430h/Makefile.include b/boards/msb-430h/Makefile.include
index 2f65afb5d925b39cfa35e882689216bb3cd8bc5b..92d0ca027fa16aeeb5147f565fc1375acec0a49a 100644
--- a/boards/msb-430h/Makefile.include
+++ b/boards/msb-430h/Makefile.include
@@ -1,2 +1,2 @@
-USEMODULE += msb-430-common
-include $(RIOTBOARD)/msb-430-common/Makefile.include
+USEMODULE += boards_common_msb-430
+include $(RIOTBOARD)/common/msb-430/Makefile.include
diff --git a/boards/msba2-common/drivers/Makefile b/boards/msba2-common/drivers/Makefile
deleted file mode 100644
index 31e517aeca957625b0031a819c5cf24d66329334..0000000000000000000000000000000000000000
--- a/boards/msba2-common/drivers/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-MODULE = msba2-common-drivers
-
-include $(RIOTBASE)/Makefile.base
diff --git a/boards/msba2/Makefile b/boards/msba2/Makefile
index 5f15bf5c405cc0fd68d21bdd0a68df27ff01872e..ad7c73d4ef8657b094c9e04ef84b5b90d644c29b 100644
--- a/boards/msba2/Makefile
+++ b/boards/msba2/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/msba2-common
+DIRS = $(RIOTBOARD)/common/msba2
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/msba2/Makefile.dep b/boards/msba2/Makefile.dep
index 82bd24939dfe1b1ce936cc01f2a8f0dbbcd482ba..130eea588a8b371cc6890830398f261dab0abd3f 100644
--- a/boards/msba2/Makefile.dep
+++ b/boards/msba2/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/msba2-common/Makefile.dep
+include $(RIOTBOARD)/common/msba2/Makefile.dep
diff --git a/boards/msba2/Makefile.include b/boards/msba2/Makefile.include
index c25d470b1935dfc23eaf5213857fdc6199c46bce..b4929e955aaadf7748bad187bcf4797c0f9c8681 100644
--- a/boards/msba2/Makefile.include
+++ b/boards/msba2/Makefile.include
@@ -2,6 +2,6 @@ ifneq (,$(filter netdev_default gnrc_netdev_default,$(USEMODULE)))
   USEMODULE += cc110x
 endif
 
-USEMODULE += msba2-common
+USEMODULE += boards_common_msba2
 
-include $(RIOTBOARD)/msba2-common/Makefile.include
+include $(RIOTBOARD)/common/msba2/Makefile.include
diff --git a/boards/nucleo-common/Makefile.include b/boards/nucleo-common/Makefile.include
deleted file mode 100644
index 1d6f7deea89ad3d9d0dc53682cb1c7ec77b63b08..0000000000000000000000000000000000000000
--- a/boards/nucleo-common/Makefile.include
+++ /dev/null
@@ -1,5 +0,0 @@
-# include nucleo common serial configuration
-include $(RIOTBOARD)/nucleo-common/Makefile.include.serial
-
-# add the common header files to the include path
-INCLUDES += -I$(RIOTBOARD)/nucleo-common/include
diff --git a/boards/nucleo-f030/Makefile.dep b/boards/nucleo-f030/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-f030/Makefile.dep
+++ b/boards/nucleo-f030/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-f030/Makefile.features b/boards/nucleo-f030/Makefile.features
index ac926da1560c744d3e2df489c9907de9e9c76f12..01698fe2542fea18f3fc8941405c16f2320d2a56 100644
--- a/boards/nucleo-f030/Makefile.features
+++ b/boards/nucleo-f030/Makefile.features
@@ -7,7 +7,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m0_1
diff --git a/boards/nucleo-f030/Makefile.include b/boards/nucleo-f030/Makefile.include
index 7f46635918a62ae80e25e2df76146d7a291e0f0a..8c0f845a9aee79931c005affcabe1eb26d953e1f 100644
--- a/boards/nucleo-f030/Makefile.include
+++ b/boards/nucleo-f030/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f0
 export CPU_MODEL = stm32f030r8
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-f070/Makefile.dep b/boards/nucleo-f070/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-f070/Makefile.dep
+++ b/boards/nucleo-f070/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-f070/Makefile.features b/boards/nucleo-f070/Makefile.features
index ac926da1560c744d3e2df489c9907de9e9c76f12..01698fe2542fea18f3fc8941405c16f2320d2a56 100644
--- a/boards/nucleo-f070/Makefile.features
+++ b/boards/nucleo-f070/Makefile.features
@@ -7,7 +7,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m0_1
diff --git a/boards/nucleo-f070/Makefile.include b/boards/nucleo-f070/Makefile.include
index 02aa57f43a9c284f5fcef5abd82701b0969b8509..99e836bb77f436d948fc135d5d9b70ec479810a2 100644
--- a/boards/nucleo-f070/Makefile.include
+++ b/boards/nucleo-f070/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f0
 export CPU_MODEL = stm32f070rb
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-f072/Makefile.dep b/boards/nucleo-f072/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-f072/Makefile.dep
+++ b/boards/nucleo-f072/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-f072/Makefile.features b/boards/nucleo-f072/Makefile.features
index 51410f1e7b877a1939fa3cdc5f633b20745a6771..81e6fe26cbf274f4e77def07db8c7f65fd89ff7f 100644
--- a/boards/nucleo-f072/Makefile.features
+++ b/boards/nucleo-f072/Makefile.features
@@ -8,7 +8,7 @@ FEATURES_PROVIDED += periph_uart
 FEATURES_PROVIDED += periph_spi
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m0_1
diff --git a/boards/nucleo-f072/Makefile.include b/boards/nucleo-f072/Makefile.include
index e8fd3d77dc79aa9e4634a5c29870784552c471ed..ee50ffc82efad48b53811308eef085ea33203396 100644
--- a/boards/nucleo-f072/Makefile.include
+++ b/boards/nucleo-f072/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f0
 export CPU_MODEL = stm32f072rb
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-f091/Makefile.dep b/boards/nucleo-f091/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-f091/Makefile.dep
+++ b/boards/nucleo-f091/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-f091/Makefile.features b/boards/nucleo-f091/Makefile.features
index 51410f1e7b877a1939fa3cdc5f633b20745a6771..81e6fe26cbf274f4e77def07db8c7f65fd89ff7f 100644
--- a/boards/nucleo-f091/Makefile.features
+++ b/boards/nucleo-f091/Makefile.features
@@ -8,7 +8,7 @@ FEATURES_PROVIDED += periph_uart
 FEATURES_PROVIDED += periph_spi
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m0_1
diff --git a/boards/nucleo-f091/Makefile.include b/boards/nucleo-f091/Makefile.include
index 46a891574bd5a0fa61dd1f53ecc083e686491183..5e8cad68633165da638e02a24efe4a24dd78a27a 100644
--- a/boards/nucleo-f091/Makefile.include
+++ b/boards/nucleo-f091/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f0
 export CPU_MODEL = stm32f091rc
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-f103/Makefile.dep b/boards/nucleo-f103/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-f103/Makefile.dep
+++ b/boards/nucleo-f103/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-f103/Makefile.features b/boards/nucleo-f103/Makefile.features
index 0cc72d3f1a6e129eb349b4e449c3a599c617846a..8e8843d5e4f46fd94e87c94fdfb121a294117002 100644
--- a/boards/nucleo-f103/Makefile.features
+++ b/boards/nucleo-f103/Makefile.features
@@ -6,7 +6,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m3_1
diff --git a/boards/nucleo-f103/Makefile.include b/boards/nucleo-f103/Makefile.include
index 1fe6635a940c042a2c164af541274e4a5c6bf7de..de63a919b93f1c823bc802e100d6c4cea94ed3c8 100644
--- a/boards/nucleo-f103/Makefile.include
+++ b/boards/nucleo-f103/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f1
 export CPU_MODEL = stm32f103rb
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-f302/Makefile.dep b/boards/nucleo-f302/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-f302/Makefile.dep
+++ b/boards/nucleo-f302/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-f302/Makefile.features b/boards/nucleo-f302/Makefile.features
index 87b91a8272e5157a1e4c5e66f0a5a2a41d2781d5..d761bf567abd198dd254469cd7180568362e9e7d 100644
--- a/boards/nucleo-f302/Makefile.features
+++ b/boards/nucleo-f302/Makefile.features
@@ -8,7 +8,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_2
diff --git a/boards/nucleo-f302/Makefile.include b/boards/nucleo-f302/Makefile.include
index 249533699383118d28b3663cd52aeaa85c4301b6..6d4d2e403583fabd48ceb3d804cbea6e57d6145f 100644
--- a/boards/nucleo-f302/Makefile.include
+++ b/boards/nucleo-f302/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f3
 export CPU_MODEL = stm32f302r8
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-f303/Makefile.dep b/boards/nucleo-f303/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-f303/Makefile.dep
+++ b/boards/nucleo-f303/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-f303/Makefile.features b/boards/nucleo-f303/Makefile.features
index 87b91a8272e5157a1e4c5e66f0a5a2a41d2781d5..d761bf567abd198dd254469cd7180568362e9e7d 100644
--- a/boards/nucleo-f303/Makefile.features
+++ b/boards/nucleo-f303/Makefile.features
@@ -8,7 +8,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_2
diff --git a/boards/nucleo-f303/Makefile.include b/boards/nucleo-f303/Makefile.include
index c37c350a99e4b280caa12cf7bb55c2901e9feb88..723f72fb62cf9c4e896faa8fe9a781d1f41a99cc 100644
--- a/boards/nucleo-f303/Makefile.include
+++ b/boards/nucleo-f303/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f3
 export CPU_MODEL = stm32f303re
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-f334/Makefile.dep b/boards/nucleo-f334/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-f334/Makefile.dep
+++ b/boards/nucleo-f334/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-f334/Makefile.features b/boards/nucleo-f334/Makefile.features
index 0c6296c36121cbfa8842aa364d5f15ddf6635194..84fb8df11eff4c0d93029d1b9e35accfd6d500ce 100644
--- a/boards/nucleo-f334/Makefile.features
+++ b/boards/nucleo-f334/Makefile.features
@@ -7,7 +7,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_2
diff --git a/boards/nucleo-f334/Makefile.include b/boards/nucleo-f334/Makefile.include
index 108e9782649281c940aabafd73387d915ece378c..41809262c5278e328d3f73175a2fbffa06ccf833 100644
--- a/boards/nucleo-f334/Makefile.include
+++ b/boards/nucleo-f334/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f3
 export CPU_MODEL = stm32f334r8
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-f401/Makefile.dep b/boards/nucleo-f401/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-f401/Makefile.dep
+++ b/boards/nucleo-f401/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-f401/Makefile.features b/boards/nucleo-f401/Makefile.features
index 5f6a656dcbd13f60c75f792a468609cd36ac7414..10ffdd68dd544b5543d45d0a33d1a37efa9d959f 100644
--- a/boards/nucleo-f401/Makefile.features
+++ b/boards/nucleo-f401/Makefile.features
@@ -9,7 +9,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_3
diff --git a/boards/nucleo-f401/Makefile.include b/boards/nucleo-f401/Makefile.include
index 30cc7a5ba9b5424a2f8190ba6a79676bd929457c..4a63668cf1a881e7dcaea8f2e392d69a8960f5c1 100644
--- a/boards/nucleo-f401/Makefile.include
+++ b/boards/nucleo-f401/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f4
 export CPU_MODEL = stm32f401re
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-f410/Makefile.dep b/boards/nucleo-f410/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-f410/Makefile.dep
+++ b/boards/nucleo-f410/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-f410/Makefile.include b/boards/nucleo-f410/Makefile.include
index d79b8dfa71a87342c9b181ac67def1bf41c42478..b3d4a910d16004d303d3e85e02a6a9b6b9a1f526 100644
--- a/boards/nucleo-f410/Makefile.include
+++ b/boards/nucleo-f410/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f4
 export CPU_MODEL = stm32f410rb
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-f411/Makefile.dep b/boards/nucleo-f411/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-f411/Makefile.dep
+++ b/boards/nucleo-f411/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-f411/Makefile.include b/boards/nucleo-f411/Makefile.include
index 42b62b6cd0f1589f66cea0595ae64363ddd8d452..70a5d0a19920a69c6ec577d048144da5203d9c0a 100644
--- a/boards/nucleo-f411/Makefile.include
+++ b/boards/nucleo-f411/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f4
 export CPU_MODEL = stm32f411re
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-f446/Makefile.dep b/boards/nucleo-f446/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-f446/Makefile.dep
+++ b/boards/nucleo-f446/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-f446/Makefile.features b/boards/nucleo-f446/Makefile.features
index 5f6a656dcbd13f60c75f792a468609cd36ac7414..10ffdd68dd544b5543d45d0a33d1a37efa9d959f 100644
--- a/boards/nucleo-f446/Makefile.features
+++ b/boards/nucleo-f446/Makefile.features
@@ -9,7 +9,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_3
diff --git a/boards/nucleo-f446/Makefile.include b/boards/nucleo-f446/Makefile.include
index 00919b161654cac781f8d5dd8ea3fe840aa7ad83..332851abc34bde258025e980f5c23ad30dafc997 100644
--- a/boards/nucleo-f446/Makefile.include
+++ b/boards/nucleo-f446/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f4
 export CPU_MODEL = stm32f446re
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-l053/Makefile.dep b/boards/nucleo-l053/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-l053/Makefile.dep
+++ b/boards/nucleo-l053/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-l053/Makefile.features b/boards/nucleo-l053/Makefile.features
index fe1b576a052fa0cbfe928050bb068da2df04d76a..d785886eba1e0ef13125cd0f8357581b30a257f7 100644
--- a/boards/nucleo-l053/Makefile.features
+++ b/boards/nucleo-l053/Makefile.features
@@ -7,7 +7,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m0_1
diff --git a/boards/nucleo-l053/Makefile.include b/boards/nucleo-l053/Makefile.include
index 5128948a0e46c16cdc75f91b9f05efcdb94b0bf9..e4344de4b81507fd3a10db88904795d38c7975be 100644
--- a/boards/nucleo-l053/Makefile.include
+++ b/boards/nucleo-l053/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32l0
 export CPU_MODEL = stm32l053r8
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-l073/Makefile.dep b/boards/nucleo-l073/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-l073/Makefile.dep
+++ b/boards/nucleo-l073/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-l073/Makefile.features b/boards/nucleo-l073/Makefile.features
index 79e116343a0d329d81494b7e50c8d7cd702a6f5a..33fd602785f4a78d3912b09301e9b5117bd0d9ff 100644
--- a/boards/nucleo-l073/Makefile.features
+++ b/boards/nucleo-l073/Makefile.features
@@ -9,7 +9,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m0_1
diff --git a/boards/nucleo-l073/Makefile.include b/boards/nucleo-l073/Makefile.include
index 71759157dcff838d750a0ff7c2c49b7b29a80c0c..59447c1094729ea6b60c8e5dbc144b338eba336d 100644
--- a/boards/nucleo-l073/Makefile.include
+++ b/boards/nucleo-l073/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32l0
 export CPU_MODEL = stm32l073rz
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-l152/Makefile.dep b/boards/nucleo-l152/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-l152/Makefile.dep
+++ b/boards/nucleo-l152/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-l152/Makefile.features b/boards/nucleo-l152/Makefile.features
index 9fcf1a961713480f593ceba85a1479578c16b4b1..4bc3faf2d4d2a33dad2d355d2c1930048e17fb88 100644
--- a/boards/nucleo-l152/Makefile.features
+++ b/boards/nucleo-l152/Makefile.features
@@ -10,7 +10,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m3_2
diff --git a/boards/nucleo-l152/Makefile.include b/boards/nucleo-l152/Makefile.include
index 290208540805bcfa5861523e2b8da71f8b27c807..5ba7da128f4b1ee93cc66a0aedd2f78893a9ba0b 100644
--- a/boards/nucleo-l152/Makefile.include
+++ b/boards/nucleo-l152/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32l1
 export CPU_MODEL = stm32l152ret6
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo-l476/Makefile.dep b/boards/nucleo-l476/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo-l476/Makefile.dep
+++ b/boards/nucleo-l476/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo-l476/Makefile.features b/boards/nucleo-l476/Makefile.features
index d1a5906bc01d9e782c1df0ce48587c1186ba32cd..b4ed73641e667b5ce98e9a7fc5fac7371ad847ae 100644
--- a/boards/nucleo-l476/Makefile.features
+++ b/boards/nucleo-l476/Makefile.features
@@ -8,7 +8,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_2
diff --git a/boards/nucleo-l476/Makefile.include b/boards/nucleo-l476/Makefile.include
index 7ca5c424a26d8d59b88db269d97a5fd3e17db761..a796b9257d09905270fb4c63e4b320b15de238fc 100644
--- a/boards/nucleo-l476/Makefile.include
+++ b/boards/nucleo-l476/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32l4
 export CPU_MODEL = stm32l476rg
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo/Makefile.include
diff --git a/boards/nucleo144-common/Makefile.include b/boards/nucleo144-common/Makefile.include
deleted file mode 100644
index fd1c1a915ea5dac7a796cdcc9c72418236a6be86..0000000000000000000000000000000000000000
--- a/boards/nucleo144-common/Makefile.include
+++ /dev/null
@@ -1,5 +0,0 @@
-# include nucleo common serial configuration
-include $(RIOTBOARD)/nucleo-common/Makefile.include.serial
-
-# add the common header files to the include path
-INCLUDES += -I$(RIOTBOARD)/nucleo144-common/include
diff --git a/boards/nucleo144-f207/Makefile.dep b/boards/nucleo144-f207/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f207/Makefile.dep
+++ b/boards/nucleo144-f207/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f207/Makefile.features b/boards/nucleo144-f207/Makefile.features
index eeae79b3ad28d1da9ea720b66ba926e8cc551955..66d641cc89456cca1fbd02d0aa41bf15d10addc1 100644
--- a/boards/nucleo144-f207/Makefile.features
+++ b/boards/nucleo144-f207/Makefile.features
@@ -8,7 +8,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m3_2
diff --git a/boards/nucleo144-f207/Makefile.include b/boards/nucleo144-f207/Makefile.include
index 1c1ead3e02196216a2cd9fc356ec75a2d61bfc02..bd9a129dd79fe88e33385ee83018b0839951eb1f 100644
--- a/boards/nucleo144-f207/Makefile.include
+++ b/boards/nucleo144-f207/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f2
 export CPU_MODEL = stm32f207zg
 
 # load the common Makefile.include for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f303/Makefile.dep b/boards/nucleo144-f303/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f303/Makefile.dep
+++ b/boards/nucleo144-f303/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f303/Makefile.features b/boards/nucleo144-f303/Makefile.features
index d9a523201eecfc65c26ce5683a6dc295a80f41fa..3e90c05d1ece4e22933368a0af730a4e4a87128b 100644
--- a/boards/nucleo144-f303/Makefile.features
+++ b/boards/nucleo144-f303/Makefile.features
@@ -7,7 +7,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo 144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_3
diff --git a/boards/nucleo144-f303/Makefile.include b/boards/nucleo144-f303/Makefile.include
index 49e05545b7d02d52efc16b93f281da9691bae2ce..f805e3f6d0f48657b5cdab226e0bee2f68d645b4 100644
--- a/boards/nucleo144-f303/Makefile.include
+++ b/boards/nucleo144-f303/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f3
 export CPU_MODEL = stm32f303ze
 
 # load the common Makefile.include for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f412/Makefile.dep b/boards/nucleo144-f412/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f412/Makefile.dep
+++ b/boards/nucleo144-f412/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f412/Makefile.features b/boards/nucleo144-f412/Makefile.features
index d256e7967dc94deaba0f45d8b1b0547a83d9944b..7e81643a3eda24e2a325390f5005d0f3206bc936 100644
--- a/boards/nucleo144-f412/Makefile.features
+++ b/boards/nucleo144-f412/Makefile.features
@@ -9,7 +9,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_3
diff --git a/boards/nucleo144-f412/Makefile.include b/boards/nucleo144-f412/Makefile.include
index c97906ebe030a6bfbfcca64de548655b083e4e72..95c504d567e657f711bd572d3e72d7359c8f42bc 100644
--- a/boards/nucleo144-f412/Makefile.include
+++ b/boards/nucleo144-f412/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f4
 export CPU_MODEL = stm32f412zg
 
 # load the common Makefile.include for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f413/Makefile.dep b/boards/nucleo144-f413/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f413/Makefile.dep
+++ b/boards/nucleo144-f413/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f413/Makefile.features b/boards/nucleo144-f413/Makefile.features
index c0023b9ac2b590a7f8eb6e0638820ccc4f5cd2c0..70418687784f12dc8fc40b86af95635125454edf 100644
--- a/boards/nucleo144-f413/Makefile.features
+++ b/boards/nucleo144-f413/Makefile.features
@@ -9,7 +9,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_3
diff --git a/boards/nucleo144-f413/Makefile.include b/boards/nucleo144-f413/Makefile.include
index bb914e66f2862cd9fa598601b9ad3c58c604f558..2c9bf06919a92d9ac235b5dcef369e31726e4a41 100644
--- a/boards/nucleo144-f413/Makefile.include
+++ b/boards/nucleo144-f413/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f4
 export CPU_MODEL = stm32f413zh
 
 # load the common Makefile.include for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f429/Makefile.dep b/boards/nucleo144-f429/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f429/Makefile.dep
+++ b/boards/nucleo144-f429/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f429/Makefile.features b/boards/nucleo144-f429/Makefile.features
index c0023b9ac2b590a7f8eb6e0638820ccc4f5cd2c0..70418687784f12dc8fc40b86af95635125454edf 100644
--- a/boards/nucleo144-f429/Makefile.features
+++ b/boards/nucleo144-f429/Makefile.features
@@ -9,7 +9,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_3
diff --git a/boards/nucleo144-f429/Makefile.include b/boards/nucleo144-f429/Makefile.include
index b45202174bf4bb36d45f3a40c58d1ea51bf9ddcd..b1a0841ff6f05e60d2e5c7069cccd396658995bd 100644
--- a/boards/nucleo144-f429/Makefile.include
+++ b/boards/nucleo144-f429/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f4
 export CPU_MODEL = stm32f429zi
 
 # load the common Makefile.include for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f446/Makefile.dep b/boards/nucleo144-f446/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f446/Makefile.dep
+++ b/boards/nucleo144-f446/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f446/Makefile.features b/boards/nucleo144-f446/Makefile.features
index dbedb275574fff6ed2e7846dbaf278fd89b07f78..3c0a5eacfcf097f36fc981e8709d4d1980508f63 100644
--- a/boards/nucleo144-f446/Makefile.features
+++ b/boards/nucleo144-f446/Makefile.features
@@ -8,7 +8,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_3
diff --git a/boards/nucleo144-f446/Makefile.include b/boards/nucleo144-f446/Makefile.include
index 12efc2b3a820925a38ddf70442d8e891989da17a..4e2567a435e1e176be78bc3b0368526550dd9a85 100644
--- a/boards/nucleo144-f446/Makefile.include
+++ b/boards/nucleo144-f446/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f4
 export CPU_MODEL = stm32f446ze
 
 # load the common Makefile.include for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f722/Makefile.dep b/boards/nucleo144-f722/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f722/Makefile.dep
+++ b/boards/nucleo144-f722/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f722/Makefile.features b/boards/nucleo144-f722/Makefile.features
index 4b922dc34dad47e16046368b655b2bbd1bad1d29..1d3e51ef5036c745ce5a9878055111c3619167e8 100644
--- a/boards/nucleo144-f722/Makefile.features
+++ b/boards/nucleo144-f722/Makefile.features
@@ -5,7 +5,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m7
diff --git a/boards/nucleo144-f722/Makefile.include b/boards/nucleo144-f722/Makefile.include
index 495043d0c362815d84dc2029b8489e398fd22038..4c59a5e1ed2f119509db691210bf9749cf68ab66 100644
--- a/boards/nucleo144-f722/Makefile.include
+++ b/boards/nucleo144-f722/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f7
 export CPU_MODEL = stm32f722ze
 
 # load the common Makefile.include for Nucleo144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f746/Makefile.dep b/boards/nucleo144-f746/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f746/Makefile.dep
+++ b/boards/nucleo144-f746/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f746/Makefile.features b/boards/nucleo144-f746/Makefile.features
index 24128e83da5fb7f08ebf703c0e17f390c2700dea..ed5b86f2894fb9994a2804407fc75d50cfb6b698 100644
--- a/boards/nucleo144-f746/Makefile.features
+++ b/boards/nucleo144-f746/Makefile.features
@@ -5,7 +5,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m7
diff --git a/boards/nucleo144-f746/Makefile.include b/boards/nucleo144-f746/Makefile.include
index a588bd7dbc7143caf6ed517dea06ddce41652e41..052e2be5dd58d6133dab093bcc1c689c58a0195f 100644
--- a/boards/nucleo144-f746/Makefile.include
+++ b/boards/nucleo144-f746/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f7
 export CPU_MODEL = stm32f746zg
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f767/Makefile.dep b/boards/nucleo144-f767/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f767/Makefile.dep
+++ b/boards/nucleo144-f767/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f767/Makefile.features b/boards/nucleo144-f767/Makefile.features
index 24128e83da5fb7f08ebf703c0e17f390c2700dea..ed5b86f2894fb9994a2804407fc75d50cfb6b698 100644
--- a/boards/nucleo144-f767/Makefile.features
+++ b/boards/nucleo144-f767/Makefile.features
@@ -5,7 +5,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m7
diff --git a/boards/nucleo144-f767/Makefile.include b/boards/nucleo144-f767/Makefile.include
index caf834742beae555024910330de855d28f6468e4..fc967abf5ed81713e14a911cf0e009d1d4a4e589 100644
--- a/boards/nucleo144-f767/Makefile.include
+++ b/boards/nucleo144-f767/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f7
 export CPU_MODEL = stm32f767zi
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo32-common/Makefile.include b/boards/nucleo32-common/Makefile.include
deleted file mode 100644
index e647e4f8880c68c22c8846c209eb71a7a381c905..0000000000000000000000000000000000000000
--- a/boards/nucleo32-common/Makefile.include
+++ /dev/null
@@ -1,5 +0,0 @@
-# include nucleo common serial configuration
-include $(RIOTBOARD)/nucleo-common/Makefile.include.serial
-
-# add the common header files to the include path
-INCLUDES += -I$(RIOTBOARD)/nucleo32-common/include
diff --git a/boards/nucleo32-f031/Makefile.dep b/boards/nucleo32-f031/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo32-f031/Makefile.dep
+++ b/boards/nucleo32-f031/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo32-f031/Makefile.features b/boards/nucleo32-f031/Makefile.features
index 7513e53276abaad8b8ac2ad0cc7e5e71b0f9d949..bf8dbd4a68a95e1e5ee045b12fd1d203dea94e95 100644
--- a/boards/nucleo32-f031/Makefile.features
+++ b/boards/nucleo32-f031/Makefile.features
@@ -8,7 +8,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo-32 boards
-include $(RIOTBOARD)/nucleo32-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo32/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m0_1
diff --git a/boards/nucleo32-f031/Makefile.include b/boards/nucleo32-f031/Makefile.include
index 84e8bb7411a0b49dfee1a1b421d65b89ea2ade75..fc8437d2c264fb55df608bc23fd28760614dccc1 100644
--- a/boards/nucleo32-f031/Makefile.include
+++ b/boards/nucleo32-f031/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f0
 export CPU_MODEL = stm32f031k6
 
 # load the common Makefile.include for Nucleo-32 boards
-include $(RIOTBOARD)/nucleo32-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo32/Makefile.include
diff --git a/boards/nucleo32-f042/Makefile.dep b/boards/nucleo32-f042/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo32-f042/Makefile.dep
+++ b/boards/nucleo32-f042/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo32-f042/Makefile.features b/boards/nucleo32-f042/Makefile.features
index 7513e53276abaad8b8ac2ad0cc7e5e71b0f9d949..bf8dbd4a68a95e1e5ee045b12fd1d203dea94e95 100644
--- a/boards/nucleo32-f042/Makefile.features
+++ b/boards/nucleo32-f042/Makefile.features
@@ -8,7 +8,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo-32 boards
-include $(RIOTBOARD)/nucleo32-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo32/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m0_1
diff --git a/boards/nucleo32-f042/Makefile.include b/boards/nucleo32-f042/Makefile.include
index 907a2a48dc74dc7a08da21096b1f62827059788a..8b354ae30a75930b3aeea32d674afe00b8372838 100644
--- a/boards/nucleo32-f042/Makefile.include
+++ b/boards/nucleo32-f042/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f0
 export CPU_MODEL = stm32f042k6
 
 # load the common Makefile.include for Nucleo-32 boards
-include $(RIOTBOARD)/nucleo32-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo32/Makefile.include
diff --git a/boards/nucleo32-f303/Makefile.dep b/boards/nucleo32-f303/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo32-f303/Makefile.dep
+++ b/boards/nucleo32-f303/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo32-f303/Makefile.features b/boards/nucleo32-f303/Makefile.features
index 9f7e1e2dc14f46024760fdfdaab9c06e863c7e33..ef8701ee655c56c84b9712c94736c2f7aa422b9d 100644
--- a/boards/nucleo32-f303/Makefile.features
+++ b/boards/nucleo32-f303/Makefile.features
@@ -7,7 +7,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo-32 boards
-include $(RIOTBOARD)/nucleo32-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo32/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_2
diff --git a/boards/nucleo32-f303/Makefile.include b/boards/nucleo32-f303/Makefile.include
index b3b90180d96710fdcdc8e30814a3508e267c6a40..d253288f3ef474e3684417065da38f5a6412aaf2 100644
--- a/boards/nucleo32-f303/Makefile.include
+++ b/boards/nucleo32-f303/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f3
 export CPU_MODEL = stm32f303k8
 
 # load the common Makefile.include for Nucleo-32 boards
-include $(RIOTBOARD)/nucleo32-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo32/Makefile.include
diff --git a/boards/nucleo32-l031/Makefile.dep b/boards/nucleo32-l031/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo32-l031/Makefile.dep
+++ b/boards/nucleo32-l031/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo32-l031/Makefile.features b/boards/nucleo32-l031/Makefile.features
index 5d28613ad7fc56576e20da240829ada647fd03d0..f92958c64f57c73aa3e48db450dbca5634245dda 100644
--- a/boards/nucleo32-l031/Makefile.features
+++ b/boards/nucleo32-l031/Makefile.features
@@ -7,7 +7,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo-32 boards
-include $(RIOTBOARD)/nucleo32-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo32/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m0_1
diff --git a/boards/nucleo32-l031/Makefile.include b/boards/nucleo32-l031/Makefile.include
index 7c63ee89072da9b9d6c4443b7a3b149dec5eee98..24587304da7179b77842021f7041b42480a9e0fc 100644
--- a/boards/nucleo32-l031/Makefile.include
+++ b/boards/nucleo32-l031/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32l0
 export CPU_MODEL = stm32l031k6
 
 # load the common Makefile.include for Nucleo-32 boards
-include $(RIOTBOARD)/nucleo32-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo32/Makefile.include
diff --git a/boards/nucleo32-l432/Makefile.dep b/boards/nucleo32-l432/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo32-l432/Makefile.dep
+++ b/boards/nucleo32-l432/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo32-l432/Makefile.features b/boards/nucleo32-l432/Makefile.features
index 86a48c017a599077a7f1e7965c3ad2dbf2aafe2b..5384c09134d81d37b8ac459a95919d9913d440ca 100644
--- a/boards/nucleo32-l432/Makefile.features
+++ b/boards/nucleo32-l432/Makefile.features
@@ -7,7 +7,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo-32 boards
-include $(RIOTBOARD)/nucleo32-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo32/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_1
diff --git a/boards/nucleo32-l432/Makefile.include b/boards/nucleo32-l432/Makefile.include
index 6e441612508487d3fe40be42828ee4a0ac55cd46..e3e505bc8c5230ef6772410913bf2a679a6e1bbc 100644
--- a/boards/nucleo32-l432/Makefile.include
+++ b/boards/nucleo32-l432/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32l4
 export CPU_MODEL = stm32l432kc
 
 # load the common Makefile.include for Nucleo-32 boards
-include $(RIOTBOARD)/nucleo32-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo32/Makefile.include
diff --git a/boards/remote-pa/Makefile b/boards/remote-pa/Makefile
index 3e20e72e8c3706c97bb76678afedb902f23b7c6f..ef1d5702b0aea7d4451e5f4db8146bf4d8e1ea27 100644
--- a/boards/remote-pa/Makefile
+++ b/boards/remote-pa/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/remote-common
+DIRS = $(RIOTBOARD)/common/remote
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/remote-pa/Makefile.dep b/boards/remote-pa/Makefile.dep
index 0172ed72534ecf4cf18e5dbbfc16192204284161..d377b9a29a3fdd35f5d664b1cbf3f721d71d992b 100644
--- a/boards/remote-pa/Makefile.dep
+++ b/boards/remote-pa/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/remote-common/Makefile.dep
+include $(RIOTBOARD)/common/remote/Makefile.dep
diff --git a/boards/remote-pa/Makefile.include b/boards/remote-pa/Makefile.include
index 07172fd9c028dce0727f490b00fdc88aead43001..31ec1637b2f151c11fff96afa833ad1ff13171ab 100644
--- a/boards/remote-pa/Makefile.include
+++ b/boards/remote-pa/Makefile.include
@@ -1,7 +1,7 @@
-USEMODULE += remote-common
+USEMODULE += boards_common_remote
 
 # define the default port depending on the host OS
 PORT_LINUX  ?= /dev/ttyUSB1
 PORT_DARWIN ?= $(firstword $(sort $(wildcard /dev/tty.usbserial*)))
 
-include $(RIOTBOARD)/remote-common/Makefile.include
+include $(RIOTBOARD)/common/remote/Makefile.include
diff --git a/boards/remote-reva/Makefile b/boards/remote-reva/Makefile
index 3e20e72e8c3706c97bb76678afedb902f23b7c6f..ef1d5702b0aea7d4451e5f4db8146bf4d8e1ea27 100644
--- a/boards/remote-reva/Makefile
+++ b/boards/remote-reva/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/remote-common
+DIRS = $(RIOTBOARD)/common/remote
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/remote-reva/Makefile.dep b/boards/remote-reva/Makefile.dep
index 0172ed72534ecf4cf18e5dbbfc16192204284161..d377b9a29a3fdd35f5d664b1cbf3f721d71d992b 100644
--- a/boards/remote-reva/Makefile.dep
+++ b/boards/remote-reva/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/remote-common/Makefile.dep
+include $(RIOTBOARD)/common/remote/Makefile.dep
diff --git a/boards/remote-reva/Makefile.include b/boards/remote-reva/Makefile.include
index 9072c8412069d89fed96e8473a37897b502332c6..e51969d49ad1fbe9648e3588c6f9bb1314410d0b 100644
--- a/boards/remote-reva/Makefile.include
+++ b/boards/remote-reva/Makefile.include
@@ -1,7 +1,7 @@
-USEMODULE += remote-common
+USEMODULE += boards_common_remote
 
 # define the default port depending on the host OS
 PORT_LINUX  ?= /dev/ttyUSB0
 PORT_DARWIN ?= $(firstword $(sort $(wildcard /dev/tty.SLAB_USBtoUART*)))
 
-include $(RIOTBOARD)/remote-common/Makefile.include
+include $(RIOTBOARD)/common/remote/Makefile.include
diff --git a/boards/remote-revb/Makefile b/boards/remote-revb/Makefile
index 3e20e72e8c3706c97bb76678afedb902f23b7c6f..ef1d5702b0aea7d4451e5f4db8146bf4d8e1ea27 100644
--- a/boards/remote-revb/Makefile
+++ b/boards/remote-revb/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/remote-common
+DIRS = $(RIOTBOARD)/common/remote
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/remote-revb/Makefile.dep b/boards/remote-revb/Makefile.dep
index 0172ed72534ecf4cf18e5dbbfc16192204284161..d377b9a29a3fdd35f5d664b1cbf3f721d71d992b 100644
--- a/boards/remote-revb/Makefile.dep
+++ b/boards/remote-revb/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/remote-common/Makefile.dep
+include $(RIOTBOARD)/common/remote/Makefile.dep
diff --git a/boards/remote-revb/Makefile.include b/boards/remote-revb/Makefile.include
index 9072c8412069d89fed96e8473a37897b502332c6..e51969d49ad1fbe9648e3588c6f9bb1314410d0b 100644
--- a/boards/remote-revb/Makefile.include
+++ b/boards/remote-revb/Makefile.include
@@ -1,7 +1,7 @@
-USEMODULE += remote-common
+USEMODULE += boards_common_remote
 
 # define the default port depending on the host OS
 PORT_LINUX  ?= /dev/ttyUSB0
 PORT_DARWIN ?= $(firstword $(sort $(wildcard /dev/tty.SLAB_USBtoUART*)))
 
-include $(RIOTBOARD)/remote-common/Makefile.include
+include $(RIOTBOARD)/common/remote/Makefile.include
diff --git a/boards/wsn430-common/Makefile b/boards/wsn430-common/Makefile
deleted file mode 100644
index ffc7569b01c355b1423f0a8d1a5977d37c30616c..0000000000000000000000000000000000000000
--- a/boards/wsn430-common/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-MODULE = wsn430-common
-
-include $(RIOTBASE)/Makefile.base
diff --git a/boards/wsn430-v1_3b/Makefile b/boards/wsn430-v1_3b/Makefile
index c28e0e33e316400d0b441576b6e22bbc2caeaea5..77db0c19088c99699cd48562d89b7733acd6c217 100644
--- a/boards/wsn430-v1_3b/Makefile
+++ b/boards/wsn430-v1_3b/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/wsn430-common
+DIRS = $(RIOTBOARD)/common/wsn430
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/wsn430-v1_3b/Makefile.include b/boards/wsn430-v1_3b/Makefile.include
index be49a22db7f859fc4d5330266d12b7077f55c917..54a6472f9a8e250d0150d5f0d54afe1a17504ae8 100644
--- a/boards/wsn430-v1_3b/Makefile.include
+++ b/boards/wsn430-v1_3b/Makefile.include
@@ -1,2 +1,2 @@
-USEMODULE += wsn430-common
-include $(RIOTBOARD)/wsn430-common/Makefile.include
+USEMODULE += boards_common_wsn430
+include $(RIOTBOARD)/common/wsn430/Makefile.include
diff --git a/boards/wsn430-v1_4/Makefile b/boards/wsn430-v1_4/Makefile
index c28e0e33e316400d0b441576b6e22bbc2caeaea5..77db0c19088c99699cd48562d89b7733acd6c217 100644
--- a/boards/wsn430-v1_4/Makefile
+++ b/boards/wsn430-v1_4/Makefile
@@ -1,5 +1,5 @@
 MODULE = board
 
-DIRS = $(RIOTBOARD)/wsn430-common
+DIRS = $(RIOTBOARD)/common/wsn430
 
 include $(RIOTBASE)/Makefile.base
diff --git a/boards/wsn430-v1_4/Makefile.include b/boards/wsn430-v1_4/Makefile.include
index be49a22db7f859fc4d5330266d12b7077f55c917..54a6472f9a8e250d0150d5f0d54afe1a17504ae8 100644
--- a/boards/wsn430-v1_4/Makefile.include
+++ b/boards/wsn430-v1_4/Makefile.include
@@ -1,2 +1,2 @@
-USEMODULE += wsn430-common
-include $(RIOTBOARD)/wsn430-common/Makefile.include
+USEMODULE += boards_common_wsn430
+include $(RIOTBOARD)/common/wsn430/Makefile.include
diff --git a/dist/tools/ci/changed_files.sh b/dist/tools/ci/changed_files.sh
index 1be9a04d61f59eef79fb4b589083e59be454de25..0ee5605e64f7ae25f07e71c5a7cb6b77fafef6a0 100644
--- a/dist/tools/ci/changed_files.sh
+++ b/dist/tools/ci/changed_files.sh
@@ -8,7 +8,7 @@
 
 changed_files() {
     : ${FILEREGEX:='\.([CcHh]|[ch]pp)$'}
-    : ${EXCLUDE:='^(.+/include/vendor/|dist/tools/coccinelle/include|boards/msba2-common/tools/src)'}
+    : ${EXCLUDE:='^(.+/include/vendor/|dist/tools/coccinelle/include|boards/common/msba2/tools/src)'}
     : ${DIFFFILTER:='ACMR'}
 
     DIFFFILTER="--diff-filter=${DIFFFILTER}"
diff --git a/makefiles/info-global.inc.mk b/makefiles/info-global.inc.mk
index ba1df4fa9156c39b6246ecbaab64b6bad5a10b2e..7d27cb9016f7851df213d9114573b27fae9f07ab 100644
--- a/makefiles/info-global.inc.mk
+++ b/makefiles/info-global.inc.mk
@@ -35,7 +35,7 @@ define board_missing_features
   endif
 endef
 
-BOARDS ?= $(shell find $(RIOTBOARD)/* -maxdepth 0 -type d \! -name "*-common" -exec basename {} \;)
+BOARDS ?= $(shell find $(RIOTBOARD)/* -maxdepth 0 -type d \! -name "common" -exec basename {} \;)
 BOARDS := $(filter $(if $(BOARD_WHITELIST), $(BOARD_WHITELIST), %), $(BOARDS))
 BOARDS := $(filter-out $(BOARD_BLACKLIST), $(BOARDS))
 
diff --git a/tests/mpu_stack_guard/Makefile b/tests/mpu_stack_guard/Makefile
index 1d3264167f04b5f5b358efd97f23153fd3a6dde7..2d0323ecface5424b7c498c1abbcc085cd8c7aab 100644
--- a/tests/mpu_stack_guard/Makefile
+++ b/tests/mpu_stack_guard/Makefile
@@ -11,7 +11,8 @@ BOARD_WHITELIST += f4vi1            # cortex-m4f
 BOARD_WHITELIST += fox              # cortex-m3
 BOARD_WHITELIST += frdm-k64f        # cortex-m4
 BOARD_WHITELIST += ikea-tradfri     # cortex-m4f
-BOARD_WHITELIST += iotlab-common    # cortex-m3
+BOARD_WHITELIST += iotlab-a8-m3     # cortex-m3
+BOARD_WHITELIST += iotlab-m3        # cortex-m3
 BOARD_WHITELIST += limifrog-v1      # cortex-m3
 BOARD_WHITELIST += maple-mini       # cortex-m3
 BOARD_WHITELIST += mbed_lpc1768     # cortex-m3
diff --git a/tests/netstats_l2/Makefile b/tests/netstats_l2/Makefile
index 2cfb6cf4a7a6052a1b4be209b7fffaada95c6f12..dd5adfca9c8bca6b7b429d54c1a272782fc45fc1 100644
--- a/tests/netstats_l2/Makefile
+++ b/tests/netstats_l2/Makefile
@@ -5,7 +5,7 @@ BOARD_PROVIDES_NETIF := airfy-beacon fox iotlab-m3 mulle native nrf51dongle \
 	nrf6310 pba-d-01-kw2x samd21-xpro saml21-xpro samr21-xpro spark-core \
 	yunjia-nrf51822
 
-BOARDS ?= $(shell find $(RIOTBASE)/boards/* -maxdepth 0 -type d \! -name "*-common" -exec basename {} \;)
+BOARDS ?= $(shell find $(RIOTBASE)/boards/* -maxdepth 0 -type d \! -name "common" -exec basename {} \;)
 
 BOARD_BLACKLIST := $(filter-out $(BOARD_PROVIDES_NETIF), $(BOARDS))
 
diff --git a/tests/unittests/Makefile b/tests/unittests/Makefile
index 3ee2bdcbed7aff2b91906bc3892cc684df3222be..1225ed95c1c9c600238f3190bbe0b995b97662fc 100644
--- a/tests/unittests/Makefile
+++ b/tests/unittests/Makefile
@@ -172,7 +172,6 @@ DISABLE_TEST_FOR_AVR := tests-relic tests-cpp_%
 
 MSP430_BOARDS := chronos \
                  msb-430 \
-                 msb-430-common \
                  msb-430h \
                  telosb \
                  wsn430-v1_3b \