diff --git a/boards/x86-multiboot-common/Makefile b/boards/x86-multiboot-common/Makefile
deleted file mode 100644
index d6b64fe1d5cce161f78580e1f554a4a32ac02eca..0000000000000000000000000000000000000000
--- a/boards/x86-multiboot-common/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-MODULE = x86-multiboot-common
-
-include $(RIOTBASE)/Makefile.base
diff --git a/boards/x86-multiboot-common/Makefile.include b/boards/x86-multiboot-common/Makefile.include
deleted file mode 100644
index 1eb877a67b5f7350713c6c8cb46a3f33075b542d..0000000000000000000000000000000000000000
--- a/boards/x86-multiboot-common/Makefile.include
+++ /dev/null
@@ -1,67 +0,0 @@
-ifeq (, $(NEWLIB_BASE))
-  NEWLIB_BASE := $(RIOTBASE)/toolchain/x86/i586-none-elf
-endif
-
-ifneq (0, $(shell test -e "$(NEWLIB_BASE)/lib/libc.a" && echo $$?))
-  NEWLIB_PRECOMPILED_NAME := i586-newlib_2.2.0.20150623_tlsf-3337.tar.bz2
-  NEWLIB_PRECOMPILED := http://download.riot-os.org/$(NEWLIB_PRECOMPILED_NAME)
-  NEWLIB_PRECOMPILED_MD5 := 8090a768cf0294b259fe7ad904d085c7
-
-  $(warning Precompiled newlib is missing in $(NEWLIB_BASE))
-  $(warning Downloading from $(NEWLIB_PRECOMPILED))
-
-  $(shell cd $(RIOTBASE) && $(DLCACHE) "$(NEWLIB_PRECOMPILED)" 8090a768cf0294b259fe7ad904d085c7 - | tar xj)
-endif
-
-ifeq (,$(BUILD_INCLUDE_BASE))
-  GCC_BUILD_TRIPLET ?= $(shell gcc -dumpmachine)
-  GCC_BUILD_VERSION ?= $(shell gcc -dumpversion)
-  BUILD_INCLUDE_BASE = /usr/lib/gcc/$(GCC_BUILD_TRIPLET)/$(GCC_BUILD_VERSION)
-
-  ifeq (,$(shell echo $(GCC_BUILD_TRIPLET) | sed -e 's,-.*,,' | grep -e '\(x\|i[3-7]\)86'))
-    $(warning Your build machine is a(n) $(GCC_BUILD_TRIPLET).)
-    $(warning Since this is not IA32 compatible, you must set BUILD_INCLUDE_BASE explicitly!)
-  endif
-endif
-
-export INCLUDES += -isystem $(BUILD_INCLUDE_BASE)/include \
-                   -isystem $(NEWLIB_BASE)/include \
-                   -isystem $(NEWLIB_BASE)/sys-include \
-                   -isystem $(BUILD_INCLUDE_BASE)/include-fixed \
-                   -I$(RIOTBOARD)/x86-multiboot-common/include
-export CPU = x86
-
-# toolchain config
-export CC ?= $(PREFIX)gcc
-ifeq ($(LTO),1)
-  export AR = $(PREFIX)gcc-ar
-else
-  export AR = $(PREFIX)ar
-endif
-export AS ?= $(PREFIX)as
-export RANLIB ?= $(PREFIX)ranlib
-export LINK ?= $(RIOTBASE)/boards/x86-multiboot-common/dist/link $(PREFIX)gcc
-export SIZE ?= $(PREFIX)size
-export OBJCOPY ?= $(PREFIX)objcopy
-
-export CFLAGS += -m32 -mfpmath=387 -ffreestanding -nostdlib -nostdinc -fno-builtin
-export OFLAGS = -O binary
-
-LINKFLAGS += -m32 -nostdlib -nostdinc -nostartfiles -nodefaultlibs \
-             --prefix=$(NEWLIB_BASE) \
-             -Wl,-rpath,$(NEWLIB_BASE)/lib \
-             -T$(RIOTBASE)/boards/x86-multiboot-common/linker.ld
-
-# clean up unused functions
-export CFLAGS += -ffunction-sections -fdata-sections
-export LINKFLAGS += -Wl,--gc-sections
-
-UNDEF += $(BINDIR)/x86-multiboot-common/startup.o
-
-BASELIBS += $(NEWLIB_BASE)/lib/libc.a \
-            $(NEWLIB_BASE)/lib/libm.a
-
-all:
-
-all-debug: export CFLAGS += -ggdb3 -O0
-all-debug: all
diff --git a/boards/x86-multiboot-common/dist/link b/boards/x86-multiboot-common/dist/link
deleted file mode 100755
index 048a8c30508f485441201990663187f1f26158b0..0000000000000000000000000000000000000000
--- a/boards/x86-multiboot-common/dist/link
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/usr/bin/env bash
-
-args=($@)
-
-for ((i = 0; i < ${#args[@]}; ++i))
-do
-    if [[ "${args[i]}" == '-lm' ]]
-    then
-        unset args[i]
-        break
-    fi
-done
-
-exec "${args[@]}"
diff --git a/boards/x86-multiboot-common/include/multiboot.h b/boards/x86-multiboot-common/include/multiboot.h
deleted file mode 100644
index 09d57042b29b6b0fb03ed64d9a0b566dde5b75f4..0000000000000000000000000000000000000000
--- a/boards/x86-multiboot-common/include/multiboot.h
+++ /dev/null
@@ -1,238 +0,0 @@
-/* Copyright (C) 1999,2003,2007,2008,2009  Free Software Foundation, Inc.
- *
- *  Permission is hereby granted, free of charge, to any person obtaining a copy
- *  of this software and associated documentation files (the "Software"), to
- *  deal in the Software without restriction, including without limitation the
- *  rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- *  sell copies of the Software, and to permit persons to whom the Software is
- *  furnished to do so, subject to the following conditions:
- *
- *  The above copyright notice and this permission notice shall be included in
- *  all copies or substantial portions of the Software.
- *
- *  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- *  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- *  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL ANY
- *  DEVELOPER OR DISTRIBUTOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- *  WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
- *  IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-/**
- * @defgroup    boards_x86-multiboot i586 multiboot common
- * @ingroup     boards
- * @brief       Common files for multiboot enabled kernels
- *
- * @ingroup x86-multiboot
- * @{
- * @file
- * @brief       Architecture specific definitions for multiboot enabled kernels
- */
-
-#ifndef MULTIBOOT_H
-#define MULTIBOOT_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/** How many bytes from the start of the file we search for the header. */
-#define MULTIBOOT_SEARCH                        8192
-
-/** The flags for the Multiboot header. */
-#define MULTIBOOT_HEADER_FLAGS 0x00010003
-
-/** The magic field should contain this. */
-#define MULTIBOOT_HEADER_MAGIC                  0x1BADB002
-
-/** This should be in %eax. */
-#define MULTIBOOT_BOOTLOADER_MAGIC              0x2BADB002
-
-/** The bits in the required part of flags field we don't support. */
-#define MULTIBOOT_UNSUPPORTED                   0x0000fffc
-
-/** Alignment of multiboot modules. */
-#define MULTIBOOT_MOD_ALIGN                     0x00001000
-
-/** Alignment of the multiboot info structure. */
-#define MULTIBOOT_INFO_ALIGN                    0x00000004
-
-/** Flags set in the 'flags' member of the multiboot header. */
-
-/** Align all boot modules on i386 page (4KB) boundaries. */
-#define MULTIBOOT_PAGE_ALIGN                    0x00000001
-
-/** Must pass memory information to OS. */
-#define MULTIBOOT_MEMORY_INFO                   0x00000002
-
-/** Must pass video information to OS. */
-#define MULTIBOOT_VIDEO_MODE                    0x00000004
-
-/** This flag indicates the use of the address fields in the header. */
-#define MULTIBOOT_AOUT_KLUDGE                   0x00010000
-
-/** Flags to be set in the 'flags' member of the multiboot info structure. */
-
-/** is there basic lower/upper memory information? */
-#define MULTIBOOT_INFO_MEMORY                   0x00000001
-/** is there a boot device set? */
-#define MULTIBOOT_INFO_BOOTDEV                  0x00000002
-/** is the command-line defined? */
-#define MULTIBOOT_INFO_CMDLINE                  0x00000004
-/** are there modules to do something with? */
-#define MULTIBOOT_INFO_MODS                     0x00000008
-
-/** These next two are mutually exclusive */
-
-/** is there a symbol table loaded? */
-#define MULTIBOOT_INFO_AOUT_SYMS                0x00000010
-/** is there an ELF section header table? */
-#define MULTIBOOT_INFO_ELF_SHDR                 0X00000020
-
-/** is there a full memory map? */
-#define MULTIBOOT_INFO_MEM_MAP                  0x00000040
-
-/** Is there drive info? */
-#define MULTIBOOT_INFO_DRIVE_INFO               0x00000080
-
-/** Is there a config table? */
-#define MULTIBOOT_INFO_CONFIG_TABLE             0x00000100
-
-/** Is there a boot loader name? */
-#define MULTIBOOT_INFO_BOOT_LOADER_NAME         0x00000200
-
-/** Is there a APM table? */
-#define MULTIBOOT_INFO_APM_TABLE                0x00000400
-
-/** Is there video information? */
-#define MULTIBOOT_INFO_VIDEO_INFO               0x00000800
-
-#ifndef ASM_FILE
-
-typedef unsigned short multiboot_uint16_t;
-typedef unsigned int multiboot_uint32_t;
-typedef unsigned long long multiboot_uint64_t;
-
-typedef struct multiboot_header {
-    /** Must be MULTIBOOT_MAGIC - see above. */
-    multiboot_uint32_t magic;
-
-    /** Feature flags. */
-    multiboot_uint32_t flags;
-
-    /** The above fields plus this one must equal 0 mod 2^32. */
-    multiboot_uint32_t checksum;
-
-    /** These are only valid if MULTIBOOT_AOUT_KLUDGE is set. */
-    multiboot_uint32_t header_addr;
-    multiboot_uint32_t load_addr;
-    multiboot_uint32_t load_end_addr;
-    multiboot_uint32_t bss_end_addr;
-    multiboot_uint32_t entry_addr;
-
-    /** These are only valid if MULTIBOOT_VIDEO_MODE is set. */
-    multiboot_uint32_t mode_type;
-    multiboot_uint32_t width;
-    multiboot_uint32_t height;
-    multiboot_uint32_t depth;
-} multiboot_header_t;
-
-/** The symbol table for a.out. */
-struct multiboot_aout_symbol_table {
-    multiboot_uint32_t tabsize;
-    multiboot_uint32_t strsize;
-    multiboot_uint32_t addr;
-    multiboot_uint32_t reserved;
-};
-typedef struct multiboot_aout_symbol_table multiboot_aout_symbol_table_t;
-
-/** The section header table for ELF. */
-struct multiboot_elf_section_header_table {
-    multiboot_uint32_t num;
-    multiboot_uint32_t size;
-    multiboot_uint32_t addr;
-    multiboot_uint32_t shndx;
-};
-typedef struct multiboot_elf_section_header_table multiboot_elf_section_header_table_t;
-
-struct multiboot_info {
-    /** Multiboot info version number */
-    multiboot_uint32_t flags;
-
-    /** Available memory from BIOS */
-    multiboot_uint32_t mem_lower;
-    multiboot_uint32_t mem_upper;
-
-    /** "root" partition */
-    multiboot_uint32_t boot_device;
-
-    /** Kernel command line */
-    multiboot_uint32_t cmdline;
-
-    /** Boot-Module list */
-    multiboot_uint32_t mods_count;
-    multiboot_uint32_t mods_addr;
-
-    union {
-        multiboot_aout_symbol_table_t aout_sym;
-        multiboot_elf_section_header_table_t elf_sec;
-    } u;
-
-    /** Memory Mapping buffer */
-    multiboot_uint32_t mmap_length;
-    multiboot_uint32_t mmap_addr;
-
-    /** Drive Info buffer */
-    multiboot_uint32_t drives_length;
-    multiboot_uint32_t drives_addr;
-
-    /** ROM configuration table */
-    multiboot_uint32_t config_table;
-
-    /** Boot Loader Name */
-    multiboot_uint32_t boot_loader_name;
-
-    /** APM table */
-    multiboot_uint32_t apm_table;
-
-    /** Video */
-    multiboot_uint32_t vbe_control_info;
-    multiboot_uint32_t vbe_mode_info;
-    multiboot_uint16_t vbe_mode;
-    multiboot_uint16_t vbe_interface_seg;
-    multiboot_uint16_t vbe_interface_off;
-    multiboot_uint16_t vbe_interface_len;
-};
-typedef struct multiboot_info multiboot_info_t;
-
-struct multiboot_mmap_entry {
-    multiboot_uint32_t size;
-    multiboot_uint64_t addr;
-    multiboot_uint64_t len;
-#define MULTIBOOT_MEMORY_AVAILABLE              1
-#define MULTIBOOT_MEMORY_RESERVED               2
-    multiboot_uint32_t type;
-} __attribute__((packed));
-typedef struct multiboot_mmap_entry multiboot_memory_map_t;
-
-struct multiboot_mod_list {
-    /** the memory used goes from bytes 'mod_start' to 'mod_end-1' inclusive */
-    multiboot_uint32_t mod_start;
-    multiboot_uint32_t mod_end;
-
-    /** Module command line */
-    multiboot_uint32_t cmdline;
-
-    /** padding to take it to 16 bytes (must be zero) */
-    multiboot_uint32_t pad;
-};
-typedef struct multiboot_mod_list multiboot_module_t;
-
-#endif  /** ! ASM_FILE */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* MULTIBOOT_H */
-/** @} */
diff --git a/boards/x86-multiboot-common/linker.ld b/boards/x86-multiboot-common/linker.ld
deleted file mode 100644
index e6e1fb08b9105b1045ac91e128f17976369d9408..0000000000000000000000000000000000000000
--- a/boards/x86-multiboot-common/linker.ld
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright (C) 2014  René Kijewski  <rene.kijewski@fu-berlin.de>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
- */
-
-/* The bootloader will look at this image and start execution at the symbol
-   designated as the entry point. */
-ENTRY(_start)
-
-/* Tell where the various sections of the object files will be put in the final
-   kernel image. */
-SECTIONS
-{
-    /* Begin putting sections at 1 MiB, a conventional place for kernels to be
-       loaded at by the bootloader. */
-    . = 1M;
-    _kernel_memory_start = .;
-
-    /* First put the multiboot header, as it is required to be put very early
-       early in the image or the bootloader won't recognize the file format.
-       Next we'll put the .text section. */
-    ._multiboot_header :
-    {
-        KEEP(*(._multiboot_header))
-    }
-
-    .note.gnu.build-id :
-    {
-        *(.note.gnu.build-id)
-    }
-
-    .text :
-    {
-        . = ALIGN(4);
-        _section_text_start = .;
-
-        *(.text)
-        *(.text.*)
-
-        *(.gnu.linkonce.t)
-        *(.gnu.linkonce.t.*)
-
-        _section_text_end = .;
-    }
-    . = ALIGN(0x1000);
-
-    /* Read-only data. */
-    .rodata :
-    {
-        _section_rodata_start = .;
-
-        *(.rodata)
-        *(.rodata.*)
-
-        *(.gnu.linkonce.r)
-        *(.gnu.linkonce.r.*)
-
-        _section_rodata_end = .;
-    }
-    . = ALIGN(0x1000);
-
-    /* Read-write data (initialized) */
-    .data :
-    {
-        _section_data_start = .;
-
-        *(.data)
-        *(.data.*)
-
-        *(.gnu.linkonce.d)
-        *(.gnu.linkonce.d.*)
-
-        . = ALIGN(4);
-        _section_data_end = .;
-        /* no need to align between .data and .bss */
-    }
-
-    /* Read-write data (uninitialized) and stack */
-    .bss :
-    {
-        _section_bss_start = .;
-
-        *(COMMON)
-        *(COMMON.*)
-
-        *(.bss)
-        *(.bss.*)
-
-        *(.gnu.linkonce.b)
-        *(.gnu.linkonce.b.*)
-
-        _section_bss_end = .;
-    }
-
-    . = ALIGN(0x1000);
-    _kernel_memory_end = .;
-
-    . += 0x1000;
-    . = ALIGN(0x10000);
-    _heap_start = .;
-
-    /* The compiler may produce other sections, by default it will put them in
-       a segment with the same name. Simply add stuff here as needed. */
-}
diff --git a/boards/x86-multiboot-common/startup.c b/boards/x86-multiboot-common/startup.c
deleted file mode 100644
index d3ad80160163723aea2a56192c5d5b49fb315604..0000000000000000000000000000000000000000
--- a/boards/x86-multiboot-common/startup.c
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Copyright (C) 2014  René Kijewski  <rene.kijewski@fu-berlin.de>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
- */
-
-/**
- * @ingroup     boards_x86-multiboot
- * @{
- *
- * @file
- * @brief       Startup code to be loaded by multiboot enabled bootloaders.
- *
- * @author      René Kijewski <rene.kijewski@fu-berlin.de>
- *
- * @}
- */
-
-#include <cpu.h>
-#include <multiboot.h>
-#include <x86_kernel_memory.h>
-#include <x86_memory.h>
-#include <x86_reboot.h>
-#include <x86_videoram.h>
-
-#include <inttypes.h>
-#include <stdint.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#ifndef BREAK_STARTUP
-#   define BREAK_STARTUP (0)
-#endif
-
-static void __attribute__((noreturn)) startup(uint32_t multiboot_magic, const multiboot_info_t *multiboot_info);
-void __attribute__((noreturn, optimize("Os", "omit-frame-pointer"), no_instrument_function)) _start(void);
-
-extern const multiboot_header_t multiboot_header __attribute__((section("._multiboot_header")));
-const multiboot_header_t multiboot_header = {
-    .magic = MULTIBOOT_HEADER_MAGIC,
-    .flags = MULTIBOOT_HEADER_FLAGS,
-    .checksum = (-(MULTIBOOT_HEADER_MAGIC + MULTIBOOT_HEADER_FLAGS)),
-    .header_addr = (uintptr_t) &multiboot_header,
-    .load_addr = (uintptr_t) &_kernel_memory_start,
-    .load_end_addr = (uintptr_t) &_section_data_end,
-    .bss_end_addr = (uintptr_t) &_section_bss_end,
-    .entry_addr = (uintptr_t) &_start,
-};
-
-void __attribute__((noreturn, optimize("Os", "omit-frame-pointer"), no_instrument_function)) _start(void)
-{
-    __asm__ volatile ("xor %ebp, %ebp");
-    __asm__ volatile ("push %ebp");
-    __asm__ volatile ("push %ebx");
-    __asm__ volatile ("push %eax");
-    __asm__ volatile ("push %ebp");
-    __asm__ volatile ("jmp *%0" :: "r"(&startup));
-    __builtin_unreachable();
-}
-
-static const multiboot_info_t *multiboot_info;
-
-bool x86_get_memory_region(uint64_t *start, uint64_t *len, unsigned long *pos)
-{
-    while (1) {
-        if (*pos >= multiboot_info->mmap_length) {
-            return false;
-        }
-
-        const multiboot_memory_map_t *mmap = (void *)(multiboot_info->mmap_addr + *pos);
-        *pos += mmap->size + 4;
-
-        *start = mmap->addr;
-        *len = mmap->len;
-
-        uint64_t end = *start + *len;
-        printf("  %08lx%08lx - %08lx%08lx ", (long) (*start >> 32), (long) *start, (long) (end >> 32), (long) end);
-
-        if (mmap->type != 1) {
-            // not free (ignore reclaimable RAM)
-            const char *msg;
-            switch (mmap->type) {
-                case 2: msg = "reseved"; break;
-                case 3: msg = "ACPI [reclaimable]"; break;
-                case 4: msg = "ACPI [NVS]"; break;
-                case 5: msg = "bad memory"; break;
-                default: msg = "unknown";
-            }
-            printf("(unusable: %s)\r\n", msg);
-        }
-        else {
-            puts("(usable)");
-            return true;
-        }
-    }
-}
-
-static void have_a_break(void)
-{
-    volatile bool cnt = false;
-    while (!cnt) {
-        __asm__ volatile ("pause");
-    }
-}
-
-static void __attribute__((noreturn)) startup(uint32_t multiboot_magic, const multiboot_info_t *multiboot_info_)
-{
-    x86_init_gdt(); /* load GDT early */
-    x86_load_empty_idt(); /* just a safeguard to cause a tripple fault, not really needed */
-
-#if BREAK_STARTUP
-    have_a_break();
-#else
-    (void) have_a_break;
-#endif
-
-    memset(&_section_bss_start, 0, &_section_bss_end - &_section_bss_start + 1);
-
-    videoram_puts(" Booting RIOT \r\n");
-    if (multiboot_magic != MULTIBOOT_BOOTLOADER_MAGIC) {
-        videoram_puts(" Multiboot magic is wrong \r\n");
-        x86_hlt();
-    }
-    else if (!(multiboot_info->flags && MULTIBOOT_INFO_MEM_MAP)) {
-        videoram_puts(" Multiboot is lacking memory map information \r\n");
-        x86_hlt();
-    }
-
-    multiboot_info = multiboot_info_;
-    x86_startup();
-}