diff --git a/repos/base-fiasco/lib/mk/base-common.mk b/repos/base-fiasco/lib/mk/base-common.mk
index 517eed8409..025423b27f 100644
--- a/repos/base-fiasco/lib/mk/base-common.mk
+++ b/repos/base-fiasco/lib/mk/base-common.mk
@@ -26,6 +26,6 @@ SRC_CC += thread/context_allocator.cc
INC_DIR += $(REP_DIR)/src/base/lock
INC_DIR += $(BASE_DIR)/src/base/thread
-vpath cap_copy.cc $(BASE_DIR)/src/platform
+vpath cap_copy.cc $(BASE_DIR)/src/lib/startup
vpath %.cc $(REP_DIR)/src/base
vpath %.cc $(BASE_DIR)/src/base
diff --git a/repos/base-fiasco/lib/mk/x86/platform.mk b/repos/base-fiasco/lib/mk/spec/x86/platform.mk
similarity index 100%
rename from repos/base-fiasco/lib/mk/x86/platform.mk
rename to repos/base-fiasco/lib/mk/spec/x86/platform.mk
diff --git a/repos/base-fiasco/mk/spec-platform_imx.mk b/repos/base-fiasco/mk/spec-platform_imx.mk
deleted file mode 100644
index 61e45889db..0000000000
--- a/repos/base-fiasco/mk/spec-platform_imx.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-#
-# Specifics for Freescale i.MX21 platform
-#
-
-RAM_BASE = 0xc0000000
-
-#
-# Configure target CPU for gcc
-#
-CC_OPT += -march=armv5
-
-#
-# Defines for L4/sys headers
-#
-CC_OPT += -DCPUTYPE_imx
-L4SYS_ARM_CPU = arm_imx
diff --git a/repos/base-fiasco/mk/spec-platform_integrator.mk b/repos/base-fiasco/mk/spec-platform_integrator.mk
deleted file mode 100644
index a6bb3dba08..0000000000
--- a/repos/base-fiasco/mk/spec-platform_integrator.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-#
-# Specifics for ARM integrator platform
-#
-
-#
-# Configure target CPU for gcc
-#
-CC_OPT += -march=armv5
-
-#
-# Defines for L4/sys headers
-#
-CC_OPT += -DCPUTYPE_int
-L4SYS_ARM_CPU = arm_int
diff --git a/repos/base-fiasco/mk/spec-platform_mmsp2.mk b/repos/base-fiasco/mk/spec-platform_mmsp2.mk
deleted file mode 100644
index 0cba20187e..0000000000
--- a/repos/base-fiasco/mk/spec-platform_mmsp2.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-#
-# Specifics for MagicEyes Digital’s Multimedia Signal Processor
-#
-
-#
-# Configure target CPU for gcc
-#
-CC_OPT += -march=armv4t
-
-#
-# Defines for L4/sys headers
-#
-CC_OPT += -DCPUTYPE_mmsp2
-L4SYS_ARM_CPU = arm_mmsp2
diff --git a/repos/base-fiasco/mk/spec-fiasco.mk b/repos/base-fiasco/mk/spec/fiasco.mk
similarity index 100%
rename from repos/base-fiasco/mk/spec-fiasco.mk
rename to repos/base-fiasco/mk/spec/fiasco.mk
diff --git a/repos/base-fiasco/mk/spec-fiasco_x86.mk b/repos/base-fiasco/mk/spec/fiasco_x86.mk
similarity index 76%
rename from repos/base-fiasco/mk/spec-fiasco_x86.mk
rename to repos/base-fiasco/mk/spec/fiasco_x86.mk
index 09e5c89907..4f55d30509 100644
--- a/repos/base-fiasco/mk/spec-fiasco_x86.mk
+++ b/repos/base-fiasco/mk/spec/fiasco_x86.mk
@@ -19,7 +19,7 @@ LD_TEXT_ADDR ?= 0x01000000
#
# Also include less-specific configuration last
#
-include $(call select_from_repositories,mk/spec-x86_32.mk)
-include $(call select_from_repositories,mk/spec-fiasco.mk)
+include $(call select_from_repositories,mk/spec/x86_32.mk)
+include $(call select_from_repositories,mk/spec/fiasco.mk)
INC_DIR += $(L4_INC_DIR)
diff --git a/repos/base-fiasco/src/core/x86/platform_x86.cc b/repos/base-fiasco/src/core/spec/x86/platform_x86.cc
similarity index 100%
rename from repos/base-fiasco/src/core/x86/platform_x86.cc
rename to repos/base-fiasco/src/core/spec/x86/platform_x86.cc
diff --git a/repos/base-fiasco/src/core/spec/x86/target.mk b/repos/base-fiasco/src/core/spec/x86/target.mk
new file mode 100644
index 0000000000..0cb8c5da89
--- /dev/null
+++ b/repos/base-fiasco/src/core/spec/x86/target.mk
@@ -0,0 +1,8 @@
+include $(PRG_DIR)/../../target.inc
+
+REQUIRES += x86
+SRC_CC += platform_x86.cc
+
+vpath io_port_session_component.cc $(GEN_CORE_DIR)/spec/x86
+vpath platform_services.cc $(GEN_CORE_DIR)/spec/x86
+
diff --git a/repos/base-fiasco/src/core/x86/target.mk b/repos/base-fiasco/src/core/x86/target.mk
deleted file mode 100644
index 1638edf739..0000000000
--- a/repos/base-fiasco/src/core/x86/target.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-include $(PRG_DIR)/../target.inc
-
-REQUIRES += x86
-SRC_CC += platform_x86.cc
-
-vpath io_port_session_component.cc $(GEN_CORE_DIR)/x86
-vpath platform_services.cc $(GEN_CORE_DIR)/x86
-
diff --git a/repos/base-fiasco/src/kernel/x86/target.mk b/repos/base-fiasco/src/kernel/spec/x86/target.mk
similarity index 68%
rename from repos/base-fiasco/src/kernel/x86/target.mk
rename to repos/base-fiasco/src/kernel/spec/x86/target.mk
index 8bf4175e6e..7e5a59d431 100644
--- a/repos/base-fiasco/src/kernel/x86/target.mk
+++ b/repos/base-fiasco/src/kernel/spec/x86/target.mk
@@ -1,4 +1,4 @@
REQUIRES = x86 32bit
KERNEL_CONFIG = $(REP_DIR)/config/kernel-config.x86
--include $(PRG_DIR)/../target.inc
+-include $(PRG_DIR)/../../target.inc
diff --git a/repos/base-foc/include/arm/base/native_config.h b/repos/base-foc/include/spec/arm/base/native_config.h
similarity index 100%
rename from repos/base-foc/include/arm/base/native_config.h
rename to repos/base-foc/include/spec/arm/base/native_config.h
diff --git a/repos/base-foc/include/x86/base/native_config.h b/repos/base-foc/include/spec/x86/base/native_config.h
similarity index 100%
rename from repos/base-foc/include/x86/base/native_config.h
rename to repos/base-foc/include/spec/x86/base/native_config.h
diff --git a/repos/base-foc/lib/mk/arm/platform.inc b/repos/base-foc/lib/mk/spec/arm/platform.inc
similarity index 100%
rename from repos/base-foc/lib/mk/arm/platform.inc
rename to repos/base-foc/lib/mk/spec/arm/platform.inc
diff --git a/repos/base-foc/lib/mk/arm/syscall.mk b/repos/base-foc/lib/mk/spec/arm/syscall.mk
similarity index 100%
rename from repos/base-foc/lib/mk/arm/syscall.mk
rename to repos/base-foc/lib/mk/spec/arm/syscall.mk
diff --git a/repos/base-foc/lib/mk/platform_arndale/platform.mk b/repos/base-foc/lib/mk/spec/arndale/platform.mk
similarity index 75%
rename from repos/base-foc/lib/mk/platform_arndale/platform.mk
rename to repos/base-foc/lib/mk/spec/arndale/platform.mk
index 8ca7dd94d6..4902c1ce5a 100644
--- a/repos/base-foc/lib/mk/platform_arndale/platform.mk
+++ b/repos/base-foc/lib/mk/spec/arndale/platform.mk
@@ -3,4 +3,4 @@
#
L4_CONFIG = $(call select_from_repositories,config/arndale.user)
-include $(REP_DIR)/lib/mk/arm/platform.inc
+include $(REP_DIR)/lib/mk/spec/arm/platform.inc
diff --git a/repos/base-foc/lib/mk/platform_imx53/platform.mk b/repos/base-foc/lib/mk/spec/imx53/platform.mk
similarity index 75%
rename from repos/base-foc/lib/mk/platform_imx53/platform.mk
rename to repos/base-foc/lib/mk/spec/imx53/platform.mk
index 522bf1325e..d16e4660fb 100644
--- a/repos/base-foc/lib/mk/platform_imx53/platform.mk
+++ b/repos/base-foc/lib/mk/spec/imx53/platform.mk
@@ -3,4 +3,4 @@
#
L4_CONFIG = $(call select_from_repositories,config/imx53.user)
-include $(REP_DIR)/lib/mk/arm/platform.inc
+include $(REP_DIR)/lib/mk/spec/arm/platform.inc
diff --git a/repos/base-foc/lib/mk/platform_odroid_x2/platform.mk b/repos/base-foc/lib/mk/spec/odroid_x2/platform.mk
similarity index 75%
rename from repos/base-foc/lib/mk/platform_odroid_x2/platform.mk
rename to repos/base-foc/lib/mk/spec/odroid_x2/platform.mk
index 8f07c022ca..37ec97cbfa 100644
--- a/repos/base-foc/lib/mk/platform_odroid_x2/platform.mk
+++ b/repos/base-foc/lib/mk/spec/odroid_x2/platform.mk
@@ -3,4 +3,4 @@
#
L4_CONFIG = $(call select_from_repositories,config/odroid_x2.user)
-include $(REP_DIR)/lib/mk/arm/platform.inc
+include $(REP_DIR)/lib/mk/spec/arm/platform.inc
diff --git a/repos/base-foc/lib/mk/platform_panda/platform.mk b/repos/base-foc/lib/mk/spec/panda/platform.mk
similarity index 75%
rename from repos/base-foc/lib/mk/platform_panda/platform.mk
rename to repos/base-foc/lib/mk/spec/panda/platform.mk
index 21f7e22886..0a02bcadda 100644
--- a/repos/base-foc/lib/mk/platform_panda/platform.mk
+++ b/repos/base-foc/lib/mk/spec/panda/platform.mk
@@ -3,4 +3,4 @@
#
L4_CONFIG = $(call select_from_repositories,config/panda.user)
-include $(REP_DIR)/lib/mk/arm/platform.inc
+include $(REP_DIR)/lib/mk/spec/arm/platform.inc
diff --git a/repos/base-foc/lib/mk/platform_pbxa9/platform.mk b/repos/base-foc/lib/mk/spec/pbxa9/platform.mk
similarity index 75%
rename from repos/base-foc/lib/mk/platform_pbxa9/platform.mk
rename to repos/base-foc/lib/mk/spec/pbxa9/platform.mk
index 0b2f5e7af9..f36ad9337c 100644
--- a/repos/base-foc/lib/mk/platform_pbxa9/platform.mk
+++ b/repos/base-foc/lib/mk/spec/pbxa9/platform.mk
@@ -3,4 +3,4 @@
#
L4_CONFIG = $(call select_from_repositories,config/pbxa9.user)
-include $(REP_DIR)/lib/mk/arm/platform.inc
+include $(REP_DIR)/lib/mk/spec/arm/platform.inc
diff --git a/repos/base-foc/lib/mk/platform_rpi/platform.mk b/repos/base-foc/lib/mk/spec/rpi/platform.mk
similarity index 75%
rename from repos/base-foc/lib/mk/platform_rpi/platform.mk
rename to repos/base-foc/lib/mk/spec/rpi/platform.mk
index f3b83ae2a5..f2cf8f7964 100644
--- a/repos/base-foc/lib/mk/platform_rpi/platform.mk
+++ b/repos/base-foc/lib/mk/spec/rpi/platform.mk
@@ -3,4 +3,4 @@
#
L4_CONFIG = $(call select_from_repositories,config/rpi.user)
-include $(REP_DIR)/lib/mk/arm/platform.inc
\ No newline at end of file
+include $(REP_DIR)/lib/mk/spec/arm/platform.inc
diff --git a/repos/base-foc/lib/mk/x86/syscall.mk b/repos/base-foc/lib/mk/spec/x86/syscall.mk
similarity index 100%
rename from repos/base-foc/lib/mk/x86/syscall.mk
rename to repos/base-foc/lib/mk/spec/x86/syscall.mk
diff --git a/repos/base-foc/lib/mk/x86_32/platform.mk b/repos/base-foc/lib/mk/spec/x86_32/platform.mk
similarity index 100%
rename from repos/base-foc/lib/mk/x86_32/platform.mk
rename to repos/base-foc/lib/mk/spec/x86_32/platform.mk
diff --git a/repos/base-foc/lib/mk/x86_64/platform.mk b/repos/base-foc/lib/mk/spec/x86_64/platform.mk
similarity index 100%
rename from repos/base-foc/lib/mk/x86_64/platform.mk
rename to repos/base-foc/lib/mk/spec/x86_64/platform.mk
diff --git a/repos/base-foc/mk/spec-foc_arndale.mk b/repos/base-foc/mk/spec-foc_arndale.mk
deleted file mode 100644
index 2fd6908f77..0000000000
--- a/repos/base-foc/mk/spec-foc_arndale.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-SPECS += foc_arm platform_arndale
-
-include $(call select_from_repositories,mk/spec-fpu_vfpv3.mk)
-include $(call select_from_repositories,mk/spec-platform_arndale.mk)
-include $(call select_from_repositories,mk/spec-foc_arm.mk)
diff --git a/repos/base-foc/mk/spec-foc_imx53.mk b/repos/base-foc/mk/spec-foc_imx53.mk
deleted file mode 100644
index 937651f793..0000000000
--- a/repos/base-foc/mk/spec-foc_imx53.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-SPECS += foc_arm platform_imx53
-
-REP_INC_DIR += include/platform/imx53_qsb
-
-include $(call select_from_repositories,mk/spec-platform_imx53.mk)
-include $(call select_from_repositories,mk/spec-foc_arm.mk)
diff --git a/repos/base-foc/mk/spec-foc_odroid_x2.mk b/repos/base-foc/mk/spec-foc_odroid_x2.mk
deleted file mode 100644
index 276c21b184..0000000000
--- a/repos/base-foc/mk/spec-foc_odroid_x2.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-SPECS += foc_arm platform_odroid_x2
-
-include $(call select_from_repositories,mk/spec-platform_odroid_x2.mk)
-include $(call select_from_repositories,mk/spec-foc_arm.mk)
diff --git a/repos/base-foc/mk/spec-foc_panda.mk b/repos/base-foc/mk/spec-foc_panda.mk
deleted file mode 100644
index 4a0f70bf4d..0000000000
--- a/repos/base-foc/mk/spec-foc_panda.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-SPECS += foc_arm platform_panda
-
-include $(call select_from_repositories,mk/spec-platform_panda.mk)
-include $(call select_from_repositories,mk/spec-foc_arm.mk)
diff --git a/repos/base-foc/mk/spec-foc_pbxa9.mk b/repos/base-foc/mk/spec-foc_pbxa9.mk
deleted file mode 100644
index eec6e570e7..0000000000
--- a/repos/base-foc/mk/spec-foc_pbxa9.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-SPECS += foc_arm platform_pbxa9
-
-include $(call select_from_repositories,mk/spec-platform_pbxa9.mk)
-include $(call select_from_repositories,mk/spec-foc_arm.mk)
diff --git a/repos/base-foc/mk/spec-foc_rpi.mk b/repos/base-foc/mk/spec-foc_rpi.mk
deleted file mode 100644
index 77a3726736..0000000000
--- a/repos/base-foc/mk/spec-foc_rpi.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-SPECS += foc_arm platform_rpi
-
-include $(call select_from_repositories,mk/spec-platform_rpi.mk)
-include $(call select_from_repositories,mk/spec-foc_arm.mk)
diff --git a/repos/base-foc/mk/spec-foc.mk b/repos/base-foc/mk/spec/foc.mk
similarity index 100%
rename from repos/base-foc/mk/spec-foc.mk
rename to repos/base-foc/mk/spec/foc.mk
diff --git a/repos/base-foc/mk/spec-foc_arm.mk b/repos/base-foc/mk/spec/foc_arm.mk
similarity index 78%
rename from repos/base-foc/mk/spec-foc_arm.mk
rename to repos/base-foc/mk/spec/foc_arm.mk
index 312e8aa019..d605a1e0fc 100644
--- a/repos/base-foc/mk/spec-foc_arm.mk
+++ b/repos/base-foc/mk/spec/foc_arm.mk
@@ -15,11 +15,6 @@ LD_TEXT_ADDR ?= 0x01000000
L4_INC_DIR = $(BUILD_BASE_DIR)/include/arm
L4F_INC_DIR = $(BUILD_BASE_DIR)/include/arm/l4f
-#
-# Support for Fiasco.OC's ARM-specific atomic functions
-#
-REP_INC_DIR += include/arm
-
#
# Defines for L4/sys headers
#
@@ -32,6 +27,6 @@ L4_INC_TARGETS = arm/l4/sys \
arm/l4f/l4/sys \
arm/l4/vcpu
-include $(call select_from_repositories,mk/spec-foc.mk)
+include $(call select_from_repositories,mk/spec/foc.mk)
INC_DIR += $(L4F_INC_DIR) $(L4_INC_DIR)
diff --git a/repos/base-foc/mk/spec/foc_arndale.mk b/repos/base-foc/mk/spec/foc_arndale.mk
new file mode 100644
index 0000000000..22d37dca80
--- /dev/null
+++ b/repos/base-foc/mk/spec/foc_arndale.mk
@@ -0,0 +1,5 @@
+SPECS += foc_arm arndale
+
+include $(call select_from_repositories,mk/spec/fpu_vfpv3.mk)
+include $(call select_from_repositories,mk/spec/arndale.mk)
+include $(call select_from_repositories,mk/spec/foc_arm.mk)
diff --git a/repos/base-foc/mk/spec/foc_imx53.mk b/repos/base-foc/mk/spec/foc_imx53.mk
new file mode 100644
index 0000000000..936723a54e
--- /dev/null
+++ b/repos/base-foc/mk/spec/foc_imx53.mk
@@ -0,0 +1,7 @@
+SPECS += foc_arm imx53 imx53_qsb
+
+# add repository relative include paths
+REP_INC_DIR += include/spec/imx53_qsb
+
+include $(call select_from_repositories,mk/spec/imx53.mk)
+include $(call select_from_repositories,mk/spec/foc_arm.mk)
diff --git a/repos/base-foc/mk/spec/foc_odroid_x2.mk b/repos/base-foc/mk/spec/foc_odroid_x2.mk
new file mode 100644
index 0000000000..53b5113f7c
--- /dev/null
+++ b/repos/base-foc/mk/spec/foc_odroid_x2.mk
@@ -0,0 +1,4 @@
+SPECS += foc_arm odroid_x2
+
+include $(call select_from_repositories,mk/spec/odroid_x2.mk)
+include $(call select_from_repositories,mk/spec/foc_arm.mk)
diff --git a/repos/base-foc/mk/spec/foc_panda.mk b/repos/base-foc/mk/spec/foc_panda.mk
new file mode 100644
index 0000000000..1df406127f
--- /dev/null
+++ b/repos/base-foc/mk/spec/foc_panda.mk
@@ -0,0 +1,4 @@
+SPECS += foc_arm panda
+
+include $(call select_from_repositories,mk/spec/panda.mk)
+include $(call select_from_repositories,mk/spec/foc_arm.mk)
diff --git a/repos/base-foc/mk/spec/foc_pbxa9.mk b/repos/base-foc/mk/spec/foc_pbxa9.mk
new file mode 100644
index 0000000000..45c627d33f
--- /dev/null
+++ b/repos/base-foc/mk/spec/foc_pbxa9.mk
@@ -0,0 +1,4 @@
+SPECS += foc_arm pbxa9
+
+include $(call select_from_repositories,mk/spec/pbxa9.mk)
+include $(call select_from_repositories,mk/spec/foc_arm.mk)
diff --git a/repos/base-foc/mk/spec/foc_rpi.mk b/repos/base-foc/mk/spec/foc_rpi.mk
new file mode 100644
index 0000000000..2c8202975e
--- /dev/null
+++ b/repos/base-foc/mk/spec/foc_rpi.mk
@@ -0,0 +1,4 @@
+SPECS += foc_arm rpi
+
+include $(call select_from_repositories,mk/spec/rpi.mk)
+include $(call select_from_repositories,mk/spec/foc_arm.mk)
diff --git a/repos/base-foc/mk/spec-foc_x86_32.mk b/repos/base-foc/mk/spec/foc_x86_32.mk
similarity index 76%
rename from repos/base-foc/mk/spec-foc_x86_32.mk
rename to repos/base-foc/mk/spec/foc_x86_32.mk
index 8f71a03e8e..b110cc7f74 100644
--- a/repos/base-foc/mk/spec-foc_x86_32.mk
+++ b/repos/base-foc/mk/spec/foc_x86_32.mk
@@ -19,7 +19,7 @@ L4F_INC_DIR = $(BUILD_BASE_DIR)/include/x86/l4f
#
# Also include less-specific configuration last
#
-include $(call select_from_repositories,mk/spec-x86_32.mk)
-include $(call select_from_repositories,mk/spec-foc.mk)
+include $(call select_from_repositories,mk/spec/x86_32.mk)
+include $(call select_from_repositories,mk/spec/foc.mk)
INC_DIR += $(L4F_INC_DIR) $(L4_INC_DIR)
diff --git a/repos/base-foc/mk/spec-foc_x86_64.mk b/repos/base-foc/mk/spec/foc_x86_64.mk
similarity index 78%
rename from repos/base-foc/mk/spec-foc_x86_64.mk
rename to repos/base-foc/mk/spec/foc_x86_64.mk
index d2ef268297..cd9b8d52c0 100644
--- a/repos/base-foc/mk/spec-foc_x86_64.mk
+++ b/repos/base-foc/mk/spec/foc_x86_64.mk
@@ -24,7 +24,7 @@ CC_OPT += -m64
#
# Also include less-specific configuration last
#
-include $(call select_from_repositories,mk/spec-x86_64.mk)
-include $(call select_from_repositories,mk/spec-foc.mk)
+include $(call select_from_repositories,mk/spec/x86_64.mk)
+include $(call select_from_repositories,mk/spec/foc.mk)
INC_DIR += $(L4F_INC_DIR) $(L4_INC_DIR)
diff --git a/repos/base-foc/src/core/rpi/target.mk b/repos/base-foc/src/core/rpi/target.mk
deleted file mode 100644
index 6b42bad714..0000000000
--- a/repos/base-foc/src/core/rpi/target.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-REQUIRES += foc_rpi
-LD_TEXT_ADDR ?= 0x800000
-
-include $(REP_DIR)/src/core/arm/target.inc
-
diff --git a/repos/base-foc/src/core/arm/ipc_pager.cc b/repos/base-foc/src/core/spec/arm/ipc_pager.cc
similarity index 100%
rename from repos/base-foc/src/core/arm/ipc_pager.cc
rename to repos/base-foc/src/core/spec/arm/ipc_pager.cc
diff --git a/repos/base-foc/src/core/arm/platform_arm.cc b/repos/base-foc/src/core/spec/arm/platform_arm.cc
similarity index 100%
rename from repos/base-foc/src/core/arm/platform_arm.cc
rename to repos/base-foc/src/core/spec/arm/platform_arm.cc
diff --git a/repos/base-foc/src/core/arm/target.inc b/repos/base-foc/src/core/spec/arm/target.inc
similarity index 57%
rename from repos/base-foc/src/core/arm/target.inc
rename to repos/base-foc/src/core/spec/arm/target.inc
index 04bc355c53..cc0187d135 100644
--- a/repos/base-foc/src/core/arm/target.inc
+++ b/repos/base-foc/src/core/spec/arm/target.inc
@@ -1,6 +1,6 @@
REQUIRES += arm
-SRC_CC += arm/platform_arm.cc \
- arm/ipc_pager.cc
+SRC_CC += spec/arm/platform_arm.cc \
+ spec/arm/ipc_pager.cc
include $(REP_DIR)/src/core/target.inc
diff --git a/repos/base-foc/src/core/arndale/target.mk b/repos/base-foc/src/core/spec/arndale/target.mk
similarity index 52%
rename from repos/base-foc/src/core/arndale/target.mk
rename to repos/base-foc/src/core/spec/arndale/target.mk
index fa429be73f..dd78d5799f 100644
--- a/repos/base-foc/src/core/arndale/target.mk
+++ b/repos/base-foc/src/core/spec/arndale/target.mk
@@ -1,4 +1,4 @@
LD_TEXT_ADDR = 0x80100000
REQUIRES += foc_arndale
-include $(REP_DIR)/src/core/arm/target.inc
+include $(REP_DIR)/src/core/spec/arm/target.inc
diff --git a/repos/base-foc/src/core/imx53/target.mk b/repos/base-foc/src/core/spec/imx53/target.mk
similarity index 52%
rename from repos/base-foc/src/core/imx53/target.mk
rename to repos/base-foc/src/core/spec/imx53/target.mk
index b7772af4ec..d0f262dad6 100644
--- a/repos/base-foc/src/core/imx53/target.mk
+++ b/repos/base-foc/src/core/spec/imx53/target.mk
@@ -1,4 +1,4 @@
LD_TEXT_ADDR = 0x70140000
REQUIRES += foc_imx53
-include $(REP_DIR)/src/core/arm/target.inc
+include $(REP_DIR)/src/core/spec/arm/target.inc
diff --git a/repos/base-foc/src/core/odroid_x2/target.mk b/repos/base-foc/src/core/spec/odroid_x2/target.mk
similarity index 52%
rename from repos/base-foc/src/core/odroid_x2/target.mk
rename to repos/base-foc/src/core/spec/odroid_x2/target.mk
index e10ba01bc9..6e50fe2ed1 100644
--- a/repos/base-foc/src/core/odroid_x2/target.mk
+++ b/repos/base-foc/src/core/spec/odroid_x2/target.mk
@@ -1,4 +1,4 @@
LD_TEXT_ADDR = 0x80100000
REQUIRES += foc_odroid_x2
-include $(REP_DIR)/src/core/arm/target.inc
+include $(REP_DIR)/src/core/spec/arm/target.inc
diff --git a/repos/base-foc/src/core/panda/target.mk b/repos/base-foc/src/core/spec/panda/target.mk
similarity index 52%
rename from repos/base-foc/src/core/panda/target.mk
rename to repos/base-foc/src/core/spec/panda/target.mk
index 72b633b348..261c6498c8 100644
--- a/repos/base-foc/src/core/panda/target.mk
+++ b/repos/base-foc/src/core/spec/panda/target.mk
@@ -1,4 +1,4 @@
LD_TEXT_ADDR = 0x80140000
REQUIRES += foc_panda
-include $(REP_DIR)/src/core/arm/target.inc
+include $(REP_DIR)/src/core/spec/arm/target.inc
diff --git a/repos/base-foc/src/core/pbxa9/target.mk b/repos/base-foc/src/core/spec/pbxa9/target.mk
similarity index 52%
rename from repos/base-foc/src/core/pbxa9/target.mk
rename to repos/base-foc/src/core/spec/pbxa9/target.mk
index 62475b338d..2503f11d91 100644
--- a/repos/base-foc/src/core/pbxa9/target.mk
+++ b/repos/base-foc/src/core/spec/pbxa9/target.mk
@@ -1,4 +1,4 @@
LD_TEXT_ADDR = 0x70490000
REQUIRES += foc_pbxa9
-include $(REP_DIR)/src/core/arm/target.inc
+include $(REP_DIR)/src/core/spec/arm/target.inc
diff --git a/repos/base-foc/src/core/spec/rpi/target.mk b/repos/base-foc/src/core/spec/rpi/target.mk
new file mode 100644
index 0000000000..e5b98dfbb0
--- /dev/null
+++ b/repos/base-foc/src/core/spec/rpi/target.mk
@@ -0,0 +1,5 @@
+REQUIRES += foc_rpi
+LD_TEXT_ADDR ?= 0x800000
+
+include $(REP_DIR)/src/core/spec/arm/target.inc
+
diff --git a/repos/base-foc/src/core/x86/ipc_pager.cc b/repos/base-foc/src/core/spec/x86/ipc_pager.cc
similarity index 100%
rename from repos/base-foc/src/core/x86/ipc_pager.cc
rename to repos/base-foc/src/core/spec/x86/ipc_pager.cc
diff --git a/repos/base-foc/src/core/x86/platform.cc b/repos/base-foc/src/core/spec/x86/platform.cc
similarity index 100%
rename from repos/base-foc/src/core/x86/platform.cc
rename to repos/base-foc/src/core/spec/x86/platform.cc
diff --git a/repos/base-foc/src/core/spec/x86/target.inc b/repos/base-foc/src/core/spec/x86/target.inc
new file mode 100644
index 0000000000..10d780c7d3
--- /dev/null
+++ b/repos/base-foc/src/core/spec/x86/target.inc
@@ -0,0 +1,10 @@
+LD_TEXT_ADDR = 0x500000
+REQUIRES += x86
+SRC_CC += io_port_session_component.cc \
+ spec/x86/ipc_pager.cc \
+ spec/x86/platform.cc
+
+vpath io_port_session_component.cc $(BASE_DIR)/src/core/spec/x86
+vpath platform_services.cc $(BASE_DIR)/src/core/spec/x86
+
+include $(REP_DIR)/src/core/target.inc
diff --git a/repos/base-foc/src/core/x86_32/ipc_pager.cc b/repos/base-foc/src/core/spec/x86_32/ipc_pager.cc
similarity index 100%
rename from repos/base-foc/src/core/x86_32/ipc_pager.cc
rename to repos/base-foc/src/core/spec/x86_32/ipc_pager.cc
diff --git a/repos/base-foc/src/core/spec/x86_32/target.mk b/repos/base-foc/src/core/spec/x86_32/target.mk
new file mode 100644
index 0000000000..0bc5f31578
--- /dev/null
+++ b/repos/base-foc/src/core/spec/x86_32/target.mk
@@ -0,0 +1,4 @@
+REQUIRES += foc_x86_32
+SRC_CC += spec/x86_32/ipc_pager.cc
+
+include $(REP_DIR)/src/core/spec/x86/target.inc
diff --git a/repos/base-foc/src/core/x86_64/ipc_pager.cc b/repos/base-foc/src/core/spec/x86_64/ipc_pager.cc
similarity index 100%
rename from repos/base-foc/src/core/x86_64/ipc_pager.cc
rename to repos/base-foc/src/core/spec/x86_64/ipc_pager.cc
diff --git a/repos/base-foc/src/core/spec/x86_64/target.mk b/repos/base-foc/src/core/spec/x86_64/target.mk
new file mode 100644
index 0000000000..54ff8c86fb
--- /dev/null
+++ b/repos/base-foc/src/core/spec/x86_64/target.mk
@@ -0,0 +1,4 @@
+REQUIRES += foc_x86_64
+SRC_CC += spec/x86_64/ipc_pager.cc
+
+include $(REP_DIR)/src/core/spec/x86/target.inc
diff --git a/repos/base-foc/src/core/x86/target.inc b/repos/base-foc/src/core/x86/target.inc
deleted file mode 100644
index 2e58981c56..0000000000
--- a/repos/base-foc/src/core/x86/target.inc
+++ /dev/null
@@ -1,10 +0,0 @@
-LD_TEXT_ADDR = 0x500000
-REQUIRES += x86
-SRC_CC += io_port_session_component.cc \
- x86/ipc_pager.cc \
- x86/platform.cc
-
-vpath io_port_session_component.cc $(BASE_DIR)/src/core/x86
-vpath platform_services.cc $(BASE_DIR)/src/core/x86
-
-include $(REP_DIR)/src/core/target.inc
diff --git a/repos/base-foc/src/core/x86_32/target.mk b/repos/base-foc/src/core/x86_32/target.mk
deleted file mode 100644
index 2c69daa978..0000000000
--- a/repos/base-foc/src/core/x86_32/target.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-REQUIRES += foc_x86_32
-SRC_CC += x86_32/ipc_pager.cc
-
-include $(REP_DIR)/src/core/x86/target.inc
diff --git a/repos/base-foc/src/core/x86_64/target.mk b/repos/base-foc/src/core/x86_64/target.mk
deleted file mode 100644
index 52cffcf2cb..0000000000
--- a/repos/base-foc/src/core/x86_64/target.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-REQUIRES += foc_x86_64
-SRC_CC += x86_64/ipc_pager.cc
-
-include $(REP_DIR)/src/core/x86/target.inc
diff --git a/repos/base-foc/src/kernel/imx53/target.mk b/repos/base-foc/src/kernel/imx53/target.mk
deleted file mode 100644
index 8e9c30202b..0000000000
--- a/repos/base-foc/src/kernel/imx53/target.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-REQUIRES = platform_imx53
-KERNEL_CONFIG = $(REP_DIR)/config/imx53.kernel
-
--include $(PRG_DIR)/../target.inc
diff --git a/repos/base-foc/src/kernel/pbxa9/target.mk b/repos/base-foc/src/kernel/pbxa9/target.mk
deleted file mode 100644
index 7efed81808..0000000000
--- a/repos/base-foc/src/kernel/pbxa9/target.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-REQUIRES = platform_pbxa9
-KERNEL_CONFIG = $(REP_DIR)/config/pbxa9.kernel
-
--include $(PRG_DIR)/../target.inc
diff --git a/repos/base-foc/src/kernel/arndale/target.mk b/repos/base-foc/src/kernel/spec/arndale/target.mk
similarity index 65%
rename from repos/base-foc/src/kernel/arndale/target.mk
rename to repos/base-foc/src/kernel/spec/arndale/target.mk
index 0b4d0a210b..95e80cb51b 100644
--- a/repos/base-foc/src/kernel/arndale/target.mk
+++ b/repos/base-foc/src/kernel/spec/arndale/target.mk
@@ -1,5 +1,5 @@
-REQUIRES = platform_arndale
+REQUIRES = arndale
FIASCO_DIR := $(call select_from_ports,foc)/src/kernel/foc/kernel/fiasco
KERNEL_CONFIG = $(REP_DIR)/config/arndale.kernel
--include $(PRG_DIR)/../target.inc
+-include $(PRG_DIR)/../../target.inc
diff --git a/repos/base-foc/src/kernel/spec/imx53/target.mk b/repos/base-foc/src/kernel/spec/imx53/target.mk
new file mode 100644
index 0000000000..e0f0818983
--- /dev/null
+++ b/repos/base-foc/src/kernel/spec/imx53/target.mk
@@ -0,0 +1,4 @@
+REQUIRES = imx53
+KERNEL_CONFIG = $(REP_DIR)/config/imx53.kernel
+
+-include $(PRG_DIR)/../../target.inc
diff --git a/repos/base-foc/src/kernel/odroid_x2/target.mk b/repos/base-foc/src/kernel/spec/odroid_x2/target.mk
similarity index 64%
rename from repos/base-foc/src/kernel/odroid_x2/target.mk
rename to repos/base-foc/src/kernel/spec/odroid_x2/target.mk
index 4df48556fb..bc2e49b8f6 100644
--- a/repos/base-foc/src/kernel/odroid_x2/target.mk
+++ b/repos/base-foc/src/kernel/spec/odroid_x2/target.mk
@@ -1,5 +1,5 @@
-REQUIRES = platform_odroid_x2
+REQUIRES = odroid_x2
FIASCO_DIR := $(call select_from_ports,foc)/src/kernel/foc/kernel/fiasco
KERNEL_CONFIG = $(REP_DIR)/config/odroid_x2.kernel
--include $(PRG_DIR)/../target.inc
+-include $(PRG_DIR)/../../target.inc
diff --git a/repos/base-foc/src/kernel/panda/target.mk b/repos/base-foc/src/kernel/spec/panda/target.mk
similarity index 65%
rename from repos/base-foc/src/kernel/panda/target.mk
rename to repos/base-foc/src/kernel/spec/panda/target.mk
index 4073bc98c6..40103a9dc9 100644
--- a/repos/base-foc/src/kernel/panda/target.mk
+++ b/repos/base-foc/src/kernel/spec/panda/target.mk
@@ -1,5 +1,5 @@
-REQUIRES = platform_panda
+REQUIRES = panda
FIASCO_DIR := $(call select_from_ports,foc)/src/kernel/foc/kernel/fiasco
KERNEL_CONFIG = $(REP_DIR)/config/panda.kernel
--include $(PRG_DIR)/../target.inc
+-include $(PRG_DIR)/../../target.inc
diff --git a/repos/base-foc/src/kernel/spec/pbxa9/target.mk b/repos/base-foc/src/kernel/spec/pbxa9/target.mk
new file mode 100644
index 0000000000..cd1cee9788
--- /dev/null
+++ b/repos/base-foc/src/kernel/spec/pbxa9/target.mk
@@ -0,0 +1,4 @@
+REQUIRES = pbxa9
+KERNEL_CONFIG = $(REP_DIR)/config/pbxa9.kernel
+
+-include $(PRG_DIR)/../../target.inc
diff --git a/repos/base-foc/src/kernel/rpi/target.mk b/repos/base-foc/src/kernel/spec/rpi/target.mk
similarity index 65%
rename from repos/base-foc/src/kernel/rpi/target.mk
rename to repos/base-foc/src/kernel/spec/rpi/target.mk
index b93f26a9bd..049f665fd7 100644
--- a/repos/base-foc/src/kernel/rpi/target.mk
+++ b/repos/base-foc/src/kernel/spec/rpi/target.mk
@@ -1,5 +1,5 @@
-REQUIRES = platform_rpi
+REQUIRES = rpi
FIASCO_DIR := $(call select_from_ports,foc)/src/kernel/foc/kernel/fiasco
KERNEL_CONFIG = $(REP_DIR)/config/rpi.kernel
--include $(PRG_DIR)/../target.inc
+-include $(PRG_DIR)/../../target.inc
diff --git a/repos/base-foc/src/kernel/x86_32/target.mk b/repos/base-foc/src/kernel/spec/x86_32/target.mk
similarity index 66%
rename from repos/base-foc/src/kernel/x86_32/target.mk
rename to repos/base-foc/src/kernel/spec/x86_32/target.mk
index 7324e497e3..419015f24a 100644
--- a/repos/base-foc/src/kernel/x86_32/target.mk
+++ b/repos/base-foc/src/kernel/spec/x86_32/target.mk
@@ -1,4 +1,4 @@
REQUIRES = x86 32bit
KERNEL_CONFIG = $(REP_DIR)/config/x86_32.kernel
--include $(PRG_DIR)/../target.inc
+-include $(PRG_DIR)/../../target.inc
diff --git a/repos/base-foc/src/kernel/x86_64/target.mk b/repos/base-foc/src/kernel/spec/x86_64/target.mk
similarity index 66%
rename from repos/base-foc/src/kernel/x86_64/target.mk
rename to repos/base-foc/src/kernel/spec/x86_64/target.mk
index f01766c42d..012a1a6bb4 100644
--- a/repos/base-foc/src/kernel/x86_64/target.mk
+++ b/repos/base-foc/src/kernel/spec/x86_64/target.mk
@@ -1,4 +1,4 @@
REQUIRES = x86 64bit
KERNEL_CONFIG = $(REP_DIR)/config/x86_64.kernel
--include $(PRG_DIR)/../target.inc
+-include $(PRG_DIR)/../../target.inc
diff --git a/repos/base-foc/src/platform/_main_parent_cap.h b/repos/base-foc/src/lib/startup/_main_parent_cap.h
similarity index 87%
rename from repos/base-foc/src/platform/_main_parent_cap.h
rename to repos/base-foc/src/lib/startup/_main_parent_cap.h
index 4e51867138..1350661115 100644
--- a/repos/base-foc/src/platform/_main_parent_cap.h
+++ b/repos/base-foc/src/lib/startup/_main_parent_cap.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PLATFORM__MAIN_PARENT_CAP_H_
-#define _PLATFORM__MAIN_PARENT_CAP_H_
+#ifndef _LIB__STARTUP___MAIN_PARENT_CAP_H_
+#define _LIB__STARTUP___MAIN_PARENT_CAP_H_
#include
@@ -41,4 +41,4 @@ namespace Genode {
}
}
-#endif /* _PLATFORM__MAIN_PARENT_CAP_H_ */
+#endif /* _LIB__STARTUP___MAIN_PARENT_CAP_H_ */
diff --git a/repos/base-hw/include/arm/kernel/interface_support.h b/repos/base-hw/include/spec/arm/kernel/interface_support.h
similarity index 100%
rename from repos/base-hw/include/arm/kernel/interface_support.h
rename to repos/base-hw/include/spec/arm/kernel/interface_support.h
diff --git a/repos/base-hw/include/platform/arndale/vm_state.h b/repos/base-hw/include/spec/arndale/vm_state.h
similarity index 90%
rename from repos/base-hw/include/platform/arndale/vm_state.h
rename to repos/base-hw/include/spec/arndale/vm_state.h
index 0926abac48..063547ad2f 100644
--- a/repos/base-hw/include/platform/arndale/vm_state.h
+++ b/repos/base-hw/include/spec/arndale/vm_state.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__ARNDALE__VM_STATE_H_
-#define _INCLUDE__PLATFORM__ARNDALE__VM_STATE_H_
+#ifndef _INCLUDE__SPEC__ARNDALE__VM_STATE_H_
+#define _INCLUDE__SPEC__ARNDALE__VM_STATE_H_
/* Genode includes */
#include
@@ -77,4 +77,4 @@ struct Genode::Vm_state : Genode::Cpu_state_modes
unsigned gic_irq;
};
-#endif /* _INCLUDE__PLATFORM__ARNDALE__VM_STATE_H_ */
+#endif /* _INCLUDE__SPEC__ARNDALE__VM_STATE_H_ */
diff --git a/repos/base-hw/include/platform/imx53/drivers/trustzone.h b/repos/base-hw/include/spec/imx53/drivers/trustzone.h
similarity index 100%
rename from repos/base-hw/include/platform/imx53/drivers/trustzone.h
rename to repos/base-hw/include/spec/imx53/drivers/trustzone.h
diff --git a/repos/base-hw/include/platform/imx53/vm_state.h b/repos/base-hw/include/spec/imx53/vm_state.h
similarity index 80%
rename from repos/base-hw/include/platform/imx53/vm_state.h
rename to repos/base-hw/include/spec/imx53/vm_state.h
index ba8bce4e58..0dcc0506b6 100644
--- a/repos/base-hw/include/platform/imx53/vm_state.h
+++ b/repos/base-hw/include/spec/imx53/vm_state.h
@@ -12,8 +12,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__IMX53__VM_STATE_H_
-#define _INCLUDE__PLATFORM__IMX53__VM_STATE_H_
+#ifndef _INCLUDE__SPEC__IMX53__VM_STATE_H_
+#define _INCLUDE__SPEC__IMX53__VM_STATE_H_
/* Genode includes */
#include
@@ -33,4 +33,4 @@ struct Genode::Vm_state : Genode::Cpu_state_modes
Genode::addr_t ttbrc;
};
-#endif /* _INCLUDE__PLATFORM__IMX53__VM_STATE_H_ */
+#endif /* _INCLUDE__SPEC__IMX53__VM_STATE_H_ */
diff --git a/repos/base-hw/include/x86_64/kernel/interface_support.h b/repos/base-hw/include/spec/x86_64/kernel/interface_support.h
similarity index 100%
rename from repos/base-hw/include/x86_64/kernel/interface_support.h
rename to repos/base-hw/include/spec/x86_64/kernel/interface_support.h
diff --git a/repos/base-hw/lib/mk/core.inc b/repos/base-hw/lib/mk/core.inc
index 22b6835e1c..8e925c0052 100644
--- a/repos/base-hw/lib/mk/core.inc
+++ b/repos/base-hw/lib/mk/core.inc
@@ -15,7 +15,7 @@ INC_DIR += $(REP_DIR)/src/core/include
INC_DIR += $(BASE_DIR)/src/core/include
INC_DIR += $(BASE_DIR)/src/base/include
INC_DIR += $(BASE_DIR)/src/base/thread
-INC_DIR += $(BASE_DIR)/src/platform
+INC_DIR += $(BASE_DIR)/src/lib/startup
# add C++ sources
SRC_CC += console.cc
@@ -77,4 +77,4 @@ vpath boot_modules.s $(BOOT_MODULES_VPATH)
# declare source locations
vpath % $(REP_DIR)/src/core
vpath % $(BASE_DIR)/src/core
-vpath % $(BASE_DIR)/src/platform
+vpath % $(BASE_DIR)/src/lib/startup
diff --git a/repos/base-hw/lib/mk/arm/base-common.mk b/repos/base-hw/lib/mk/spec/arm/base-common.mk
similarity index 100%
rename from repos/base-hw/lib/mk/arm/base-common.mk
rename to repos/base-hw/lib/mk/spec/arm/base-common.mk
diff --git a/repos/base-hw/lib/mk/arm/core.inc b/repos/base-hw/lib/mk/spec/arm/core.inc
similarity index 100%
rename from repos/base-hw/lib/mk/arm/core.inc
rename to repos/base-hw/lib/mk/spec/arm/core.inc
diff --git a/repos/base-hw/lib/mk/arm_v6/core-perf_counter_on.mk b/repos/base-hw/lib/mk/spec/arm_v6/core-perf_counter_on.mk
similarity index 100%
rename from repos/base-hw/lib/mk/arm_v6/core-perf_counter_on.mk
rename to repos/base-hw/lib/mk/spec/arm_v6/core-perf_counter_on.mk
diff --git a/repos/base-hw/lib/mk/arm_v6/core.inc b/repos/base-hw/lib/mk/spec/arm_v6/core.inc
similarity index 90%
rename from repos/base-hw/lib/mk/arm_v6/core.inc
rename to repos/base-hw/lib/mk/spec/arm_v6/core.inc
index 47681183be..eb1dca1f96 100644
--- a/repos/base-hw/lib/mk/arm_v6/core.inc
+++ b/repos/base-hw/lib/mk/spec/arm_v6/core.inc
@@ -17,4 +17,4 @@ SRC_CC += spec/arm_v6/cpu.cc
SRC_S += spec/arm_v6/mode_transition.s
# include less specific configuration
-include $(REP_DIR)/lib/mk/arm/core.inc
+include $(REP_DIR)/lib/mk/spec/arm/core.inc
diff --git a/repos/base-hw/lib/mk/arm_v7/core-perf_counter_on.mk b/repos/base-hw/lib/mk/spec/arm_v7/core-perf_counter_on.mk
similarity index 100%
rename from repos/base-hw/lib/mk/arm_v7/core-perf_counter_on.mk
rename to repos/base-hw/lib/mk/spec/arm_v7/core-perf_counter_on.mk
diff --git a/repos/base-hw/lib/mk/arm_v7/core.inc b/repos/base-hw/lib/mk/spec/arm_v7/core.inc
similarity index 87%
rename from repos/base-hw/lib/mk/arm_v7/core.inc
rename to repos/base-hw/lib/mk/spec/arm_v7/core.inc
index 64d778916c..93919d10e2 100644
--- a/repos/base-hw/lib/mk/arm_v7/core.inc
+++ b/repos/base-hw/lib/mk/spec/arm_v7/core.inc
@@ -14,4 +14,4 @@ SRC_CC += spec/arm_v7/cpu.cc
SRC_S += spec/arm_v7/mode_transition.s
# include less specific configuration
-include $(REP_DIR)/lib/mk/arm/core.inc
+include $(REP_DIR)/lib/mk/spec/arm/core.inc
diff --git a/repos/base-hw/lib/mk/platform_arndale/core.mk b/repos/base-hw/lib/mk/spec/arndale/core.mk
similarity index 93%
rename from repos/base-hw/lib/mk/platform_arndale/core.mk
rename to repos/base-hw/lib/mk/spec/arndale/core.mk
index b6a637fb5f..24f45dbf77 100644
--- a/repos/base-hw/lib/mk/platform_arndale/core.mk
+++ b/repos/base-hw/lib/mk/spec/arndale/core.mk
@@ -21,4 +21,4 @@ SRC_CC += spec/arm_v7/virtualization/vm_session_component.cc
SRC_S += spec/arm_v7/virtualization/mode_transition.s
# include less specific configuration
-include $(REP_DIR)/lib/mk/exynos5/core.inc
+include $(REP_DIR)/lib/mk/spec/exynos5/core.inc
diff --git a/repos/base-hw/lib/mk/cortex_a15/core.inc b/repos/base-hw/lib/mk/spec/cortex_a15/core.inc
similarity index 87%
rename from repos/base-hw/lib/mk/cortex_a15/core.inc
rename to repos/base-hw/lib/mk/spec/cortex_a15/core.inc
index 2acb22b080..ebaae46f5a 100644
--- a/repos/base-hw/lib/mk/cortex_a15/core.inc
+++ b/repos/base-hw/lib/mk/spec/cortex_a15/core.inc
@@ -12,4 +12,4 @@ INC_DIR += $(REP_DIR)/src/core/include/spec/arm_gic
SRC_CC += spec/cortex_a15/cpu.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/arm_v7/core.inc
+include $(REP_DIR)/lib/mk/spec/arm_v7/core.inc
diff --git a/repos/base-hw/lib/mk/cortex_a8/core.inc b/repos/base-hw/lib/mk/spec/cortex_a8/core.inc
similarity index 86%
rename from repos/base-hw/lib/mk/cortex_a8/core.inc
rename to repos/base-hw/lib/mk/spec/cortex_a8/core.inc
index a0f444745b..faeec0d113 100644
--- a/repos/base-hw/lib/mk/cortex_a8/core.inc
+++ b/repos/base-hw/lib/mk/spec/cortex_a8/core.inc
@@ -12,4 +12,4 @@ SRC_CC += spec/arm/cpu.cc
SRC_CC += spec/arm/kernel/cpu_context.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/arm_v7/core.inc
+include $(REP_DIR)/lib/mk/spec/arm_v7/core.inc
diff --git a/repos/base-hw/lib/mk/cortex_a9/core.inc b/repos/base-hw/lib/mk/spec/cortex_a9/core.inc
similarity index 89%
rename from repos/base-hw/lib/mk/cortex_a9/core.inc
rename to repos/base-hw/lib/mk/spec/cortex_a9/core.inc
index 16ec2003a4..5bf8535636 100644
--- a/repos/base-hw/lib/mk/cortex_a9/core.inc
+++ b/repos/base-hw/lib/mk/spec/cortex_a9/core.inc
@@ -15,4 +15,4 @@ SRC_CC += spec/arm/kernel/cpu_context.cc
SRC_CC += kernel/vm_thread.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/arm_v7/core.inc
+include $(REP_DIR)/lib/mk/spec/arm_v7/core.inc
diff --git a/repos/base-hw/lib/mk/exynos5/core.inc b/repos/base-hw/lib/mk/spec/exynos5/core.inc
similarity index 85%
rename from repos/base-hw/lib/mk/exynos5/core.inc
rename to repos/base-hw/lib/mk/spec/exynos5/core.inc
index 2f7078a505..3dc4092e51 100644
--- a/repos/base-hw/lib/mk/exynos5/core.inc
+++ b/repos/base-hw/lib/mk/spec/exynos5/core.inc
@@ -12,4 +12,4 @@ SRC_CC += spec/exynos5/platform_support.cc
SRC_CC += spec/exynos5/cpu.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/cortex_a15/core.inc
+include $(REP_DIR)/lib/mk/spec/cortex_a15/core.inc
diff --git a/repos/base-hw/lib/mk/platform_imx53/core-trustzone.inc b/repos/base-hw/lib/mk/spec/imx53/core-trustzone.inc
similarity index 84%
rename from repos/base-hw/lib/mk/platform_imx53/core-trustzone.inc
rename to repos/base-hw/lib/mk/spec/imx53/core-trustzone.inc
index 453f74334a..b47d45e104 100644
--- a/repos/base-hw/lib/mk/platform_imx53/core-trustzone.inc
+++ b/repos/base-hw/lib/mk/spec/imx53/core-trustzone.inc
@@ -10,4 +10,4 @@ INC_DIR += $(REP_DIR)/src/core/include/spec/imx53
INC_DIR += $(REP_DIR)/src/core/include/spec/imx
# include less specific configuration
-include $(REP_DIR)/lib/mk/cortex_a8/core.inc
+include $(REP_DIR)/lib/mk/spec/cortex_a8/core.inc
diff --git a/repos/base-hw/lib/mk/platform_imx53/core-trustzone_off.mk b/repos/base-hw/lib/mk/spec/imx53/core-trustzone_off.mk
similarity index 86%
rename from repos/base-hw/lib/mk/platform_imx53/core-trustzone_off.mk
rename to repos/base-hw/lib/mk/spec/imx53/core-trustzone_off.mk
index fe14eaac1f..8e0872e789 100644
--- a/repos/base-hw/lib/mk/platform_imx53/core-trustzone_off.mk
+++ b/repos/base-hw/lib/mk/spec/imx53/core-trustzone_off.mk
@@ -12,5 +12,5 @@ SRC_CC += spec/imx53/pic.cc
SRC_CC += platform_services.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/platform_imx53/core-trustzone.inc
+include $(REP_DIR)/lib/mk/spec/imx53/core-trustzone.inc
include $(REP_DIR)/lib/mk/core-trustzone.inc
diff --git a/repos/base-hw/lib/mk/platform_imx53/core-trustzone_on.mk b/repos/base-hw/lib/mk/spec/imx53/core-trustzone_on.mk
similarity index 92%
rename from repos/base-hw/lib/mk/platform_imx53/core-trustzone_on.mk
rename to repos/base-hw/lib/mk/spec/imx53/core-trustzone_on.mk
index 6cde9827c2..4be9a5bb9d 100644
--- a/repos/base-hw/lib/mk/platform_imx53/core-trustzone_on.mk
+++ b/repos/base-hw/lib/mk/spec/imx53/core-trustzone_on.mk
@@ -22,5 +22,5 @@ SRC_CC += spec/arm_v7/trustzone/vm_session_component.cc
SRC_S += spec/arm_v7/trustzone/mode_transition.s
# include less specific configuration
-include $(REP_DIR)/lib/mk/platform_imx53/core-trustzone.inc
+include $(REP_DIR)/lib/mk/spec/imx53/core-trustzone.inc
include $(REP_DIR)/lib/mk/core-trustzone.inc
diff --git a/repos/base-hw/lib/mk/platform_imx53/core.mk b/repos/base-hw/lib/mk/spec/imx53/core.mk
similarity index 100%
rename from repos/base-hw/lib/mk/platform_imx53/core.mk
rename to repos/base-hw/lib/mk/spec/imx53/core.mk
diff --git a/repos/base-hw/lib/mk/platform_imx6/core.mk b/repos/base-hw/lib/mk/spec/imx6/core.mk
similarity index 88%
rename from repos/base-hw/lib/mk/platform_imx6/core.mk
rename to repos/base-hw/lib/mk/spec/imx6/core.mk
index 21e856dca0..65fae17eb4 100644
--- a/repos/base-hw/lib/mk/platform_imx6/core.mk
+++ b/repos/base-hw/lib/mk/spec/imx6/core.mk
@@ -15,4 +15,4 @@ SRC_CC += platform_services.cc
SRC_CC += spec/imx6/platform_support.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/cortex_a9/core.inc
+include $(REP_DIR)/lib/mk/spec/cortex_a9/core.inc
diff --git a/repos/base-hw/lib/mk/muen/core-muen.mk b/repos/base-hw/lib/mk/spec/muen/core-muen.mk
similarity index 100%
rename from repos/base-hw/lib/mk/muen/core-muen.mk
rename to repos/base-hw/lib/mk/spec/muen/core-muen.mk
diff --git a/repos/base-hw/lib/mk/platform_odroid_xu/core.mk b/repos/base-hw/lib/mk/spec/odroid_xu/core.mk
similarity index 87%
rename from repos/base-hw/lib/mk/platform_odroid_xu/core.mk
rename to repos/base-hw/lib/mk/spec/odroid_xu/core.mk
index f2cec1fe36..4d995650c1 100644
--- a/repos/base-hw/lib/mk/platform_odroid_xu/core.mk
+++ b/repos/base-hw/lib/mk/spec/odroid_xu/core.mk
@@ -12,4 +12,4 @@ SRC_CC += kernel/vm_thread.cc
SRC_CC += spec/arm/kernel/cpu_context.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/exynos5/core.inc
+include $(REP_DIR)/lib/mk/spec/exynos5/core.inc
diff --git a/repos/base-hw/lib/mk/platform_panda/core.mk b/repos/base-hw/lib/mk/spec/panda/core.mk
similarity index 88%
rename from repos/base-hw/lib/mk/platform_panda/core.mk
rename to repos/base-hw/lib/mk/spec/panda/core.mk
index 063d734c19..7fcd27682f 100644
--- a/repos/base-hw/lib/mk/platform_panda/core.mk
+++ b/repos/base-hw/lib/mk/spec/panda/core.mk
@@ -14,4 +14,4 @@ SRC_CC += platform_services.cc
SRC_CC += spec/panda/platform_support.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/cortex_a9/core.inc
+include $(REP_DIR)/lib/mk/spec/cortex_a9/core.inc
diff --git a/repos/base-hw/lib/mk/platform_panda/test-hw_info.mk b/repos/base-hw/lib/mk/spec/panda/test-hw_info.mk
similarity index 100%
rename from repos/base-hw/lib/mk/platform_panda/test-hw_info.mk
rename to repos/base-hw/lib/mk/spec/panda/test-hw_info.mk
diff --git a/repos/base-hw/lib/mk/platform_pbxa9/core.mk b/repos/base-hw/lib/mk/spec/pbxa9/core.mk
similarity index 88%
rename from repos/base-hw/lib/mk/platform_pbxa9/core.mk
rename to repos/base-hw/lib/mk/spec/pbxa9/core.mk
index ce53eee78c..778a8b819a 100644
--- a/repos/base-hw/lib/mk/platform_pbxa9/core.mk
+++ b/repos/base-hw/lib/mk/spec/pbxa9/core.mk
@@ -14,4 +14,4 @@ SRC_CC += platform_services.cc
SRC_CC += spec/pbxa9/platform_support.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/cortex_a9/core.inc
+include $(REP_DIR)/lib/mk/spec/cortex_a9/core.inc
diff --git a/repos/base-hw/lib/mk/perf_counter/core-perf_counter.mk b/repos/base-hw/lib/mk/spec/perf_counter/core-perf_counter.mk
similarity index 100%
rename from repos/base-hw/lib/mk/perf_counter/core-perf_counter.mk
rename to repos/base-hw/lib/mk/spec/perf_counter/core-perf_counter.mk
diff --git a/repos/base-hw/lib/mk/platform_rpi/core.mk b/repos/base-hw/lib/mk/spec/rpi/core.mk
similarity index 87%
rename from repos/base-hw/lib/mk/platform_rpi/core.mk
rename to repos/base-hw/lib/mk/spec/rpi/core.mk
index e8fc6a9a1d..1abbf745e1 100644
--- a/repos/base-hw/lib/mk/platform_rpi/core.mk
+++ b/repos/base-hw/lib/mk/spec/rpi/core.mk
@@ -13,4 +13,4 @@ SRC_CC += platform_services.cc
SRC_CC += spec/rpi/platform_support.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/arm_v6/core.inc
+include $(REP_DIR)/lib/mk/spec/arm_v6/core.inc
diff --git a/repos/base-hw/lib/mk/trustzone/core-trustzone.mk b/repos/base-hw/lib/mk/spec/trustzone/core-trustzone.mk
similarity index 100%
rename from repos/base-hw/lib/mk/trustzone/core-trustzone.mk
rename to repos/base-hw/lib/mk/spec/trustzone/core-trustzone.mk
diff --git a/repos/base-hw/lib/mk/x86/core.inc b/repos/base-hw/lib/mk/spec/x86/core.inc
similarity index 83%
rename from repos/base-hw/lib/mk/x86/core.inc
rename to repos/base-hw/lib/mk/spec/x86/core.inc
index 8ba53af828..08cb3a669a 100644
--- a/repos/base-hw/lib/mk/x86/core.inc
+++ b/repos/base-hw/lib/mk/spec/x86/core.inc
@@ -14,8 +14,8 @@ SRC_CC += spec/x86/kernel/pd.cc
SRC_CC += spec/x86/cpu.cc
SRC_CC += spec/x86/bios_data_area.cc
SRC_CC += kernel/vm_thread.cc
-SRC_CC += x86/io_port_session_component.cc
-SRC_CC += x86/platform_services.cc
+SRC_CC += spec/x86/io_port_session_component.cc
+SRC_CC += spec/x86/platform_services.cc
# include less specific configuration
include $(REP_DIR)/lib/mk/core.inc
diff --git a/repos/base-hw/lib/mk/x86_64/base-common.mk b/repos/base-hw/lib/mk/spec/x86_64/base-common.mk
similarity index 100%
rename from repos/base-hw/lib/mk/x86_64/base-common.mk
rename to repos/base-hw/lib/mk/spec/x86_64/base-common.mk
diff --git a/repos/base-hw/lib/mk/x86_64/core-muen_off.mk b/repos/base-hw/lib/mk/spec/x86_64/core-muen_off.mk
similarity index 88%
rename from repos/base-hw/lib/mk/x86_64/core-muen_off.mk
rename to repos/base-hw/lib/mk/spec/x86_64/core-muen_off.mk
index 0c7fb980e0..2085a133d5 100644
--- a/repos/base-hw/lib/mk/x86_64/core-muen_off.mk
+++ b/repos/base-hw/lib/mk/spec/x86_64/core-muen_off.mk
@@ -14,4 +14,4 @@ SRC_CC += spec/x86/pic.cc
SRC_CC += spec/x86_64/platform_support.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/x86_64/core.inc
+include $(REP_DIR)/lib/mk/spec/x86_64/core.inc
diff --git a/repos/base-hw/lib/mk/x86_64/core-muen_on.mk b/repos/base-hw/lib/mk/spec/x86_64/core-muen_on.mk
similarity index 91%
rename from repos/base-hw/lib/mk/x86_64/core-muen_on.mk
rename to repos/base-hw/lib/mk/spec/x86_64/core-muen_on.mk
index 25a411f016..4100f840d9 100644
--- a/repos/base-hw/lib/mk/x86_64/core-muen_on.mk
+++ b/repos/base-hw/lib/mk/spec/x86_64/core-muen_on.mk
@@ -17,4 +17,4 @@ SRC_CC += spec/x86_64/muen/platform_support.cc
SRC_CC += spec/x86_64/muen/sinfo.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/x86_64/core.inc
+include $(REP_DIR)/lib/mk/spec/x86_64/core.inc
diff --git a/repos/base-hw/lib/mk/x86_64/core.inc b/repos/base-hw/lib/mk/spec/x86_64/core.inc
similarity index 92%
rename from repos/base-hw/lib/mk/x86_64/core.inc
rename to repos/base-hw/lib/mk/spec/x86_64/core.inc
index 77370fc755..02e8c3fad9 100644
--- a/repos/base-hw/lib/mk/x86_64/core.inc
+++ b/repos/base-hw/lib/mk/spec/x86_64/core.inc
@@ -20,4 +20,4 @@ SRC_CC += spec/x86_64/tss.cc
SRC_CC += spec/x86_64/kernel/cpu_context.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/x86/core.inc
+include $(REP_DIR)/lib/mk/spec/x86/core.inc
diff --git a/repos/base-hw/lib/mk/x86_64/core.mk b/repos/base-hw/lib/mk/spec/x86_64/core.mk
similarity index 100%
rename from repos/base-hw/lib/mk/x86_64/core.mk
rename to repos/base-hw/lib/mk/spec/x86_64/core.mk
diff --git a/repos/base-hw/lib/mk/zynq/core.inc b/repos/base-hw/lib/mk/spec/zynq/core.inc
similarity index 87%
rename from repos/base-hw/lib/mk/zynq/core.inc
rename to repos/base-hw/lib/mk/spec/zynq/core.inc
index dea9258edf..76d2a62f96 100644
--- a/repos/base-hw/lib/mk/zynq/core.inc
+++ b/repos/base-hw/lib/mk/spec/zynq/core.inc
@@ -13,4 +13,4 @@ SRC_CC += platform_services.cc
SRC_CC += spec/zynq/platform_support.cc
# include less specific configuration
-include $(REP_DIR)/lib/mk/cortex_a9/core.inc
+include $(REP_DIR)/lib/mk/spec/cortex_a9/core.inc
diff --git a/repos/base-hw/lib/mk/platform_zynq/core.mk b/repos/base-hw/lib/mk/spec/zynq/core.mk
similarity index 75%
rename from repos/base-hw/lib/mk/platform_zynq/core.mk
rename to repos/base-hw/lib/mk/spec/zynq/core.mk
index 9ae399752a..7ff6205eae 100644
--- a/repos/base-hw/lib/mk/platform_zynq/core.mk
+++ b/repos/base-hw/lib/mk/spec/zynq/core.mk
@@ -5,4 +5,4 @@
#
# include less specific configuration
-include $(REP_DIR)/lib/mk/zynq/core.inc
+include $(REP_DIR)/lib/mk/spec/zynq/core.inc
diff --git a/repos/base-hw/lib/mk/platform_zynq/test-hw_info.mk b/repos/base-hw/lib/mk/spec/zynq/test-hw_info.mk
similarity index 100%
rename from repos/base-hw/lib/mk/platform_zynq/test-hw_info.mk
rename to repos/base-hw/lib/mk/spec/zynq/test-hw_info.mk
diff --git a/repos/base-hw/mk/spec-hw.mk b/repos/base-hw/mk/spec/hw.mk
similarity index 100%
rename from repos/base-hw/mk/spec-hw.mk
rename to repos/base-hw/mk/spec/hw.mk
diff --git a/repos/base-hw/mk/spec-hw_arndale.mk b/repos/base-hw/mk/spec/hw_arndale.mk
similarity index 72%
rename from repos/base-hw/mk/spec-hw_arndale.mk
rename to repos/base-hw/mk/spec/hw_arndale.mk
index 3ec3425023..fa240172c6 100644
--- a/repos/base-hw/mk/spec-hw_arndale.mk
+++ b/repos/base-hw/mk/spec/hw_arndale.mk
@@ -5,7 +5,7 @@
#
# denote wich specs are also fullfilled by this spec
-SPECS += hw platform_arndale
+SPECS += hw arndale
# configure multiprocessor mode
NR_OF_CPUS = 2
@@ -17,5 +17,5 @@ REP_INC_DIR += include/exynos5_uart
LD_TEXT_ADDR ?= 0x80000000
# include implied specs
-include $(call select_from_repositories,mk/spec-hw.mk)
-include $(call select_from_repositories,mk/spec-platform_arndale.mk)
+include $(call select_from_repositories,mk/spec/hw.mk)
+include $(call select_from_repositories,mk/spec/arndale.mk)
diff --git a/repos/base-hw/mk/spec-hw_imx53_qsb.mk b/repos/base-hw/mk/spec/hw_imx53_qsb.mk
similarity index 62%
rename from repos/base-hw/mk/spec-hw_imx53_qsb.mk
rename to repos/base-hw/mk/spec/hw_imx53_qsb.mk
index f1967c0c0d..0ab7517333 100644
--- a/repos/base-hw/mk/spec-hw_imx53_qsb.mk
+++ b/repos/base-hw/mk/spec/hw_imx53_qsb.mk
@@ -5,7 +5,7 @@
#
# denote wich specs are also fullfilled by this spec
-SPECS += hw platform_imx53 platform_imx53_qsb epit
+SPECS += hw imx53_qsb imx53
# configure multiprocessor mode
NR_OF_CPUS = 1
@@ -14,8 +14,8 @@ NR_OF_CPUS = 1
LD_TEXT_ADDR ?= 0x70010000
# add repository relative include paths
-REP_INC_DIR += include/platform/imx53_qsb
+REP_INC_DIR += include/spec/imx53_qsb
# include implied specs
-include $(call select_from_repositories,mk/spec-hw.mk)
-include $(call select_from_repositories,mk/spec-platform_imx53.mk)
+include $(call select_from_repositories,mk/spec/hw.mk)
+include $(call select_from_repositories,mk/spec/imx53.mk)
diff --git a/repos/base-hw/mk/spec-hw_imx53_qsb_tz.mk b/repos/base-hw/mk/spec/hw_imx53_qsb_tz.mk
similarity index 78%
rename from repos/base-hw/mk/spec-hw_imx53_qsb_tz.mk
rename to repos/base-hw/mk/spec/hw_imx53_qsb_tz.mk
index 8c201efeb9..343b2bce4c 100644
--- a/repos/base-hw/mk/spec-hw_imx53_qsb_tz.mk
+++ b/repos/base-hw/mk/spec/hw_imx53_qsb_tz.mk
@@ -8,4 +8,4 @@
SPECS += hw_imx53_qsb trustzone
# include implied specs
-include $(call select_from_repositories,mk/spec-hw_imx53_qsb.mk)
+include $(call select_from_repositories,mk/spec/hw_imx53_qsb.mk)
diff --git a/repos/base-hw/mk/spec-hw_odroid_xu.mk b/repos/base-hw/mk/spec/hw_odroid_xu.mk
similarity index 72%
rename from repos/base-hw/mk/spec-hw_odroid_xu.mk
rename to repos/base-hw/mk/spec/hw_odroid_xu.mk
index 5363e2bc6f..4c6b971399 100644
--- a/repos/base-hw/mk/spec-hw_odroid_xu.mk
+++ b/repos/base-hw/mk/spec/hw_odroid_xu.mk
@@ -5,7 +5,7 @@
#
# denote wich specs are also fullfilled by this spec
-SPECS += hw platform_odroid_xu
+SPECS += hw odroid_xu
# configure multiprocessor mode
NR_OF_CPUS = 1
@@ -17,5 +17,5 @@ REP_INC_DIR += include/exynos5_uart
LD_TEXT_ADDR ?= 0x80000000
# include implied specs
-include $(call select_from_repositories,mk/spec-hw.mk)
-include $(call select_from_repositories,mk/spec-platform_odroid_xu.mk)
+include $(call select_from_repositories,mk/spec/hw.mk)
+include $(call select_from_repositories,mk/spec/odroid_xu.mk)
diff --git a/repos/base-hw/mk/spec-hw_panda.mk b/repos/base-hw/mk/spec/hw_panda.mk
similarity index 69%
rename from repos/base-hw/mk/spec-hw_panda.mk
rename to repos/base-hw/mk/spec/hw_panda.mk
index ea6e30838f..0b1cad1e68 100644
--- a/repos/base-hw/mk/spec-hw_panda.mk
+++ b/repos/base-hw/mk/spec/hw_panda.mk
@@ -5,7 +5,7 @@
#
# denote wich specs are also fullfilled by this spec
-SPECS += hw platform_panda
+SPECS += hw panda
# configure multiprocessor mode
NR_OF_CPUS = 1
@@ -14,5 +14,5 @@ NR_OF_CPUS = 1
LD_TEXT_ADDR ?= 0x81000000
# include implied specs
-include $(call select_from_repositories,mk/spec-hw.mk)
-include $(call select_from_repositories,mk/spec-platform_panda.mk)
+include $(call select_from_repositories,mk/spec/hw.mk)
+include $(call select_from_repositories,mk/spec/panda.mk)
diff --git a/repos/base-hw/mk/spec-hw_pbxa9.mk b/repos/base-hw/mk/spec/hw_pbxa9.mk
similarity index 68%
rename from repos/base-hw/mk/spec-hw_pbxa9.mk
rename to repos/base-hw/mk/spec/hw_pbxa9.mk
index 9d7b57329f..6cebb79a67 100644
--- a/repos/base-hw/mk/spec-hw_pbxa9.mk
+++ b/repos/base-hw/mk/spec/hw_pbxa9.mk
@@ -5,7 +5,7 @@
#
# denote wich specs are also fullfilled by this spec
-SPECS += hw platform_pbxa9
+SPECS += hw pbxa9
# configure multiprocessor mode
NR_OF_CPUS = 1
@@ -14,5 +14,5 @@ NR_OF_CPUS = 1
LD_TEXT_ADDR ?= 0x70000000
# include implied specs
-include $(call select_from_repositories,mk/spec-hw.mk)
-include $(call select_from_repositories,mk/spec-platform_pbxa9.mk)
+include $(call select_from_repositories,mk/spec/hw.mk)
+include $(call select_from_repositories,mk/spec/pbxa9.mk)
diff --git a/repos/base-hw/mk/spec-hw_rpi.mk b/repos/base-hw/mk/spec/hw_rpi.mk
similarity index 68%
rename from repos/base-hw/mk/spec-hw_rpi.mk
rename to repos/base-hw/mk/spec/hw_rpi.mk
index c2b6b3d3d9..39a0d09779 100644
--- a/repos/base-hw/mk/spec-hw_rpi.mk
+++ b/repos/base-hw/mk/spec/hw_rpi.mk
@@ -5,7 +5,7 @@
#
# denote wich specs are also fullfilled by this spec
-SPECS += hw platform_rpi
+SPECS += hw rpi
# configure multiprocessor mode
NR_OF_CPUS = 1
@@ -14,5 +14,5 @@ NR_OF_CPUS = 1
LD_TEXT_ADDR ?= 0x800000
# include implied specs
-include $(call select_from_repositories,mk/spec-hw.mk)
-include $(call select_from_repositories,mk/spec-platform_rpi.mk)
+include $(call select_from_repositories,mk/spec/hw.mk)
+include $(call select_from_repositories,mk/spec/rpi.mk)
diff --git a/repos/base-hw/mk/spec-hw_usb_armory.mk b/repos/base-hw/mk/spec/hw_usb_armory.mk
similarity index 60%
rename from repos/base-hw/mk/spec-hw_usb_armory.mk
rename to repos/base-hw/mk/spec/hw_usb_armory.mk
index 7fe23d9ba0..e23ac85896 100644
--- a/repos/base-hw/mk/spec-hw_usb_armory.mk
+++ b/repos/base-hw/mk/spec/hw_usb_armory.mk
@@ -5,7 +5,7 @@
#
# denote wich specs are also fullfilled by this spec
-SPECS += hw platform_imx53 platform_usb_armory epit trustzone
+SPECS += hw usb_armory imx53 trustzone
# configure multiprocessor mode
NR_OF_CPUS = 1
@@ -14,8 +14,8 @@ NR_OF_CPUS = 1
LD_TEXT_ADDR ?= 0x72000000
# add repository relative include paths
-REP_INC_DIR += include/platform/usb_armory
+REP_INC_DIR += include/spec/usb_armory
# include implied specs
-include $(call select_from_repositories,mk/spec-hw.mk)
-include $(call select_from_repositories,mk/spec-platform_imx53.mk)
+include $(call select_from_repositories,mk/spec/hw.mk)
+include $(call select_from_repositories,mk/spec/imx53.mk)
diff --git a/repos/base-hw/mk/spec-hw_wand_quad.mk b/repos/base-hw/mk/spec/hw_wand_quad.mk
similarity index 72%
rename from repos/base-hw/mk/spec-hw_wand_quad.mk
rename to repos/base-hw/mk/spec/hw_wand_quad.mk
index 94ecfad6ab..6a7c7ca82d 100644
--- a/repos/base-hw/mk/spec-hw_wand_quad.mk
+++ b/repos/base-hw/mk/spec/hw_wand_quad.mk
@@ -7,7 +7,7 @@
#
# denote wich specs are also fullfilled by this spec
-SPECS += hw platform_imx6
+SPECS += hw imx6
# configure multiprocessor mode
NR_OF_CPUS = 1
@@ -16,5 +16,5 @@ NR_OF_CPUS = 1
LD_TEXT_ADDR ?= 0x10001000
# include implied specs
-include $(call select_from_repositories,mk/spec-hw.mk)
-include $(call select_from_repositories,mk/spec-platform_imx6.mk)
+include $(call select_from_repositories,mk/spec/hw.mk)
+include $(call select_from_repositories,mk/spec/imx6.mk)
diff --git a/repos/base-hw/mk/spec-hw_x86_64.mk b/repos/base-hw/mk/spec/hw_x86_64.mk
similarity index 76%
rename from repos/base-hw/mk/spec-hw_x86_64.mk
rename to repos/base-hw/mk/spec/hw_x86_64.mk
index a227d0ecbd..48af6be89e 100644
--- a/repos/base-hw/mk/spec-hw_x86_64.mk
+++ b/repos/base-hw/mk/spec/hw_x86_64.mk
@@ -15,5 +15,5 @@ NR_OF_CPUS = 1
LD_TEXT_ADDR ?= 0x200000
# include implied specs
-include $(call select_from_repositories,mk/spec-hw.mk)
-include $(call select_from_repositories,mk/spec-x86_64.mk)
+include $(call select_from_repositories,mk/spec/hw.mk)
+include $(call select_from_repositories,mk/spec/x86_64.mk)
diff --git a/repos/base-hw/mk/spec-hw_x86_64_muen.mk b/repos/base-hw/mk/spec/hw_x86_64_muen.mk
similarity index 78%
rename from repos/base-hw/mk/spec-hw_x86_64_muen.mk
rename to repos/base-hw/mk/spec/hw_x86_64_muen.mk
index 0e31c841a0..3ab1c0bdbe 100644
--- a/repos/base-hw/mk/spec-hw_x86_64_muen.mk
+++ b/repos/base-hw/mk/spec/hw_x86_64_muen.mk
@@ -8,4 +8,4 @@
SPECS += hw_x86_64 muen
# include implied specs
-include $(call select_from_repositories,mk/spec-hw_x86_64.mk)
+include $(call select_from_repositories,mk/spec/hw_x86_64.mk)
diff --git a/repos/base-hw/mk/spec-hw_zynq.mk b/repos/base-hw/mk/spec/hw_zynq.mk
similarity index 69%
rename from repos/base-hw/mk/spec-hw_zynq.mk
rename to repos/base-hw/mk/spec/hw_zynq.mk
index 388a5a7628..9d2bf40fd9 100644
--- a/repos/base-hw/mk/spec-hw_zynq.mk
+++ b/repos/base-hw/mk/spec/hw_zynq.mk
@@ -5,7 +5,7 @@
#
# denote which specs are also fulfilled by this spec
-SPECS += hw platform_zynq
+SPECS += hw zynq_qemu
# configure multiprocessor mode
NR_OF_CPUS = 1
@@ -14,5 +14,5 @@ NR_OF_CPUS = 1
LD_TEXT_ADDR ?= 0x00100000
# include implied specs
-include $(call select_from_repositories,mk/spec-hw.mk)
-include $(call select_from_repositories,mk/spec-platform_zynq.mk)
+include $(call select_from_repositories,mk/spec/hw.mk)
+include $(call select_from_repositories,mk/spec/zynq_qemu.mk)
diff --git a/repos/base-hw/src/core/include/spec/exynos5/serial.h b/repos/base-hw/src/core/include/spec/exynos5/serial.h
index bb2715fd2d..758d4266c6 100644
--- a/repos/base-hw/src/core/include/spec/exynos5/serial.h
+++ b/repos/base-hw/src/core/include/spec/exynos5/serial.h
@@ -19,7 +19,7 @@
#include
/* Genode includes */
-#include
+#include
namespace Genode
{
diff --git a/repos/base-hw/src/core/include/spec/imx/serial.h b/repos/base-hw/src/core/include/spec/imx/serial.h
index bc317bb469..c3efc7f5b6 100644
--- a/repos/base-hw/src/core/include/spec/imx/serial.h
+++ b/repos/base-hw/src/core/include/spec/imx/serial.h
@@ -11,14 +11,14 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _SERIAL_H_
-#define _SERIAL_H_
+#ifndef _CORE__INCLUDE__SPEC__IMX__SERIAL_H_
+#define _CORE__INCLUDE__SPEC__IMX__SERIAL_H_
/* core includes */
#include
/* Genode includes */
-#include
+#include
namespace Genode
{
@@ -38,4 +38,4 @@ namespace Genode
};
}
-#endif /* _SERIAL_H_ */
+#endif /* _CORE__INCLUDE__SPEC__IMX__SERIAL_H_ */
diff --git a/repos/base-hw/src/core/include/spec/imx53/timer.h b/repos/base-hw/src/core/include/spec/imx53/timer.h
index 6ec749e1b5..dc187d3bd5 100644
--- a/repos/base-hw/src/core/include/spec/imx53/timer.h
+++ b/repos/base-hw/src/core/include/spec/imx53/timer.h
@@ -11,11 +11,11 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _TIMER_H_
-#define _TIMER_H_
+#ifndef _CORE__INCLUDE__SPEC__IMX53__TIMER_H_
+#define _CORE__INCLUDE__SPEC__IMX53__TIMER_H_
/* Genode includes */
-#include
+#include
/* core includes */
#include
@@ -45,4 +45,4 @@ class Genode::Timer : public Epit_base
namespace Kernel { class Timer : public Genode::Timer { }; }
-#endif /* _TIMER_H_ */
+#endif /* _CORE__INCLUDE__SPEC__IMX53__TIMER_H_ */
diff --git a/repos/base-hw/src/core/include/spec/pl011/serial.h b/repos/base-hw/src/core/include/spec/pl011/serial.h
index ba0be3a4bd..b35e564221 100644
--- a/repos/base-hw/src/core/include/spec/pl011/serial.h
+++ b/repos/base-hw/src/core/include/spec/pl011/serial.h
@@ -11,14 +11,14 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _SERIAL_H_
-#define _SERIAL_H_
+#ifndef _CORE__INCLUDE__SPEC__PL011__SERIAL_H_
+#define _CORE__INCLUDE__SPEC__PL011__SERIAL_H_
/* core includes */
#include
/* Genode includes */
-#include
+#include
namespace Genode
{
@@ -42,4 +42,4 @@ namespace Genode
};
}
-#endif /* _SERIAL_H_ */
+#endif /* _CORE__INCLUDE__SPEC__PL011__SERIAL_H_ */
diff --git a/repos/base-hw/src/core/include/spec/tl16c750/serial.h b/repos/base-hw/src/core/include/spec/tl16c750/serial.h
index a01cee0356..0805057ca8 100644
--- a/repos/base-hw/src/core/include/spec/tl16c750/serial.h
+++ b/repos/base-hw/src/core/include/spec/tl16c750/serial.h
@@ -18,7 +18,7 @@
#include
/* Genode includes */
-#include
+#include
namespace Genode
{
diff --git a/repos/base-hw/src/core/include/spec/x86_64/muen/serial.h b/repos/base-hw/src/core/include/spec/x86_64/muen/serial.h
index bd1406f235..231a2a4613 100644
--- a/repos/base-hw/src/core/include/spec/x86_64/muen/serial.h
+++ b/repos/base-hw/src/core/include/spec/x86_64/muen/serial.h
@@ -15,7 +15,7 @@
#pragma once
/* Genode includes */
-#include
+#include
namespace Genode { class Serial; }
diff --git a/repos/base-hw/src/core/include/spec/x86_64/serial.h b/repos/base-hw/src/core/include/spec/x86_64/serial.h
index 2ea9e3a735..c749469e9a 100644
--- a/repos/base-hw/src/core/include/spec/x86_64/serial.h
+++ b/repos/base-hw/src/core/include/spec/x86_64/serial.h
@@ -15,7 +15,7 @@
/* Genode includes */
#include
-#include
+#include
namespace Genode { class Serial; }
diff --git a/repos/base-hw/src/core/include/spec/xilinx/serial.h b/repos/base-hw/src/core/include/spec/xilinx/serial.h
index 1b5deb40c4..09cfc8c72e 100644
--- a/repos/base-hw/src/core/include/spec/xilinx/serial.h
+++ b/repos/base-hw/src/core/include/spec/xilinx/serial.h
@@ -18,7 +18,7 @@
#include
/* Genode includes */
-#include
+#include
namespace Genode { class Serial; }
diff --git a/repos/base-hw/src/platform/_main_parent_cap.h b/repos/base-hw/src/lib/startup/_main_parent_cap.h
similarity index 81%
rename from repos/base-hw/src/platform/_main_parent_cap.h
rename to repos/base-hw/src/lib/startup/_main_parent_cap.h
index 0cfca05e80..1872439e81 100644
--- a/repos/base-hw/src/platform/_main_parent_cap.h
+++ b/repos/base-hw/src/lib/startup/_main_parent_cap.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PLATFORM__MAIN_PARENT_CAP_H_
-#define _PLATFORM__MAIN_PARENT_CAP_H_
+#ifndef _LIB__STARTUP___MAIN_PARENT_CAP_H_
+#define _LIB__STARTUP___MAIN_PARENT_CAP_H_
/* Genode includes */
#include
@@ -33,4 +33,4 @@ namespace Genode {
}
}
-#endif /* _PLATFORM__MAIN_PARENT_CAP_H_ */
+#endif /* _LIB__STARTUP___MAIN_PARENT_CAP_H_ */
diff --git a/repos/base-linux/lib/import/import-syscall.mk b/repos/base-linux/lib/import/import-syscall.mk
index 8a88896531..066ef6861c 100644
--- a/repos/base-linux/lib/import/import-syscall.mk
+++ b/repos/base-linux/lib/import/import-syscall.mk
@@ -1,4 +1,4 @@
-HOST_INC_DIR += $(dir $(call select_from_repositories,src/platform/linux_syscalls.h))
+HOST_INC_DIR += $(dir $(call select_from_repositories,src/lib/syscall/linux_syscalls.h))
HOST_INC_DIR += /usr/include
# needed for Ubuntu >= 11.04
diff --git a/repos/base-linux/lib/mk/arm/syscall.mk b/repos/base-linux/lib/mk/arm/syscall.mk
deleted file mode 100644
index 9fc83d589a..0000000000
--- a/repos/base-linux/lib/mk/arm/syscall.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-REQUIRES = linux arm
-SRC_S += lx_clone.S lx_syscall.S
-
-vpath lx_clone.S $(REP_DIR)/../base-linux/src/platform/arm
-vpath lx_syscall.S $(REP_DIR)/../base-linux/src/platform/arm
diff --git a/repos/base-linux/lib/mk/base-common.mk b/repos/base-linux/lib/mk/base-common.mk
index 14aa27d52d..30fcf40d6c 100644
--- a/repos/base-linux/lib/mk/base-common.mk
+++ b/repos/base-linux/lib/mk/base-common.mk
@@ -25,7 +25,7 @@ SRC_CC += irq/platform.cc
INC_DIR += $(REP_DIR)/src/base/lock $(BASE_DIR)/src/base/lock
INC_DIR += $(REP_DIR)/src/base/ipc
INC_DIR += $(REP_DIR)/src/base/env $(BASE_DIR)/src/base/env
-INC_DIR += $(REP_DIR)/src/platform $(BASE_DIR)/src/platform
+INC_DIR += $(BASE_DIR)/src/lib/startup
INC_DIR += $(BASE_DIR)/src/base/thread
vpath %.cc $(REP_DIR)/src/base
diff --git a/repos/base-linux/lib/mk/lx_hybrid.mk b/repos/base-linux/lib/mk/lx_hybrid.mk
index ce0a8283bd..e8904c9a09 100644
--- a/repos/base-linux/lib/mk/lx_hybrid.mk
+++ b/repos/base-linux/lib/mk/lx_hybrid.mk
@@ -1,7 +1,7 @@
SRC_CC += lx_hybrid.cc new_delete.cc
vpath new_delete.cc $(BASE_DIR)/src/base/cxx
-vpath lx_hybrid.cc $(REP_DIR)/src/platform
+vpath lx_hybrid.cc $(REP_DIR)/src/lib/lx_hybrid
# add parts of the base library that are shared with core
LIBS += base-common
diff --git a/repos/base-linux/lib/mk/arm/base.mk b/repos/base-linux/lib/mk/spec/arm/base.mk
similarity index 100%
rename from repos/base-linux/lib/mk/arm/base.mk
rename to repos/base-linux/lib/mk/spec/arm/base.mk
diff --git a/repos/base-linux/lib/mk/spec/arm/syscall.mk b/repos/base-linux/lib/mk/spec/arm/syscall.mk
new file mode 100644
index 0000000000..2d3c3bf32f
--- /dev/null
+++ b/repos/base-linux/lib/mk/spec/arm/syscall.mk
@@ -0,0 +1,5 @@
+REQUIRES = linux arm
+SRC_S += lx_clone.S lx_syscall.S
+
+vpath lx_clone.S $(REP_DIR)/src/lib/syscall/spec/arm
+vpath lx_syscall.S $(REP_DIR)/src/lib/syscall/spec/arm
diff --git a/repos/base-linux/lib/mk/x86/base.mk b/repos/base-linux/lib/mk/spec/x86/base.mk
similarity index 100%
rename from repos/base-linux/lib/mk/x86/base.mk
rename to repos/base-linux/lib/mk/spec/x86/base.mk
diff --git a/repos/base-linux/lib/mk/spec/x86_32/syscall.mk b/repos/base-linux/lib/mk/spec/x86_32/syscall.mk
new file mode 100644
index 0000000000..ab88a48eb1
--- /dev/null
+++ b/repos/base-linux/lib/mk/spec/x86_32/syscall.mk
@@ -0,0 +1,5 @@
+REQUIRES = linux x86
+SRC_S += lx_clone.S lx_syscall.S
+
+vpath lx_clone.S $(REP_DIR)/src/lib/syscall/spec/x86_32
+vpath lx_syscall.S $(REP_DIR)/src/lib/syscall/spec/x86_32
diff --git a/repos/base-linux/lib/mk/spec/x86_64/syscall.mk b/repos/base-linux/lib/mk/spec/x86_64/syscall.mk
new file mode 100644
index 0000000000..69f3ccdada
--- /dev/null
+++ b/repos/base-linux/lib/mk/spec/x86_64/syscall.mk
@@ -0,0 +1,7 @@
+REQUIRES = linux x86
+SRC_S += lx_clone.S lx_restore_rt.S lx_syscall.S
+
+vpath lx_restore_rt.S $(REP_DIR)/src/lib/syscall/spec/x86_64
+vpath lx_clone.S $(REP_DIR)/src/lib/syscall/spec/x86_64
+vpath lx_syscall.S $(REP_DIR)/src/lib/syscall/spec/x86_64
+
diff --git a/repos/base-linux/lib/mk/x86_32/syscall.mk b/repos/base-linux/lib/mk/x86_32/syscall.mk
deleted file mode 100644
index 28371b0da0..0000000000
--- a/repos/base-linux/lib/mk/x86_32/syscall.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-REQUIRES = linux x86
-SRC_S += lx_clone.S lx_syscall.S
-
-vpath lx_clone.S $(REP_DIR)/../base-linux/src/platform/x86_32
-vpath lx_syscall.S $(REP_DIR)/../base-linux/src/platform/x86_32
diff --git a/repos/base-linux/lib/mk/x86_64/syscall.mk b/repos/base-linux/lib/mk/x86_64/syscall.mk
deleted file mode 100644
index f2d6144978..0000000000
--- a/repos/base-linux/lib/mk/x86_64/syscall.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-REQUIRES = linux x86
-SRC_S += lx_clone.S lx_restore_rt.S lx_syscall.S
-
-vpath lx_restore_rt.S $(REP_DIR)/../base-linux/src/platform/x86_64
-vpath lx_clone.S $(REP_DIR)/../base-linux/src/platform/x86_64
-vpath lx_syscall.S $(REP_DIR)/../base-linux/src/platform/x86_64
-
diff --git a/repos/base-linux/mk/spec-linux.mk b/repos/base-linux/mk/spec/linux.mk
similarity index 72%
rename from repos/base-linux/mk/spec-linux.mk
rename to repos/base-linux/mk/spec/linux.mk
index a565f6cdd0..a1131f7fc8 100644
--- a/repos/base-linux/mk/spec-linux.mk
+++ b/repos/base-linux/mk/spec/linux.mk
@@ -9,8 +9,8 @@
#
ifneq ($(USE_HOST_LD_SCRIPT),yes)
LD_TEXT_ADDR ?= 0x01000000
-LD_SCRIPT_STATIC = $(call select_from_repositories,src/platform/genode.ld) \
- $(call select_from_repositories,src/platform/context_area.nostdlib.ld)
+LD_SCRIPT_STATIC = $(call select_from_repositories,src/ld/genode.ld) \
+ $(call select_from_repositories,src/ld/context_area.nostdlib.ld)
else
LD_SCRIPT_STATIC ?=
endif
diff --git a/repos/base-linux/mk/spec-linux_arm.mk b/repos/base-linux/mk/spec/linux_arm.mk
similarity index 75%
rename from repos/base-linux/mk/spec-linux_arm.mk
rename to repos/base-linux/mk/spec/linux_arm.mk
index 945dd7f797..150388a2e0 100644
--- a/repos/base-linux/mk/spec-linux_arm.mk
+++ b/repos/base-linux/mk/spec/linux_arm.mk
@@ -3,8 +3,6 @@
#
SPECS += linux arm
-REP_INC_DIR += src/platform/arm
-
ifeq ($(shell gcc -dumpmachine),arm-linux-gnueabihf)
CC_MARCH += -mfloat-abi=hard
endif
@@ -21,5 +19,5 @@ endif
#
# Include less-specific configuration
#
-include $(call select_from_repositories,mk/spec-arm.mk)
-include $(call select_from_repositories,mk/spec-linux.mk)
+include $(call select_from_repositories,mk/spec/arm.mk)
+include $(call select_from_repositories,mk/spec/linux.mk)
diff --git a/repos/base-linux/mk/spec-linux_x86_32.mk b/repos/base-linux/mk/spec/linux_x86_32.mk
similarity index 70%
rename from repos/base-linux/mk/spec-linux_x86_32.mk
rename to repos/base-linux/mk/spec/linux_x86_32.mk
index 6bcd64715a..7d3488ca92 100644
--- a/repos/base-linux/mk/spec-linux_x86_32.mk
+++ b/repos/base-linux/mk/spec/linux_x86_32.mk
@@ -3,8 +3,6 @@
#
SPECS += linux x86_32
-REP_INC_DIR += src/platform/x86_32
-
#
# We need to manually add the default linker script on the command line in case
# of standard library use. Otherwise, we were not able to extend it by the
@@ -17,5 +15,5 @@ endif
#
# Include less-specific configuration
#
-include $(call select_from_repositories,mk/spec-x86_32.mk)
-include $(call select_from_repositories,mk/spec-linux.mk)
+include $(call select_from_repositories,mk/spec/x86_32.mk)
+include $(call select_from_repositories,mk/spec/linux.mk)
diff --git a/repos/base-linux/mk/spec-linux_x86_64.mk b/repos/base-linux/mk/spec/linux_x86_64.mk
similarity index 70%
rename from repos/base-linux/mk/spec-linux_x86_64.mk
rename to repos/base-linux/mk/spec/linux_x86_64.mk
index 9e14b2fec1..f3145caa74 100644
--- a/repos/base-linux/mk/spec-linux_x86_64.mk
+++ b/repos/base-linux/mk/spec/linux_x86_64.mk
@@ -3,8 +3,6 @@
#
SPECS += linux x86_64
-REP_INC_DIR += src/platform/x86_64
-
#
# We need to manually add the default linker script on the command line in case
# of standard library use. Otherwise, we were not able to extend it by the
@@ -17,6 +15,6 @@ endif
#
# Include less-specific configuration
#
-include $(call select_from_repositories,mk/spec-x86_64.mk)
-include $(call select_from_repositories,mk/spec-linux.mk)
+include $(call select_from_repositories,mk/spec/x86_64.mk)
+include $(call select_from_repositories,mk/spec/linux.mk)
diff --git a/repos/base-linux/src/platform/context_area.h b/repos/base-linux/src/base/env/context_area.h
similarity index 93%
rename from repos/base-linux/src/platform/context_area.h
rename to repos/base-linux/src/base/env/context_area.h
index 489218c192..aa2e3c2dd1 100644
--- a/repos/base-linux/src/platform/context_area.h
+++ b/repos/base-linux/src/base/env/context_area.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PLATFORM__CONTEXT_AREA_H_
-#define _PLATFORM__CONTEXT_AREA_H_
+#ifndef _BASE__ENV__CONTEXT_AREA_H_
+#define _BASE__ENV__CONTEXT_AREA_H_
/* Genode includes */
#include
@@ -61,4 +61,4 @@ static inline Genode::addr_t reserve_context_area()
return (addr_t) addr_out;
}
-#endif /* _PLATFORM__CONTEXT_AREA_H_ */
+#endif /* _BASE__ENV__CONTEXT_AREA_H_ */
diff --git a/repos/base-linux/src/platform/context_area.nostdlib.ld b/repos/base-linux/src/ld/context_area.nostdlib.ld
similarity index 100%
rename from repos/base-linux/src/platform/context_area.nostdlib.ld
rename to repos/base-linux/src/ld/context_area.nostdlib.ld
diff --git a/repos/base-linux/src/platform/context_area.stdlib.ld b/repos/base-linux/src/ld/context_area.stdlib.ld
similarity index 100%
rename from repos/base-linux/src/platform/context_area.stdlib.ld
rename to repos/base-linux/src/ld/context_area.stdlib.ld
diff --git a/repos/base-linux/src/platform/lx_hybrid.cc b/repos/base-linux/src/lib/lx_hybrid/lx_hybrid.cc
similarity index 100%
rename from repos/base-linux/src/platform/lx_hybrid.cc
rename to repos/base-linux/src/lib/lx_hybrid/lx_hybrid.cc
diff --git a/repos/base-linux/src/platform/linux_syscalls.h b/repos/base-linux/src/lib/syscall/linux_syscalls.h
similarity index 98%
rename from repos/base-linux/src/platform/linux_syscalls.h
rename to repos/base-linux/src/lib/syscall/linux_syscalls.h
index af0486eec0..0a8e82c8f4 100644
--- a/repos/base-linux/src/platform/linux_syscalls.h
+++ b/repos/base-linux/src/lib/syscall/linux_syscalls.h
@@ -25,8 +25,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PLATFORM__LINUX_SYSCALLS_H_
-#define _PLATFORM__LINUX_SYSCALLS_H_
+#ifndef _LIB__SYSCALL__LINUX_SYSCALLS_H_
+#define _LIB__SYSCALL__LINUX_SYSCALLS_H_
#ifndef _GNU_SOURCE
#define _GNU_SOURCE 1 /* needed to enable the definition of 'stat64' */
@@ -392,4 +392,4 @@ inline bool lx_sigsetmask(int signum, bool state)
}
-#endif /* _PLATFORM__LINUX_SYSCALLS_H_ */
+#endif /* _LIB__SYSCALL__LINUX_SYSCALLS_H_ */
diff --git a/repos/base-linux/src/platform/arm/lx_clone.S b/repos/base-linux/src/lib/syscall/spec/arm/lx_clone.S
similarity index 100%
rename from repos/base-linux/src/platform/arm/lx_clone.S
rename to repos/base-linux/src/lib/syscall/spec/arm/lx_clone.S
diff --git a/repos/base-linux/src/platform/arm/lx_syscall.S b/repos/base-linux/src/lib/syscall/spec/arm/lx_syscall.S
similarity index 100%
rename from repos/base-linux/src/platform/arm/lx_syscall.S
rename to repos/base-linux/src/lib/syscall/spec/arm/lx_syscall.S
diff --git a/repos/base-linux/src/platform/x86_32/lx_clone.S b/repos/base-linux/src/lib/syscall/spec/x86_32/lx_clone.S
similarity index 100%
rename from repos/base-linux/src/platform/x86_32/lx_clone.S
rename to repos/base-linux/src/lib/syscall/spec/x86_32/lx_clone.S
diff --git a/repos/base-linux/src/platform/x86_32/lx_syscall.S b/repos/base-linux/src/lib/syscall/spec/x86_32/lx_syscall.S
similarity index 100%
rename from repos/base-linux/src/platform/x86_32/lx_syscall.S
rename to repos/base-linux/src/lib/syscall/spec/x86_32/lx_syscall.S
diff --git a/repos/base-linux/src/platform/x86_64/lx_clone.S b/repos/base-linux/src/lib/syscall/spec/x86_64/lx_clone.S
similarity index 100%
rename from repos/base-linux/src/platform/x86_64/lx_clone.S
rename to repos/base-linux/src/lib/syscall/spec/x86_64/lx_clone.S
diff --git a/repos/base-linux/src/platform/x86_64/lx_restore_rt.S b/repos/base-linux/src/lib/syscall/spec/x86_64/lx_restore_rt.S
similarity index 100%
rename from repos/base-linux/src/platform/x86_64/lx_restore_rt.S
rename to repos/base-linux/src/lib/syscall/spec/x86_64/lx_restore_rt.S
diff --git a/repos/base-linux/src/platform/x86_64/lx_syscall.S b/repos/base-linux/src/lib/syscall/spec/x86_64/lx_syscall.S
similarity index 100%
rename from repos/base-linux/src/platform/x86_64/lx_syscall.S
rename to repos/base-linux/src/lib/syscall/spec/x86_64/lx_syscall.S
diff --git a/repos/base-nova/doc/nova.txt b/repos/base-nova/doc/nova.txt
index 4b1f1eb0b8..bb5950d6d9 100644
--- a/repos/base-nova/doc/nova.txt
+++ b/repos/base-nova/doc/nova.txt
@@ -116,7 +116,7 @@ on NOVA:
comport 0.
* Because NOVA does not allow rootask to have a BSS segment, we need a slightly
- modified linker script for core (see 'src/platform/roottask.ld').
+ modified linker script for core (see 'src/core/core.ld').
All other Genode programs use Genode's generic linker script.
* The Genode 'Capability' type consists of a portal selector expressing the
diff --git a/repos/base-nova/include/32bit/nova/syscalls.h b/repos/base-nova/include/spec/32bit/nova/syscalls.h
similarity index 98%
rename from repos/base-nova/include/32bit/nova/syscalls.h
rename to repos/base-nova/include/spec/32bit/nova/syscalls.h
index 608e45f407..abb012fc53 100644
--- a/repos/base-nova/include/32bit/nova/syscalls.h
+++ b/repos/base-nova/include/spec/32bit/nova/syscalls.h
@@ -30,8 +30,8 @@
* OTHER DEALINGS IN THE SOFTWARE.
*/
-#ifndef _PLATFORM__NOVA_SYSCALLS_H_
-#define _PLATFORM__NOVA_SYSCALLS_H_
+#ifndef _INCLUDE__SPEC__32BIT__NOVA__SYSCALLS_H_
+#define _INCLUDE__SPEC__32BIT__NOVA__SYSCALLS_H_
#include
#include
@@ -378,4 +378,4 @@ namespace Nova {
return res;
}
}
-#endif /* _PLATFORM__NOVA_SYSCALLS_H_ */
+#endif /* _INCLUDE__SPEC__32BIT__NOVA__SYSCALLS_H_ */
diff --git a/repos/base-nova/include/64bit/nova/syscalls.h b/repos/base-nova/include/spec/64bit/nova/syscalls.h
similarity index 98%
rename from repos/base-nova/include/64bit/nova/syscalls.h
rename to repos/base-nova/include/spec/64bit/nova/syscalls.h
index ed6ec269bf..40063bfb45 100644
--- a/repos/base-nova/include/64bit/nova/syscalls.h
+++ b/repos/base-nova/include/spec/64bit/nova/syscalls.h
@@ -31,8 +31,8 @@
* OTHER DEALINGS IN THE SOFTWARE.
*/
-#ifndef _PLATFORM__NOVA_SYSCALLS_H_
-#define _PLATFORM__NOVA_SYSCALLS_H_
+#ifndef _INCLUDE__SPEC__64BIT__NOVA__SYSCALLS_H_
+#define _INCLUDE__SPEC__64BIT__NOVA__SYSCALLS_H_
#include
#include
@@ -332,4 +332,4 @@ namespace Nova {
return syscall_5(NOVA_ASSIGN_GSI, 0, sm, msi_addr, msi_data, si);
}
}
-#endif /* _PLATFORM__NOVA_SYSCALLS_H_ */
+#endif /* _INCLUDE__SPEC__64BIT__NOVA__SYSCALLS_H_ */
diff --git a/repos/base-nova/lib/mk/x86_32/core.mk b/repos/base-nova/lib/mk/spec/x86_32/core.mk
similarity index 100%
rename from repos/base-nova/lib/mk/x86_32/core.mk
rename to repos/base-nova/lib/mk/spec/x86_32/core.mk
diff --git a/repos/base-nova/lib/mk/x86_64/core.mk b/repos/base-nova/lib/mk/spec/x86_64/core.mk
similarity index 100%
rename from repos/base-nova/lib/mk/x86_64/core.mk
rename to repos/base-nova/lib/mk/spec/x86_64/core.mk
diff --git a/repos/base-nova/mk/spec-nova_x86_32.mk b/repos/base-nova/mk/spec-nova_x86_32.mk
deleted file mode 100644
index 7d94836a33..0000000000
--- a/repos/base-nova/mk/spec-nova_x86_32.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-#
-# Specifics for the NOVA kernel API x86 32 bit
-#
-
-SPECS += nova x86_32
-
-include $(call select_from_repositories,mk/spec-x86_32.mk)
-include $(call select_from_repositories,mk/spec-nova.mk)
diff --git a/repos/base-nova/mk/spec-nova_x86_64.mk b/repos/base-nova/mk/spec-nova_x86_64.mk
deleted file mode 100644
index 922c92cb19..0000000000
--- a/repos/base-nova/mk/spec-nova_x86_64.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-#
-# Specifics for the NOVA kernel API x86 64 bit
-#
-
-SPECS += nova x86_64
-
-include $(call select_from_repositories,mk/spec-x86_64.mk)
-include $(call select_from_repositories,mk/spec-nova.mk)
diff --git a/repos/base-nova/mk/spec-nova.mk b/repos/base-nova/mk/spec/nova.mk
similarity index 100%
rename from repos/base-nova/mk/spec-nova.mk
rename to repos/base-nova/mk/spec/nova.mk
diff --git a/repos/base-nova/mk/spec/nova_x86_32.mk b/repos/base-nova/mk/spec/nova_x86_32.mk
new file mode 100644
index 0000000000..6dbadf00ce
--- /dev/null
+++ b/repos/base-nova/mk/spec/nova_x86_32.mk
@@ -0,0 +1,8 @@
+#
+# Specifics for the NOVA kernel API x86 32 bit
+#
+
+SPECS += nova x86_32
+
+include $(call select_from_repositories,mk/spec/x86_32.mk)
+include $(call select_from_repositories,mk/spec/nova.mk)
diff --git a/repos/base-nova/mk/spec/nova_x86_64.mk b/repos/base-nova/mk/spec/nova_x86_64.mk
new file mode 100644
index 0000000000..7403c8e413
--- /dev/null
+++ b/repos/base-nova/mk/spec/nova_x86_64.mk
@@ -0,0 +1,8 @@
+#
+# Specifics for the NOVA kernel API x86 64 bit
+#
+
+SPECS += nova x86_64
+
+include $(call select_from_repositories,mk/spec/x86_64.mk)
+include $(call select_from_repositories,mk/spec/nova.mk)
diff --git a/repos/base-nova/src/base/console/core_console.h b/repos/base-nova/src/base/console/core_console.h
index ea1dd7a686..3747aefa49 100644
--- a/repos/base-nova/src/base/console/core_console.h
+++ b/repos/base-nova/src/base/console/core_console.h
@@ -17,7 +17,7 @@
/* Genode includes */
#include
#include
-#include
+#include
namespace Genode { class Core_console; }
diff --git a/repos/base-nova/src/platform/roottask.ld b/repos/base-nova/src/core/core.ld
similarity index 100%
rename from repos/base-nova/src/platform/roottask.ld
rename to repos/base-nova/src/core/core.ld
diff --git a/repos/base-nova/src/core/target.inc b/repos/base-nova/src/core/target.inc
index 5bcbd31cfc..ea82231e64 100644
--- a/repos/base-nova/src/core/target.inc
+++ b/repos/base-nova/src/core/target.inc
@@ -51,13 +51,13 @@ vpath cpu_session_component.cc $(GEN_CORE_DIR)
vpath pd_session_component.cc $(GEN_CORE_DIR)
vpath rm_session_component.cc $(GEN_CORE_DIR)
vpath trace_session_component.cc $(GEN_CORE_DIR)
-vpath io_port_session_component.cc $(GEN_CORE_DIR)/x86
+vpath io_port_session_component.cc $(GEN_CORE_DIR)/spec/x86
vpath io_mem_session_component.cc $(GEN_CORE_DIR)
vpath io_mem_session_support.cc $(GEN_CORE_DIR)
vpath dataspace_component.cc $(GEN_CORE_DIR)
vpath core_mem_alloc.cc $(GEN_CORE_DIR)
vpath dump_alloc.cc $(GEN_CORE_DIR)
-vpath platform_services.cc $(GEN_CORE_DIR)/x86
+vpath platform_services.cc $(GEN_CORE_DIR)/spec/x86
vpath context_area.cc $(GEN_CORE_DIR)
vpath core_printf.cc $(BASE_DIR)/src/base/console
vpath %.cc $(REP_DIR)/src/core
diff --git a/repos/base-nova/src/core/target.mk b/repos/base-nova/src/core/target.mk
index 36a57d0f3b..6b55ce9834 100644
--- a/repos/base-nova/src/core/target.mk
+++ b/repos/base-nova/src/core/target.mk
@@ -1,4 +1,4 @@
include $(PRG_DIR)/target.inc
-LD_SCRIPT_STATIC = $(REP_DIR)/src/platform/roottask.ld
+LD_SCRIPT_STATIC = $(REP_DIR)/src/core/core.ld
LD_TEXT_ADDR = 0x100000
diff --git a/repos/base-nova/src/platform/_main_parent_cap.h b/repos/base-nova/src/lib/startup/_main_parent_cap.h
similarity index 85%
rename from repos/base-nova/src/platform/_main_parent_cap.h
rename to repos/base-nova/src/lib/startup/_main_parent_cap.h
index 87fbfc2cfd..27828f78b0 100644
--- a/repos/base-nova/src/platform/_main_parent_cap.h
+++ b/repos/base-nova/src/lib/startup/_main_parent_cap.h
@@ -15,8 +15,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PLATFORM__MAIN_PARENT_CAP_H_
-#define _PLATFORM__MAIN_PARENT_CAP_H_
+#ifndef _LIB__STARTUP___MAIN_PARENT_CAP_H_
+#define _LIB__STARTUP___MAIN_PARENT_CAP_H_
/* Genode includes */
#include
@@ -37,4 +37,4 @@ namespace Genode {
}
}
-#endif /* _PLATFORM__MAIN_PARENT_CAP_H_ */
+#endif /* _LIB__STARTUP___MAIN_PARENT_CAP_H_ */
diff --git a/repos/base-okl4/lib/mk/base-common.mk b/repos/base-okl4/lib/mk/base-common.mk
index a01aceb8c6..11fa72630c 100644
--- a/repos/base-okl4/lib/mk/base-common.mk
+++ b/repos/base-okl4/lib/mk/base-common.mk
@@ -27,6 +27,6 @@ INC_DIR += $(REP_DIR)/src/base/lock
INC_DIR += $(BASE_DIR)/src/base/lock
INC_DIR += $(BASE_DIR)/src/base/thread
-vpath cap_copy.cc $(BASE_DIR)/src/platform
+vpath cap_copy.cc $(BASE_DIR)/src/lib/startup
vpath %.cc $(REP_DIR)/src/base
vpath %.cc $(BASE_DIR)/src/base
diff --git a/repos/base-okl4/lib/mk/x86/kernel.mk b/repos/base-okl4/lib/mk/spec/x86/kernel.mk
similarity index 100%
rename from repos/base-okl4/lib/mk/x86/kernel.mk
rename to repos/base-okl4/lib/mk/spec/x86/kernel.mk
diff --git a/repos/base-okl4/lib/mk/x86/platform.mk b/repos/base-okl4/lib/mk/spec/x86/platform.mk
similarity index 100%
rename from repos/base-okl4/lib/mk/x86/platform.mk
rename to repos/base-okl4/lib/mk/spec/x86/platform.mk
diff --git a/repos/base-okl4/mk/spec-okl4.mk b/repos/base-okl4/mk/spec/okl4.mk
similarity index 100%
rename from repos/base-okl4/mk/spec-okl4.mk
rename to repos/base-okl4/mk/spec/okl4.mk
diff --git a/repos/base-okl4/mk/spec-okl4_x86.mk b/repos/base-okl4/mk/spec/okl4_x86.mk
similarity index 64%
rename from repos/base-okl4/mk/spec-okl4_x86.mk
rename to repos/base-okl4/mk/spec/okl4_x86.mk
index aa05b6473f..18771aa51c 100644
--- a/repos/base-okl4/mk/spec-okl4_x86.mk
+++ b/repos/base-okl4/mk/spec/okl4_x86.mk
@@ -13,5 +13,5 @@ LD_TEXT_ADDR ?= 0x00200000
#
# Also include less-specific configuration last
#
-include $(call select_from_repositories,mk/spec-x86_32.mk)
-include $(call select_from_repositories,mk/spec-okl4.mk)
+include $(call select_from_repositories,mk/spec/x86_32.mk)
+include $(call select_from_repositories,mk/spec/okl4.mk)
diff --git a/repos/base-okl4/src/core/x86/platform_thread_x86.cc b/repos/base-okl4/src/core/spec/x86/platform_thread_x86.cc
similarity index 100%
rename from repos/base-okl4/src/core/x86/platform_thread_x86.cc
rename to repos/base-okl4/src/core/spec/x86/platform_thread_x86.cc
diff --git a/repos/base-okl4/src/core/x86/platform_x86.cc b/repos/base-okl4/src/core/spec/x86/platform_x86.cc
similarity index 100%
rename from repos/base-okl4/src/core/x86/platform_x86.cc
rename to repos/base-okl4/src/core/spec/x86/platform_x86.cc
diff --git a/repos/base-okl4/src/core/spec/x86/target.mk b/repos/base-okl4/src/core/spec/x86/target.mk
new file mode 100644
index 0000000000..915c2f2a24
--- /dev/null
+++ b/repos/base-okl4/src/core/spec/x86/target.mk
@@ -0,0 +1,12 @@
+include $(REP_DIR)/src/core/target.inc
+
+REQUIRES += x86
+
+SRC_CC += io_port_session_component.cc \
+ platform_thread_x86.cc
+
+vpath io_port_session_component.cc $(GEN_CORE_DIR)/spec/x86
+vpath platform_services.cc $(GEN_CORE_DIR)/spec/x86
+vpath platform_thread_x86.cc $(GEN_CORE_DIR)/spec/x86
+
+vpath crt0.s $(dir $(call select_from_repositories,src/lib/startup/spec/x86_32/crt0.s))
diff --git a/repos/base-okl4/src/core/target.inc b/repos/base-okl4/src/core/target.inc
index 7c42a54d77..1397fc271c 100644
--- a/repos/base-okl4/src/core/target.inc
+++ b/repos/base-okl4/src/core/target.inc
@@ -40,8 +40,7 @@ INC_DIR += $(REP_DIR)/src/core/include \
$(GEN_CORE_DIR)/include \
$(REP_DIR)/src/base/console \
$(BASE_DIR)/src/base/thread \
- $(BASE_DIR)/src/platform \
- $(REP_DIR)/src/platform
+ $(BASE_DIR)/src/lib/startup
include $(GEN_CORE_DIR)/version.inc
diff --git a/repos/base-okl4/src/core/x86/target.mk b/repos/base-okl4/src/core/x86/target.mk
deleted file mode 100644
index 362915b5b5..0000000000
--- a/repos/base-okl4/src/core/x86/target.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-include $(PRG_DIR)/../target.inc
-
-REQUIRES += x86
-
-SRC_CC += io_port_session_component.cc \
- platform_thread_x86.cc
-
-vpath io_port_session_component.cc $(GEN_CORE_DIR)/x86
-vpath platform_services.cc $(GEN_CORE_DIR)/x86
-vpath platform_thread_x86.cc $(GEN_CORE_DIR)/x86
-
-vpath crt0.s $(dir $(call select_from_repositories,src/platform/x86_32/crt0.s))
diff --git a/repos/base-okl4/src/kernel/x86/target.mk b/repos/base-okl4/src/kernel/spec/x86/target.mk
similarity index 98%
rename from repos/base-okl4/src/kernel/x86/target.mk
rename to repos/base-okl4/src/kernel/spec/x86/target.mk
index 467aa36093..dc6bd4b843 100644
--- a/repos/base-okl4/src/kernel/x86/target.mk
+++ b/repos/base-okl4/src/kernel/spec/x86/target.mk
@@ -45,7 +45,7 @@ SRC_SPP = arch/ia32/pistachio/src/trap.spp \
platform/pc99/pistachio/src/startup.spp
LD_TEXT_ADDR = 0xf0100000
--include $(PRG_DIR)/../target.inc
+-include $(REP_DIR)/src/kernel/target.inc
LD_SCRIPT_STATIC = $(REP_DIR)/contrib/generated/x86/linker.ld
INC_DIR = $(OKL4_BUILD_DIR)/include \
diff --git a/repos/base-pistachio/lib/mk/base-common.mk b/repos/base-pistachio/lib/mk/base-common.mk
index 8f8ee9880f..be3800e788 100644
--- a/repos/base-pistachio/lib/mk/base-common.mk
+++ b/repos/base-pistachio/lib/mk/base-common.mk
@@ -27,6 +27,6 @@ INC_DIR += $(REP_DIR)/src/base/lock
INC_DIR += $(BASE_DIR)/src/base/lock
INC_DIR += $(BASE_DIR)/src/base/thread
-vpath cap_copy.cc $(BASE_DIR)/src/platform
+vpath cap_copy.cc $(BASE_DIR)/src/lib/startup
vpath %.cc $(REP_DIR)/src/base
vpath %.cc $(BASE_DIR)/src/base
diff --git a/repos/base-pistachio/mk/spec-pistachio.mk b/repos/base-pistachio/mk/spec/pistachio.mk
similarity index 100%
rename from repos/base-pistachio/mk/spec-pistachio.mk
rename to repos/base-pistachio/mk/spec/pistachio.mk
diff --git a/repos/base-pistachio/mk/spec-pistachio_x86.mk b/repos/base-pistachio/mk/spec/pistachio_x86.mk
similarity index 59%
rename from repos/base-pistachio/mk/spec-pistachio_x86.mk
rename to repos/base-pistachio/mk/spec/pistachio_x86.mk
index 957de3d37d..aa19f464f7 100644
--- a/repos/base-pistachio/mk/spec-pistachio_x86.mk
+++ b/repos/base-pistachio/mk/spec/pistachio_x86.mk
@@ -10,5 +10,5 @@ SPECS += pci ps2 vesa framebuffer
#
LD_TEXT_ADDR ?= 0x00300000
-include $(call select_from_repositories,mk/spec-x86_32.mk)
-include $(call select_from_repositories,mk/spec-pistachio.mk)
+include $(call select_from_repositories,mk/spec/x86_32.mk)
+include $(call select_from_repositories,mk/spec/pistachio.mk)
diff --git a/repos/base-pistachio/src/core/x86/platform_x86.cc b/repos/base-pistachio/src/core/spec/x86/platform_x86.cc
similarity index 100%
rename from repos/base-pistachio/src/core/x86/platform_x86.cc
rename to repos/base-pistachio/src/core/spec/x86/platform_x86.cc
diff --git a/repos/base-pistachio/src/core/spec/x86/target.mk b/repos/base-pistachio/src/core/spec/x86/target.mk
new file mode 100644
index 0000000000..5d0e00a3d1
--- /dev/null
+++ b/repos/base-pistachio/src/core/spec/x86/target.mk
@@ -0,0 +1,9 @@
+include $(REP_DIR)/src/core/target.inc
+
+REQUIRES += x86
+SRC_CC += io_port_session_component.cc \
+ platform_x86.cc
+
+vpath io_port_session_component.cc $(GEN_CORE_DIR)/spec/x86
+vpath platform_services.cc $(GEN_CORE_DIR)/spec/x86
+
diff --git a/repos/base-pistachio/src/core/x86/target.mk b/repos/base-pistachio/src/core/x86/target.mk
deleted file mode 100644
index 9184e2adbd..0000000000
--- a/repos/base-pistachio/src/core/x86/target.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-include $(PRG_DIR)/../target.inc
-
-REQUIRES += x86
-SRC_CC += io_port_session_component.cc \
- platform_x86.cc
-
-vpath io_port_session_component.cc $(GEN_CORE_DIR)/x86
-vpath platform_services.cc $(GEN_CORE_DIR)/x86
-
diff --git a/repos/base-sel4/lib/mk/x86_32/base-common.mk b/repos/base-sel4/lib/mk/spec/x86_32/base-common.mk
similarity index 100%
rename from repos/base-sel4/lib/mk/x86_32/base-common.mk
rename to repos/base-sel4/lib/mk/spec/x86_32/base-common.mk
diff --git a/repos/base-sel4/lib/mk/x86_32/kernel.mk b/repos/base-sel4/lib/mk/spec/x86_32/kernel.mk
similarity index 100%
rename from repos/base-sel4/lib/mk/x86_32/kernel.mk
rename to repos/base-sel4/lib/mk/spec/x86_32/kernel.mk
diff --git a/repos/base-sel4/lib/mk/x86_32/platform.mk b/repos/base-sel4/lib/mk/spec/x86_32/platform.mk
similarity index 100%
rename from repos/base-sel4/lib/mk/x86_32/platform.mk
rename to repos/base-sel4/lib/mk/spec/x86_32/platform.mk
diff --git a/repos/base-sel4/lib/mk/x86_32/startup.mk b/repos/base-sel4/lib/mk/spec/x86_32/startup.mk
similarity index 85%
rename from repos/base-sel4/lib/mk/x86_32/startup.mk
rename to repos/base-sel4/lib/mk/spec/x86_32/startup.mk
index 5d82f24454..fe0a8cf972 100644
--- a/repos/base-sel4/lib/mk/x86_32/startup.mk
+++ b/repos/base-sel4/lib/mk/spec/x86_32/startup.mk
@@ -7,4 +7,4 @@ INC_DIR += $(REP_DIR)/src/base
include $(BASE_DIR)/lib/mk/startup.inc
-vpath crt0.s $(BASE_DIR)/src/platform/x86_32
+vpath crt0.s $(BASE_DIR)/src/lib/startup/spec/x86_32
diff --git a/repos/base-sel4/mk/spec-sel4_x86_32.mk b/repos/base-sel4/mk/spec-sel4_x86_32.mk
deleted file mode 100644
index 42459811e5..0000000000
--- a/repos/base-sel4/mk/spec-sel4_x86_32.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-#
-# Specifics for the seL4 kernel API x86 32 bit
-#
-
-SPECS += sel4 x86_32
-
-include $(call select_from_repositories,mk/spec-x86_32.mk)
-include $(call select_from_repositories,mk/spec-sel4.mk)
diff --git a/repos/base-sel4/mk/spec-sel4.mk b/repos/base-sel4/mk/spec/sel4.mk
similarity index 100%
rename from repos/base-sel4/mk/spec-sel4.mk
rename to repos/base-sel4/mk/spec/sel4.mk
diff --git a/repos/base-sel4/mk/spec/sel4_x86_32.mk b/repos/base-sel4/mk/spec/sel4_x86_32.mk
new file mode 100644
index 0000000000..7a5732d7fa
--- /dev/null
+++ b/repos/base-sel4/mk/spec/sel4_x86_32.mk
@@ -0,0 +1,8 @@
+#
+# Specifics for the seL4 kernel API x86 32 bit
+#
+
+SPECS += sel4 x86_32
+
+include $(call select_from_repositories,mk/spec/x86_32.mk)
+include $(call select_from_repositories,mk/spec/sel4.mk)
diff --git a/repos/base-sel4/src/platform/_main_parent_cap.h b/repos/base-sel4/src/lib/startup/_main_parent_cap.h
similarity index 84%
rename from repos/base-sel4/src/platform/_main_parent_cap.h
rename to repos/base-sel4/src/lib/startup/_main_parent_cap.h
index f2685fa3d3..72d031d441 100644
--- a/repos/base-sel4/src/platform/_main_parent_cap.h
+++ b/repos/base-sel4/src/lib/startup/_main_parent_cap.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PLATFORM__MAIN_PARENT_CAP_H_
-#define _PLATFORM__MAIN_PARENT_CAP_H_
+#ifndef _LIB__STARTUP___MAIN_PARENT_CAP_H_
+#define _LIB__STARTUP___MAIN_PARENT_CAP_H_
/* Genode includes */
#include
@@ -36,4 +36,4 @@ namespace Genode {
}
}
-#endif /* _PLATFORM__MAIN_PARENT_CAP_H_ */
+#endif /* _LIB__STARTUP___MAIN_PARENT_CAP_H_ */
diff --git a/repos/base/include/32bit/base/fixed_stdint.h b/repos/base/include/spec/32bit/base/fixed_stdint.h
similarity index 92%
rename from repos/base/include/32bit/base/fixed_stdint.h
rename to repos/base/include/spec/32bit/base/fixed_stdint.h
index 1b20f8a176..542ef7fcd3 100644
--- a/repos/base/include/32bit/base/fixed_stdint.h
+++ b/repos/base/include/spec/32bit/base/fixed_stdint.h
@@ -24,8 +24,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__32BIT__BASE__FIXED_STDINT_H_
-#define _INCLUDE__32BIT__BASE__FIXED_STDINT_H_
+#ifndef _INCLUDE__SPEC__32BIT__BASE__FIXED_STDINT_H_
+#define _INCLUDE__SPEC__32BIT__BASE__FIXED_STDINT_H_
/**********************************************************
@@ -59,4 +59,4 @@ namespace Genode {
}
#endif
-#endif /* _INCLUDE__32BIT__BASE__FIXED_STDINT_H_ */
+#endif /* _INCLUDE__SPEC__32BIT__BASE__FIXED_STDINT_H_ */
diff --git a/repos/base/include/64bit/base/fixed_stdint.h b/repos/base/include/spec/64bit/base/fixed_stdint.h
similarity index 89%
rename from repos/base/include/64bit/base/fixed_stdint.h
rename to repos/base/include/spec/64bit/base/fixed_stdint.h
index 9cc6638baf..0a4d00bbd9 100644
--- a/repos/base/include/64bit/base/fixed_stdint.h
+++ b/repos/base/include/spec/64bit/base/fixed_stdint.h
@@ -14,8 +14,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__64BIT__BASE__FIXED_STDINT_H_
-#define _INCLUDE__64BIT__BASE__FIXED_STDINT_H_
+#ifndef _INCLUDE__SPEC__64BIT__BASE__FIXED_STDINT_H_
+#define _INCLUDE__SPEC__64BIT__BASE__FIXED_STDINT_H_
/**********************************************************
@@ -49,4 +49,4 @@ namespace Genode {
}
#endif
-#endif /* _INCLUDE__64BIT__BASE__FIXED_STDINT_H_ */
+#endif /* _INCLUDE__SPEC__64BIT__BASE__FIXED_STDINT_H_ */
diff --git a/repos/base/include/arm/cpu/atomic.h b/repos/base/include/spec/arm/cpu/atomic.h
similarity index 91%
rename from repos/base/include/arm/cpu/atomic.h
rename to repos/base/include/spec/arm/cpu/atomic.h
index e9d5338373..9a52d9c72a 100644
--- a/repos/base/include/arm/cpu/atomic.h
+++ b/repos/base/include/spec/arm/cpu/atomic.h
@@ -12,8 +12,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__ARM__CPU__ATOMIC_H_
-#define _INCLUDE__ARM__CPU__ATOMIC_H_
+#ifndef _INCLUDE__SPEC__ARM__CPU__ATOMIC_H_
+#define _INCLUDE__SPEC__ARM__CPU__ATOMIC_H_
#include
@@ -56,4 +56,4 @@ namespace Genode {
}
}
-#endif /* _INCLUDE__ARM__CPU__ATOMIC_H_ */
+#endif /* _INCLUDE__SPEC__ARM__CPU__ATOMIC_H_ */
diff --git a/repos/base/include/arm/cpu/consts.h b/repos/base/include/spec/arm/cpu/consts.h
similarity index 82%
rename from repos/base/include/arm/cpu/consts.h
rename to repos/base/include/spec/arm/cpu/consts.h
index 5f3180d1ea..7bcbc71be7 100644
--- a/repos/base/include/arm/cpu/consts.h
+++ b/repos/base/include/spec/arm/cpu/consts.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__ARM__CPU__CONSTS_H_
-#define _INCLUDE__ARM__CPU__CONSTS_H_
+#ifndef _INCLUDE__SPEC__ARM__CPU__CONSTS_H_
+#define _INCLUDE__SPEC__ARM__CPU__CONSTS_H_
#include
@@ -30,4 +30,4 @@ namespace Abi {
inline void init_stack(Genode::addr_t) { }
}
-#endif /* _INCLUDE__ARM__CPU__CONSTS_H_ */
+#endif /* _INCLUDE__SPEC__ARM__CPU__CONSTS_H_ */
diff --git a/repos/base/include/arm/cpu/cpu_state.h b/repos/base/include/spec/arm/cpu/cpu_state.h
similarity index 92%
rename from repos/base/include/arm/cpu/cpu_state.h
rename to repos/base/include/spec/arm/cpu/cpu_state.h
index e63f05afa1..6204722da5 100644
--- a/repos/base/include/arm/cpu/cpu_state.h
+++ b/repos/base/include/spec/arm/cpu/cpu_state.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__ARM__CPU__CPU_STATE_H_
-#define _INCLUDE__ARM__CPU__CPU_STATE_H_
+#ifndef _INCLUDE__SPEC__ARM__CPU__CPU_STATE_H_
+#define _INCLUDE__SPEC__ARM__CPU__CPU_STATE_H_
/* Genode includes */
#include
@@ -85,4 +85,4 @@ struct Genode::Cpu_state_modes : Cpu_state
addr_t fiq_r[5]; /* fast-interrupt mode r8-r12 */
};
-#endif /* _INCLUDE__ARM__CPU__CPU_STATE_H_ */
+#endif /* _INCLUDE__SPEC__ARM__CPU__CPU_STATE_H_ */
diff --git a/repos/base/include/arm/cpu/string.h b/repos/base/include/spec/arm/cpu/string.h
similarity index 90%
rename from repos/base/include/arm/cpu/string.h
rename to repos/base/include/spec/arm/cpu/string.h
index 34fa6d336a..0c5cb92e9e 100644
--- a/repos/base/include/arm/cpu/string.h
+++ b/repos/base/include/spec/arm/cpu/string.h
@@ -12,8 +12,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__ARM__CPU__STRING_H_
-#define _INCLUDE__ARM__CPU__STRING_H_
+#ifndef _INCLUDE__SPEC__ARM__CPU__STRING_H_
+#define _INCLUDE__SPEC__ARM__CPU__STRING_H_
namespace Genode {
@@ -53,4 +53,4 @@ namespace Genode {
}
}
-#endif /* _INCLUDE__ARM__CPU__STRING_H_ */
+#endif /* _INCLUDE__SPEC__ARM__CPU__STRING_H_ */
diff --git a/repos/base/include/arm/vfp/cpu/string.h b/repos/base/include/spec/arm/vfp/cpu/string.h
similarity index 92%
rename from repos/base/include/arm/vfp/cpu/string.h
rename to repos/base/include/spec/arm/vfp/cpu/string.h
index 9cd98aa009..cc4c88e3cb 100644
--- a/repos/base/include/arm/vfp/cpu/string.h
+++ b/repos/base/include/spec/arm/vfp/cpu/string.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__ARM__VFP__STRING_H_
-#define _INCLUDE__ARM__VFP__STRING_H_
+#ifndef _INCLUDE__SPEC__ARM__VFP__CPU__STRING_H_
+#define _INCLUDE__SPEC__ARM__VFP__CPU__STRING_H_
namespace Genode {
@@ -66,4 +66,4 @@ namespace Genode {
}
}
-#endif /* _INCLUDE__ARM__VFP__STRING_H_ */
+#endif /* _INCLUDE__SPEC__ARM__VFP__CPU__STRING_H_ */
diff --git a/repos/base/include/arm_v6/cpu/memory_barrier.h b/repos/base/include/spec/arm_v6/cpu/memory_barrier.h
similarity index 100%
rename from repos/base/include/arm_v6/cpu/memory_barrier.h
rename to repos/base/include/spec/arm_v6/cpu/memory_barrier.h
diff --git a/repos/base/include/arm_v7/cpu/memory_barrier.h b/repos/base/include/spec/arm_v7/cpu/memory_barrier.h
similarity index 100%
rename from repos/base/include/arm_v7/cpu/memory_barrier.h
rename to repos/base/include/spec/arm_v7/cpu/memory_barrier.h
diff --git a/repos/base/include/platform/arndale/drivers/board_base.h b/repos/base/include/spec/arndale/drivers/board_base.h
similarity index 95%
rename from repos/base/include/platform/arndale/drivers/board_base.h
rename to repos/base/include/spec/arndale/drivers/board_base.h
index 78040569e8..0181ddbbf6 100644
--- a/repos/base/include/platform/arndale/drivers/board_base.h
+++ b/repos/base/include/spec/arndale/drivers/board_base.h
@@ -15,7 +15,7 @@
#define _INCLUDE__DRIVERS__BOARD_BASE_H_
/* Genode includes */
-#include
+#include
namespace Genode { struct Board_base; }
diff --git a/repos/base/include/drivers/timer/epit_base.h b/repos/base/include/spec/epit/drivers/timer_base.h
similarity index 96%
rename from repos/base/include/drivers/timer/epit_base.h
rename to repos/base/include/spec/epit/drivers/timer_base.h
index d479642dda..78d40882c3 100644
--- a/repos/base/include/drivers/timer/epit_base.h
+++ b/repos/base/include/spec/epit/drivers/timer_base.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__DRIVERS__TIMER__EPIT_BASE_H_
-#define _INCLUDE__DRIVERS__TIMER__EPIT_BASE_H_
+#ifndef _INCLUDE__SPEC__EPIT__DRIVERS__TIMER_BASE_H_
+#define _INCLUDE__SPEC__EPIT__DRIVERS__TIMER_BASE_H_
/* Genode includes */
#include
@@ -188,4 +188,4 @@ class Genode::Epit_base : public Mmio
}
};
-#endif /* _INCLUDE__DRIVERS__TIMER__EPIT_BASE_H_ */
+#endif /* _INCLUDE__SPEC__EPIT__DRIVERS__TIMER_BASE_H_ */
diff --git a/repos/base/include/drivers/uart/exynos_uart_base.h b/repos/base/include/spec/exynos/drivers/uart_base.h
similarity index 97%
rename from repos/base/include/drivers/uart/exynos_uart_base.h
rename to repos/base/include/spec/exynos/drivers/uart_base.h
index e81f02873e..7b738c370b 100644
--- a/repos/base/include/drivers/uart/exynos_uart_base.h
+++ b/repos/base/include/spec/exynos/drivers/uart_base.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__DRIVERS__UART__EXYNOS_UART_BASE_H_
-#define _INCLUDE__DRIVERS__UART__EXYNOS_UART_BASE_H_
+#ifndef _INCLUDE__SPEC__EXYNOS__DRIVERS__UART_BASE_H_
+#define _INCLUDE__SPEC__EXYNOS__DRIVERS__UART_BASE_H_
/* Genode includes */
#include
@@ -242,5 +242,4 @@ class Genode::Exynos_uart_base : Mmio
}
};
-#endif /* _INCLUDE__DRIVERS__UART__EXYNOS_UART_BASE_H_ */
-
+#endif /* _INCLUDE__SPEC__EXYNOS__DRIVERS__UART_BASE_H_ */
diff --git a/repos/base/include/platform_exynos4/board_base.h b/repos/base/include/spec/exynos4/board_base.h
similarity index 77%
rename from repos/base/include/platform_exynos4/board_base.h
rename to repos/base/include/spec/exynos4/board_base.h
index 241cc7e962..02352cc053 100644
--- a/repos/base/include/platform_exynos4/board_base.h
+++ b/repos/base/include/spec/exynos4/board_base.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _EXYNOS4__BOARD_BASE_H_
-#define _EXYNOS4__BOARD_BASE_H_
+#ifndef _INCLUDE__SPEC__EXYNOS4__BOARD_BASE_H_
+#define _INCLUDE__SPEC__EXYNOS4__BOARD_BASE_H_
namespace Genode { struct Exynos4; }
@@ -26,4 +26,4 @@ struct Genode::Exynos4
{
};
-#endif /* _EXYNOS4__BOARD_BASE_H_ */
+#endif /* _INCLUDE__SPEC__EXYNOS4__BOARD_BASE_H_ */
diff --git a/repos/base/include/platform_exynos5/board_base.h b/repos/base/include/spec/exynos5/board_base.h
similarity index 91%
rename from repos/base/include/platform_exynos5/board_base.h
rename to repos/base/include/spec/exynos5/board_base.h
index 169a2c1515..00dd2943f4 100644
--- a/repos/base/include/platform_exynos5/board_base.h
+++ b/repos/base/include/spec/exynos5/board_base.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _EXYNOS5__BOARD_BASE_H_
-#define _EXYNOS5__BOARD_BASE_H_
+#ifndef _INCLUDE__SPEC__EXYNOS5__BOARD_BASE_H_
+#define _INCLUDE__SPEC__EXYNOS5__BOARD_BASE_H_
namespace Genode { struct Exynos5; }
@@ -79,4 +79,4 @@ struct Genode::Exynos5
};
};
-#endif /* _EXYNOS5__BOARD_BASE_H_ */
+#endif /* _INCLUDE__SPEC__EXYNOS5__BOARD_BASE_H_ */
diff --git a/repos/base/include/drivers/uart/imx_uart_base.h b/repos/base/include/spec/imx/drivers/uart_base.h
similarity index 97%
rename from repos/base/include/drivers/uart/imx_uart_base.h
rename to repos/base/include/spec/imx/drivers/uart_base.h
index b7fb949681..f698858d11 100644
--- a/repos/base/include/drivers/uart/imx_uart_base.h
+++ b/repos/base/include/spec/imx/drivers/uart_base.h
@@ -12,8 +12,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__DRIVERS__UART__IMX_UART_BASE_H_
-#define _INCLUDE__DRIVERS__UART__IMX_UART_BASE_H_
+#ifndef _INCLUDE__SPEC__IMX__DRIVERS__UART_BASE_H_
+#define _INCLUDE__SPEC__IMX__DRIVERS__UART_BASE_H_
/* Genode includes */
#include
@@ -270,5 +270,4 @@ class Genode::Imx_uart_base : Mmio
}
};
-#endif /* _INCLUDE__DRIVERS__UART__IMX_UART_BASE_H_ */
-
+#endif /* _INCLUDE__SPEC__IMX__DRIVERS__UART_BASE_H_ */
diff --git a/repos/base/include/platform/imx53/drivers/board_base_support.h b/repos/base/include/spec/imx53/drivers/board_base_support.h
similarity index 100%
rename from repos/base/include/platform/imx53/drivers/board_base_support.h
rename to repos/base/include/spec/imx53/drivers/board_base_support.h
diff --git a/repos/base/include/platform/imx53_qsb/drivers/board_base.h b/repos/base/include/spec/imx53_qsb/drivers/board_base.h
similarity index 93%
rename from repos/base/include/platform/imx53_qsb/drivers/board_base.h
rename to repos/base/include/spec/imx53_qsb/drivers/board_base.h
index fa48e03212..842e0d4a6d 100644
--- a/repos/base/include/platform/imx53_qsb/drivers/board_base.h
+++ b/repos/base/include/spec/imx53_qsb/drivers/board_base.h
@@ -15,7 +15,7 @@
#define _INCLUDE__PLATFORM__IMX53_QSB__DRIVERS__BOARD_BASE_H_
/* Genode includes */
-#include
+#include
namespace Genode { struct Board_base; }
diff --git a/repos/base/include/platform/imx6/drivers/board_base.h b/repos/base/include/spec/imx6/drivers/board_base.h
similarity index 88%
rename from repos/base/include/platform/imx6/drivers/board_base.h
rename to repos/base/include/spec/imx6/drivers/board_base.h
index 2e0cf23038..7d04b261b7 100644
--- a/repos/base/include/platform/imx6/drivers/board_base.h
+++ b/repos/base/include/spec/imx6/drivers/board_base.h
@@ -14,8 +14,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVERS__BOARD_BASE_H_
-#define _DRIVERS__BOARD_BASE_H_
+#ifndef _INCLUDE__SPEC__IMX6__DRIVERS__BOARD_BASE_H_
+#define _INCLUDE__SPEC__IMX6__DRIVERS__BOARD_BASE_H_
namespace Genode
{
@@ -64,4 +64,4 @@ struct Genode::Board_base
};
};
-#endif /* _DRIVERS__BOARD_BASE_H_ */
+#endif /* _INCLUDE__SPEC__IMX6__DRIVERS__BOARD_BASE_H_ */
diff --git a/repos/base/include/platform/odroid_x2/drivers/board_base.h b/repos/base/include/spec/odroid_x2/drivers/board_base.h
similarity index 95%
rename from repos/base/include/platform/odroid_x2/drivers/board_base.h
rename to repos/base/include/spec/odroid_x2/drivers/board_base.h
index 9e0aff4b02..9a2234482a 100644
--- a/repos/base/include/platform/odroid_x2/drivers/board_base.h
+++ b/repos/base/include/spec/odroid_x2/drivers/board_base.h
@@ -17,7 +17,7 @@
#define _INCLUDE__DRIVERS__BOARD_BASE_H_
/* Genode includes */
-#include
+#include
namespace Genode { struct Board_base; }
diff --git a/repos/base/include/platform/odroid_xu/drivers/board_base.h b/repos/base/include/spec/odroid_xu/drivers/board_base.h
similarity index 94%
rename from repos/base/include/platform/odroid_xu/drivers/board_base.h
rename to repos/base/include/spec/odroid_xu/drivers/board_base.h
index 1bb6c07f09..a43b21d4b4 100644
--- a/repos/base/include/platform/odroid_xu/drivers/board_base.h
+++ b/repos/base/include/spec/odroid_xu/drivers/board_base.h
@@ -15,7 +15,7 @@
#define _INCLUDE__DRIVERS__BOARD_BASE_H_
/* Genode includes */
-#include
+#include
namespace Genode { struct Board_base; }
diff --git a/repos/base/include/platform/panda/drivers/board_base.h b/repos/base/include/spec/panda/drivers/board_base.h
similarity index 93%
rename from repos/base/include/platform/panda/drivers/board_base.h
rename to repos/base/include/spec/panda/drivers/board_base.h
index ce7b962ed1..e2362145f8 100644
--- a/repos/base/include/platform/panda/drivers/board_base.h
+++ b/repos/base/include/spec/panda/drivers/board_base.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__DRIVERS__BOARD_BASE_H_
-#define _INCLUDE__DRIVERS__BOARD_BASE_H_
+#ifndef _INCLUDE__SPEC__PANDA__DRIVERS__BOARD_BASE_H_
+#define _INCLUDE__SPEC__PANDA__DRIVERS__BOARD_BASE_H_
namespace Genode { struct Board_base; }
@@ -103,5 +103,4 @@ struct Genode::Board_base
};
};
-#endif /* _INCLUDE__DRIVERS__BOARD_BASE_H_ */
-
+#endif /* _INCLUDE__SPEC__PANDA__DRIVERS__BOARD_BASE_H_ */
diff --git a/repos/base/include/platform/pbxa9/drivers/board_base.h b/repos/base/include/spec/pbxa9/drivers/board_base.h
similarity index 91%
rename from repos/base/include/platform/pbxa9/drivers/board_base.h
rename to repos/base/include/spec/pbxa9/drivers/board_base.h
index 6e38cc8a39..242c4d432d 100644
--- a/repos/base/include/platform/pbxa9/drivers/board_base.h
+++ b/repos/base/include/spec/pbxa9/drivers/board_base.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__DRIVERS__BOARD_BASE_H_
-#define _INCLUDE__DRIVERS__BOARD_BASE_H_
+#ifndef _INCLUDE__SPEC__PBXA9__DRIVERS__BOARD_BASE_H_
+#define _INCLUDE__SPEC__PBXA9__DRIVERS__BOARD_BASE_H_
namespace Genode { struct Board_base; }
@@ -85,5 +85,4 @@ struct Genode::Board_base
};
};
-#endif /* _INCLUDE__DRIVERS__BOARD_BASE_H_ */
-
+#endif /* _INCLUDE__SPEC__PBXA9__DRIVERS__BOARD_BASE_H_ */
diff --git a/repos/base/include/drivers/uart/pl011_base.h b/repos/base/include/spec/pl011/drivers/uart_base.h
similarity index 96%
rename from repos/base/include/drivers/uart/pl011_base.h
rename to repos/base/include/spec/pl011/drivers/uart_base.h
index b7fad9ebac..b50d22a84f 100644
--- a/repos/base/include/drivers/uart/pl011_base.h
+++ b/repos/base/include/spec/pl011/drivers/uart_base.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__DRIVERS__UART__PL011_BASE_H_
-#define _INCLUDE__DRIVERS__UART__PL011_BASE_H_
+#ifndef _INCLUDE__SPEC__PL011__DRIVERS__UART_BASE_H_
+#define _INCLUDE__SPEC__PL011__DRIVERS__UART_BASE_H_
/* Genode includes */
#include
@@ -176,4 +176,4 @@ void Genode::Pl011_base::put_char(char const c)
}
-#endif /* _INCLUDE__DRIVERS__UART__PL011_BASE_H_ */
+#endif /* _INCLUDE__SPEC__PL011__DRIVERS__UART_BASE_H_ */
diff --git a/repos/base/include/platform/rpi/drivers/board_base.h b/repos/base/include/spec/rpi/drivers/board_base.h
similarity index 90%
rename from repos/base/include/platform/rpi/drivers/board_base.h
rename to repos/base/include/spec/rpi/drivers/board_base.h
index 70f6fee011..a20d385c4e 100644
--- a/repos/base/include/platform/rpi/drivers/board_base.h
+++ b/repos/base/include/spec/rpi/drivers/board_base.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__BOARD_BASE_H_
-#define _INCLUDE__PLATFORM__BOARD_BASE_H_
+#ifndef _INCLUDE__SPEC__RPI__DRIVERS__BOARD_BASE_H_
+#define _INCLUDE__SPEC__RPI__DRIVERS__BOARD_BASE_H_
/* Genode includes */
#include
@@ -73,5 +73,4 @@ struct Genode::Board_base
UNCACHED = 3 };
};
-#endif /* _INCLUDE__PLATFORM__BOARD_BASE_H_ */
-
+#endif /* _INCLUDE__SPEC__RPI__DRIVERS__BOARD_BASE_H_ */
diff --git a/repos/base/include/drivers/uart/tl16c750_base.h b/repos/base/include/spec/tl16c750/drivers/uart_base.h
similarity index 100%
rename from repos/base/include/drivers/uart/tl16c750_base.h
rename to repos/base/include/spec/tl16c750/drivers/uart_base.h
diff --git a/repos/base/include/platform/usb_armory/drivers/board_base.h b/repos/base/include/spec/usb_armory/drivers/board_base.h
similarity index 94%
rename from repos/base/include/platform/usb_armory/drivers/board_base.h
rename to repos/base/include/spec/usb_armory/drivers/board_base.h
index ad760b6161..032cd796a6 100644
--- a/repos/base/include/platform/usb_armory/drivers/board_base.h
+++ b/repos/base/include/spec/usb_armory/drivers/board_base.h
@@ -15,7 +15,7 @@
#define _INCLUDE__PLATFORM__IMX53_QSB__DRIVERS__BOARD_BASE_H_
/* Genode includes */
-#include
+#include
namespace Genode { struct Board_base; }
diff --git a/repos/base/include/x86/bios_data_area.h b/repos/base/include/spec/x86/bios_data_area.h
similarity index 88%
rename from repos/base/include/x86/bios_data_area.h
rename to repos/base/include/spec/x86/bios_data_area.h
index 38c67285ef..109f67f37e 100644
--- a/repos/base/include/x86/bios_data_area.h
+++ b/repos/base/include/spec/x86/bios_data_area.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _BIOS_DATA_AREA_H_
-#define _BIOS_DATA_AREA_H_
+#ifndef _INCLUDE__SPEC__X86__BIOS_DATA_AREA_H_
+#define _INCLUDE__SPEC__X86__BIOS_DATA_AREA_H_
/* Genode includes */
#include
@@ -56,4 +56,4 @@ class Genode::Bios_data_area : Mmio
return unmanaged_singleton(); }
};
-#endif /* _BIOS_DATA_AREA_H_ */
+#endif /* _INCLUDE__SPEC__X86__BIOS_DATA_AREA_H_ */
diff --git a/repos/base/include/x86/cpu/atomic.h b/repos/base/include/spec/x86/cpu/atomic.h
similarity index 89%
rename from repos/base/include/x86/cpu/atomic.h
rename to repos/base/include/spec/x86/cpu/atomic.h
index 6cc4a8fc89..3756f3d167 100644
--- a/repos/base/include/x86/cpu/atomic.h
+++ b/repos/base/include/spec/x86/cpu/atomic.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__X86__CPU__ATOMIC_H_
-#define _INCLUDE__X86__CPU__ATOMIC_H_
+#ifndef _INCLUDE__SPEC__X86__CPU__ATOMIC_H_
+#define _INCLUDE__SPEC__X86__CPU__ATOMIC_H_
namespace Genode {
@@ -52,4 +52,4 @@ namespace Genode {
}
}
-#endif /* _INCLUDE__X86__CPU__ATOMIC_H_ */
+#endif /* _INCLUDE__SPEC__X86__CPU__ATOMIC_H_ */
diff --git a/repos/base/include/x86/cpu/consts.h b/repos/base/include/spec/x86/cpu/consts.h
similarity index 89%
rename from repos/base/include/x86/cpu/consts.h
rename to repos/base/include/spec/x86/cpu/consts.h
index 2d79c1a15b..3b7ccbf318 100644
--- a/repos/base/include/x86/cpu/consts.h
+++ b/repos/base/include/spec/x86/cpu/consts.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__X86__CPU__CONSTS_H_
-#define _INCLUDE__X86__CPU__CONSTS_H_
+#ifndef _INCLUDE__SPEC__X86__CPU__CONSTS_H_
+#define _INCLUDE__SPEC__X86__CPU__CONSTS_H_
#include
@@ -56,4 +56,4 @@ namespace Abi {
}
}
-#endif /* _INCLUDE__X86__CPU__CONSTS_H_ */
+#endif /* _INCLUDE__SPEC__X86__CPU__CONSTS_H_ */
diff --git a/repos/base/include/x86/cpu/memory_barrier.h b/repos/base/include/spec/x86/cpu/memory_barrier.h
similarity index 85%
rename from repos/base/include/x86/cpu/memory_barrier.h
rename to repos/base/include/spec/x86/cpu/memory_barrier.h
index ff5eb0174d..4470915849 100644
--- a/repos/base/include/x86/cpu/memory_barrier.h
+++ b/repos/base/include/spec/x86/cpu/memory_barrier.h
@@ -22,8 +22,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__X86__CPU__MEMORY_BARRIER_H_
-#define _INCLUDE__X86__CPU__MEMORY_BARRIER_H_
+#ifndef _INCLUDE__SPEC__X86__CPU__MEMORY_BARRIER_H_
+#define _INCLUDE__SPEC__X86__CPU__MEMORY_BARRIER_H_
namespace Genode {
@@ -33,4 +33,4 @@ namespace Genode {
}
}
-#endif /* _INCLUDE__X86__CPU__MEMORY_BARRIER_H_ */
+#endif /* _INCLUDE__SPEC__X86__CPU__MEMORY_BARRIER_H_ */
diff --git a/repos/base/include/x86/cpu/string.h b/repos/base/include/spec/x86/cpu/string.h
similarity index 80%
rename from repos/base/include/x86/cpu/string.h
rename to repos/base/include/spec/x86/cpu/string.h
index 956f9c1362..2886a01abd 100644
--- a/repos/base/include/x86/cpu/string.h
+++ b/repos/base/include/spec/x86/cpu/string.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__X86__CPU__STRING_H_
-#define _INCLUDE__X86__CPU__STRING_H_
+#ifndef _INCLUDE__SPEC__X86__CPU__STRING_H_
+#define _INCLUDE__SPEC__X86__CPU__STRING_H_
namespace Genode {
@@ -28,4 +28,4 @@ namespace Genode {
inline size_t memcpy_cpu(void *, const void *, size_t size) { return size; }
}
-#endif /* _INCLUDE__X86__CPU__STRING_H_ */
+#endif /* _INCLUDE__SPEC__X86__CPU__STRING_H_ */
diff --git a/repos/base/include/drivers/uart/x86_uart_base.h b/repos/base/include/spec/x86/drivers/uart_base.h
similarity index 93%
rename from repos/base/include/drivers/uart/x86_uart_base.h
rename to repos/base/include/spec/x86/drivers/uart_base.h
index 5d9b74fd3a..43d2a66c98 100644
--- a/repos/base/include/drivers/uart/x86_uart_base.h
+++ b/repos/base/include/spec/x86/drivers/uart_base.h
@@ -12,7 +12,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#pragma once
+#ifndef _INCLUDE__SPEC__X86__DRIVERS__UART_BASE_H_
+#define _INCLUDE__SPEC__X86__DRIVERS__UART_BASE_H_
/* Genode includes */
#include
@@ -109,3 +110,5 @@ class Genode::X86_uart_base
_outb(_port + COMPORT_DATA_OFFSET, c);
}
};
+
+#endif /* _INCLUDE__SPEC__X86__DRIVERS__UART_BASE_H_ */
diff --git a/repos/base/include/x86_32/cpu/cpu_state.h b/repos/base/include/spec/x86_32/cpu/cpu_state.h
similarity index 82%
rename from repos/base/include/x86_32/cpu/cpu_state.h
rename to repos/base/include/spec/x86_32/cpu/cpu_state.h
index d58bd9fa2f..4e904ddf2f 100644
--- a/repos/base/include/x86_32/cpu/cpu_state.h
+++ b/repos/base/include/spec/x86_32/cpu/cpu_state.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__X86_32__CPU__CPU_STATE_H_
-#define _INCLUDE__X86_32__CPU__CPU_STATE_H_
+#ifndef _INCLUDE__SPEC__X86_32__CPU__CPU_STATE_H_
+#define _INCLUDE__SPEC__X86_32__CPU__CPU_STATE_H_
#include
@@ -38,4 +38,4 @@ struct Genode::Cpu_state
addr_t trapno = 0;
};
-#endif /* _INCLUDE__X86_32__CPU__CPU_STATE_H_ */
+#endif /* _INCLUDE__SPEC__X86_32__CPU__CPU_STATE_H_ */
diff --git a/repos/base/include/x86_64/cpu/cpu_state.h b/repos/base/include/spec/x86_64/cpu/cpu_state.h
similarity index 88%
rename from repos/base/include/x86_64/cpu/cpu_state.h
rename to repos/base/include/spec/x86_64/cpu/cpu_state.h
index 0ff1e2706e..85901f3d70 100644
--- a/repos/base/include/x86_64/cpu/cpu_state.h
+++ b/repos/base/include/spec/x86_64/cpu/cpu_state.h
@@ -16,8 +16,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__X86_64__CPU__CPU_STATE_H_
-#define _INCLUDE__X86_64__CPU__CPU_STATE_H_
+#ifndef _INCLUDE__SPEC__X86_64__CPU__CPU_STATE_H_
+#define _INCLUDE__SPEC__X86_64__CPU__CPU_STATE_H_
#include
@@ -58,4 +58,4 @@ struct Genode::Cpu_state
addr_t ss = 0;
};
-#endif /* _INCLUDE__X86_64__CPU__CPU_STATE_H_ */
+#endif /* _INCLUDE__SPEC__X86_64__CPU__CPU_STATE_H_ */
diff --git a/repos/base/include/drivers/uart/xilinx_uartps_base.h b/repos/base/include/spec/xilinx/drivers/uart_base.h
similarity index 93%
rename from repos/base/include/drivers/uart/xilinx_uartps_base.h
rename to repos/base/include/spec/xilinx/drivers/uart_base.h
index 8552b4dc82..0229de4f1e 100644
--- a/repos/base/include/drivers/uart/xilinx_uartps_base.h
+++ b/repos/base/include/spec/xilinx/drivers/uart_base.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__DRIVERS__UART__XILINX_UARTPS_BASE_H_
-#define _INCLUDE__DRIVERS__UART__XILINX_UARTPS_BASE_H_
+#ifndef _INCLUDE__SPEC__XILINX__DRIVERS__UART_BASE_H_
+#define _INCLUDE__SPEC__XILINX__DRIVERS__UART_BASE_H_
/* Genode includes */
#include
@@ -126,4 +126,4 @@ class Genode::Xilinx_uartps_base : public Mmio
}
};
-#endif /* _INCLUDE__DRIVERS__UART__XILINX_UARTPS_BASE_H_ */
+#endif /* _INCLUDE__SPEC__XILINX__DRIVERS__UART_BASE_H_ */
diff --git a/repos/base/include/zynq/drivers/board_base.h b/repos/base/include/spec/zynq/drivers/board_base_support.h
similarity index 91%
rename from repos/base/include/zynq/drivers/board_base.h
rename to repos/base/include/spec/zynq/drivers/board_base_support.h
index b40b5e52f0..dff704936f 100644
--- a/repos/base/include/zynq/drivers/board_base.h
+++ b/repos/base/include/spec/zynq/drivers/board_base_support.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__DRIVERS__BOARD_BASE_H_
-#define _INCLUDE__DRIVERS__BOARD_BASE_H_
+#ifndef _INCLUDE__SPEC__ZYNQ__DRIVERS__BOARD_BASE_H_
+#define _INCLUDE__SPEC__ZYNQ__DRIVERS__BOARD_BASE_H_
namespace Zynq { struct Board_base; }
@@ -74,4 +74,4 @@ struct Zynq::Board_base
};
};
-#endif /* _INCLUDE__DRIVERS__BOARD_BASE_H_ */
+#endif /* _INCLUDE__SPEC__ZYNQ__DRIVERS__BOARD_BASE_H_ */
diff --git a/repos/base/include/platform/zynq_qemu/drivers/board_base.h b/repos/base/include/spec/zynq_qemu/drivers/board_base.h
similarity index 94%
rename from repos/base/include/platform/zynq_qemu/drivers/board_base.h
rename to repos/base/include/spec/zynq_qemu/drivers/board_base.h
index 36fc48ef4f..325c45e665 100644
--- a/repos/base/include/platform/zynq_qemu/drivers/board_base.h
+++ b/repos/base/include/spec/zynq_qemu/drivers/board_base.h
@@ -14,7 +14,7 @@
#ifndef _INCLUDE__PLATFORM__DRIVERS__BOARD_BASE_H_
#define _INCLUDE__PLATFORM__DRIVERS__BOARD_BASE_H_
-#include
+#include
namespace Genode { struct Board_base; }
diff --git a/repos/base/lib/mk/arm/ld.mk b/repos/base/lib/mk/arm/ld.mk
deleted file mode 100644
index e189f7d5d3..0000000000
--- a/repos/base/lib/mk/arm/ld.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-REQUIRES = arm
-
-include $(REP_DIR)/lib/mk/ldso.inc
-
-INC_DIR += $(DIR)/arm
-vpath %.s $(DIR)/arm
diff --git a/repos/base/lib/mk/arm/startup.mk b/repos/base/lib/mk/arm/startup.mk
deleted file mode 100644
index f8d8d03973..0000000000
--- a/repos/base/lib/mk/arm/startup.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(BASE_DIR)/lib/mk/startup.inc
-
-vpath crt0.s $(BASE_DIR)/src/platform/arm
diff --git a/repos/base/lib/mk/ldso.inc b/repos/base/lib/mk/ldso.inc
index 0c37b504ed..4b11c31814 100644
--- a/repos/base/lib/mk/ldso.inc
+++ b/repos/base/lib/mk/ldso.inc
@@ -12,7 +12,7 @@ LD_OPT += -Bsymbolic-functions --version-script=$(DIR)/symbol.map
ENTRY_POINT = _start
ifneq ($(filter linux, $(SPECS)),)
-LD_OPT += -T$(call select_from_repositories,src/platform/context_area.nostdlib.ld)
+LD_OPT += -T$(call select_from_repositories,src/ld/context_area.nostdlib.ld)
else
LD_OPT += -T$(DIR)/linker.ld
endif
diff --git a/repos/base/lib/mk/spec/arm/ld.mk b/repos/base/lib/mk/spec/arm/ld.mk
new file mode 100644
index 0000000000..35a5c9782c
--- /dev/null
+++ b/repos/base/lib/mk/spec/arm/ld.mk
@@ -0,0 +1,6 @@
+REQUIRES = arm
+
+include $(REP_DIR)/lib/mk/ldso.inc
+
+INC_DIR += $(DIR)/spec/arm
+vpath %.s $(DIR)/spec/arm
diff --git a/repos/base/lib/mk/arm/ldso-startup.mk b/repos/base/lib/mk/spec/arm/ldso-startup.mk
similarity index 100%
rename from repos/base/lib/mk/arm/ldso-startup.mk
rename to repos/base/lib/mk/spec/arm/ldso-startup.mk
diff --git a/repos/base/lib/mk/spec/arm/startup.mk b/repos/base/lib/mk/spec/arm/startup.mk
new file mode 100644
index 0000000000..d08fe25098
--- /dev/null
+++ b/repos/base/lib/mk/spec/arm/startup.mk
@@ -0,0 +1,3 @@
+include $(BASE_DIR)/lib/mk/startup.inc
+
+vpath crt0.s $(BASE_DIR)/src/lib/startup/spec/arm
diff --git a/repos/base/lib/mk/spec/x86_32/ld.mk b/repos/base/lib/mk/spec/x86_32/ld.mk
new file mode 100644
index 0000000000..5b3a703c68
--- /dev/null
+++ b/repos/base/lib/mk/spec/x86_32/ld.mk
@@ -0,0 +1,6 @@
+REQUIRES = x86 32bit
+
+include $(REP_DIR)/lib/mk/ldso.inc
+
+INC_DIR += $(DIR)/spec/x86_32
+vpath %.s $(DIR)/spec/x86_32
diff --git a/repos/base/lib/mk/spec/x86_32/startup.mk b/repos/base/lib/mk/spec/x86_32/startup.mk
new file mode 100644
index 0000000000..0670411d13
--- /dev/null
+++ b/repos/base/lib/mk/spec/x86_32/startup.mk
@@ -0,0 +1,3 @@
+include $(BASE_DIR)/lib/mk/startup.inc
+
+vpath crt0.s $(BASE_DIR)/src/lib/startup/spec/x86_32
diff --git a/repos/base/lib/mk/spec/x86_64/ld.mk b/repos/base/lib/mk/spec/x86_64/ld.mk
new file mode 100644
index 0000000000..30290c731b
--- /dev/null
+++ b/repos/base/lib/mk/spec/x86_64/ld.mk
@@ -0,0 +1,6 @@
+REQUIRES = x86 64bit
+
+include $(REP_DIR)/lib/mk/ldso.inc
+
+INC_DIR += $(DIR)/spec/x86_64
+vpath %.s $(DIR)/spec/x86_64
diff --git a/repos/base/lib/mk/spec/x86_64/startup.mk b/repos/base/lib/mk/spec/x86_64/startup.mk
new file mode 100644
index 0000000000..e713371875
--- /dev/null
+++ b/repos/base/lib/mk/spec/x86_64/startup.mk
@@ -0,0 +1,3 @@
+include $(BASE_DIR)/lib/mk/startup.inc
+
+vpath crt0.s $(BASE_DIR)/src/lib/startup/spec/x86_64
diff --git a/repos/base/lib/mk/startup.inc b/repos/base/lib/mk/startup.inc
index 06c1d2bbb8..828ff74961 100644
--- a/repos/base/lib/mk/startup.inc
+++ b/repos/base/lib/mk/startup.inc
@@ -1,10 +1,6 @@
-SRC_S += crt0.s
-SRC_CC += _main.cc
-SRC_CC += init_main_thread.cc
+SRC_S += crt0.s
+SRC_CC += _main.cc init_main_thread.cc
+REP_INC_DIR += src/lib/startup
+LIBS += syscall
-REP_INC_DIR += src/platform
-
-LIBS += syscall
-
-vpath _main.cc $(BASE_DIR)/src/platform
-vpath init_main_thread.cc $(BASE_DIR)/src/platform
+vpath %.cc $(BASE_DIR)/src/lib/startup
diff --git a/repos/base/lib/mk/x86_32/ld.mk b/repos/base/lib/mk/x86_32/ld.mk
deleted file mode 100644
index 4c99f61e28..0000000000
--- a/repos/base/lib/mk/x86_32/ld.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-REQUIRES = x86 32bit
-
-include $(REP_DIR)/lib/mk/ldso.inc
-
-INC_DIR += $(DIR)/x86_32
-vpath %.s $(DIR)/x86_32
diff --git a/repos/base/lib/mk/x86_32/startup.mk b/repos/base/lib/mk/x86_32/startup.mk
deleted file mode 100644
index 7d83d37d59..0000000000
--- a/repos/base/lib/mk/x86_32/startup.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(BASE_DIR)/lib/mk/startup.inc
-
-vpath crt0.s $(BASE_DIR)/src/platform/x86_32
diff --git a/repos/base/lib/mk/x86_64/ld.mk b/repos/base/lib/mk/x86_64/ld.mk
deleted file mode 100644
index e11a925b7a..0000000000
--- a/repos/base/lib/mk/x86_64/ld.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-REQUIRES = x86 64bit
-
-include $(REP_DIR)/lib/mk/ldso.inc
-
-INC_DIR += $(DIR)/x86_64
-vpath %.s $(DIR)/x86_64
diff --git a/repos/base/lib/mk/x86_64/startup.mk b/repos/base/lib/mk/x86_64/startup.mk
deleted file mode 100644
index 614d4f453c..0000000000
--- a/repos/base/lib/mk/x86_64/startup.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(BASE_DIR)/lib/mk/startup.inc
-
-vpath crt0.s $(BASE_DIR)/src/platform/x86_64
diff --git a/repos/base/mk/dep_lib.mk b/repos/base/mk/dep_lib.mk
index 0763d9c3d3..c2b0a2a331 100644
--- a/repos/base/mk/dep_lib.mk
+++ b/repos/base/mk/dep_lib.mk
@@ -36,7 +36,7 @@ endif
append_lib_to_progress_log:
@echo "LIBS_READY += $(LIB)" >> $(LIB_PROGRESS_LOG)
-LIB_MK_DIRS = $(foreach REP,$(REPOSITORIES),$(addprefix $(REP)/lib/mk/,$(SPECS)) $(REP)/lib/mk)
+LIB_MK_DIRS = $(foreach REP,$(REPOSITORIES),$(addprefix $(REP)/lib/mk/spec/,$(SPECS)) $(REP)/lib/mk)
#
# Of all possible file locations, use the (first) one that actually exist.
diff --git a/repos/base/mk/global.mk b/repos/base/mk/global.mk
index 16ebc31d5c..8ee576da06 100644
--- a/repos/base/mk/global.mk
+++ b/repos/base/mk/global.mk
@@ -144,12 +144,12 @@ CXX_LINK_OPT += $(LD_OPT_NOSTDLIB)
#
# Linker script for dynamically linked programs
#
-LD_SCRIPT_DYN = $(call select_from_repositories,src/platform/genode_dyn.ld)
+LD_SCRIPT_DYN = $(call select_from_repositories,src/ld/genode_dyn.ld)
#
# Linker script for shared libraries
#
-LD_SCRIPT_SO ?= $(call select_from_repositories,src/platform/genode_rel.ld)
+LD_SCRIPT_SO ?= $(call select_from_repositories,src/ld/genode_rel.ld)
#
# Assembler options
diff --git a/repos/base/mk/prg.mk b/repos/base/mk/prg.mk
index d6f6f937f2..2df8f8dd48 100644
--- a/repos/base/mk/prg.mk
+++ b/repos/base/mk/prg.mk
@@ -60,7 +60,7 @@ CXX_LINK_OPT += $(CC_MARCH)
#
# Generic linker script for statically linked binaries
#
-LD_SCRIPT_STATIC ?= $(call select_from_repositories,src/platform/genode.ld)
+LD_SCRIPT_STATIC ?= $(call select_from_repositories,src/ld/genode.ld)
include $(BASE_DIR)/mk/generic.mk
include $(BASE_DIR)/mk/base-libs.mk
@@ -111,7 +111,7 @@ else
#
# Add a list of symbols that shall always be added to the dynsym section
#
-LD_OPT += --dynamic-list=$(call select_from_repositories,src/platform/genode_dyn.dl)
+LD_OPT += --dynamic-list=$(call select_from_repositories,src/ld/genode_dyn.dl)
LD_SCRIPTS := $(LD_SCRIPT_DYN)
LD_CMD += -Wl,--dynamic-linker=$(DYNAMIC_LINKER).lib.so \
diff --git a/repos/base/mk/spec-host.mk b/repos/base/mk/spec-host.mk
deleted file mode 100644
index cbc51d4e99..0000000000
--- a/repos/base/mk/spec-host.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-#
-# When building for the host, we use the host's standard C environment
-#
-STDINC = yes
-STDLIB = yes
-LD_SCRIPT_STATIC =
-
-REP_INC_DIR = include
diff --git a/repos/base/mk/spec-pl390.mk b/repos/base/mk/spec-pl390.mk
deleted file mode 100644
index ef800ecca4..0000000000
--- a/repos/base/mk/spec-pl390.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-#
-# \brief Build-system configurations specifically for the ARM PL390
-# \author Martin Stein
-# \date 2011-12-20
-#
-
-# add repository relative include paths
-REP_INC_DIR += include/pl390
diff --git a/repos/base/mk/spec-platform_panda.mk b/repos/base/mk/spec-platform_panda.mk
deleted file mode 100644
index 70be5c2603..0000000000
--- a/repos/base/mk/spec-platform_panda.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Enable peripherals of the platform
-#
-SPECS += omap4 usb cortex_a9 tl16c750 platform_panda gpio framebuffer
-
-#
-# Pull in CPU specifics
-#
-SPECS += arm_v7a
-
-#
-# Add device parameters to include search path
-#
-REP_INC_DIR += include/platform/panda
-
-include $(call select_from_repositories,mk/spec-cortex_a9.mk)
-include $(call select_from_repositories,mk/spec-tl16c750.mk)
-include $(call select_from_repositories,mk/spec-arm_v7a.mk)
diff --git a/repos/base/mk/spec-platform_zynq.mk b/repos/base/mk/spec-platform_zynq.mk
deleted file mode 100644
index 70ce85b92f..0000000000
--- a/repos/base/mk/spec-platform_zynq.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-#
-# Pull in CPU specifics
-#
-SPECS += zynq cadence_gem
-
-
-REP_INC_DIR += include/platform/zynq_qemu
-
-include $(call select_from_repositories,mk/spec-zynq.mk)
diff --git a/repos/base/mk/spec-zynq.mk b/repos/base/mk/spec-zynq.mk
deleted file mode 100644
index d2aa72fdfe..0000000000
--- a/repos/base/mk/spec-zynq.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-#
-# Pull in CPU specifics
-#
-SPECS += cortex_a9 arm_v7a
-
-include $(call select_from_repositories,mk/spec-cortex_a9.mk)
diff --git a/repos/base/mk/spec-32bit.mk b/repos/base/mk/spec/32bit.mk
similarity index 52%
rename from repos/base/mk/spec-32bit.mk
rename to repos/base/mk/spec/32bit.mk
index 605b433d52..16f7f92e7a 100644
--- a/repos/base/mk/spec-32bit.mk
+++ b/repos/base/mk/spec/32bit.mk
@@ -1,4 +1,4 @@
#
# 32-bit-specific Genode headers
#
-REP_INC_DIR += include/32bit
+REP_INC_DIR += include/spec/32bit
diff --git a/repos/base/mk/spec-64bit.mk b/repos/base/mk/spec/64bit.mk
similarity index 52%
rename from repos/base/mk/spec-64bit.mk
rename to repos/base/mk/spec/64bit.mk
index 7878d908f1..a9b7df6e17 100644
--- a/repos/base/mk/spec-64bit.mk
+++ b/repos/base/mk/spec/64bit.mk
@@ -1,4 +1,4 @@
#
# 64-bit-specific Genode headers
#
-REP_INC_DIR += include/64bit
+REP_INC_DIR += include/spec/64bit
diff --git a/repos/base/mk/spec-arm.mk b/repos/base/mk/spec/arm.mk
similarity index 64%
rename from repos/base/mk/spec-arm.mk
rename to repos/base/mk/spec/arm.mk
index d2490942fd..713985ec16 100644
--- a/repos/base/mk/spec-arm.mk
+++ b/repos/base/mk/spec/arm.mk
@@ -1,7 +1,7 @@
#
# ARM-specific Genode headers
#
-REP_INC_DIR += include/arm
+REP_INC_DIR += include/spec/arm
SPECS += 32bit
@@ -11,4 +11,4 @@ SPECS += 32bit
#
CC_OPT += -Wno-psabi
-include $(call select_from_repositories,mk/spec-32bit.mk)
+include $(call select_from_repositories,mk/spec/32bit.mk)
diff --git a/repos/base/mk/spec-arm_v6.mk b/repos/base/mk/spec/arm_v6.mk
similarity index 75%
rename from repos/base/mk/spec-arm_v6.mk
rename to repos/base/mk/spec/arm_v6.mk
index d18ddbd1f7..ba5af0a2de 100644
--- a/repos/base/mk/spec-arm_v6.mk
+++ b/repos/base/mk/spec/arm_v6.mk
@@ -11,8 +11,8 @@ SPECS += arm
CC_MARCH += -march=armv6
# add repository relative include paths
-REP_INC_DIR += include/arm_v6
+REP_INC_DIR += include/spec/arm_v6
# include implied specs
-include $(call select_from_repositories,mk/spec-arm.mk)
+include $(call select_from_repositories,mk/spec/arm.mk)
diff --git a/repos/base/mk/spec-arm_v7.mk b/repos/base/mk/spec/arm_v7.mk
similarity index 71%
rename from repos/base/mk/spec-arm_v7.mk
rename to repos/base/mk/spec/arm_v7.mk
index 10a338bf69..d0b7c6ba09 100644
--- a/repos/base/mk/spec-arm_v7.mk
+++ b/repos/base/mk/spec/arm_v7.mk
@@ -8,8 +8,8 @@
SPECS += arm
# add repository relative include paths
-REP_INC_DIR += include/arm_v7
+REP_INC_DIR += include/spec/arm_v7
# include implied specs
-include $(call select_from_repositories,mk/spec-arm.mk)
+include $(call select_from_repositories,mk/spec/arm.mk)
diff --git a/repos/base/mk/spec-arm_v7a.mk b/repos/base/mk/spec/arm_v7a.mk
similarity index 71%
rename from repos/base/mk/spec-arm_v7a.mk
rename to repos/base/mk/spec/arm_v7a.mk
index 62bcad7189..489fdcbe77 100644
--- a/repos/base/mk/spec-arm_v7a.mk
+++ b/repos/base/mk/spec/arm_v7a.mk
@@ -8,8 +8,8 @@
SPECS += arm_v7
# add repository relative include paths
-REP_INC_DIR += include/arm_v7a
+REP_INC_DIR += include/spec/arm_v7a
# include implied specs
-include $(call select_from_repositories,mk/spec-arm_v7.mk)
+include $(call select_from_repositories,mk/spec/arm_v7.mk)
diff --git a/repos/base/mk/spec-platform_arndale.mk b/repos/base/mk/spec/arndale.mk
similarity index 53%
rename from repos/base/mk/spec-platform_arndale.mk
rename to repos/base/mk/spec/arndale.mk
index f1dbf44f55..ae73340ef5 100644
--- a/repos/base/mk/spec-platform_arndale.mk
+++ b/repos/base/mk/spec/arndale.mk
@@ -5,12 +5,11 @@
#
# denote specs that are fullfilled by this spec
-SPECS += exynos5 cortex_a15 framebuffer usb
+SPECS += exynos5
# add repository relative paths
-REP_INC_DIR += include/platform/arndale
-REP_INC_DIR += include/platform/exynos5
+REP_INC_DIR += include/spec/arndale
# include implied specs
-include $(call select_from_repositories,mk/spec-cortex_a15.mk)
+include $(call select_from_repositories,mk/spec/exynos5.mk)
diff --git a/repos/base/mk/spec-cortex_a15.mk b/repos/base/mk/spec/cortex_a15.mk
similarity index 86%
rename from repos/base/mk/spec-cortex_a15.mk
rename to repos/base/mk/spec/cortex_a15.mk
index 56b86ae261..7bc9ff09c7 100644
--- a/repos/base/mk/spec-cortex_a15.mk
+++ b/repos/base/mk/spec/cortex_a15.mk
@@ -8,7 +8,7 @@
SPECS += arm_v7a
# add repository relative include paths
-REP_INC_DIR += include/cortex_a15
+REP_INC_DIR += include/spec/cortex_a15
# configure compiler
#
@@ -23,4 +23,4 @@ REP_INC_DIR += include/cortex_a15
CC_MARCH += -mcpu=cortex-a15
# include implied specs
-include $(call select_from_repositories,mk/spec-arm_v7a.mk)
+include $(call select_from_repositories,mk/spec/arm_v7a.mk)
diff --git a/repos/base/mk/spec-cortex_a8.mk b/repos/base/mk/spec/cortex_a8.mk
similarity index 76%
rename from repos/base/mk/spec-cortex_a8.mk
rename to repos/base/mk/spec/cortex_a8.mk
index c68113c339..c20e1ed6d0 100644
--- a/repos/base/mk/spec-cortex_a8.mk
+++ b/repos/base/mk/spec/cortex_a8.mk
@@ -8,10 +8,10 @@
SPECS += arm_v7a
# add repository relative include paths
-REP_INC_DIR += include/cortex_a8
+REP_INC_DIR += include/spec/cortex_a8
# configure compiler
CC_MARCH += -march=armv7-a -mcpu=cortex-a8
# include implied specs
-include $(call select_from_repositories,mk/spec-arm_v7a.mk)
+include $(call select_from_repositories,mk/spec/arm_v7a.mk)
diff --git a/repos/base/mk/spec-cortex_a9.mk b/repos/base/mk/spec/cortex_a9.mk
similarity index 63%
rename from repos/base/mk/spec-cortex_a9.mk
rename to repos/base/mk/spec/cortex_a9.mk
index 7ffed9621f..ac5958a220 100644
--- a/repos/base/mk/spec-cortex_a9.mk
+++ b/repos/base/mk/spec/cortex_a9.mk
@@ -5,15 +5,14 @@
#
# denote wich specs are also fullfilled by this spec
-SPECS += arm_v7a pl390
+SPECS += arm_v7a
# add repository relative include paths
-REP_INC_DIR += include/cortex_a9
+REP_INC_DIR += include/spec/cortex_a9
# configure compiler
CC_MARCH += -march=armv7-a -mcpu=cortex-a9
# include implied specs
-include $(call select_from_repositories,mk/spec-arm_v7a.mk)
-include $(call select_from_repositories,mk/spec-pl390.mk)
+include $(call select_from_repositories,mk/spec/arm_v7a.mk)
diff --git a/repos/base/mk/spec-experimental.mk b/repos/base/mk/spec/experimental.mk
similarity index 100%
rename from repos/base/mk/spec-experimental.mk
rename to repos/base/mk/spec/experimental.mk
diff --git a/repos/base/mk/spec/exynos5.mk b/repos/base/mk/spec/exynos5.mk
new file mode 100644
index 0000000000..90c329060c
--- /dev/null
+++ b/repos/base/mk/spec/exynos5.mk
@@ -0,0 +1,15 @@
+#
+# \brief Build-system configurations for Exynos5 SoCs
+# \author Stefan Kalkowski
+# \date 2015-09-04
+#
+
+# denote specs that are fullfilled by this spec
+SPECS += exynos cortex_a15 framebuffer usb
+
+# add repository relative paths
+REP_INC_DIR += include/spec/exynos5
+REP_INC_DIR += include/spec/exynos
+
+# include implied specs
+include $(call select_from_repositories,mk/spec/cortex_a15.mk)
diff --git a/repos/base/mk/spec-fpu_vfpv3.mk b/repos/base/mk/spec/fpu_vfpv3.mk
similarity index 85%
rename from repos/base/mk/spec-fpu_vfpv3.mk
rename to repos/base/mk/spec/fpu_vfpv3.mk
index a4b7ae4a6c..8d67f50deb 100644
--- a/repos/base/mk/spec-fpu_vfpv3.mk
+++ b/repos/base/mk/spec/fpu_vfpv3.mk
@@ -12,4 +12,4 @@ CC_MARCH += -mfpu=vfpv3 -mfloat-abi=softfp
#
# Include floating-point unit code
#
-REP_INC_DIR += include/arm/vfp
+REP_INC_DIR += include/spec/arm/vfp
diff --git a/repos/base/mk/spec-platform_imx53.mk b/repos/base/mk/spec/imx53.mk
similarity index 52%
rename from repos/base/mk/spec-platform_imx53.mk
rename to repos/base/mk/spec/imx53.mk
index 01cc3a0ec0..5e85aaf946 100644
--- a/repos/base/mk/spec-platform_imx53.mk
+++ b/repos/base/mk/spec/imx53.mk
@@ -5,11 +5,13 @@
#
# denote wich specs are also fullfilled by this spec
-SPECS += cortex_a8 imx53 imx gpio framebuffer
+SPECS += cortex_a8 imx gpio framebuffer epit
# add repository relative include paths
-REP_INC_DIR += include/platform/imx53
+REP_INC_DIR += include/spec/imx53
+REP_INC_DIR += include/spec/imx
+REP_INC_DIR += include/spec/epit
# include implied specs
-include $(call select_from_repositories,mk/spec-cortex_a8.mk)
+include $(call select_from_repositories,mk/spec/cortex_a8.mk)
diff --git a/repos/base/mk/spec-platform_imx6.mk b/repos/base/mk/spec/imx6.mk
similarity index 67%
rename from repos/base/mk/spec-platform_imx6.mk
rename to repos/base/mk/spec/imx6.mk
index f2bd221a4b..e972c19497 100644
--- a/repos/base/mk/spec-platform_imx6.mk
+++ b/repos/base/mk/spec/imx6.mk
@@ -10,8 +10,10 @@
SPECS += cortex_a9 imx6 imx epit
# add repository relative include paths
-REP_INC_DIR += include/platform/imx6
+REP_INC_DIR += include/spec/imx6
+REP_INC_DIR += include/spec/imx
+REP_INC_DIR += include/spec/epit
# include implied specs
-include $(call select_from_repositories,mk/spec-cortex_a9.mk)
+include $(call select_from_repositories,mk/spec/cortex_a9.mk)
diff --git a/repos/base/mk/spec-platform_odroid_x2.mk b/repos/base/mk/spec/odroid_x2.mk
similarity index 61%
rename from repos/base/mk/spec-platform_odroid_x2.mk
rename to repos/base/mk/spec/odroid_x2.mk
index 3c3fc60879..393e262cef 100644
--- a/repos/base/mk/spec-platform_odroid_x2.mk
+++ b/repos/base/mk/spec/odroid_x2.mk
@@ -7,11 +7,12 @@
#
# denote specs that are fullfilled by this spec
-SPECS += exynos4 cortex_a9 usb
+SPECS += exynos exynos4 cortex_a9 usb
# add repository relative paths
-REP_INC_DIR += include/platform/odroid_x2
-REP_INC_DIR += include/platform/exynos4
+REP_INC_DIR += include/spec/odroid_x2
+REP_INC_DIR += include/spec/exynos4
+REP_INC_DIR += include/spec/exynos
# include implied specs
-include $(call select_from_repositories,mk/spec-cortex_a9.mk)
+include $(call select_from_repositories,mk/spec/cortex_a9.mk)
diff --git a/repos/base/mk/spec-platform_odroid_xu.mk b/repos/base/mk/spec/odroid_xu.mk
similarity index 55%
rename from repos/base/mk/spec-platform_odroid_xu.mk
rename to repos/base/mk/spec/odroid_xu.mk
index 1bdf384fec..799d7189ff 100644
--- a/repos/base/mk/spec-platform_odroid_xu.mk
+++ b/repos/base/mk/spec/odroid_xu.mk
@@ -5,12 +5,11 @@
#
# denote specs that are fullfilled by this spec
-SPECS += exynos5 cortex_a15
+SPECS += exynos5
# add repository relative paths
-REP_INC_DIR += include/platform/odroid_xu
-REP_INC_DIR += include/platform/exynos5
+REP_INC_DIR += include/spec/odroid_xu
# include implied specs
-include $(call select_from_repositories,mk/spec-cortex_a15.mk)
+include $(call select_from_repositories,mk/spec/exynos5.mk)
diff --git a/repos/base/mk/spec/panda.mk b/repos/base/mk/spec/panda.mk
new file mode 100644
index 0000000000..911c466214
--- /dev/null
+++ b/repos/base/mk/spec/panda.mk
@@ -0,0 +1,18 @@
+#
+# Enable peripherals of the platform
+#
+SPECS += omap4 usb cortex_a9 tl16c750 panda gpio framebuffer
+
+#
+# Pull in CPU specifics
+#
+SPECS += arm_v7a
+
+#
+# Add device parameters to include search path
+#
+REP_INC_DIR += include/spec/panda
+
+include $(call select_from_repositories,mk/spec/cortex_a9.mk)
+include $(call select_from_repositories,mk/spec/tl16c750.mk)
+include $(call select_from_repositories,mk/spec/arm_v7a.mk)
diff --git a/repos/base/mk/spec-platform_pbxa9.mk b/repos/base/mk/spec/pbxa9.mk
similarity index 55%
rename from repos/base/mk/spec-platform_pbxa9.mk
rename to repos/base/mk/spec/pbxa9.mk
index 252694cfd8..6c085f35cb 100644
--- a/repos/base/mk/spec-platform_pbxa9.mk
+++ b/repos/base/mk/spec/pbxa9.mk
@@ -11,7 +11,7 @@ SPECS += cortex_a9
#
# Add device parameters to include search path
#
-REP_INC_DIR += include/platform/pbxa9
+REP_INC_DIR += include/spec/pbxa9
-include $(call select_from_repositories,mk/spec-cortex_a9.mk)
-include $(call select_from_repositories,mk/spec-pl011.mk)
+include $(call select_from_repositories,mk/spec/cortex_a9.mk)
+include $(call select_from_repositories,mk/spec/pl011.mk)
diff --git a/repos/base/mk/spec-pl011.mk b/repos/base/mk/spec/pl011.mk
similarity index 82%
rename from repos/base/mk/spec-pl011.mk
rename to repos/base/mk/spec/pl011.mk
index 330f54dd78..8ff6c0180d 100644
--- a/repos/base/mk/spec-pl011.mk
+++ b/repos/base/mk/spec/pl011.mk
@@ -5,5 +5,5 @@
#
# add repository relative include paths
-REP_INC_DIR += include/pl011
+REP_INC_DIR += include/spec/pl011
diff --git a/repos/base/mk/spec-release.mk b/repos/base/mk/spec/release.mk
similarity index 100%
rename from repos/base/mk/spec-release.mk
rename to repos/base/mk/spec/release.mk
diff --git a/repos/base/mk/spec-platform_rpi.mk b/repos/base/mk/spec/rpi.mk
similarity index 62%
rename from repos/base/mk/spec-platform_rpi.mk
rename to repos/base/mk/spec/rpi.mk
index f2f67e1066..83405134a2 100644
--- a/repos/base/mk/spec-platform_rpi.mk
+++ b/repos/base/mk/spec/rpi.mk
@@ -8,8 +8,8 @@
SPECS += arm_v6 usb framebuffer gpio
# add repository relative include paths
-REP_INC_DIR += include/platform/rpi
+REP_INC_DIR += include/spec/rpi
# include implied specs
-include $(call select_from_repositories,mk/spec-arm_v6.mk)
-include $(call select_from_repositories,mk/spec-pl011.mk)
+include $(call select_from_repositories,mk/spec/arm_v6.mk)
+include $(call select_from_repositories,mk/spec/pl011.mk)
diff --git a/repos/base/mk/spec-tl16c750.mk b/repos/base/mk/spec/tl16c750.mk
similarity index 81%
rename from repos/base/mk/spec-tl16c750.mk
rename to repos/base/mk/spec/tl16c750.mk
index 2936c926d7..ebeedec51e 100644
--- a/repos/base/mk/spec-tl16c750.mk
+++ b/repos/base/mk/spec/tl16c750.mk
@@ -5,5 +5,5 @@
#
# add repository relative include paths
-REP_INC_DIR += include/tl16c750
+REP_INC_DIR += include/spec/tl16c750
diff --git a/repos/base/mk/spec-x86_32.mk b/repos/base/mk/spec/x86_32.mk
similarity index 56%
rename from repos/base/mk/spec-x86_32.mk
rename to repos/base/mk/spec/x86_32.mk
index af7dd40225..5c40d463c7 100644
--- a/repos/base/mk/spec-x86_32.mk
+++ b/repos/base/mk/spec/x86_32.mk
@@ -6,9 +6,8 @@ SPECS += x86 32bit
#
# x86-specific Genode headers
#
-REP_INC_DIR += include/x86
-REP_INC_DIR += include/x86_32
-REP_INC_DIR += include/platform/x86
+REP_INC_DIR += include/spec/x86
+REP_INC_DIR += include/spec/x86_32
#
# x86-specific flags
@@ -17,4 +16,4 @@ CC_MARCH ?= -march=i686 -m32
LD_MARCH ?= -melf_i386
AS_MARCH ?= -march=i686 --32
-include $(call select_from_repositories,mk/spec-32bit.mk)
+include $(call select_from_repositories,mk/spec/32bit.mk)
diff --git a/repos/base/mk/spec-x86_64.mk b/repos/base/mk/spec/x86_64.mk
similarity index 72%
rename from repos/base/mk/spec-x86_64.mk
rename to repos/base/mk/spec/x86_64.mk
index 6aaea99192..8e7bfc65b4 100644
--- a/repos/base/mk/spec-x86_64.mk
+++ b/repos/base/mk/spec/x86_64.mk
@@ -6,9 +6,8 @@ SPECS += x86 64bit
#
# x86-specific Genode headers
#
-REP_INC_DIR += include/x86
-REP_INC_DIR += include/x86_64
-REP_INC_DIR += include/platform/x86
+REP_INC_DIR += include/spec/x86
+REP_INC_DIR += include/spec/x86_64
CC_MARCH ?= -m64
@@ -22,4 +21,4 @@ CC_MARCH ?= -m64
LD_MARCH ?= -melf_x86_64
-include $(call select_from_repositories,mk/spec-64bit.mk)
+include $(call select_from_repositories,mk/spec/64bit.mk)
diff --git a/repos/base/mk/spec/zynq.mk b/repos/base/mk/spec/zynq.mk
new file mode 100644
index 0000000000..612230ddf0
--- /dev/null
+++ b/repos/base/mk/spec/zynq.mk
@@ -0,0 +1,8 @@
+#
+# Pull in CPU specifics
+#
+SPECS += cortex_a9 arm_v7a
+
+REP_INC_DIR += include/spec/zynq
+
+include $(call select_from_repositories,mk/spec/cortex_a9.mk)
diff --git a/repos/base/mk/spec/zynq_qemu.mk b/repos/base/mk/spec/zynq_qemu.mk
new file mode 100644
index 0000000000..b5825947cf
--- /dev/null
+++ b/repos/base/mk/spec/zynq_qemu.mk
@@ -0,0 +1,9 @@
+#
+# Pull in CPU specifics
+#
+SPECS += zynq cadence_gem xilinx
+
+REP_INC_DIR += include/spec/zynq_qemu
+REP_INC_DIR += include/spec/xilinx
+
+include $(call select_from_repositories,mk/spec/zynq.mk)
diff --git a/repos/base/run/affinity.run b/repos/base/run/affinity.run
index 515643e467..db247c9bbf 100644
--- a/repos/base/run/affinity.run
+++ b/repos/base/run/affinity.run
@@ -20,7 +20,7 @@ if {
set build_components { core init test/affinity }
-lappend_if [have_spec platform_arndale] build_components drivers/platform
+lappend_if [have_spec arndale] build_components drivers/platform
build $build_components
@@ -42,7 +42,7 @@ set config {
}
-append_if [have_spec platform_arndale] config {
+append_if [have_spec arndale] config {
@@ -58,7 +58,7 @@ install_config $config
set boot_modules { core init test-affinity }
-lappend_if [have_spec platform_arndale] boot_modules platform_drv
+lappend_if [have_spec arndale] boot_modules platform_drv
build_boot_image $boot_modules
diff --git a/repos/base/run/affinity_subspace.run b/repos/base/run/affinity_subspace.run
index 3e34fb996e..4e4f496523 100644
--- a/repos/base/run/affinity_subspace.run
+++ b/repos/base/run/affinity_subspace.run
@@ -3,7 +3,7 @@
# \author Norman Feske
#
-if {[have_spec platform_pbxa9] || (![have_spec nova] && ![have_spec foc])} {
+if {[have_spec pbxa9] || (![have_spec nova] && ![have_spec foc])} {
puts "Platform is unsupported."
exit 0
}
diff --git a/repos/base/run/mp_server.run b/repos/base/run/mp_server.run
index 7b61293b63..bb2b3bfca2 100644
--- a/repos/base/run/mp_server.run
+++ b/repos/base/run/mp_server.run
@@ -38,7 +38,7 @@ if {[have_include "power_on/qemu"]} {
# pbxa9 - foc does only use 1 cpu even if more are configured
# pbxa9 - hw does not support multiple CPUs
- if {[have_spec platform_pbxa9]} { set want_cpus 1 }
+ if {[have_spec pbxa9]} { set want_cpus 1 }
# okl4, pistachio, fiasco only use one CPU even if more are configured
if {[have_spec okl4]} { set want_cpus 1 }
if {[have_spec pistachio]} { set want_cpus 1 }
diff --git a/repos/base/run/platform_drv.inc b/repos/base/run/platform_drv.inc
index 359baa70bd..a68540a960 100644
--- a/repos/base/run/platform_drv.inc
+++ b/repos/base/run/platform_drv.inc
@@ -3,10 +3,10 @@ proc have_platform_drv {} {
return 0
}
- return [expr [have_spec platform_arndale] \
- || [have_spec platform_imx53] \
- || [have_spec platform_rpi] \
- || [have_spec platform_odroid_x2] \
+ return [expr [have_spec arndale] \
+ || [have_spec imx53] \
+ || [have_spec rpi] \
+ || [have_spec odroid_x2] \
|| [have_spec x86]]
}
@@ -16,7 +16,7 @@ proc append_platform_drv_build_components {} {
lappend_if [have_platform_drv] build_components drivers/platform
lappend_if [have_spec acpi] build_components drivers/acpi
lappend_if [have_spec acpi] build_components server/report_rom
- lappend_if [have_spec nova] build_components drivers/platform/x86/device_pd
+ lappend_if [have_spec nova] build_components drivers/platform/spec/x86/device_pd
}
proc append_platform_drv_boot_modules {} {
@@ -109,7 +109,7 @@ proc append_platform_drv_config {} {
}
- append_if [have_spec platform_rpi] config {
+ append_if [have_spec rpi] config {
}
append config {
diff --git a/repos/base/src/core/x86/io_port_session_component.cc b/repos/base/src/core/spec/x86/io_port_session_component.cc
similarity index 100%
rename from repos/base/src/core/x86/io_port_session_component.cc
rename to repos/base/src/core/spec/x86/io_port_session_component.cc
diff --git a/repos/base/src/core/x86/platform_services.cc b/repos/base/src/core/spec/x86/platform_services.cc
similarity index 100%
rename from repos/base/src/core/x86/platform_services.cc
rename to repos/base/src/core/spec/x86/platform_services.cc
diff --git a/repos/base/src/platform/genode.ld b/repos/base/src/ld/genode.ld
similarity index 100%
rename from repos/base/src/platform/genode.ld
rename to repos/base/src/ld/genode.ld
diff --git a/repos/base/src/platform/genode_dyn.dl b/repos/base/src/ld/genode_dyn.dl
similarity index 100%
rename from repos/base/src/platform/genode_dyn.dl
rename to repos/base/src/ld/genode_dyn.dl
diff --git a/repos/base/src/platform/genode_dyn.ld b/repos/base/src/ld/genode_dyn.ld
similarity index 100%
rename from repos/base/src/platform/genode_dyn.ld
rename to repos/base/src/ld/genode_dyn.ld
diff --git a/repos/base/src/platform/genode_rel.ld b/repos/base/src/ld/genode_rel.ld
similarity index 100%
rename from repos/base/src/platform/genode_rel.ld
rename to repos/base/src/ld/genode_rel.ld
diff --git a/repos/base/src/lib/ldso/arm/jmp_slot.s b/repos/base/src/lib/ldso/spec/arm/jmp_slot.s
similarity index 100%
rename from repos/base/src/lib/ldso/arm/jmp_slot.s
rename to repos/base/src/lib/ldso/spec/arm/jmp_slot.s
diff --git a/repos/base/src/lib/ldso/arm/relocation.h b/repos/base/src/lib/ldso/spec/arm/relocation.h
similarity index 95%
rename from repos/base/src/lib/ldso/arm/relocation.h
rename to repos/base/src/lib/ldso/spec/arm/relocation.h
index 8f7a05c20d..32f4055cd0 100644
--- a/repos/base/src/lib/ldso/arm/relocation.h
+++ b/repos/base/src/lib/ldso/spec/arm/relocation.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__ARM__RELOCATION_H_
-#define _INCLUDE__ARM__RELOCATION_H_
+#ifndef _LIB__LDSO__SPEC__ARM__RELOCATION_H_
+#define _LIB__LDSO__SPEC__ARM__RELOCATION_H_
#include
@@ -113,4 +113,4 @@ class Linker::Reloc_non_plt : public Reloc_non_plt_generic
}
};
-#endif /* _INCLUDE__ARM__RELOCATION_H_ */
+#endif /* _LIB__LDSO__SPEC__ARM__RELOCATION_H_ */
diff --git a/repos/base/src/lib/ldso/x86_32/jmp_slot.s b/repos/base/src/lib/ldso/spec/x86_32/jmp_slot.s
similarity index 100%
rename from repos/base/src/lib/ldso/x86_32/jmp_slot.s
rename to repos/base/src/lib/ldso/spec/x86_32/jmp_slot.s
diff --git a/repos/base/src/lib/ldso/x86_32/relocation.h b/repos/base/src/lib/ldso/spec/x86_32/relocation.h
similarity index 93%
rename from repos/base/src/lib/ldso/x86_32/relocation.h
rename to repos/base/src/lib/ldso/spec/x86_32/relocation.h
index b1d54c225c..c58f93a8a6 100644
--- a/repos/base/src/lib/ldso/x86_32/relocation.h
+++ b/repos/base/src/lib/ldso/spec/x86_32/relocation.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _X86_32__RELOCATION_H_
-#define _X86_32__RELOCATION_H_
+#ifndef _LIB__LDSO__SPEC__X86_32__RELOCATION_H_
+#define _LIB__LDSO__SPEC__X86_32__RELOCATION_H_
#include
@@ -93,4 +93,4 @@ class Linker::Reloc_non_plt : public Reloc_non_plt_generic
}
};
-#endif /* _X86_32__RELOCATION_H_ */
+#endif /* _LIB__LDSO__SPEC__X86_32__RELOCATION_H_ */
diff --git a/repos/base/src/lib/ldso/x86_64/jmp_slot.s b/repos/base/src/lib/ldso/spec/x86_64/jmp_slot.s
similarity index 100%
rename from repos/base/src/lib/ldso/x86_64/jmp_slot.s
rename to repos/base/src/lib/ldso/spec/x86_64/jmp_slot.s
diff --git a/repos/base/src/lib/ldso/x86_64/relocation.h b/repos/base/src/lib/ldso/spec/x86_64/relocation.h
similarity index 94%
rename from repos/base/src/lib/ldso/x86_64/relocation.h
rename to repos/base/src/lib/ldso/spec/x86_64/relocation.h
index a1d7872da6..20abf060cd 100644
--- a/repos/base/src/lib/ldso/x86_64/relocation.h
+++ b/repos/base/src/lib/ldso/spec/x86_64/relocation.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__X86_64__RELOCATION_H_
-#define _INCLUDE__X86_64__RELOCATION_H_
+#ifndef _LIB__LDSO__SPEC__X86_64__RELOCATION_H_
+#define _LIB__LDSO__SPEC__X86_64__RELOCATION_H_
#include
@@ -99,4 +99,4 @@ class Linker::Reloc_non_plt : public Reloc_non_plt_generic
}
};
-#endif /* _INCLUDE__X86_64__RELOCATION_H_ */
+#endif /* _LIB__LDSO__SPEC__X86_64__RELOCATION_H_ */
diff --git a/repos/base/src/platform/_main.cc b/repos/base/src/lib/startup/_main.cc
similarity index 100%
rename from repos/base/src/platform/_main.cc
rename to repos/base/src/lib/startup/_main.cc
diff --git a/repos/base/src/platform/_main_parent_cap.h b/repos/base/src/lib/startup/_main_parent_cap.h
similarity index 82%
rename from repos/base/src/platform/_main_parent_cap.h
rename to repos/base/src/lib/startup/_main_parent_cap.h
index fc6ff7814b..7db13674f8 100644
--- a/repos/base/src/platform/_main_parent_cap.h
+++ b/repos/base/src/lib/startup/_main_parent_cap.h
@@ -14,8 +14,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PLATFORM__MAIN_PARENT_CAP_H_
-#define _PLATFORM__MAIN_PARENT_CAP_H_
+#ifndef _LIB__STARTUP___MAIN_PARENT_CAP_H_
+#define _LIB__STARTUP___MAIN_PARENT_CAP_H_
namespace Genode {
@@ -30,4 +30,4 @@ namespace Genode {
}
}
-#endif /* _PLATFORM__MAIN_PARENT_CAP_H_ */
+#endif /* _LIB__STARTUP___MAIN_PARENT_CAP_H_ */
diff --git a/repos/base/src/platform/cap_copy.cc b/repos/base/src/lib/startup/cap_copy.cc
similarity index 100%
rename from repos/base/src/platform/cap_copy.cc
rename to repos/base/src/lib/startup/cap_copy.cc
diff --git a/repos/base/src/platform/init_main_thread.cc b/repos/base/src/lib/startup/init_main_thread.cc
similarity index 100%
rename from repos/base/src/platform/init_main_thread.cc
rename to repos/base/src/lib/startup/init_main_thread.cc
diff --git a/repos/base/src/platform/arm/crt0.s b/repos/base/src/lib/startup/spec/arm/crt0.s
similarity index 100%
rename from repos/base/src/platform/arm/crt0.s
rename to repos/base/src/lib/startup/spec/arm/crt0.s
diff --git a/repos/base/src/platform/x86_32/crt0.s b/repos/base/src/lib/startup/spec/x86_32/crt0.s
similarity index 100%
rename from repos/base/src/platform/x86_32/crt0.s
rename to repos/base/src/lib/startup/spec/x86_32/crt0.s
diff --git a/repos/base/src/platform/x86_64/crt0.s b/repos/base/src/lib/startup/spec/x86_64/crt0.s
similarity index 100%
rename from repos/base/src/platform/x86_64/crt0.s
rename to repos/base/src/lib/startup/spec/x86_64/crt0.s
diff --git a/repos/dde_bsd/lib/mk/spec/x86_32/dde_bsd_audio.mk b/repos/dde_bsd/lib/mk/spec/x86_32/dde_bsd_audio.mk
new file mode 100644
index 0000000000..33ee266df9
--- /dev/null
+++ b/repos/dde_bsd/lib/mk/spec/x86_32/dde_bsd_audio.mk
@@ -0,0 +1,5 @@
+INC_DIR += $(LIB_INC_DIR)/spec/x86_32 $(LIB_INC_DIR)/spec/x86
+
+include $(REP_DIR)/lib/mk/dde_bsd_audio.inc
+
+vpath %.S $(LIB_DIR)/spec/x86_32
diff --git a/repos/dde_bsd/lib/mk/spec/x86_64/dde_bsd_audio.mk b/repos/dde_bsd/lib/mk/spec/x86_64/dde_bsd_audio.mk
new file mode 100644
index 0000000000..3a6ca4a24e
--- /dev/null
+++ b/repos/dde_bsd/lib/mk/spec/x86_64/dde_bsd_audio.mk
@@ -0,0 +1,5 @@
+INC_DIR += $(LIB_INC_DIR)/spec/x86_64 $(LIB_INC_DIR)/spec/x86
+
+include $(REP_DIR)/lib/mk/dde_bsd_audio.inc
+
+vpath %.S $(LIB_DIR)/spec/x86_64
diff --git a/repos/dde_bsd/lib/mk/x86_32/dde_bsd_audio.mk b/repos/dde_bsd/lib/mk/x86_32/dde_bsd_audio.mk
deleted file mode 100644
index 02457391ea..0000000000
--- a/repos/dde_bsd/lib/mk/x86_32/dde_bsd_audio.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-INC_DIR += $(LIB_INC_DIR)/x86_32 $(LIB_INC_DIR)/x86
-
-include $(REP_DIR)/lib/mk/dde_bsd_audio.inc
-
-vpath %.S $(LIB_DIR)/x86_32
diff --git a/repos/dde_bsd/lib/mk/x86_64/dde_bsd_audio.mk b/repos/dde_bsd/lib/mk/x86_64/dde_bsd_audio.mk
deleted file mode 100644
index f0e95b5e1e..0000000000
--- a/repos/dde_bsd/lib/mk/x86_64/dde_bsd_audio.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-INC_DIR += $(LIB_INC_DIR)/x86_64 $(LIB_INC_DIR)/x86
-
-include $(REP_DIR)/lib/mk/dde_bsd_audio.inc
-
-vpath %.S $(LIB_DIR)/x86_64
diff --git a/repos/dde_bsd/src/lib/audio/include/x86_32/platform/platform.h b/repos/dde_bsd/src/lib/audio/include/spec/x86_32/platform/platform.h
similarity index 100%
rename from repos/dde_bsd/src/lib/audio/include/x86_32/platform/platform.h
rename to repos/dde_bsd/src/lib/audio/include/spec/x86_32/platform/platform.h
diff --git a/repos/dde_bsd/src/lib/audio/include/x86_64/platform/platform.h b/repos/dde_bsd/src/lib/audio/include/spec/x86_64/platform/platform.h
similarity index 100%
rename from repos/dde_bsd/src/lib/audio/include/x86_64/platform/platform.h
rename to repos/dde_bsd/src/lib/audio/include/spec/x86_64/platform/platform.h
diff --git a/repos/dde_bsd/src/lib/audio/x86_32/setjmp.S b/repos/dde_bsd/src/lib/audio/spec/x86_32/setjmp.S
similarity index 100%
rename from repos/dde_bsd/src/lib/audio/x86_32/setjmp.S
rename to repos/dde_bsd/src/lib/audio/spec/x86_32/setjmp.S
diff --git a/repos/dde_bsd/src/lib/audio/x86_64/setjmp.S b/repos/dde_bsd/src/lib/audio/spec/x86_64/setjmp.S
similarity index 100%
rename from repos/dde_bsd/src/lib/audio/x86_64/setjmp.S
rename to repos/dde_bsd/src/lib/audio/spec/x86_64/setjmp.S
diff --git a/repos/dde_ipxe/lib/mk/x86_32/dde_ipxe_nic.mk b/repos/dde_ipxe/lib/mk/spec/x86_32/dde_ipxe_nic.mk
similarity index 100%
rename from repos/dde_ipxe/lib/mk/x86_32/dde_ipxe_nic.mk
rename to repos/dde_ipxe/lib/mk/spec/x86_32/dde_ipxe_nic.mk
diff --git a/repos/dde_ipxe/lib/mk/x86_64/dde_ipxe_nic.mk b/repos/dde_ipxe/lib/mk/spec/x86_64/dde_ipxe_nic.mk
similarity index 100%
rename from repos/dde_ipxe/lib/mk/x86_64/dde_ipxe_nic.mk
rename to repos/dde_ipxe/lib/mk/spec/x86_64/dde_ipxe_nic.mk
diff --git a/repos/dde_linux/lib/import/import-libnl.mk b/repos/dde_linux/lib/import/import-libnl.mk
index fd779d682d..1aa5c17774 100644
--- a/repos/dde_linux/lib/import/import-libnl.mk
+++ b/repos/dde_linux/lib/import/import-libnl.mk
@@ -4,8 +4,8 @@ INC_DIR += $(NL_CONTRIB_INC_DIR)/include
LIBNL_INC_DIR = $(REP_DIR)/src/lib/libnl/include
INC_DIR += $(LIBNL_INC_DIR)
ifneq ($(filter 32bit,$(SPECS)),)
- INC_DIR += $(LIBNL_INC_DIR)/32bit
+ INC_DIR += $(LIBNL_INC_DIR)/spec/32bit
endif
ifneq ($(filter 64bit,$(SPECS)),)
- INC_DIR += $(LIBNL_INC_DIR)/64bit
+ INC_DIR += $(LIBNL_INC_DIR)/spec/64bit
endif
diff --git a/repos/dde_linux/lib/mk/arm/usb.inc b/repos/dde_linux/lib/mk/arm/usb.inc
deleted file mode 100644
index 518991b2db..0000000000
--- a/repos/dde_linux/lib/mk/arm/usb.inc
+++ /dev/null
@@ -1,4 +0,0 @@
-SRC_CC += platform_device.c
-INC_DIR += $(LIB_INC_DIR)/arm
-
-vpath platform_device.cc $(LIB_DIR)/arm
diff --git a/repos/dde_linux/lib/mk/armv6/usb.inc b/repos/dde_linux/lib/mk/armv6/usb.inc
deleted file mode 100644
index 1eb7a6afde..0000000000
--- a/repos/dde_linux/lib/mk/armv6/usb.inc
+++ /dev/null
@@ -1,3 +0,0 @@
-INC_DIR += $(LIB_INC_DIR)/armv6
-
-include $(REP_DIR)/lib/mk/arm/usb.inc
diff --git a/repos/dde_linux/lib/mk/armv7/usb.inc b/repos/dde_linux/lib/mk/armv7/usb.inc
deleted file mode 100644
index 0f7ae39cb5..0000000000
--- a/repos/dde_linux/lib/mk/armv7/usb.inc
+++ /dev/null
@@ -1,3 +0,0 @@
-INC_DIR += $(LIB_INC_DIR)/armv7
-
-include $(REP_DIR)/lib/mk/arm/usb.inc
diff --git a/repos/dde_linux/lib/mk/foc_rpi/usb.mk b/repos/dde_linux/lib/mk/foc_rpi/usb.mk
deleted file mode 100644
index df0361392d..0000000000
--- a/repos/dde_linux/lib/mk/foc_rpi/usb.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(REP_DIR)/lib/mk/usb_rpi.inc
-
-INC_DIR += $(REP_DIR)/include/usb/foc_rpi
\ No newline at end of file
diff --git a/repos/dde_linux/lib/mk/platform_arndale/usb-stat.mk b/repos/dde_linux/lib/mk/platform_arndale/usb-stat.mk
deleted file mode 100644
index afc80f7643..0000000000
--- a/repos/dde_linux/lib/mk/platform_arndale/usb-stat.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-LIBS += net-stat
-CC_OPT += -DGENODE_NET_STAT
-
-include $(REP_DIR)/lib/mk/platform_arndale/usb.mk
diff --git a/repos/dde_linux/lib/mk/platform_odroid_x2/usb-stat.mk b/repos/dde_linux/lib/mk/platform_odroid_x2/usb-stat.mk
deleted file mode 100644
index 5357fc85ac..0000000000
--- a/repos/dde_linux/lib/mk/platform_odroid_x2/usb-stat.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-LIBS += net-stat
-CC_OPT += -DGENODE_NET_STAT
-
-include $(REP_DIR)/lib/mk/platform_odroid_x2/usb.mk
diff --git a/repos/dde_linux/lib/mk/platform_panda/usb-stat.mk b/repos/dde_linux/lib/mk/platform_panda/usb-stat.mk
deleted file mode 100644
index e36522b91d..0000000000
--- a/repos/dde_linux/lib/mk/platform_panda/usb-stat.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-LIBS += net-stat
-CC_OPT += -DGENODE_NET_STAT
-
-include $(REP_DIR)/lib/mk/platform_panda/usb.mk
diff --git a/repos/dde_linux/lib/mk/platform_rpi/usb.mk b/repos/dde_linux/lib/mk/platform_rpi/usb.mk
deleted file mode 100644
index 0f22450d08..0000000000
--- a/repos/dde_linux/lib/mk/platform_rpi/usb.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(REP_DIR)/lib/mk/usb_rpi.inc
-
-INC_DIR += $(REP_DIR)/include/usb/hw_rpi
diff --git a/repos/dde_linux/lib/mk/spec/arm/usb.inc b/repos/dde_linux/lib/mk/spec/arm/usb.inc
new file mode 100644
index 0000000000..ae5850f9c3
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/arm/usb.inc
@@ -0,0 +1,6 @@
+include $(REP_DIR)/lib/mk/usb.inc
+
+SRC_CC += platform_device.c
+INC_DIR += $(LIB_INC_DIR)/spec/arm
+
+vpath platform_device.cc $(LIB_DIR)/spec/arm
diff --git a/repos/dde_linux/lib/mk/spec/arm_v6/usb.inc b/repos/dde_linux/lib/mk/spec/arm_v6/usb.inc
new file mode 100644
index 0000000000..e07a2b2350
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/arm_v6/usb.inc
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/spec/arm/usb.inc
+
+INC_DIR += $(LIB_INC_DIR)/spec/arm_v6
diff --git a/repos/dde_linux/lib/mk/spec/arm_v7/usb.inc b/repos/dde_linux/lib/mk/spec/arm_v7/usb.inc
new file mode 100644
index 0000000000..207c73c130
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/arm_v7/usb.inc
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/spec/arm/usb.inc
+
+INC_DIR += $(LIB_INC_DIR)/spec/arm_v7
diff --git a/repos/dde_linux/lib/mk/spec/arndale/usb-stat.mk b/repos/dde_linux/lib/mk/spec/arndale/usb-stat.mk
new file mode 100644
index 0000000000..7f1ba6e5cb
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/arndale/usb-stat.mk
@@ -0,0 +1,4 @@
+LIBS += net-stat
+CC_OPT += -DGENODE_NET_STAT
+
+include $(REP_DIR)/lib/mk/spec/arndale/usb.mk
diff --git a/repos/dde_linux/lib/mk/platform_arndale/usb.mk b/repos/dde_linux/lib/mk/spec/arndale/usb.mk
similarity index 81%
rename from repos/dde_linux/lib/mk/platform_arndale/usb.mk
rename to repos/dde_linux/lib/mk/spec/arndale/usb.mk
index 7b5300301f..d3d4af3ce7 100644
--- a/repos/dde_linux/lib/mk/platform_arndale/usb.mk
+++ b/repos/dde_linux/lib/mk/spec/arndale/usb.mk
@@ -3,8 +3,7 @@ SRC_C += $(addprefix net/usb/, usbnet.c asix_devices.c asix_common.c ax88172a.
SRC_C += usb/host/ehci-exynos.c
include $(REP_DIR)/lib/mk/xhci.inc
-include $(REP_DIR)/lib/mk/usb.inc
-include $(REP_DIR)/lib/mk/armv7/usb.inc
+include $(REP_DIR)/lib/mk/spec/arm_v7/usb.inc
CC_OPT += -DCONFIG_USB_EHCI_TT_NEWSCHED -DCONFIG_USB_DWC3_HOST=1 \
-DCONFIG_USB_DWC3_GADGET=0 -DCONFIG_USB_OTG_UTILS -DCONFIG_USB_XHCI_PLATFORM -DDWC3_QUIRK
@@ -17,4 +16,4 @@ SRC_C += $(addprefix usb/dwc3/, host.c core.c)
#XHCI
SRC_C += usb/host/xhci-plat.c
-vpath platform.cc $(LIB_DIR)/arm/platform_arndale
+vpath platform.cc $(LIB_DIR)/spec/arndale
diff --git a/repos/dde_linux/lib/mk/spec/foc_rpi/usb.mk b/repos/dde_linux/lib/mk/spec/foc_rpi/usb.mk
new file mode 100644
index 0000000000..97612034ae
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/foc_rpi/usb.mk
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/spec/rpi/usb.inc
+
+INC_DIR += $(LIB_INC_DIR)/spec/foc_rpi
diff --git a/repos/dde_linux/lib/mk/spec/hw_rpi/usb.mk b/repos/dde_linux/lib/mk/spec/hw_rpi/usb.mk
new file mode 100644
index 0000000000..487cd3aff8
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/hw_rpi/usb.mk
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/spec/rpi/usb.inc
+
+INC_DIR += $(LIB_INC_DIR)/spec/hw_rpi
diff --git a/repos/dde_linux/lib/mk/spec/odroid_x2/usb-stat.mk b/repos/dde_linux/lib/mk/spec/odroid_x2/usb-stat.mk
new file mode 100644
index 0000000000..6be5293bc4
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/odroid_x2/usb-stat.mk
@@ -0,0 +1,4 @@
+LIBS += net-stat
+CC_OPT += -DGENODE_NET_STAT
+
+include $(REP_DIR)/lib/mk/spec/odroid_x2/usb.mk
diff --git a/repos/dde_linux/lib/mk/platform_odroid_x2/usb.mk b/repos/dde_linux/lib/mk/spec/odroid_x2/usb.mk
similarity index 52%
rename from repos/dde_linux/lib/mk/platform_odroid_x2/usb.mk
rename to repos/dde_linux/lib/mk/spec/odroid_x2/usb.mk
index 43a9d9fab1..8890d4d5ec 100644
--- a/repos/dde_linux/lib/mk/platform_odroid_x2/usb.mk
+++ b/repos/dde_linux/lib/mk/spec/odroid_x2/usb.mk
@@ -1,8 +1,7 @@
SRC_C += $(addprefix net/usb/, usbnet.c smsc95xx.c)
SRC_C += usb/host/ehci-exynos.c
-include $(REP_DIR)/lib/mk/usb.inc
-include $(REP_DIR)/lib/mk/armv7/usb.inc
+include $(REP_DIR)/lib/mk/spec/arm_v7/usb.inc
CC_OPT += -DCONFIG_USB_EHCI_TT_NEWSCHED \
@@ -10,6 +9,6 @@ CC_OPT += -DCONFIG_USB_EHCI_TT_NEWSCHED \
SRC_CC += platform.cc
-INC_DIR += $(REP_DIR)/include/usb/platform_odroid_x2
+INC_DIR += $(LIB_INC_DIR)/spec/odroid_x2
-vpath platform.cc $(LIB_DIR)/arm/platform_odroid_x2
+vpath platform.cc $(LIB_DIR)/spec/odroid_x2
diff --git a/repos/dde_linux/lib/mk/spec/panda/usb-stat.mk b/repos/dde_linux/lib/mk/spec/panda/usb-stat.mk
new file mode 100644
index 0000000000..d4603afc38
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/panda/usb-stat.mk
@@ -0,0 +1,4 @@
+LIBS += net-stat
+CC_OPT += -DGENODE_NET_STAT
+
+include $(REP_DIR)/lib/mk/spec/panda/usb.mk
diff --git a/repos/dde_linux/lib/mk/platform_panda/usb.mk b/repos/dde_linux/lib/mk/spec/panda/usb.mk
similarity index 61%
rename from repos/dde_linux/lib/mk/platform_panda/usb.mk
rename to repos/dde_linux/lib/mk/spec/panda/usb.mk
index 6d09ab718d..5929d2e6b9 100644
--- a/repos/dde_linux/lib/mk/platform_panda/usb.mk
+++ b/repos/dde_linux/lib/mk/spec/panda/usb.mk
@@ -1,10 +1,9 @@
SRC_C += $(addprefix net/usb/, usbnet.c smsc95xx.c)
SRC_C += usb/host/ehci-omap.c
-include $(REP_DIR)/lib/mk/usb.inc
-include $(REP_DIR)/lib/mk/armv7/usb.inc
+include $(REP_DIR)/lib/mk/spec/arm_v7/usb.inc
CC_OPT += -DCONFIG_USB_EHCI_HCD_OMAP -DCONFIG_USB_EHCI_TT_NEWSCHED -DVERBOSE_DEBUG
SRC_CC += platform.cc
-vpath platform.cc $(LIB_DIR)/arm/platform_panda
+vpath platform.cc $(LIB_DIR)/spec/panda
diff --git a/repos/dde_linux/lib/mk/usb_rpi.inc b/repos/dde_linux/lib/mk/spec/rpi/usb.inc
similarity index 92%
rename from repos/dde_linux/lib/mk/usb_rpi.inc
rename to repos/dde_linux/lib/mk/spec/rpi/usb.inc
index 4021104d82..45217ba192 100644
--- a/repos/dde_linux/lib/mk/usb_rpi.inc
+++ b/repos/dde_linux/lib/mk/spec/rpi/usb.inc
@@ -22,8 +22,7 @@ SRC_C += \
SRC_C += net/usb/usbnet.c net/usb/smsc95xx.c
-include $(REP_DIR)/lib/mk/usb.inc
-include $(REP_DIR)/lib/mk/armv6/usb.inc
+include $(REP_DIR)/lib/mk/spec/arm_v6/usb.inc
CC_OPT += -DDWC_LINUX -DPLATFORM_INTERFACE
@@ -41,7 +40,7 @@ INC_DIR += $(LX_CONTRIB_DIR)/drivers/usb/host/dwc_otg/dwc_common_port \
$(LX_CONTRIB_DIR)/drivers/usb/host/dwc_otg/dwc_otg
SRC_CC += platform.cc
-vpath platform.cc $(LIB_DIR)/arm/platform_rpi
+vpath platform.cc $(LIB_DIR)/spec/rpi
vpath %.c $(LX_CONTRIB_DIR)/drivers/net/usb
# enable C++11 support
diff --git a/repos/dde_linux/lib/mk/usb_x86.inc b/repos/dde_linux/lib/mk/spec/x86/usb.inc
similarity index 91%
rename from repos/dde_linux/lib/mk/usb_x86.inc
rename to repos/dde_linux/lib/mk/spec/x86/usb.inc
index 1f13ae2090..a67cb9e841 100644
--- a/repos/dde_linux/lib/mk/usb_x86.inc
+++ b/repos/dde_linux/lib/mk/spec/x86/usb.inc
@@ -15,6 +15,6 @@ include $(REP_DIR)/lib/mk/usb.inc
CC_OPT += -DCONFIG_PCI -DCONFIG_USB_EHCI_PCI=1 -DCONFIG_USB_XHCI_HCD=1
-vpath platform.cc $(LIB_DIR)/x86
+vpath platform.cc $(LIB_DIR)/spec/x86
# vi:set ft=make :
diff --git a/repos/dde_linux/lib/mk/spec/x86_32/libnl.mk b/repos/dde_linux/lib/mk/spec/x86_32/libnl.mk
new file mode 100644
index 0000000000..a97bb5f497
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/x86_32/libnl.mk
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/libnl.inc
+
+INC_DIR += $(LIB_INC_DIR)/spec/32bit $(LIB_INC_DIR)/spec/x86_32 $(LIB_INC_DIR)/spec/x86
diff --git a/repos/dde_linux/lib/mk/spec/x86_32/usb.mk b/repos/dde_linux/lib/mk/spec/x86_32/usb.mk
new file mode 100644
index 0000000000..d71fd08d05
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/x86_32/usb.mk
@@ -0,0 +1,4 @@
+INC_DIR += $(LIB_INC_DIR)/spec/x86_32 $(LIB_INC_DIR)/spec/x86
+
+include $(REP_DIR)/lib/mk/spec/x86/usb.inc
+
diff --git a/repos/dde_linux/lib/mk/spec/x86_32/wifi.mk b/repos/dde_linux/lib/mk/spec/x86_32/wifi.mk
new file mode 100644
index 0000000000..c889df2ccf
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/x86_32/wifi.mk
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/wifi.inc
+
+INC_DIR += $(LIB_INC_DIR)/spec/32bit $(LIB_INC_DIR)/spec/x86_32 $(LIB_INC_DIR)/spec/x86
diff --git a/repos/dde_linux/lib/mk/spec/x86_64/libnl.mk b/repos/dde_linux/lib/mk/spec/x86_64/libnl.mk
new file mode 100644
index 0000000000..8347a6f6ba
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/x86_64/libnl.mk
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/libnl.inc
+
+INC_DIR += $(LIB_INC_DIR)/spec/64bit $(LIB_INC_DIR)/spec/x86_64 $(LIB_INC_DIR)/spec/x86
diff --git a/repos/dde_linux/lib/mk/spec/x86_64/usb.mk b/repos/dde_linux/lib/mk/spec/x86_64/usb.mk
new file mode 100644
index 0000000000..aa51dacf6e
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/x86_64/usb.mk
@@ -0,0 +1,3 @@
+INC_DIR += $(LIB_INC_DIR)/spec/x86_64 $(LIB_INC_DIR)/spec/x86
+
+include $(REP_DIR)/lib/mk/spec/x86/usb.inc
diff --git a/repos/dde_linux/lib/mk/spec/x86_64/wifi.mk b/repos/dde_linux/lib/mk/spec/x86_64/wifi.mk
new file mode 100644
index 0000000000..482ca98da7
--- /dev/null
+++ b/repos/dde_linux/lib/mk/spec/x86_64/wifi.mk
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/wifi.inc
+
+INC_DIR += $(LIB_INC_DIR)/spec/64bit $(LIB_INC_DIR)/spec/x86_64 $(LIB_INC_DIR)/spec/x86
diff --git a/repos/dde_linux/lib/mk/x86_32/libnl.mk b/repos/dde_linux/lib/mk/x86_32/libnl.mk
deleted file mode 100644
index a9d76c7457..0000000000
--- a/repos/dde_linux/lib/mk/x86_32/libnl.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(REP_DIR)/lib/mk/libnl.inc
-
-INC_DIR += $(LIB_INC_DIR)/32bit $(LIB_INC_DIR)/x86_32 $(LIB_INC_DIR)/x86
diff --git a/repos/dde_linux/lib/mk/x86_32/usb.mk b/repos/dde_linux/lib/mk/x86_32/usb.mk
deleted file mode 100644
index 8f7568c5ea..0000000000
--- a/repos/dde_linux/lib/mk/x86_32/usb.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-INC_DIR += $(LIB_INC_DIR)/x86_32 $(LIB_INC_DIR)/x86
-
-include $(REP_DIR)/lib/mk/usb_x86.inc
-
diff --git a/repos/dde_linux/lib/mk/x86_32/wifi.mk b/repos/dde_linux/lib/mk/x86_32/wifi.mk
deleted file mode 100644
index f29dffba10..0000000000
--- a/repos/dde_linux/lib/mk/x86_32/wifi.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(REP_DIR)/lib/mk/wifi.inc
-
-INC_DIR += $(LIB_INC_DIR)/32bit $(LIB_INC_DIR)/x86_32 $(LIB_INC_DIR)/x86
diff --git a/repos/dde_linux/lib/mk/x86_64/libnl.mk b/repos/dde_linux/lib/mk/x86_64/libnl.mk
deleted file mode 100644
index 1ebd1d1cd3..0000000000
--- a/repos/dde_linux/lib/mk/x86_64/libnl.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(REP_DIR)/lib/mk/libnl.inc
-
-INC_DIR += $(LIB_INC_DIR)/64bit $(LIB_INC_DIR)/x86_64 $(LIB_INC_DIR)/x86
diff --git a/repos/dde_linux/lib/mk/x86_64/usb.mk b/repos/dde_linux/lib/mk/x86_64/usb.mk
deleted file mode 100644
index c49ca7eeb6..0000000000
--- a/repos/dde_linux/lib/mk/x86_64/usb.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-INC_DIR += $(LIB_INC_DIR)/x86_64 $(LIB_INC_DIR)/x86
-
-include $(REP_DIR)/lib/mk/usb_x86.inc
diff --git a/repos/dde_linux/lib/mk/x86_64/wifi.mk b/repos/dde_linux/lib/mk/x86_64/wifi.mk
deleted file mode 100644
index 9b6c1c5a97..0000000000
--- a/repos/dde_linux/lib/mk/x86_64/wifi.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(REP_DIR)/lib/mk/wifi.inc
-
-INC_DIR += $(LIB_INC_DIR)/64bit $(LIB_INC_DIR)/x86_64 $(LIB_INC_DIR)/x86
diff --git a/repos/dde_linux/run/linux_nic_panda.run b/repos/dde_linux/run/linux_nic_panda.run
index 4de2c81224..f9f68643a7 100644
--- a/repos/dde_linux/run/linux_nic_panda.run
+++ b/repos/dde_linux/run/linux_nic_panda.run
@@ -1,5 +1,5 @@
assert_spec foc
-assert_spec platform_panda
+assert_spec panda
#
# Build
diff --git a/repos/dde_linux/src/drivers/wifi/target.mk b/repos/dde_linux/src/drivers/wifi/target.mk
index d2be620e68..30b47ce7be 100644
--- a/repos/dde_linux/src/drivers/wifi/target.mk
+++ b/repos/dde_linux/src/drivers/wifi/target.mk
@@ -1,3 +1,5 @@
+REQUIRES = x86
+
TARGET = wifi_drv
SRC_CC = main.cc
LIBS = wifi iwl_firmware wpa_supplicant server
diff --git a/repos/dde_linux/src/lib/libnl/include/32bit/platform/types.h b/repos/dde_linux/src/lib/libnl/include/spec/32bit/platform/types.h
similarity index 100%
rename from repos/dde_linux/src/lib/libnl/include/32bit/platform/types.h
rename to repos/dde_linux/src/lib/libnl/include/spec/32bit/platform/types.h
diff --git a/repos/dde_linux/src/lib/libnl/include/64bit/platform/types.h b/repos/dde_linux/src/lib/libnl/include/spec/64bit/platform/types.h
similarity index 100%
rename from repos/dde_linux/src/lib/libnl/include/64bit/platform/types.h
rename to repos/dde_linux/src/lib/libnl/include/spec/64bit/platform/types.h
diff --git a/repos/dde_linux/src/lib/usb/include/arm/platform/lx_emul.h b/repos/dde_linux/src/lib/usb/include/spec/arm/platform/lx_emul.h
similarity index 100%
rename from repos/dde_linux/src/lib/usb/include/arm/platform/lx_emul.h
rename to repos/dde_linux/src/lib/usb/include/spec/arm/platform/lx_emul.h
diff --git a/repos/dde_linux/src/lib/usb/include/arm/platform/lx_mem.h b/repos/dde_linux/src/lib/usb/include/spec/arm/platform/lx_mem.h
similarity index 100%
rename from repos/dde_linux/src/lib/usb/include/arm/platform/lx_mem.h
rename to repos/dde_linux/src/lib/usb/include/spec/arm/platform/lx_mem.h
diff --git a/repos/dde_linux/src/lib/usb/include/arm/platform/platform.h b/repos/dde_linux/src/lib/usb/include/spec/arm/platform/platform.h
similarity index 100%
rename from repos/dde_linux/src/lib/usb/include/arm/platform/platform.h
rename to repos/dde_linux/src/lib/usb/include/spec/arm/platform/platform.h
diff --git a/repos/dde_linux/src/lib/usb/include/armv6/platform/lx_emul_barrier.h b/repos/dde_linux/src/lib/usb/include/spec/arm_v6/platform/lx_emul_barrier.h
similarity index 100%
rename from repos/dde_linux/src/lib/usb/include/armv6/platform/lx_emul_barrier.h
rename to repos/dde_linux/src/lib/usb/include/spec/arm_v6/platform/lx_emul_barrier.h
diff --git a/repos/dde_linux/src/lib/usb/include/armv7/platform/lx_emul_barrier.h b/repos/dde_linux/src/lib/usb/include/spec/arm_v7/platform/lx_emul_barrier.h
similarity index 100%
rename from repos/dde_linux/src/lib/usb/include/armv7/platform/lx_emul_barrier.h
rename to repos/dde_linux/src/lib/usb/include/spec/arm_v7/platform/lx_emul_barrier.h
diff --git a/repos/dde_linux/include/usb/foc_rpi/usb_irq.h b/repos/dde_linux/src/lib/usb/include/spec/foc_rpi/usb_irq.h
similarity index 100%
rename from repos/dde_linux/include/usb/foc_rpi/usb_irq.h
rename to repos/dde_linux/src/lib/usb/include/spec/foc_rpi/usb_irq.h
diff --git a/repos/dde_linux/include/usb/hw_rpi/usb_irq.h b/repos/dde_linux/src/lib/usb/include/spec/hw_rpi/usb_irq.h
similarity index 100%
rename from repos/dde_linux/include/usb/hw_rpi/usb_irq.h
rename to repos/dde_linux/src/lib/usb/include/spec/hw_rpi/usb_irq.h
diff --git a/repos/dde_linux/include/usb/platform_odroid_x2/usb_masks.h b/repos/dde_linux/src/lib/usb/include/spec/odroid_x2/usb_masks.h
similarity index 100%
rename from repos/dde_linux/include/usb/platform_odroid_x2/usb_masks.h
rename to repos/dde_linux/src/lib/usb/include/spec/odroid_x2/usb_masks.h
diff --git a/repos/dde_linux/src/lib/usb/include/x86/platform/lx_emul.h b/repos/dde_linux/src/lib/usb/include/spec/x86/platform/lx_emul.h
similarity index 100%
rename from repos/dde_linux/src/lib/usb/include/x86/platform/lx_emul.h
rename to repos/dde_linux/src/lib/usb/include/spec/x86/platform/lx_emul.h
diff --git a/repos/dde_linux/src/lib/usb/include/x86/platform/lx_mem.h b/repos/dde_linux/src/lib/usb/include/spec/x86/platform/lx_mem.h
similarity index 100%
rename from repos/dde_linux/src/lib/usb/include/x86/platform/lx_mem.h
rename to repos/dde_linux/src/lib/usb/include/spec/x86/platform/lx_mem.h
diff --git a/repos/dde_linux/src/lib/usb/include/x86_32/platform/platform.h b/repos/dde_linux/src/lib/usb/include/spec/x86_32/platform/platform.h
similarity index 100%
rename from repos/dde_linux/src/lib/usb/include/x86_32/platform/platform.h
rename to repos/dde_linux/src/lib/usb/include/spec/x86_32/platform/platform.h
diff --git a/repos/dde_linux/src/lib/usb/include/x86_64/platform/platform.h b/repos/dde_linux/src/lib/usb/include/spec/x86_64/platform/platform.h
similarity index 100%
rename from repos/dde_linux/src/lib/usb/include/x86_64/platform/platform.h
rename to repos/dde_linux/src/lib/usb/include/spec/x86_64/platform/platform.h
diff --git a/repos/dde_linux/src/lib/usb/arm/platform_device.cc b/repos/dde_linux/src/lib/usb/spec/arm/platform_device.cc
similarity index 100%
rename from repos/dde_linux/src/lib/usb/arm/platform_device.cc
rename to repos/dde_linux/src/lib/usb/spec/arm/platform_device.cc
diff --git a/repos/dde_linux/src/lib/usb/arm/platform_arndale/platform.cc b/repos/dde_linux/src/lib/usb/spec/arndale/platform.cc
similarity index 100%
rename from repos/dde_linux/src/lib/usb/arm/platform_arndale/platform.cc
rename to repos/dde_linux/src/lib/usb/spec/arndale/platform.cc
diff --git a/repos/dde_linux/src/lib/usb/arm/platform_odroid_x2/platform.cc b/repos/dde_linux/src/lib/usb/spec/odroid_x2/platform.cc
similarity index 100%
rename from repos/dde_linux/src/lib/usb/arm/platform_odroid_x2/platform.cc
rename to repos/dde_linux/src/lib/usb/spec/odroid_x2/platform.cc
diff --git a/repos/dde_linux/src/lib/usb/arm/platform_panda/platform.cc b/repos/dde_linux/src/lib/usb/spec/panda/platform.cc
similarity index 100%
rename from repos/dde_linux/src/lib/usb/arm/platform_panda/platform.cc
rename to repos/dde_linux/src/lib/usb/spec/panda/platform.cc
diff --git a/repos/dde_linux/src/lib/usb/arm/platform_rpi/platform.cc b/repos/dde_linux/src/lib/usb/spec/rpi/platform.cc
similarity index 100%
rename from repos/dde_linux/src/lib/usb/arm/platform_rpi/platform.cc
rename to repos/dde_linux/src/lib/usb/spec/rpi/platform.cc
diff --git a/repos/dde_linux/src/lib/usb/x86/platform.cc b/repos/dde_linux/src/lib/usb/spec/x86/platform.cc
similarity index 100%
rename from repos/dde_linux/src/lib/usb/x86/platform.cc
rename to repos/dde_linux/src/lib/usb/spec/x86/platform.cc
diff --git a/repos/dde_linux/src/lib/wifi/include/x86_32/platform/platform.h b/repos/dde_linux/src/lib/wifi/include/spec/x86_32/platform/platform.h
similarity index 100%
rename from repos/dde_linux/src/lib/wifi/include/x86_32/platform/platform.h
rename to repos/dde_linux/src/lib/wifi/include/spec/x86_32/platform/platform.h
diff --git a/repos/dde_linux/src/lib/wifi/include/x86_32/platform/types.h b/repos/dde_linux/src/lib/wifi/include/spec/x86_32/platform/types.h
similarity index 100%
rename from repos/dde_linux/src/lib/wifi/include/x86_32/platform/types.h
rename to repos/dde_linux/src/lib/wifi/include/spec/x86_32/platform/types.h
diff --git a/repos/dde_linux/src/lib/wifi/include/x86_64/platform/platform.h b/repos/dde_linux/src/lib/wifi/include/spec/x86_64/platform/platform.h
similarity index 100%
rename from repos/dde_linux/src/lib/wifi/include/x86_64/platform/platform.h
rename to repos/dde_linux/src/lib/wifi/include/spec/x86_64/platform/platform.h
diff --git a/repos/dde_linux/src/lib/wifi/include/x86_64/platform/types.h b/repos/dde_linux/src/lib/wifi/include/spec/x86_64/platform/types.h
similarity index 100%
rename from repos/dde_linux/src/lib/wifi/include/x86_64/platform/types.h
rename to repos/dde_linux/src/lib/wifi/include/spec/x86_64/platform/types.h
diff --git a/repos/dde_rump/include/arm/rump_cgd/device.h b/repos/dde_rump/include/spec/arm/rump_cgd/device.h
similarity index 71%
rename from repos/dde_rump/include/arm/rump_cgd/device.h
rename to repos/dde_rump/include/spec/arm/rump_cgd/device.h
index d1d5b59d3b..d90c551516 100644
--- a/repos/dde_rump/include/arm/rump_cgd/device.h
+++ b/repos/dde_rump/include/spec/arm/rump_cgd/device.h
@@ -10,12 +10,13 @@
* This file is part of the Genode OS framework, which is distributed
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__ARM_RUMP_CGD__DEVICE_H_
-#define _INCLUDE__ARM_RUMP_CGD__DEVICE_H_
+
+#ifndef _INCLUDE__SPEC__ARM__RUMP_CGD__DEVICE_H_
+#define _INCLUDE__SPEC__ARM__RUMP_CGD__DEVICE_H_
/**
* Cgd raw device used within rump
*/
#define CGD_RAW_DEVICE "/dev/rcgd0c"
-#endif /* _INCLUDE__ARM_RUMP_CGD__DEVICE_H_ */
+#endif /* _INCLUDE__SPEC__ARM__RUMP_CGD__DEVICE_H_ */
diff --git a/repos/dde_rump/include/x86/rump_cgd/device.h b/repos/dde_rump/include/spec/x86/rump_cgd/device.h
similarity index 71%
rename from repos/dde_rump/include/x86/rump_cgd/device.h
rename to repos/dde_rump/include/spec/x86/rump_cgd/device.h
index a0ba8b19ae..520272eeff 100644
--- a/repos/dde_rump/include/x86/rump_cgd/device.h
+++ b/repos/dde_rump/include/spec/x86/rump_cgd/device.h
@@ -10,12 +10,13 @@
* This file is part of the Genode OS framework, which is distributed
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__X86_RUMP_CGD__DEVICE_H_
-#define _INCLUDE__X86_RUMP_CGD__DEVICE_H_
+
+#ifndef _INCLUDE__SPEC__X86__RUMP_CGD__DEVICE_H_
+#define _INCLUDE__SPEC__X86__RUMP_CGD__DEVICE_H_
/**
* Cgd raw device used within rump
*/
#define CGD_RAW_DEVICE "/dev/rcgd0d"
-#endif /* _INCLUDE__X86_RUMP_CGD__DEVICE_H_ */
+#endif /* _INCLUDE__SPEC__X86__RUMP_CGD__DEVICE_H_ */
diff --git a/repos/dde_rump/lib/mk/rump.inc b/repos/dde_rump/lib/mk/rump.inc
index 09e70975b7..32b8dd6448 100644
--- a/repos/dde_rump/lib/mk/rump.inc
+++ b/repos/dde_rump/lib/mk/rump.inc
@@ -17,7 +17,7 @@ SHARED_LIB = yes
LD_OPT += --whole-archive --start-group $(ARCHIVE) --end-group \
--no-whole-archiv
-LD_SCRIPT_SO = $(call select_from_repositories,src/platform/genode_rel.ld) \
- -T$(REP_DIR)/src/platform/rump.ld
+LD_SCRIPT_SO = $(call select_from_repositories,src/ld/genode_rel.ld) \
+ -T$(REP_DIR)/src/ld/rump.ld
# vi:set ft=make :
diff --git a/repos/dde_rump/lib/mk/arm/rump.mk b/repos/dde_rump/lib/mk/spec/arm/rump.mk
similarity index 100%
rename from repos/dde_rump/lib/mk/arm/rump.mk
rename to repos/dde_rump/lib/mk/spec/arm/rump.mk
diff --git a/repos/dde_rump/lib/mk/x86_32/rump.mk b/repos/dde_rump/lib/mk/spec/x86_32/rump.mk
similarity index 100%
rename from repos/dde_rump/lib/mk/x86_32/rump.mk
rename to repos/dde_rump/lib/mk/spec/x86_32/rump.mk
diff --git a/repos/dde_rump/lib/mk/x86_64/rump.mk b/repos/dde_rump/lib/mk/spec/x86_64/rump.mk
similarity index 100%
rename from repos/dde_rump/lib/mk/x86_64/rump.mk
rename to repos/dde_rump/lib/mk/spec/x86_64/rump.mk
diff --git a/repos/dde_rump/src/platform/rump.ld b/repos/dde_rump/src/ld/rump.ld
similarity index 100%
rename from repos/dde_rump/src/platform/rump.ld
rename to repos/dde_rump/src/ld/rump.ld
diff --git a/repos/gems/run/http_blk.run b/repos/gems/run/http_blk.run
index e357f5b9fc..f9aaaf1de7 100644
--- a/repos/gems/run/http_blk.run
+++ b/repos/gems/run/http_blk.run
@@ -9,8 +9,8 @@ if {[have_spec hw_odroid_xu]} {
exit 0
}
-set use_usb_driver [expr [have_spec omap4] || [have_spec platform_arndale] || [have_spec platform_rpi]]
-set use_nic_driver [expr !$use_usb_driver && ![have_spec platform_imx53]]
+set use_usb_driver [expr [have_spec omap4] || [have_spec arndale] || [have_spec rpi]]
+set use_nic_driver [expr !$use_usb_driver && ![have_spec imx53]]
if {[expr !$use_usb_driver && !$use_nic_driver]} {
puts "\n Run script is not supported on this platform. \n"; exit 0 }
diff --git a/repos/libports/include/python/x86_32/genode_defs.h b/repos/libports/include/python/spec/x86_32/genode_defs.h
similarity index 100%
rename from repos/libports/include/python/x86_32/genode_defs.h
rename to repos/libports/include/python/spec/x86_32/genode_defs.h
diff --git a/repos/libports/include/python/x86_64/genode_defs.h b/repos/libports/include/python/spec/x86_64/genode_defs.h
similarity index 100%
rename from repos/libports/include/python/x86_64/genode_defs.h
rename to repos/libports/include/python/spec/x86_64/genode_defs.h
diff --git a/repos/libports/lib/import/import-jitterentropy.mk b/repos/libports/lib/import/import-jitterentropy.mk
index 1c2bf7aad5..847f4fd68e 100644
--- a/repos/libports/lib/import/import-jitterentropy.mk
+++ b/repos/libports/lib/import/import-jitterentropy.mk
@@ -10,6 +10,6 @@ endif
INC_DIR += $(call select_from_ports,jitterentropy)/include/jitterentropy
INC_DIR += $(call select_from_repositories,src/lib/jitterentropy)
-INC_DIR += $(call select_from_repositories,src/lib/jitterentropy/$(TARGET_CPUARCH))
+INC_DIR += $(call select_from_repositories,src/lib/jitterentropy/spec/$(TARGET_CPUARCH))
CC_OPT += -DJITTERENTROPY_GENODE
diff --git a/repos/libports/lib/import/import-python.mk b/repos/libports/lib/import/import-python.mk
index d89c8a2de6..e9b83eeb80 100644
--- a/repos/libports/lib/import/import-python.mk
+++ b/repos/libports/lib/import/import-python.mk
@@ -4,11 +4,11 @@ INC_DIR += $(call select_from_ports,python)/include
ifeq ($(filter-out $(SPECS),x86),)
ifeq ($(filter-out $(SPECS),32bit),)
- REP_INC_DIR += include/python/x86_32
+ REP_INC_DIR += include/python/spec/x86_32
endif # 32bit
ifeq ($(filter-out $(SPECS),64bit),)
- REP_INC_DIR += include/python/x86_64
+ REP_INC_DIR += include/python/spec/x86_64
endif # 64bit
endif # x86
diff --git a/repos/libports/lib/mk/32bit/curl.mk b/repos/libports/lib/mk/32bit/curl.mk
deleted file mode 100644
index 33a3f5d0a5..0000000000
--- a/repos/libports/lib/mk/32bit/curl.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-INC_DIR += $(call select_from_ports,curl)/include
-
-INC_DIR += $(REP_DIR)/src/lib/curl/32bit
-INC_DIR += $(REP_DIR)/src/lib/curl/32bit/curl
-
-include $(REP_DIR)/lib/mk/curl.inc
diff --git a/repos/libports/lib/mk/64bit/curl.mk b/repos/libports/lib/mk/64bit/curl.mk
deleted file mode 100644
index 466a09abc7..0000000000
--- a/repos/libports/lib/mk/64bit/curl.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-INC_DIR += $(call select_from_ports,curl)/include
-
-INC_DIR += $(REP_DIR)/src/lib/curl/64bit
-INC_DIR += $(REP_DIR)/src/lib/curl/64bit/curl
-
-include $(REP_DIR)/lib/mk/curl.inc
diff --git a/repos/libports/lib/mk/arm/libssl.mk b/repos/libports/lib/mk/arm/libssl.mk
deleted file mode 100644
index 4a02f72bbd..0000000000
--- a/repos/libports/lib/mk/arm/libssl.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-include $(REP_DIR)/lib/mk/libssl.inc
-
-INC_DIR += $(REP_DIR)/src/lib/openssl/arm
-INC_DIR += $(LIBSSL_PORT_DIR)/src/lib/openssl/arm
diff --git a/repos/libports/lib/mk/spec/32bit/curl.mk b/repos/libports/lib/mk/spec/32bit/curl.mk
new file mode 100644
index 0000000000..0b62fe2a76
--- /dev/null
+++ b/repos/libports/lib/mk/spec/32bit/curl.mk
@@ -0,0 +1,6 @@
+INC_DIR += $(call select_from_ports,curl)/include
+
+INC_DIR += $(REP_DIR)/src/lib/curl/spec/32bit
+INC_DIR += $(REP_DIR)/src/lib/curl/spec/32bit/curl
+
+include $(REP_DIR)/lib/mk/curl.inc
diff --git a/repos/libports/lib/mk/spec/64bit/curl.mk b/repos/libports/lib/mk/spec/64bit/curl.mk
new file mode 100644
index 0000000000..3fc2e5fee8
--- /dev/null
+++ b/repos/libports/lib/mk/spec/64bit/curl.mk
@@ -0,0 +1,6 @@
+INC_DIR += $(call select_from_ports,curl)/include
+
+INC_DIR += $(REP_DIR)/src/lib/curl/spec/64bit
+INC_DIR += $(REP_DIR)/src/lib/curl/spec/64bit/curl
+
+include $(REP_DIR)/lib/mk/curl.inc
diff --git a/repos/libports/lib/mk/arm/avcodec.mk b/repos/libports/lib/mk/spec/arm/avcodec.mk
similarity index 100%
rename from repos/libports/lib/mk/arm/avcodec.mk
rename to repos/libports/lib/mk/spec/arm/avcodec.mk
diff --git a/repos/libports/lib/mk/arm/avutil.mk b/repos/libports/lib/mk/spec/arm/avutil.mk
similarity index 100%
rename from repos/libports/lib/mk/arm/avutil.mk
rename to repos/libports/lib/mk/spec/arm/avutil.mk
diff --git a/repos/libports/lib/mk/arm/gmp-mpn.mk b/repos/libports/lib/mk/spec/arm/gmp-mpn.mk
similarity index 84%
rename from repos/libports/lib/mk/arm/gmp-mpn.mk
rename to repos/libports/lib/mk/spec/arm/gmp-mpn.mk
index 1e4792add8..62df544ad1 100644
--- a/repos/libports/lib/mk/arm/gmp-mpn.mk
+++ b/repos/libports/lib/mk/spec/arm/gmp-mpn.mk
@@ -16,8 +16,7 @@ FILTER_OUT += add_n.c
SRC_ASM += sub_n.asm
FILTER_OUT += sub_n.c
-SRC_C += $(notdir $(wildcard $(REP_DIR)/src/lib/gmp/mpn/arm/*.c))
-SRC_C += $(notdir $(wildcard $(REP_DIR)/src/lib/gmp/mpn/32bit/*.c))
+SRC_C += $(notdir $(wildcard $(REP_DIR)/src/lib/gmp/mpn/spec/32bit/*.c))
SRC_C += $(filter-out $(FILTER_OUT),$(notdir $(wildcard $(GMP_MPN_DIR)/generic/*.c)))
include $(REP_DIR)/lib/mk/gmp.inc
@@ -39,7 +38,7 @@ endif
m4env:
$(VERBOSE)mkdir -p $@/mpn/arm
- $(VERBOSE)ln -s $(REP_DIR)/src/lib/gmp/arm/config.m4 m4env
+ $(VERBOSE)ln -s $(REP_DIR)/src/lib/gmp/spec/arm/config.m4 m4env
$(VERBOSE)ln -s $(GMP_MPN_DIR)/asm-defs.m4 m4env/mpn
$(VERBOSE)ln -s $(GMP_MPN_DIR)/arm/arm-defs.m4 m4env/mpn/arm
@@ -60,7 +59,6 @@ hamdist.o popcount.o: popham.c
$(GMP_MPN_DIR)/m4-ccas --m4=m4 $(CC) $(CC_MARCH) -std=gnu99 -fPIC -DPIC $(CC_OPT_$*) $(INCLUDES) -c $< -o $(PWD)/$@ \
$(M4_OUTPUT_FILTER)
-vpath %.c $(REP_DIR)/src/lib/gmp/mpn/arm
-vpath %.c $(REP_DIR)/src/lib/gmp/mpn/32bit
+vpath %.c $(REP_DIR)/src/lib/gmp/mpn/spec/32bit
vpath %.c $(GMP_MPN_DIR)/generic
vpath %.asm $(GMP_MPN_DIR)/arm
diff --git a/repos/libports/lib/mk/arm/libc-gen.mk b/repos/libports/lib/mk/spec/arm/libc-gen.mk
similarity index 100%
rename from repos/libports/lib/mk/arm/libc-gen.mk
rename to repos/libports/lib/mk/spec/arm/libc-gen.mk
diff --git a/repos/libports/lib/mk/arm/libc-setjmp.mk b/repos/libports/lib/mk/spec/arm/libc-setjmp.mk
similarity index 100%
rename from repos/libports/lib/mk/arm/libc-setjmp.mk
rename to repos/libports/lib/mk/spec/arm/libc-setjmp.mk
diff --git a/repos/libports/lib/mk/arm/libcrypto.mk b/repos/libports/lib/mk/spec/arm/libcrypto.mk
similarity index 73%
rename from repos/libports/lib/mk/arm/libcrypto.mk
rename to repos/libports/lib/mk/spec/arm/libcrypto.mk
index 8761c79ab5..e219ae0d3f 100644
--- a/repos/libports/lib/mk/arm/libcrypto.mk
+++ b/repos/libports/lib/mk/spec/arm/libcrypto.mk
@@ -1,5 +1,5 @@
# has to be the first path because it includes openssl/opensslconf.h
-INC_DIR += $(REP_DIR)/src/lib/openssl/arm
+INC_DIR += $(REP_DIR)/src/lib/openssl/spec/arm
CC_OPTS += -DL_ENDIAN
diff --git a/repos/libports/lib/mk/arm/libm.mk b/repos/libports/lib/mk/spec/arm/libm.mk
similarity index 100%
rename from repos/libports/lib/mk/arm/libm.mk
rename to repos/libports/lib/mk/spec/arm/libm.mk
diff --git a/repos/libports/lib/mk/spec/arm/libssl.mk b/repos/libports/lib/mk/spec/arm/libssl.mk
new file mode 100644
index 0000000000..f4e70f08cf
--- /dev/null
+++ b/repos/libports/lib/mk/spec/arm/libssl.mk
@@ -0,0 +1,4 @@
+include $(REP_DIR)/lib/mk/libssl.inc
+
+INC_DIR += $(REP_DIR)/src/lib/openssl/spec/arm
+INC_DIR += $(LIBSSL_PORT_DIR)/src/lib/openssl/spec/arm
diff --git a/repos/libports/lib/mk/arm_v6/jitterentropy.mk b/repos/libports/lib/mk/spec/arm_v6/jitterentropy.mk
similarity index 54%
rename from repos/libports/lib/mk/arm_v6/jitterentropy.mk
rename to repos/libports/lib/mk/spec/arm_v6/jitterentropy.mk
index edfe702a0c..629f6ece13 100644
--- a/repos/libports/lib/mk/arm_v6/jitterentropy.mk
+++ b/repos/libports/lib/mk/spec/arm_v6/jitterentropy.mk
@@ -1,4 +1,4 @@
-INC_DIR += $(REP_DIR)/src/lib/jitterentropy/arm_v6
+INC_DIR += $(REP_DIR)/src/lib/jitterentropy/spec/arm_v6
SPECS += perf_counter
diff --git a/repos/libports/lib/mk/arm_v7/jitterentropy.mk b/repos/libports/lib/mk/spec/arm_v7/jitterentropy.mk
similarity index 54%
rename from repos/libports/lib/mk/arm_v7/jitterentropy.mk
rename to repos/libports/lib/mk/spec/arm_v7/jitterentropy.mk
index fde8675734..821f332317 100644
--- a/repos/libports/lib/mk/arm_v7/jitterentropy.mk
+++ b/repos/libports/lib/mk/spec/arm_v7/jitterentropy.mk
@@ -1,4 +1,4 @@
-INC_DIR += $(REP_DIR)/src/lib/jitterentropy/arm_v7
+INC_DIR += $(REP_DIR)/src/lib/jitterentropy/spec/arm_v7
SPECS += perf_counter
diff --git a/repos/libports/lib/mk/x86/avcodec.inc b/repos/libports/lib/mk/spec/x86/avcodec.inc
similarity index 100%
rename from repos/libports/lib/mk/x86/avcodec.inc
rename to repos/libports/lib/mk/spec/x86/avcodec.inc
diff --git a/repos/libports/lib/mk/x86/avutil.inc b/repos/libports/lib/mk/spec/x86/avutil.inc
similarity index 100%
rename from repos/libports/lib/mk/x86/avutil.inc
rename to repos/libports/lib/mk/spec/x86/avutil.inc
diff --git a/repos/libports/lib/mk/spec/x86_32/avcodec.mk b/repos/libports/lib/mk/spec/x86_32/avcodec.mk
new file mode 100644
index 0000000000..40c03b5b31
--- /dev/null
+++ b/repos/libports/lib/mk/spec/x86_32/avcodec.mk
@@ -0,0 +1,3 @@
+CC_C_OPT += -DARCH_X86_32=1
+
+include $(REP_DIR)/lib/mk/spec/x86/avcodec.inc
diff --git a/repos/libports/lib/mk/spec/x86_32/avutil.mk b/repos/libports/lib/mk/spec/x86_32/avutil.mk
new file mode 100644
index 0000000000..ce7f503f60
--- /dev/null
+++ b/repos/libports/lib/mk/spec/x86_32/avutil.mk
@@ -0,0 +1,3 @@
+CC_C_OPT += -DARCH_X86_32=1
+
+include $(REP_DIR)/lib/mk/spec/x86/avutil.inc
diff --git a/repos/libports/lib/mk/x86_32/gmp-mpn.mk b/repos/libports/lib/mk/spec/x86_32/gmp-mpn.mk
similarity index 89%
rename from repos/libports/lib/mk/x86_32/gmp-mpn.mk
rename to repos/libports/lib/mk/spec/x86_32/gmp-mpn.mk
index 0eb754f1db..e48cf27d8e 100644
--- a/repos/libports/lib/mk/x86_32/gmp-mpn.mk
+++ b/repos/libports/lib/mk/spec/x86_32/gmp-mpn.mk
@@ -22,7 +22,7 @@ SRC_ASM += sub_n.asm
FILTER_OUT += sub_n.c
CC_OPT_sub_n = -DOPERATION_sub_n
-SRC_C += $(notdir $(wildcard $(REP_DIR)/src/lib/gmp/mpn/32bit/*.c))
+SRC_C += $(notdir $(wildcard $(REP_DIR)/src/lib/gmp/mpn/spec/32bit/*.c))
SRC_C += $(filter-out $(FILTER_OUT),$(notdir $(wildcard $(GMP_MPN_DIR)/generic/*.c)))
include $(REP_DIR)/lib/mk/gmp.inc
@@ -44,7 +44,7 @@ endif
m4env:
$(VERBOSE)mkdir -p $@/mpn/x86
- $(VERBOSE)ln -s $(REP_DIR)/src/lib/gmp/x86_32/config.m4 m4env
+ $(VERBOSE)ln -s $(REP_DIR)/src/lib/gmp/spec/x86_32/config.m4 m4env
$(VERBOSE)ln -s $(GMP_MPN_DIR)/asm-defs.m4 m4env/mpn
$(VERBOSE)ln -s $(GMP_MPN_DIR)/x86/x86-defs.m4 m4env/mpn/x86
@@ -61,7 +61,7 @@ endif
$(GMP_MPN_DIR)/m4-ccas --m4=m4 $(CC) $(CC_MARCH) -std=gnu99 -fPIC -DPIC $(CC_OPT_$*) $(INCLUDES) -c $< -o $(PWD)/$@ \
$(M4_OUTPUT_FILTER)
-vpath %.c $(REP_DIR)/src/lib/gmp/mpn/32bit
+vpath %.c $(REP_DIR)/src/lib/gmp/mpn/spec/32bit
vpath %.c $(GMP_MPN_DIR)/generic
vpath %.asm $(GMP_MPN_DIR)/x86/pentium
vpath %.asm $(GMP_MPN_DIR)/x86
diff --git a/repos/libports/lib/mk/spec/x86_32/jitterentropy.mk b/repos/libports/lib/mk/spec/x86_32/jitterentropy.mk
new file mode 100644
index 0000000000..cebde308f5
--- /dev/null
+++ b/repos/libports/lib/mk/spec/x86_32/jitterentropy.mk
@@ -0,0 +1,3 @@
+INC_DIR += $(REP_DIR)/src/lib/jitterentropy/spec/x86_32
+
+include $(REP_DIR)/lib/mk/jitterentropy.inc
diff --git a/repos/libports/lib/mk/x86_32/libc-gen.mk b/repos/libports/lib/mk/spec/x86_32/libc-gen.mk
similarity index 100%
rename from repos/libports/lib/mk/x86_32/libc-gen.mk
rename to repos/libports/lib/mk/spec/x86_32/libc-gen.mk
diff --git a/repos/libports/lib/mk/x86_32/libc-setjmp.mk b/repos/libports/lib/mk/spec/x86_32/libc-setjmp.mk
similarity index 100%
rename from repos/libports/lib/mk/x86_32/libc-setjmp.mk
rename to repos/libports/lib/mk/spec/x86_32/libc-setjmp.mk
diff --git a/repos/libports/lib/mk/x86_32/libcrypto.mk b/repos/libports/lib/mk/spec/x86_32/libcrypto.mk
similarity index 72%
rename from repos/libports/lib/mk/x86_32/libcrypto.mk
rename to repos/libports/lib/mk/spec/x86_32/libcrypto.mk
index c69c9cc454..bd08da3e8a 100644
--- a/repos/libports/lib/mk/x86_32/libcrypto.mk
+++ b/repos/libports/lib/mk/spec/x86_32/libcrypto.mk
@@ -1,5 +1,5 @@
# has to be the first path because it includes openssl/opensslconf.h
-INC_DIR += $(REP_DIR)/src/lib/openssl/x86_32
+INC_DIR += $(REP_DIR)/src/lib/openssl/spec/x86_32
CC_OPTS += -DL_ENDIAN
diff --git a/repos/libports/lib/mk/x86_32/libm.mk b/repos/libports/lib/mk/spec/x86_32/libm.mk
similarity index 100%
rename from repos/libports/lib/mk/x86_32/libm.mk
rename to repos/libports/lib/mk/spec/x86_32/libm.mk
diff --git a/repos/libports/lib/mk/spec/x86_32/libssl.mk b/repos/libports/lib/mk/spec/x86_32/libssl.mk
new file mode 100644
index 0000000000..f56d67d498
--- /dev/null
+++ b/repos/libports/lib/mk/spec/x86_32/libssl.mk
@@ -0,0 +1,4 @@
+include $(REP_DIR)/lib/mk/libssl.inc
+
+INC_DIR += $(REP_DIR)/src/lib/openssl/spec/x86_32
+INC_DIR += $(LIBSSL_PORT_DIR)/src/lib/openssl/spec/x86_32
diff --git a/repos/libports/lib/mk/spec/x86_32/python.mk b/repos/libports/lib/mk/spec/x86_32/python.mk
new file mode 100644
index 0000000000..a8bb55a46f
--- /dev/null
+++ b/repos/libports/lib/mk/spec/x86_32/python.mk
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/python.inc
+
+INC_DIR += $(REP_DIR)/include/python/spec/x86_32
diff --git a/repos/libports/lib/mk/x86_64/av.inc b/repos/libports/lib/mk/spec/x86_64/av.inc
similarity index 100%
rename from repos/libports/lib/mk/x86_64/av.inc
rename to repos/libports/lib/mk/spec/x86_64/av.inc
diff --git a/repos/libports/lib/mk/spec/x86_64/avcodec.mk b/repos/libports/lib/mk/spec/x86_64/avcodec.mk
new file mode 100644
index 0000000000..8bc7506d34
--- /dev/null
+++ b/repos/libports/lib/mk/spec/x86_64/avcodec.mk
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/spec/x86_64/av.inc
+
+include $(REP_DIR)/lib/mk/spec/x86/avcodec.inc
diff --git a/repos/libports/lib/mk/spec/x86_64/avutil.mk b/repos/libports/lib/mk/spec/x86_64/avutil.mk
new file mode 100644
index 0000000000..c58eec7136
--- /dev/null
+++ b/repos/libports/lib/mk/spec/x86_64/avutil.mk
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/spec/x86_64/av.inc
+
+include $(REP_DIR)/lib/mk/spec/x86/avutil.inc
diff --git a/repos/libports/lib/mk/x86_64/gmp-mpn.mk b/repos/libports/lib/mk/spec/x86_64/gmp-mpn.mk
similarity index 90%
rename from repos/libports/lib/mk/x86_64/gmp-mpn.mk
rename to repos/libports/lib/mk/spec/x86_64/gmp-mpn.mk
index f08a3d57a1..0e0bcad73a 100644
--- a/repos/libports/lib/mk/x86_64/gmp-mpn.mk
+++ b/repos/libports/lib/mk/spec/x86_64/gmp-mpn.mk
@@ -15,7 +15,7 @@ CC_OPT_sub_n = -DOPERATION_sub_n
FILTER_OUT += popham.c
-SRC_C += $(notdir $(wildcard $(REP_DIR)/src/lib/gmp/mpn/64bit/*.c))
+SRC_C += $(notdir $(wildcard $(REP_DIR)/src/lib/gmp/mpn/spec/64bit/*.c))
SRC_C += $(filter-out $(FILTER_OUT),$(notdir $(wildcard $(GMP_MPN_DIR)/generic/*.c)))
include $(REP_DIR)/lib/mk/gmp.inc
@@ -37,7 +37,7 @@ endif
m4env:
$(VERBOSE)mkdir -p $@/mpn/x86_64
- $(VERBOSE)ln -s $(REP_DIR)/src/lib/gmp/x86_64/config.m4 m4env
+ $(VERBOSE)ln -s $(REP_DIR)/src/lib/gmp/spec/x86_64/config.m4 m4env
$(VERBOSE)ln -s $(GMP_MPN_DIR)/asm-defs.m4 m4env/mpn
$(VERBOSE)ln -s $(GMP_MPN_DIR)/x86_64/x86_64-defs.m4 m4env/mpn/x86_64
@@ -59,6 +59,6 @@ hamdist.o popcount.o: popham.asm
$(GMP_MPN_DIR)/m4-ccas --m4=m4 $(CC) $(CC_MARCH) -std=gnu99 -fPIC -DPIC $(CC_OPT_$*) $(INCLUDES) -c $< -o $(PWD)/$@ \
$(M4_OUTPUT_FILTER)
-vpath %.c $(REP_DIR)/src/lib/gmp/mpn/64bit
+vpath %.c $(REP_DIR)/src/lib/gmp/mpn/spec/64bit
vpath %.c $(GMP_MPN_DIR)/generic
vpath %.asm $(GMP_MPN_DIR)/x86_64
diff --git a/repos/libports/lib/mk/spec/x86_64/jitterentropy.mk b/repos/libports/lib/mk/spec/x86_64/jitterentropy.mk
new file mode 100644
index 0000000000..8241a2cc24
--- /dev/null
+++ b/repos/libports/lib/mk/spec/x86_64/jitterentropy.mk
@@ -0,0 +1,3 @@
+INC_DIR += $(REP_DIR)/src/lib/jitterentropy/spec/x86_64
+
+include $(REP_DIR)/lib/mk/jitterentropy.inc
diff --git a/repos/libports/lib/mk/x86_64/libc-gen.mk b/repos/libports/lib/mk/spec/x86_64/libc-gen.mk
similarity index 100%
rename from repos/libports/lib/mk/x86_64/libc-gen.mk
rename to repos/libports/lib/mk/spec/x86_64/libc-gen.mk
diff --git a/repos/libports/lib/mk/x86_64/libc-setjmp.mk b/repos/libports/lib/mk/spec/x86_64/libc-setjmp.mk
similarity index 100%
rename from repos/libports/lib/mk/x86_64/libc-setjmp.mk
rename to repos/libports/lib/mk/spec/x86_64/libc-setjmp.mk
diff --git a/repos/libports/lib/mk/x86_64/libcrypto.mk b/repos/libports/lib/mk/spec/x86_64/libcrypto.mk
similarity index 82%
rename from repos/libports/lib/mk/x86_64/libcrypto.mk
rename to repos/libports/lib/mk/spec/x86_64/libcrypto.mk
index 7ff388e049..229709e8ff 100644
--- a/repos/libports/lib/mk/x86_64/libcrypto.mk
+++ b/repos/libports/lib/mk/spec/x86_64/libcrypto.mk
@@ -1,5 +1,5 @@
# has to be the first path because it includes openssl/opensslconf.h
-INC_DIR += $(REP_DIR)/src/lib/openssl/x86_64
+INC_DIR += $(REP_DIR)/src/lib/openssl/spec/x86_64
CC_OPTS += -DL_ENDIAN
diff --git a/repos/libports/lib/mk/x86_64/libm.mk b/repos/libports/lib/mk/spec/x86_64/libm.mk
similarity index 100%
rename from repos/libports/lib/mk/x86_64/libm.mk
rename to repos/libports/lib/mk/spec/x86_64/libm.mk
diff --git a/repos/libports/lib/mk/spec/x86_64/libssl.mk b/repos/libports/lib/mk/spec/x86_64/libssl.mk
new file mode 100644
index 0000000000..722a9d3ab9
--- /dev/null
+++ b/repos/libports/lib/mk/spec/x86_64/libssl.mk
@@ -0,0 +1,4 @@
+include $(REP_DIR)/lib/mk/libssl.inc
+
+INC_DIR += $(REP_DIR)/src/lib/openssl/spec/x86_64
+INC_DIR += $(LIBSSL_PORT_DIR)/src/lib/openssl/spec/x86_64
diff --git a/repos/libports/lib/mk/spec/x86_64/python.mk b/repos/libports/lib/mk/spec/x86_64/python.mk
new file mode 100644
index 0000000000..1eb55d72ef
--- /dev/null
+++ b/repos/libports/lib/mk/spec/x86_64/python.mk
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/python.inc
+
+INC_DIR += $(REP_DIR)/include/python/spec/x86_64
diff --git a/repos/libports/lib/mk/x86_32/avcodec.mk b/repos/libports/lib/mk/x86_32/avcodec.mk
deleted file mode 100644
index 2ee48de708..0000000000
--- a/repos/libports/lib/mk/x86_32/avcodec.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-CC_C_OPT += -DARCH_X86_32=1
-
-include $(REP_DIR)/lib/mk/x86/avcodec.inc
diff --git a/repos/libports/lib/mk/x86_32/avutil.mk b/repos/libports/lib/mk/x86_32/avutil.mk
deleted file mode 100644
index cee4d53d6e..0000000000
--- a/repos/libports/lib/mk/x86_32/avutil.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-CC_C_OPT += -DARCH_X86_32=1
-
-include $(REP_DIR)/lib/mk/x86/avutil.inc
diff --git a/repos/libports/lib/mk/x86_32/jitterentropy.mk b/repos/libports/lib/mk/x86_32/jitterentropy.mk
deleted file mode 100644
index 69444a005b..0000000000
--- a/repos/libports/lib/mk/x86_32/jitterentropy.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-INC_DIR += $(REP_DIR)/src/lib/jitterentropy/x86_32
-
-include $(REP_DIR)/lib/mk/jitterentropy.inc
diff --git a/repos/libports/lib/mk/x86_32/libssl.mk b/repos/libports/lib/mk/x86_32/libssl.mk
deleted file mode 100644
index f5bd7b6800..0000000000
--- a/repos/libports/lib/mk/x86_32/libssl.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-include $(REP_DIR)/lib/mk/libssl.inc
-
-INC_DIR += $(REP_DIR)/src/lib/openssl/x86_32
-INC_DIR += $(LIBSSL_PORT_DIR)/src/lib/openssl/x86_32
diff --git a/repos/libports/lib/mk/x86_32/python.mk b/repos/libports/lib/mk/x86_32/python.mk
deleted file mode 100644
index a7c08a6a8b..0000000000
--- a/repos/libports/lib/mk/x86_32/python.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(REP_DIR)/lib/mk/python.inc
-
-INC_DIR += $(REP_DIR)/include/python/x86_32
diff --git a/repos/libports/lib/mk/x86_64/avcodec.mk b/repos/libports/lib/mk/x86_64/avcodec.mk
deleted file mode 100644
index 01595990ae..0000000000
--- a/repos/libports/lib/mk/x86_64/avcodec.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(REP_DIR)/lib/mk/x86_64/av.inc
-
-include $(REP_DIR)/lib/mk/x86/avcodec.inc
diff --git a/repos/libports/lib/mk/x86_64/avutil.mk b/repos/libports/lib/mk/x86_64/avutil.mk
deleted file mode 100644
index 905da48f5c..0000000000
--- a/repos/libports/lib/mk/x86_64/avutil.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(REP_DIR)/lib/mk/x86_64/av.inc
-
-include $(REP_DIR)/lib/mk/x86/avutil.inc
diff --git a/repos/libports/lib/mk/x86_64/jitterentropy.mk b/repos/libports/lib/mk/x86_64/jitterentropy.mk
deleted file mode 100644
index 02c9d88aa7..0000000000
--- a/repos/libports/lib/mk/x86_64/jitterentropy.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-INC_DIR += $(REP_DIR)/src/lib/jitterentropy/x86_64
-
-include $(REP_DIR)/lib/mk/jitterentropy.inc
diff --git a/repos/libports/lib/mk/x86_64/libssl.mk b/repos/libports/lib/mk/x86_64/libssl.mk
deleted file mode 100644
index 7897786356..0000000000
--- a/repos/libports/lib/mk/x86_64/libssl.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-include $(REP_DIR)/lib/mk/libssl.inc
-
-INC_DIR += $(REP_DIR)/src/lib/openssl/x86_64
-INC_DIR += $(LIBSSL_PORT_DIR)/src/lib/openssl/x86_64
diff --git a/repos/libports/lib/mk/x86_64/python.mk b/repos/libports/lib/mk/x86_64/python.mk
deleted file mode 100644
index 123b6f3986..0000000000
--- a/repos/libports/lib/mk/x86_64/python.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(REP_DIR)/lib/mk/python.inc
-
-INC_DIR += $(REP_DIR)/include/python/x86_64
diff --git a/repos/libports/run/http_srv_tracing_nonblocking_panda.run b/repos/libports/run/http_srv_tracing_nonblocking_panda.run
index 99af679516..18b05e72a8 100644
--- a/repos/libports/run/http_srv_tracing_nonblocking_panda.run
+++ b/repos/libports/run/http_srv_tracing_nonblocking_panda.run
@@ -1,6 +1,6 @@
# vi: set ft=tcl :
assert_spec foc
-assert_spec platform_panda
+assert_spec panda
#
# Build
diff --git a/repos/libports/run/http_srv_tracing_panda.run b/repos/libports/run/http_srv_tracing_panda.run
index 9ade79a938..12ac717710 100644
--- a/repos/libports/run/http_srv_tracing_panda.run
+++ b/repos/libports/run/http_srv_tracing_panda.run
@@ -1,6 +1,6 @@
# vi: set ft=tcl :
assert_spec foc
-assert_spec platform_panda
+assert_spec panda
#
# Build
diff --git a/repos/libports/run/libc_block.run b/repos/libports/run/libc_block.run
index 9220b52b6a..0b41093904 100644
--- a/repos/libports/run/libc_block.run
+++ b/repos/libports/run/libc_block.run
@@ -1,4 +1,4 @@
-set use_sd_card_drv [expr [have_spec omap4] || [have_spec platform_arndale] || [have_spec pl180]]
+set use_sd_card_drv [expr [have_spec omap4] || [have_spec arndale] || [have_spec pl180]]
set use_ahci_drv [have_spec x86]
if {[expr [have_spec linux] || [have_spec hw_odroid_xu]]} {
diff --git a/repos/libports/run/libc_ffat_fs.run b/repos/libports/run/libc_ffat_fs.run
index 6050a9f595..235157c83a 100644
--- a/repos/libports/run/libc_ffat_fs.run
+++ b/repos/libports/run/libc_ffat_fs.run
@@ -4,7 +4,7 @@
# \date 2012-07-03
#
-set use_sd_card_drv [expr [have_spec omap4] || [have_spec platform_arndale] || [have_spec pl180]]
+set use_sd_card_drv [expr [have_spec omap4] || [have_spec arndale] || [have_spec pl180]]
set use_ahci_drv [have_spec x86]
set mkfs [check_installed mkfs.vfat]
diff --git a/repos/libports/run/libc_filesystem_test.inc b/repos/libports/run/libc_filesystem_test.inc
index 3ddb160d78..f5ec777512 100644
--- a/repos/libports/run/libc_filesystem_test.inc
+++ b/repos/libports/run/libc_filesystem_test.inc
@@ -10,7 +10,7 @@ if {[have_spec hw_odroid_xu] || [have_spec hw_zynq]} {
}
# use SD on ARM
-set use_sd_card_drv [expr [have_spec omap4] || [have_spec platform_arndale] || [have_spec pl180]]
+set use_sd_card_drv [expr [have_spec omap4] || [have_spec arndale] || [have_spec pl180]]
# use AHCI on x86
set use_ahci [have_spec x86]
diff --git a/repos/libports/run/lwip.run b/repos/libports/run/lwip.run
index ee2a92ad77..8b3028aa25 100644
--- a/repos/libports/run/lwip.run
+++ b/repos/libports/run/lwip.run
@@ -20,8 +20,8 @@
# tun/tap proxy driver at os/src/drivers/nic/linux)
#
-set use_usb_driver [expr [have_spec omap4] || [have_spec platform_arndale] || [have_spec platform_rpi]]
-set use_nic_driver [expr !$use_usb_driver && ![have_spec platform_imx53] && ![have_spec hw_odroid_xu] && ![have_spec linux]]
+set use_usb_driver [expr [have_spec omap4] || [have_spec arndale] || [have_spec rpi]]
+set use_nic_driver [expr !$use_usb_driver && ![have_spec imx53] && ![have_spec hw_odroid_xu] && ![have_spec linux]]
if {[expr !$use_usb_driver && !$use_nic_driver]} {
puts "\n Run script is not supported on this platform. \n"; exit 0 }
diff --git a/repos/libports/run/network_test.inc b/repos/libports/run/network_test.inc
index 06f64f29de..4f2613d935 100644
--- a/repos/libports/run/network_test.inc
+++ b/repos/libports/run/network_test.inc
@@ -27,8 +27,8 @@ set build_components {
lappend_if $use_nic_bridge build_components server/nic_bridge
-lappend_if [expr [have_spec omap4] || [have_spec platform_arndale]] build_components drivers/platform
-lappend_if [expr [have_spec omap4] || [have_spec platform_arndale]] build_components drivers/usb
+lappend_if [expr [have_spec omap4] || [have_spec arndale]] build_components drivers/platform
+lappend_if [expr [have_spec omap4] || [have_spec arndale]] build_components drivers/usb
lappend_if [have_spec acpi] build_components drivers/acpi
lappend_if [have_spec pci] build_components drivers/pci/device_pd
lappend_if [have_spec pci] build_components drivers/pci
@@ -70,9 +70,9 @@ append_if $use_nic_bridge config {
}
-append_if [expr $use_nic_bridge && ([have_spec omap4] || [have_spec platform_arndale])] config {
+append_if [expr $use_nic_bridge && ([have_spec omap4] || [have_spec arndale])] config {
}
-append_if [expr $use_nic_bridge && (![have_spec omap4] && ![have_spec platform_arndale])] config {
+append_if [expr $use_nic_bridge && (![have_spec omap4] && ![have_spec arndale])] config {
}
append_if $use_nic_bridge config {
@@ -98,13 +98,13 @@ append config {
}
-append_if [have_spec platform_arndale] config {
+append_if [have_spec arndale] config {
}
-append_if [expr [have_spec omap4] || [have_spec platform_arndale]] config {
+append_if [expr [have_spec omap4] || [have_spec arndale]] config {
@@ -116,7 +116,7 @@ append_if [expr [have_spec omap4] || [have_spec platform_arndale]] config {
}
-append_if [expr ![have_spec omap4] && ![have_spec platform_arndale]] config {
+append_if [expr ![have_spec omap4] && ![have_spec arndale]] config {
@@ -165,10 +165,10 @@ lappend boot_modules $test_server_name
# platform-specific modules
lappend_if [have_spec pci] boot_modules pci_drv
lappend_if [have_spec acpi] boot_modules acpi_drv
-lappend_if [expr [have_spec omap4] || [have_spec platform_arndale]] boot_modules usb_drv
-lappend_if [expr ![have_spec omap4] && ![have_spec platform_arndale]] boot_modules nic_drv
+lappend_if [expr [have_spec omap4] || [have_spec arndale]] boot_modules usb_drv
+lappend_if [expr ![have_spec omap4] && ![have_spec arndale]] boot_modules nic_drv
lappend_if [have_spec nova] boot_modules pci_device_pd
-lappend_if [have_spec platform_arndale] boot_modules platform_drv
+lappend_if [have_spec arndale] boot_modules platform_drv
build_boot_image $boot_modules
@@ -231,7 +231,7 @@ set test_result "$milliseconds ms. payload ($target_packet_size Byte): $payload_
puts "\nTest succeeded in $test_result."
# disconnect from server system
-if {[expr [have_spec omap4] || [have_spec platform_arndale]]} {
+if {[expr [have_spec omap4] || [have_spec arndale]]} {
send -i $server_spawn_id "\x01\x18" ;# Ctrl-A Ctrl-X
}
diff --git a/repos/libports/run/qt5_drivers.inc b/repos/libports/run/qt5_drivers.inc
index 71037aa6f6..77efc70aa8 100644
--- a/repos/libports/run/qt5_drivers.inc
+++ b/repos/libports/run/qt5_drivers.inc
@@ -79,7 +79,7 @@ proc drivers_build_components { feature_arg } {
lappend_if [use_gpio_drv feature] build_components drivers/gpio
lappend_if [use_nic_drv feature] build_components drivers/nic
lappend_if [use_pci_drv feature] build_components drivers/pci
- lappend_if [use_ps2_drv feature] build_components drivers/input/ps2
+ lappend_if [use_ps2_drv feature] build_components drivers/input/spec/ps2
lappend_if [use_timer feature] build_components drivers/timer
lappend_if [use_usb_drv feature] build_components drivers/usb
diff --git a/repos/libports/run/qt5_textedit.run b/repos/libports/run/qt5_textedit.run
index ca55f7f966..7c2327776e 100644
--- a/repos/libports/run/qt5_textedit.run
+++ b/repos/libports/run/qt5_textedit.run
@@ -15,7 +15,7 @@ append build_components {
app/qt5/examples/textedit
}
-set use_sd_card_driver [expr [have_spec omap4] || [have_spec platform_arndale]]
+set use_sd_card_driver [expr [have_spec omap4] || [have_spec arndale]]
set use_ahci_driver [have_spec x86]
lappend_if $use_sd_card_driver build_components drivers/sd_card
diff --git a/repos/libports/run/test-ping_client.run b/repos/libports/run/test-ping_client.run
index 243b0bb238..0a32d4f6dd 100644
--- a/repos/libports/run/test-ping_client.run
+++ b/repos/libports/run/test-ping_client.run
@@ -19,7 +19,7 @@ set build_components {
test/lwip/pingpong/client
}
-lappend_if [expr [have_spec omap4] || [have_spec platform_arndale]] build_components drivers/usb
+lappend_if [expr [have_spec omap4] || [have_spec arndale]] build_components drivers/usb
lappend_if [have_spec gpio] build_components drivers/gpio
source ${genode_dir}/repos/base/run/platform_drv.inc
@@ -63,7 +63,7 @@ append_if [have_spec gpio] config {
}
-append_if [expr [have_spec omap4] || [have_spec platform_arndale]] config {
+append_if [expr [have_spec omap4] || [have_spec arndale]] config {
@@ -74,7 +74,7 @@ append_if [expr [have_spec omap4] || [have_spec platform_arndale]] config {
}
-append_if [expr ![have_spec omap4] && ![have_spec platform_arndale]] config {
+append_if [expr ![have_spec omap4] && ![have_spec arndale]] config {
@@ -135,8 +135,8 @@ set boot_modules {
}
# platform-specific modules
-lappend_if [expr [have_spec omap4] || [have_spec platform_arndale]] boot_modules usb_drv
-lappend_if [expr ![have_spec omap4] && ![have_spec platform_arndale]] boot_modules nic_drv
+lappend_if [expr [have_spec omap4] || [have_spec arndale]] boot_modules usb_drv
+lappend_if [expr ![have_spec omap4] && ![have_spec arndale]] boot_modules nic_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
append_platform_drv_boot_modules
diff --git a/repos/libports/run/test-ping_server.run b/repos/libports/run/test-ping_server.run
index fb446f9dd0..30df52a0a6 100644
--- a/repos/libports/run/test-ping_server.run
+++ b/repos/libports/run/test-ping_server.run
@@ -19,7 +19,7 @@ set build_components {
test/lwip/pingpong/server
}
-lappend_if [expr [have_spec omap4] || [have_spec platform_arndale]] build_components drivers/usb
+lappend_if [expr [have_spec omap4] || [have_spec arndale]] build_components drivers/usb
lappend_if [have_spec gpio] build_components drivers/gpio
source ${genode_dir}/repos/base/run/platform_drv.inc
@@ -72,7 +72,7 @@ append_if [have_spec gpio] config {
}
-append_if [expr [have_spec omap4] || [have_spec platform_arndale]] config {
+append_if [expr [have_spec omap4] || [have_spec arndale]] config {
@@ -83,7 +83,7 @@ append_if [expr [have_spec omap4] || [have_spec platform_arndale]] config {
}
-append_if [expr ![have_spec omap4] && ![have_spec platform_arndale]] config {
+append_if [expr ![have_spec omap4] && ![have_spec arndale]] config {
@@ -109,8 +109,8 @@ set boot_modules {
}
# platform-specific modules
-lappend_if [expr [have_spec omap4] || [have_spec platform_arndale]] boot_modules usb_drv
-lappend_if [expr ![have_spec omap4] && ![have_spec platform_arndale]] boot_modules nic_drv
+lappend_if [expr [have_spec omap4] || [have_spec arndale]] boot_modules usb_drv
+lappend_if [expr ![have_spec omap4] && ![have_spec arndale]] boot_modules nic_drv
lappend_if [have_spec gpio] boot_modules gpio_drv
append_platform_drv_boot_modules
diff --git a/repos/libports/src/lib/curl/32bit/curl/curlbuild.h b/repos/libports/src/lib/curl/spec/32bit/curl/curlbuild.h
similarity index 100%
rename from repos/libports/src/lib/curl/32bit/curl/curlbuild.h
rename to repos/libports/src/lib/curl/spec/32bit/curl/curlbuild.h
diff --git a/repos/libports/src/lib/curl/64bit/curl/curlbuild.h b/repos/libports/src/lib/curl/spec/64bit/curl/curlbuild.h
similarity index 100%
rename from repos/libports/src/lib/curl/64bit/curl/curlbuild.h
rename to repos/libports/src/lib/curl/spec/64bit/curl/curlbuild.h
diff --git a/repos/libports/src/lib/gmp/mpn/32bit/fib_table.c b/repos/libports/src/lib/gmp/mpn/spec/32bit/fib_table.c
similarity index 100%
rename from repos/libports/src/lib/gmp/mpn/32bit/fib_table.c
rename to repos/libports/src/lib/gmp/mpn/spec/32bit/fib_table.c
diff --git a/repos/libports/src/lib/gmp/mpn/32bit/mp_bases.c b/repos/libports/src/lib/gmp/mpn/spec/32bit/mp_bases.c
similarity index 100%
rename from repos/libports/src/lib/gmp/mpn/32bit/mp_bases.c
rename to repos/libports/src/lib/gmp/mpn/spec/32bit/mp_bases.c
diff --git a/repos/libports/src/lib/gmp/mpn/64bit/fib_table.c b/repos/libports/src/lib/gmp/mpn/spec/64bit/fib_table.c
similarity index 100%
rename from repos/libports/src/lib/gmp/mpn/64bit/fib_table.c
rename to repos/libports/src/lib/gmp/mpn/spec/64bit/fib_table.c
diff --git a/repos/libports/src/lib/gmp/mpn/64bit/mp_bases.c b/repos/libports/src/lib/gmp/mpn/spec/64bit/mp_bases.c
similarity index 100%
rename from repos/libports/src/lib/gmp/mpn/64bit/mp_bases.c
rename to repos/libports/src/lib/gmp/mpn/spec/64bit/mp_bases.c
diff --git a/repos/libports/src/lib/gmp/arm/config.m4 b/repos/libports/src/lib/gmp/spec/arm/config.m4
similarity index 100%
rename from repos/libports/src/lib/gmp/arm/config.m4
rename to repos/libports/src/lib/gmp/spec/arm/config.m4
diff --git a/repos/libports/src/lib/gmp/x86_32/config.m4 b/repos/libports/src/lib/gmp/spec/x86_32/config.m4
similarity index 100%
rename from repos/libports/src/lib/gmp/x86_32/config.m4
rename to repos/libports/src/lib/gmp/spec/x86_32/config.m4
diff --git a/repos/libports/src/lib/gmp/x86_64/config.m4 b/repos/libports/src/lib/gmp/spec/x86_64/config.m4
similarity index 100%
rename from repos/libports/src/lib/gmp/x86_64/config.m4
rename to repos/libports/src/lib/gmp/spec/x86_64/config.m4
diff --git a/repos/libports/src/lib/jitterentropy/arm_v6/jitterentropy-base-genode-nstime.h b/repos/libports/src/lib/jitterentropy/spec/arm_v6/jitterentropy-base-genode-nstime.h
similarity index 100%
rename from repos/libports/src/lib/jitterentropy/arm_v6/jitterentropy-base-genode-nstime.h
rename to repos/libports/src/lib/jitterentropy/spec/arm_v6/jitterentropy-base-genode-nstime.h
diff --git a/repos/libports/src/lib/jitterentropy/arm_v7/jitterentropy-base-genode-nstime.h b/repos/libports/src/lib/jitterentropy/spec/arm_v7/jitterentropy-base-genode-nstime.h
similarity index 100%
rename from repos/libports/src/lib/jitterentropy/arm_v7/jitterentropy-base-genode-nstime.h
rename to repos/libports/src/lib/jitterentropy/spec/arm_v7/jitterentropy-base-genode-nstime.h
diff --git a/repos/libports/src/lib/jitterentropy/x86_32/jitterentropy-base-genode-nstime.h b/repos/libports/src/lib/jitterentropy/spec/x86_32/jitterentropy-base-genode-nstime.h
similarity index 100%
rename from repos/libports/src/lib/jitterentropy/x86_32/jitterentropy-base-genode-nstime.h
rename to repos/libports/src/lib/jitterentropy/spec/x86_32/jitterentropy-base-genode-nstime.h
diff --git a/repos/libports/src/lib/jitterentropy/x86_64/jitterentropy-base-genode-nstime.h b/repos/libports/src/lib/jitterentropy/spec/x86_64/jitterentropy-base-genode-nstime.h
similarity index 100%
rename from repos/libports/src/lib/jitterentropy/x86_64/jitterentropy-base-genode-nstime.h
rename to repos/libports/src/lib/jitterentropy/spec/x86_64/jitterentropy-base-genode-nstime.h
diff --git a/repos/libports/src/lib/openssl/arm/openssl/README b/repos/libports/src/lib/openssl/spec/arm/openssl/README
similarity index 100%
rename from repos/libports/src/lib/openssl/arm/openssl/README
rename to repos/libports/src/lib/openssl/spec/arm/openssl/README
diff --git a/repos/libports/src/lib/openssl/arm/openssl/opensslconf.h b/repos/libports/src/lib/openssl/spec/arm/openssl/opensslconf.h
similarity index 100%
rename from repos/libports/src/lib/openssl/arm/openssl/opensslconf.h
rename to repos/libports/src/lib/openssl/spec/arm/openssl/opensslconf.h
diff --git a/repos/libports/src/lib/openssl/x86_32/openssl/opensslconf.h b/repos/libports/src/lib/openssl/spec/x86_32/openssl/opensslconf.h
similarity index 100%
rename from repos/libports/src/lib/openssl/x86_32/openssl/opensslconf.h
rename to repos/libports/src/lib/openssl/spec/x86_32/openssl/opensslconf.h
diff --git a/repos/libports/src/lib/openssl/x86_64/openssl/opensslconf.h b/repos/libports/src/lib/openssl/spec/x86_64/openssl/opensslconf.h
similarity index 100%
rename from repos/libports/src/lib/openssl/x86_64/openssl/opensslconf.h
rename to repos/libports/src/lib/openssl/spec/x86_64/openssl/opensslconf.h
diff --git a/repos/os/include/platform/device.h b/repos/os/include/platform_device/device.h
similarity index 83%
rename from repos/os/include/platform/device.h
rename to repos/os/include/platform_device/device.h
index f462e2b6e5..7324f1df51 100644
--- a/repos/os/include/platform/device.h
+++ b/repos/os/include/platform_device/device.h
@@ -11,7 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#pragma once
+#ifndef _INCLUDE__PLATFORM_DEVICE__DEVICE_H_
+#define _INCLUDE__PLATFORM_DEVICE__DEVICE_H_
#include
#include
@@ -30,3 +31,5 @@ struct Platform::Abstract_device
*/
virtual Genode::Io_mem_session_capability io_mem(Genode::uint8_t) = 0;
};
+
+#endif /* _INCLUDE__PLATFORM_DEVICE__DEVICE_H_ */
diff --git a/repos/os/include/arm_v6/trace/timestamp.h b/repos/os/include/spec/arm_v6/trace/timestamp.h
similarity index 77%
rename from repos/os/include/arm_v6/trace/timestamp.h
rename to repos/os/include/spec/arm_v6/trace/timestamp.h
index 8e4d2aae39..3fb4303a00 100644
--- a/repos/os/include/arm_v6/trace/timestamp.h
+++ b/repos/os/include/spec/arm_v6/trace/timestamp.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__TRACE_TIMESTAMP_H_
-#define _INCLUDE__TRACE_TIMESTAMP_H_
+#ifndef _INCLUDE__SPEC__ARM_V6__TRACE__TIMESTAMP_H_
+#define _INCLUDE__SPEC__ARM_V6__TRACE__TIMESTAMP_H_
#include
@@ -30,4 +30,4 @@ namespace Genode { namespace Trace {
}
} }
-#endif /* _INCLUDE__TRACE_TIMESTAMP_H_ */
+#endif /* _INCLUDE__SPEC__ARM_V6__TRACE__TIMESTAMP_H_ */
diff --git a/repos/os/include/arm_v7/trace/timestamp.h b/repos/os/include/spec/arm_v7/trace/timestamp.h
similarity index 77%
rename from repos/os/include/arm_v7/trace/timestamp.h
rename to repos/os/include/spec/arm_v7/trace/timestamp.h
index 2ad58107e4..90ee7ad283 100644
--- a/repos/os/include/arm_v7/trace/timestamp.h
+++ b/repos/os/include/spec/arm_v7/trace/timestamp.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__TRACE_TIMESTAMP_H_
-#define _INCLUDE__TRACE_TIMESTAMP_H_
+#ifndef _INCLUDE__SPEC__ARM_V7__TRACE__TIMESTAMP_H_
+#define _INCLUDE__SPEC__ARM_V7__TRACE__TIMESTAMP_H_
#include
@@ -30,4 +30,4 @@ namespace Genode { namespace Trace {
}
} }
-#endif /* _INCLUDE__TRACE_TIMESTAMP_H_ */
+#endif /* _INCLUDE__SPEC__ARM_V7__TRACE__TIMESTAMP_H_ */
diff --git a/repos/os/include/platform/exynos4/regulator/consts.h b/repos/os/include/spec/exynos4/regulator/consts.h
similarity index 88%
rename from repos/os/include/platform/exynos4/regulator/consts.h
rename to repos/os/include/spec/exynos4/regulator/consts.h
index 22d7af27de..509e0875e9 100644
--- a/repos/os/include/platform/exynos4/regulator/consts.h
+++ b/repos/os/include/spec/exynos4/regulator/consts.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__EXYNOS4412__REGULATOR__CONSTS_H_
-#define _INCLUDE__PLATFORM__EXYNOS4412__REGULATOR__CONSTS_H_
+#ifndef _INCLUDE__SPEC__EXYNOS4__REGULATOR__CONSTS_H_
+#define _INCLUDE__SPEC__EXYNOS4__REGULATOR__CONSTS_H_
#include
@@ -70,4 +70,4 @@ namespace Regulator {
};
}
-#endif /* _INCLUDE__PLATFORM__EXYNOS4412__REGULATOR__CONSTS_H_ */
+#endif /* _INCLUDE__SPEC__EXYNOS4__REGULATOR__CONSTS_H_ */
diff --git a/repos/os/include/platform/exynos5/regulator/consts.h b/repos/os/include/spec/exynos5/regulator/consts.h
similarity index 91%
rename from repos/os/include/platform/exynos5/regulator/consts.h
rename to repos/os/include/spec/exynos5/regulator/consts.h
index afe0f57827..d820ced613 100644
--- a/repos/os/include/platform/exynos5/regulator/consts.h
+++ b/repos/os/include/spec/exynos5/regulator/consts.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__EXYNOS5__REGULATOR__CONSTS_H_
-#define _INCLUDE__PLATFORM__EXYNOS5__REGULATOR__CONSTS_H_
+#ifndef _INCLUDE__SPEC__EXYNOS5__REGULATOR__CONSTS_H_
+#define _INCLUDE__SPEC__EXYNOS5__REGULATOR__CONSTS_H_
#include
@@ -83,4 +83,4 @@ namespace Regulator {
};
}
-#endif /* _INCLUDE__PLATFORM__EXYNOS5__REGULATOR__CONSTS_H_ */
+#endif /* _INCLUDE__SPEC__EXYNOS5__REGULATOR__CONSTS_H_ */
diff --git a/repos/os/include/platform/exynos5/uart_defs.h b/repos/os/include/spec/exynos5/uart_defs.h
similarity index 84%
rename from repos/os/include/platform/exynos5/uart_defs.h
rename to repos/os/include/spec/exynos5/uart_defs.h
index 4c50c65b91..aca161f8da 100644
--- a/repos/os/include/platform/exynos5/uart_defs.h
+++ b/repos/os/include/spec/exynos5/uart_defs.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__EXYNOS5__UART_DEFS_H_
-#define _INCLUDE__PLATFORM__EXYNOS5__UART_DEFS_H_
+#ifndef _INCLUDE__SPEC__EXYNOS5__UART_DEFS_H_
+#define _INCLUDE__SPEC__EXYNOS5__UART_DEFS_H_
#include
@@ -34,4 +34,4 @@ static struct Exynos_uart_cfg {
{ Genode::Board_base::UART_2_MMIO_BASE, 4096, Genode::Board_base::UART_2_IRQ },
};
-#endif /* _INCLUDE__PLATFORM__EXYNOS5__UART_DEFS_H_ */
+#endif /* _INCLUDE__SPEC__EXYNOS5__UART_DEFS_H_ */
diff --git a/repos/os/include/platform/imx53/imx_framebuffer_session/client.h b/repos/os/include/spec/imx53/imx_framebuffer_session/client.h
similarity index 100%
rename from repos/os/include/platform/imx53/imx_framebuffer_session/client.h
rename to repos/os/include/spec/imx53/imx_framebuffer_session/client.h
diff --git a/repos/os/include/platform/imx53/imx_framebuffer_session/connection.h b/repos/os/include/spec/imx53/imx_framebuffer_session/connection.h
similarity index 100%
rename from repos/os/include/platform/imx53/imx_framebuffer_session/connection.h
rename to repos/os/include/spec/imx53/imx_framebuffer_session/connection.h
diff --git a/repos/os/include/platform/imx53/imx_framebuffer_session/imx_framebuffer_session.h b/repos/os/include/spec/imx53/imx_framebuffer_session/imx_framebuffer_session.h
similarity index 100%
rename from repos/os/include/platform/imx53/imx_framebuffer_session/imx_framebuffer_session.h
rename to repos/os/include/spec/imx53/imx_framebuffer_session/imx_framebuffer_session.h
diff --git a/repos/os/include/platform/imx53/platform_session/client.h b/repos/os/include/spec/imx53/platform_session/client.h
similarity index 100%
rename from repos/os/include/platform/imx53/platform_session/client.h
rename to repos/os/include/spec/imx53/platform_session/client.h
diff --git a/repos/os/include/platform/imx53/platform_session/platform_session.h b/repos/os/include/spec/imx53/platform_session/platform_session.h
similarity index 100%
rename from repos/os/include/platform/imx53/platform_session/platform_session.h
rename to repos/os/include/spec/imx53/platform_session/platform_session.h
diff --git a/repos/os/include/platform/panda/uart_defs.h b/repos/os/include/spec/panda/uart_defs.h
similarity index 83%
rename from repos/os/include/platform/panda/uart_defs.h
rename to repos/os/include/spec/panda/uart_defs.h
index dfa4b72226..663ccd675d 100644
--- a/repos/os/include/platform/panda/uart_defs.h
+++ b/repos/os/include/spec/panda/uart_defs.h
@@ -12,10 +12,10 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__PANDABOARD__UART_DEFS_H_
-#define _INCLUDE__PLATFORM__PANDABOARD__UART_DEFS_H_
+#ifndef _INCLUDE__SPEC__PANDA__UART_DEFS_H_
+#define _INCLUDE__SPEC__PANDA__UART_DEFS_H_
-#include
+#include
enum {
/** Number of UARTs */
@@ -36,4 +36,4 @@ static struct Omap_uart_cfg {
{ Genode::Board_base::TL16C750_4_MMIO_BASE, Genode::Board_base::TL16C750_MMIO_SIZE, Genode::Board_base::TL16C750_4_IRQ },
};
-#endif /* _INCLUDE__PLATFORM__PANDABOARD__UART_DEFS_H_ */
+#endif /* _INCLUDE__SPEC__PANDA__UART_DEFS_H_ */
diff --git a/repos/os/include/platform/pbxa9/lan9118_defs.h b/repos/os/include/spec/pbxa9/lan9118_defs.h
similarity index 81%
rename from repos/os/include/platform/pbxa9/lan9118_defs.h
rename to repos/os/include/spec/pbxa9/lan9118_defs.h
index 7b00c8056d..e3c04adb2b 100644
--- a/repos/os/include/platform/pbxa9/lan9118_defs.h
+++ b/repos/os/include/spec/pbxa9/lan9118_defs.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__PBXA9__LAN9118_DEFS_H_
-#define _INCLUDE__PLATFORM__PBXA9__LAN9118_DEFS_H_
+#ifndef _INCLUDE__SPEC__PBXA9__LAN9118_DEFS_H_
+#define _INCLUDE__SPEC__PBXA9__LAN9118_DEFS_H_
#include
@@ -37,4 +37,4 @@ enum {
LAN9118_IRQ = Genode::Board_base::ETHERNET_IRQ,
};
-#endif /* _INCLUDE__PLATFORM__PBXA9__LAN9118_DEFS_H_ */
+#endif /* _INCLUDE__SPEC__PBXA9__LAN9118_DEFS_H_ */
diff --git a/repos/os/include/platform/pbxa9/pl011_defs.h b/repos/os/include/spec/pbxa9/pl011_defs.h
similarity index 91%
rename from repos/os/include/platform/pbxa9/pl011_defs.h
rename to repos/os/include/spec/pbxa9/pl011_defs.h
index c6cd3f6379..72b79e3f57 100644
--- a/repos/os/include/platform/pbxa9/pl011_defs.h
+++ b/repos/os/include/spec/pbxa9/pl011_defs.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__PBXA9__PL011_DEFS_H_
-#define _INCLUDE__PLATFORM__PBXA9__PL011_DEFS_H_
+#ifndef _INCLUDE__SPEC__PBXA9__PL011_DEFS_H_
+#define _INCLUDE__SPEC__PBXA9__PL011_DEFS_H_
#include
#include
@@ -63,4 +63,4 @@ static struct Pl011_uart {
{ PL011_PHYS3, PL011_SIZE, PL011_IRQ3 },
};
-#endif /* _INCLUDE__PLATFORM__PBXA9__PL011_DEFS_H_ */
+#endif /* _INCLUDE__SPEC__PBXA9__PL011_DEFS_H_ */
diff --git a/repos/os/include/platform/pbxa9/pl050_defs.h b/repos/os/include/spec/pbxa9/pl050_defs.h
similarity index 80%
rename from repos/os/include/platform/pbxa9/pl050_defs.h
rename to repos/os/include/spec/pbxa9/pl050_defs.h
index c712f355d0..9c3c2f130f 100644
--- a/repos/os/include/platform/pbxa9/pl050_defs.h
+++ b/repos/os/include/spec/pbxa9/pl050_defs.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__PBXA9__PL050_DEFS_H_
-#define _INCLUDE__PLATFORM__PBXA9__PL050_DEFS_H_
+#ifndef _INCLUDE__SPEC__PBXA9__PL050_DEFS_H_
+#define _INCLUDE__SPEC__PBXA9__PL050_DEFS_H_
#include
@@ -27,4 +27,4 @@ enum {
PL050_MOUSE_IRQ = Genode::Board_base::KMI_1_IRQ,
};
-#endif /* _INCLUDE__PLATFORM__PBXA9__PL050_DEFS_H_ */
+#endif /* _INCLUDE__SPEC__PBXA9__PL050_DEFS_H_ */
diff --git a/repos/os/include/platform/pbxa9/pl11x_defs.h b/repos/os/include/spec/pbxa9/pl11x_defs.h
similarity index 81%
rename from repos/os/include/platform/pbxa9/pl11x_defs.h
rename to repos/os/include/spec/pbxa9/pl11x_defs.h
index ea3bce510e..4793cfb5de 100644
--- a/repos/os/include/platform/pbxa9/pl11x_defs.h
+++ b/repos/os/include/spec/pbxa9/pl11x_defs.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__PBXA9__PL11X_DEFS_H_
-#define _INCLUDE__PLATFORM__PBXA9__PL11X_DEFS_H_
+#ifndef _INCLUDE__SPEC__PBXA9__PL11X_DEFS_H_
+#define _INCLUDE__SPEC__PBXA9__PL11X_DEFS_H_
enum {
PL11X_LCD_PHYS = 0x10020000,
@@ -31,4 +31,4 @@ enum {
PL11X_REG_IMSC = 7,
};
-#endif /* _INCLUDE__PLATFORM__PBXA9__PL11X_DEFS_H_ */
+#endif /* _INCLUDE__SPEC__PBXA9__PL11X_DEFS_H_ */
diff --git a/repos/os/include/platform/pbxa9/pl180_defs.h b/repos/os/include/spec/pbxa9/pl180_defs.h
similarity index 78%
rename from repos/os/include/platform/pbxa9/pl180_defs.h
rename to repos/os/include/spec/pbxa9/pl180_defs.h
index db433192be..9e61ae8341 100644
--- a/repos/os/include/platform/pbxa9/pl180_defs.h
+++ b/repos/os/include/spec/pbxa9/pl180_defs.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__PBXA9__PL180_DEFS_H_
-#define _INCLUDE__PLATFORM__PBXA9__PL180_DEFS_H_
+#ifndef _INCLUDE__SPEC__PBXA9__PL180_DEFS_H_
+#define _INCLUDE__SPEC__PBXA9__PL180_DEFS_H_
#include
@@ -26,4 +26,4 @@ enum {
PL180_IRQ1 = Genode::Board_base::PL180_IRQ_1,
};
-#endif /* _INCLUDE__PLATFORM__PBXA9__PL180_DEFS_H_ */
+#endif /* _INCLUDE__SPEC__PBXA9__PL180_DEFS_H_ */
diff --git a/repos/os/include/platform/pbxa9/sp810_defs.h b/repos/os/include/spec/pbxa9/sp810_defs.h
similarity index 74%
rename from repos/os/include/platform/pbxa9/sp810_defs.h
rename to repos/os/include/spec/pbxa9/sp810_defs.h
index 1f51ef99b1..99a6648540 100644
--- a/repos/os/include/platform/pbxa9/sp810_defs.h
+++ b/repos/os/include/spec/pbxa9/sp810_defs.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__PLATFORM__PBXA9__SP810_DEFS_H_
-#define _INCLUDE__PLATFORM__PBXA9__SP810_DEFS_H_
+#ifndef _INCLUDE__SPEC__PBXA9__SP810_DEFS_H_
+#define _INCLUDE__SPEC__PBXA9__SP810_DEFS_H_
enum {
@@ -24,4 +24,4 @@ enum {
SP810_REG_LOCK = 0x20,
};
-#endif /* _INCLUDE__PLATFORM__PBXA9__SP810_DEFS_H_ */
+#endif /* _INCLUDE__SPEC__PBXA9__SP810_DEFS_H_ */
diff --git a/repos/os/include/platform/rpi/platform/framebuffer_info.h b/repos/os/include/spec/rpi/platform/framebuffer_info.h
similarity index 100%
rename from repos/os/include/platform/rpi/platform/framebuffer_info.h
rename to repos/os/include/spec/rpi/platform/framebuffer_info.h
diff --git a/repos/os/include/platform/rpi/platform/property_message.h b/repos/os/include/spec/rpi/platform/property_message.h
similarity index 100%
rename from repos/os/include/platform/rpi/platform/property_message.h
rename to repos/os/include/spec/rpi/platform/property_message.h
diff --git a/repos/os/include/platform/rpi/platform_session/client.h b/repos/os/include/spec/rpi/platform_session/client.h
similarity index 100%
rename from repos/os/include/platform/rpi/platform_session/client.h
rename to repos/os/include/spec/rpi/platform_session/client.h
diff --git a/repos/os/include/platform/rpi/platform_session/platform_session.h b/repos/os/include/spec/rpi/platform_session/platform_session.h
similarity index 100%
rename from repos/os/include/platform/rpi/platform_session/platform_session.h
rename to repos/os/include/spec/rpi/platform_session/platform_session.h
diff --git a/repos/os/include/platform/x86/platform_device/capability.h b/repos/os/include/spec/x86/platform_device/capability.h
similarity index 100%
rename from repos/os/include/platform/x86/platform_device/capability.h
rename to repos/os/include/spec/x86/platform_device/capability.h
diff --git a/repos/os/include/platform/x86/platform_device/client.h b/repos/os/include/spec/x86/platform_device/client.h
similarity index 90%
rename from repos/os/include/platform/x86/platform_device/client.h
rename to repos/os/include/spec/x86/platform_device/client.h
index eb336664cc..587199fe18 100644
--- a/repos/os/include/platform/x86/platform_device/client.h
+++ b/repos/os/include/spec/x86/platform_device/client.h
@@ -11,7 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#pragma once
+#ifndef _INCLUDE__SPEC__X86__PLATFORM_DEVICE__CLIENT_H_
+#define _INCLUDE__SPEC__X86__PLATFORM_DEVICE__CLIENT_H_
#include
#include
@@ -56,3 +57,5 @@ struct Platform::Device_client : public Genode::Rpc_client
Genode::Io_mem_session_capability io_mem(Genode::uint8_t id) override {
return call(id); }
};
+
+#endif /* _INCLUDE__SPEC__X86__PLATFORM_DEVICE__CLIENT_H_ */
diff --git a/repos/os/include/platform/x86/platform_device/platform_device.h b/repos/os/include/spec/x86/platform_device/platform_device.h
similarity index 99%
rename from repos/os/include/platform/x86/platform_device/platform_device.h
rename to repos/os/include/spec/x86/platform_device/platform_device.h
index 7dbead2d59..593504c87a 100644
--- a/repos/os/include/platform/x86/platform_device/platform_device.h
+++ b/repos/os/include/spec/x86/platform_device/platform_device.h
@@ -22,7 +22,7 @@
#include
/* os includes */
-#include
+#include
namespace Platform { struct Device; }
diff --git a/repos/os/include/platform/x86/platform_session/client.h b/repos/os/include/spec/x86/platform_session/client.h
similarity index 100%
rename from repos/os/include/platform/x86/platform_session/client.h
rename to repos/os/include/spec/x86/platform_session/client.h
diff --git a/repos/os/include/platform/x86/platform_session/connection.h b/repos/os/include/spec/x86/platform_session/connection.h
similarity index 100%
rename from repos/os/include/platform/x86/platform_session/connection.h
rename to repos/os/include/spec/x86/platform_session/connection.h
diff --git a/repos/os/include/platform/x86/platform_session/platform_session.h b/repos/os/include/spec/x86/platform_session/platform_session.h
similarity index 100%
rename from repos/os/include/platform/x86/platform_session/platform_session.h
rename to repos/os/include/spec/x86/platform_session/platform_session.h
diff --git a/repos/os/include/x86_32/trace/timestamp.h b/repos/os/include/spec/x86_32/trace/timestamp.h
similarity index 81%
rename from repos/os/include/x86_32/trace/timestamp.h
rename to repos/os/include/spec/x86_32/trace/timestamp.h
index 685c89b73b..c3ace16445 100644
--- a/repos/os/include/x86_32/trace/timestamp.h
+++ b/repos/os/include/spec/x86_32/trace/timestamp.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__TRACE_TIMESTAMP_H_
-#define _INCLUDE__TRACE_TIMESTAMP_H_
+#ifndef _INCLUDE__SPEC__X86_32__TRACE__TIMESTAMP_H_
+#define _INCLUDE__SPEC__X86_32__TRACE__TIMESTAMP_H_
#include
@@ -42,4 +42,4 @@ namespace Genode { namespace Trace {
}
} }
-#endif /* _INCLUDE__TRACE_TIMESTAMP_H_ */
+#endif /* _INCLUDE__SPEC__X86_32__TRACE__TIMESTAMP_H_ */
diff --git a/repos/os/include/x86_64/trace/timestamp.h b/repos/os/include/spec/x86_64/trace/timestamp.h
similarity index 82%
rename from repos/os/include/x86_64/trace/timestamp.h
rename to repos/os/include/spec/x86_64/trace/timestamp.h
index 1aefb3882d..caba8ff2d2 100644
--- a/repos/os/include/x86_64/trace/timestamp.h
+++ b/repos/os/include/spec/x86_64/trace/timestamp.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__TRACE_TIMESTAMP_H_
-#define _INCLUDE__TRACE_TIMESTAMP_H_
+#ifndef _INCLUDE__SPEC__X86_64__TRACE__TIMESTAMP_H_
+#define _INCLUDE__SPEC__X86_64__TRACE__TIMESTAMP_H_
#include
@@ -41,4 +41,4 @@ namespace Genode { namespace Trace {
}
} }
-#endif /* _INCLUDE__TRACE_TIMESTAMP_H_ */
+#endif /* _INCLUDE__SPEC__X86_64__TRACE__TIMESTAMP_H_ */
diff --git a/repos/os/lib/mk/epit/timer.mk b/repos/os/lib/mk/epit/timer.mk
deleted file mode 100644
index f39f921f94..0000000000
--- a/repos/os/lib/mk/epit/timer.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-INC_DIR += $(REP_DIR)/src/drivers/timer/hw $(REP_DIR)/src/drivers/timer/hw/epit
-
-include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/foc_cli_monitor.mk b/repos/os/lib/mk/foc_cli_monitor.mk
index 217015fe08..686ac7cbdd 100644
--- a/repos/os/lib/mk/foc_cli_monitor.mk
+++ b/repos/os/lib/mk/foc_cli_monitor.mk
@@ -1,6 +1,6 @@
SRC_CC = extension.cc
REQUIRES = foc
INC_DIR += $(REP_DIR)/src/app/cli_monitor \
- $(REP_DIR)/src/app/cli_monitor/foc
+ $(REP_DIR)/src/app/cli_monitor/spec/foc
-vpath extension.cc $(REP_DIR)/src/app/cli_monitor/foc
+vpath extension.cc $(REP_DIR)/src/app/cli_monitor/spec/foc
diff --git a/repos/os/lib/mk/foc_rpi/gpio.mk b/repos/os/lib/mk/foc_rpi/gpio.mk
deleted file mode 100644
index d9f12b813e..0000000000
--- a/repos/os/lib/mk/foc_rpi/gpio.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-INC_DIR += $(REP_DIR)/src/drivers/gpio/rpi/foc
-include $(REP_DIR)/lib/mk/rpi/gpio.inc
diff --git a/repos/os/lib/mk/hw_arndale/timer.mk b/repos/os/lib/mk/hw_arndale/timer.mk
deleted file mode 100644
index 889ed2d312..0000000000
--- a/repos/os/lib/mk/hw_arndale/timer.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-INC_DIR += $(REP_DIR)/src/drivers/timer/hw $(REP_DIR)/src/drivers/timer/hw/exynos5
-
-include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/hw_odroid_xu/timer.mk b/repos/os/lib/mk/hw_odroid_xu/timer.mk
deleted file mode 100644
index 889ed2d312..0000000000
--- a/repos/os/lib/mk/hw_odroid_xu/timer.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-INC_DIR += $(REP_DIR)/src/drivers/timer/hw $(REP_DIR)/src/drivers/timer/hw/exynos5
-
-include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/hw_panda/timer.mk b/repos/os/lib/mk/hw_panda/timer.mk
deleted file mode 100644
index 9283853872..0000000000
--- a/repos/os/lib/mk/hw_panda/timer.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-INC_DIR += $(REP_DIR)/src/drivers/timer/hw $(REP_DIR)/src/drivers/timer/hw/omap4
-
-include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/hw_pbxa9/timer.mk b/repos/os/lib/mk/hw_pbxa9/timer.mk
deleted file mode 100644
index d31b7ba341..0000000000
--- a/repos/os/lib/mk/hw_pbxa9/timer.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-INC_DIR += $(REP_DIR)/src/drivers/timer/hw $(REP_DIR)/src/drivers/timer/hw/pbxa9
-
-include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/hw_rpi/gpio.mk b/repos/os/lib/mk/hw_rpi/gpio.mk
deleted file mode 100644
index 99a2e4886e..0000000000
--- a/repos/os/lib/mk/hw_rpi/gpio.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-INC_DIR += $(REP_DIR)/src/drivers/gpio/rpi/hw
-include $(REP_DIR)/lib/mk/rpi/gpio.inc
diff --git a/repos/os/lib/mk/hw_rpi/timer.mk b/repos/os/lib/mk/hw_rpi/timer.mk
deleted file mode 100644
index 9669f7c41d..0000000000
--- a/repos/os/lib/mk/hw_rpi/timer.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-INC_DIR += $(REP_DIR)/src/drivers/timer/hw $(REP_DIR)/src/drivers/timer/hw/rpi
-
-include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/hw_zynq/timer.mk b/repos/os/lib/mk/hw_zynq/timer.mk
deleted file mode 100644
index fda71b094d..0000000000
--- a/repos/os/lib/mk/hw_zynq/timer.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-INC_DIR += $(REP_DIR)/src/drivers/timer/hw
-INC_DIR += $(REP_DIR)/src/drivers/timer/hw/zynq
-
-include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/linux/init_pd_args.mk b/repos/os/lib/mk/linux/init_pd_args.mk
deleted file mode 100644
index ed03ff22ad..0000000000
--- a/repos/os/lib/mk/linux/init_pd_args.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-SRC_CC = pd_args.cc
-
-vpath pd_args.cc $(REP_DIR)/src/init/linux
diff --git a/repos/os/lib/mk/nova/timer.mk b/repos/os/lib/mk/nova/timer.mk
deleted file mode 100644
index 234c929da4..0000000000
--- a/repos/os/lib/mk/nova/timer.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-include $(REP_DIR)/lib/mk/timer.inc
-
-INC_DIR += $(REP_DIR)/src/drivers/timer/nova
diff --git a/repos/os/lib/mk/platform_arndale/foc_cli_monitor.mk b/repos/os/lib/mk/platform_arndale/foc_cli_monitor.mk
deleted file mode 100644
index d5a894e272..0000000000
--- a/repos/os/lib/mk/platform_arndale/foc_cli_monitor.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-SRC_CC = extension.cc
-REQUIRES = foc_arndale
-INC_DIR += $(REP_DIR)/src/app/cli_monitor \
- $(REP_DIR)/src/app/cli_monitor/foc
-
-vpath extension.cc $(REP_DIR)/src/app/cli_monitor/foc/arndale
diff --git a/repos/os/lib/mk/rpi/gpio.inc b/repos/os/lib/mk/rpi/gpio.inc
deleted file mode 100644
index d643be5406..0000000000
--- a/repos/os/lib/mk/rpi/gpio.inc
+++ /dev/null
@@ -1,5 +0,0 @@
-SRC_CC += main.cc
-LIBS += base config server
-INC_DIR += $(REP_DIR)/src/drivers/gpio/rpi
-
-vpath % $(REP_DIR)/src/drivers/gpio/rpi
diff --git a/repos/os/lib/mk/arm/blit.mk b/repos/os/lib/mk/spec/arm/blit.mk
similarity index 63%
rename from repos/os/lib/mk/arm/blit.mk
rename to repos/os/lib/mk/spec/arm/blit.mk
index 9d719a99e4..0435e99911 100644
--- a/repos/os/lib/mk/arm/blit.mk
+++ b/repos/os/lib/mk/spec/arm/blit.mk
@@ -1,5 +1,5 @@
SRC_CC = blit.cc
REQUIRES = arm 32bit
-INC_DIR += $(REP_DIR)/src/lib/blit/arm
+INC_DIR += $(REP_DIR)/src/lib/blit/spec/arm
vpath blit.cc $(REP_DIR)/src/lib/blit
diff --git a/repos/os/lib/mk/spec/arndale/foc_cli_monitor.mk b/repos/os/lib/mk/spec/arndale/foc_cli_monitor.mk
new file mode 100644
index 0000000000..c9087390c9
--- /dev/null
+++ b/repos/os/lib/mk/spec/arndale/foc_cli_monitor.mk
@@ -0,0 +1,6 @@
+SRC_CC = extension.cc
+REQUIRES = foc_arndale
+INC_DIR += $(REP_DIR)/src/app/cli_monitor \
+ $(REP_DIR)/src/app/cli_monitor/spec/foc
+
+vpath extension.cc $(REP_DIR)/src/app/cli_monitor/spec/foc/arndale
diff --git a/repos/os/lib/mk/spec/epit/hw_timer.mk b/repos/os/lib/mk/spec/epit/hw_timer.mk
new file mode 100644
index 0000000000..35f2aa5420
--- /dev/null
+++ b/repos/os/lib/mk/spec/epit/hw_timer.mk
@@ -0,0 +1,3 @@
+INC_DIR += $(REP_DIR)/src/drivers/timer/spec/hw $(REP_DIR)/src/drivers/timer/spec/hw/spec/epit
+
+include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/x86/ahci_platform.mk b/repos/os/lib/mk/spec/exynos5/ahci_platform.mk
similarity index 51%
rename from repos/os/lib/mk/x86/ahci_platform.mk
rename to repos/os/lib/mk/spec/exynos5/ahci_platform.mk
index e92501687e..bee43ed6da 100644
--- a/repos/os/lib/mk/x86/ahci_platform.mk
+++ b/repos/os/lib/mk/spec/exynos5/ahci_platform.mk
@@ -2,5 +2,5 @@ SRC_CC = platform.cc
INC_DIR += $(REP_DIR)/src/drivers/ahci
-vpath platform.cc $(REP_DIR)/src/drivers/ahci/x86
+vpath platform.cc $(REP_DIR)/src/drivers/ahci/spec/exynos5
diff --git a/repos/os/lib/mk/spec/exynos5/hw_timer.mk b/repos/os/lib/mk/spec/exynos5/hw_timer.mk
new file mode 100644
index 0000000000..30e5555b3f
--- /dev/null
+++ b/repos/os/lib/mk/spec/exynos5/hw_timer.mk
@@ -0,0 +1,3 @@
+INC_DIR += $(REP_DIR)/src/drivers/timer/spec/hw $(REP_DIR)/src/drivers/timer/spec/hw/spec/exynos5
+
+include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/fiasco/timer.mk b/repos/os/lib/mk/spec/fiasco/timer.mk
similarity index 65%
rename from repos/os/lib/mk/fiasco/timer.mk
rename to repos/os/lib/mk/spec/fiasco/timer.mk
index 77f974322a..750cec3bf6 100644
--- a/repos/os/lib/mk/fiasco/timer.mk
+++ b/repos/os/lib/mk/spec/fiasco/timer.mk
@@ -3,4 +3,4 @@ include $(REP_DIR)/lib/mk/timer.inc
INC_DIR += $(REP_DIR)/src/drivers/timer/include_periodic
SRC_CC += platform_timer.cc
-vpath platform_timer.cc $(REP_DIR)/src/drivers/timer/fiasco
+vpath platform_timer.cc $(REP_DIR)/src/drivers/timer/spec/fiasco
diff --git a/repos/os/lib/mk/foc/cli_monitor.mk b/repos/os/lib/mk/spec/foc/cli_monitor.mk
similarity index 100%
rename from repos/os/lib/mk/foc/cli_monitor.mk
rename to repos/os/lib/mk/spec/foc/cli_monitor.mk
diff --git a/repos/os/lib/mk/foc/timer.mk b/repos/os/lib/mk/spec/foc/timer.mk
similarity index 65%
rename from repos/os/lib/mk/foc/timer.mk
rename to repos/os/lib/mk/spec/foc/timer.mk
index 77f974322a..750cec3bf6 100644
--- a/repos/os/lib/mk/foc/timer.mk
+++ b/repos/os/lib/mk/spec/foc/timer.mk
@@ -3,4 +3,4 @@ include $(REP_DIR)/lib/mk/timer.inc
INC_DIR += $(REP_DIR)/src/drivers/timer/include_periodic
SRC_CC += platform_timer.cc
-vpath platform_timer.cc $(REP_DIR)/src/drivers/timer/fiasco
+vpath platform_timer.cc $(REP_DIR)/src/drivers/timer/spec/fiasco
diff --git a/repos/os/lib/mk/spec/foc_rpi/gpio.mk b/repos/os/lib/mk/spec/foc_rpi/gpio.mk
new file mode 100644
index 0000000000..3b25f9146f
--- /dev/null
+++ b/repos/os/lib/mk/spec/foc_rpi/gpio.mk
@@ -0,0 +1,2 @@
+INC_DIR += $(REP_DIR)/src/drivers/gpio/spec/rpi/spec/foc
+include $(REP_DIR)/lib/mk/spec/rpi/gpio.inc
diff --git a/repos/os/lib/mk/spec/hw/timer.mk b/repos/os/lib/mk/spec/hw/timer.mk
new file mode 100644
index 0000000000..5d599f08f7
--- /dev/null
+++ b/repos/os/lib/mk/spec/hw/timer.mk
@@ -0,0 +1 @@
+LIBS = hw_timer
diff --git a/repos/os/lib/mk/spec/hw_rpi/gpio.mk b/repos/os/lib/mk/spec/hw_rpi/gpio.mk
new file mode 100644
index 0000000000..10953e09d6
--- /dev/null
+++ b/repos/os/lib/mk/spec/hw_rpi/gpio.mk
@@ -0,0 +1,2 @@
+INC_DIR += $(REP_DIR)/src/drivers/gpio/spec/rpi/spec/hw
+include $(REP_DIR)/lib/mk/spec/rpi/gpio.inc
diff --git a/repos/os/lib/mk/spec/linux/init_pd_args.mk b/repos/os/lib/mk/spec/linux/init_pd_args.mk
new file mode 100644
index 0000000000..6ebeeb6650
--- /dev/null
+++ b/repos/os/lib/mk/spec/linux/init_pd_args.mk
@@ -0,0 +1,3 @@
+SRC_CC = pd_args.cc
+
+vpath pd_args.cc $(REP_DIR)/src/init/spec/linux
diff --git a/repos/os/lib/mk/linux/timer.mk b/repos/os/lib/mk/spec/linux/timer.mk
similarity index 68%
rename from repos/os/lib/mk/linux/timer.mk
rename to repos/os/lib/mk/spec/linux/timer.mk
index e82835d8c5..66cef60a29 100644
--- a/repos/os/lib/mk/linux/timer.mk
+++ b/repos/os/lib/mk/spec/linux/timer.mk
@@ -5,4 +5,4 @@ INC_DIR += $(REP_DIR)/src/drivers/timer/include_periodic
LIBS += syscall
SRC_CC += platform_timer.cc
-vpath platform_timer.cc $(REP_DIR)/src/drivers/timer/linux
+vpath platform_timer.cc $(REP_DIR)/src/drivers/timer/spec/linux
diff --git a/repos/os/lib/mk/spec/nova/timer.mk b/repos/os/lib/mk/spec/nova/timer.mk
new file mode 100644
index 0000000000..19b965e102
--- /dev/null
+++ b/repos/os/lib/mk/spec/nova/timer.mk
@@ -0,0 +1,3 @@
+include $(REP_DIR)/lib/mk/timer.inc
+
+INC_DIR += $(REP_DIR)/src/drivers/timer/spec/nova
diff --git a/repos/os/lib/mk/okl4_x86/timer.mk b/repos/os/lib/mk/spec/okl4_x86/timer.mk
similarity index 100%
rename from repos/os/lib/mk/okl4_x86/timer.mk
rename to repos/os/lib/mk/spec/okl4_x86/timer.mk
diff --git a/repos/os/lib/mk/spec/omap4/hw_timer.mk b/repos/os/lib/mk/spec/omap4/hw_timer.mk
new file mode 100644
index 0000000000..149c0a2dd8
--- /dev/null
+++ b/repos/os/lib/mk/spec/omap4/hw_timer.mk
@@ -0,0 +1,3 @@
+INC_DIR += $(REP_DIR)/src/drivers/timer/spec/hw $(REP_DIR)/src/drivers/timer/spec/hw/spec/omap4
+
+include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/spec/pbxa9/hw_timer.mk b/repos/os/lib/mk/spec/pbxa9/hw_timer.mk
new file mode 100644
index 0000000000..14ab762c59
--- /dev/null
+++ b/repos/os/lib/mk/spec/pbxa9/hw_timer.mk
@@ -0,0 +1,3 @@
+INC_DIR += $(REP_DIR)/src/drivers/timer/spec/hw $(REP_DIR)/src/drivers/timer/spec/hw/spec/pbxa9
+
+include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/pistachio/timer.mk b/repos/os/lib/mk/spec/pistachio/timer.mk
similarity index 64%
rename from repos/os/lib/mk/pistachio/timer.mk
rename to repos/os/lib/mk/spec/pistachio/timer.mk
index 394964a1a1..3987ec48d4 100644
--- a/repos/os/lib/mk/pistachio/timer.mk
+++ b/repos/os/lib/mk/spec/pistachio/timer.mk
@@ -3,4 +3,4 @@ include $(REP_DIR)/lib/mk/timer.inc
INC_DIR += $(REP_DIR)/src/drivers/timer/include_periodic
SRC_CC += platform_timer.cc
-vpath platform_timer.cc $(REP_DIR)/src/drivers/timer/pistachio
+vpath platform_timer.cc $(REP_DIR)/src/drivers/timer/spec/pistachio
diff --git a/repos/os/lib/mk/spec/rpi/gpio.inc b/repos/os/lib/mk/spec/rpi/gpio.inc
new file mode 100644
index 0000000000..d268ab269e
--- /dev/null
+++ b/repos/os/lib/mk/spec/rpi/gpio.inc
@@ -0,0 +1,5 @@
+SRC_CC += main.cc
+LIBS += base config server
+INC_DIR += $(REP_DIR)/src/drivers/gpio/spec/rpi
+
+vpath % $(REP_DIR)/src/drivers/gpio/spec/rpi
diff --git a/repos/os/lib/mk/spec/rpi/hw_timer.mk b/repos/os/lib/mk/spec/rpi/hw_timer.mk
new file mode 100644
index 0000000000..b0a2245055
--- /dev/null
+++ b/repos/os/lib/mk/spec/rpi/hw_timer.mk
@@ -0,0 +1,3 @@
+INC_DIR += $(REP_DIR)/src/drivers/timer/spec/hw $(REP_DIR)/src/drivers/timer/spec/hw/spec/rpi
+
+include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/exynos5/ahci_platform.mk b/repos/os/lib/mk/spec/x86/ahci_platform.mk
similarity index 53%
rename from repos/os/lib/mk/exynos5/ahci_platform.mk
rename to repos/os/lib/mk/spec/x86/ahci_platform.mk
index fa416556ac..9771ea1dd3 100644
--- a/repos/os/lib/mk/exynos5/ahci_platform.mk
+++ b/repos/os/lib/mk/spec/x86/ahci_platform.mk
@@ -2,5 +2,5 @@ SRC_CC = platform.cc
INC_DIR += $(REP_DIR)/src/drivers/ahci
-vpath platform.cc $(REP_DIR)/src/drivers/ahci/exynos5
+vpath platform.cc $(REP_DIR)/src/drivers/ahci/spec/x86
diff --git a/repos/os/lib/mk/spec/x86_32/blit.mk b/repos/os/lib/mk/spec/x86_32/blit.mk
new file mode 100644
index 0000000000..cc351581f5
--- /dev/null
+++ b/repos/os/lib/mk/spec/x86_32/blit.mk
@@ -0,0 +1,6 @@
+SRC_CC = blit.cc
+REQUIRES = x86 32bit
+INC_DIR += $(REP_DIR)/src/lib/blit/spec/x86_32 \
+ $(REP_DIR)/src/lib/blit/spec/x86
+
+vpath blit.cc $(REP_DIR)/src/lib/blit
diff --git a/repos/os/lib/mk/spec/x86_64/blit.mk b/repos/os/lib/mk/spec/x86_64/blit.mk
new file mode 100644
index 0000000000..b82281ed3b
--- /dev/null
+++ b/repos/os/lib/mk/spec/x86_64/blit.mk
@@ -0,0 +1,6 @@
+SRC_CC = blit.cc
+REQUIRES = x86 64bit
+INC_DIR += $(REP_DIR)/src/lib/blit/spec/x86_64 \
+ $(REP_DIR)/src/lib/blit/spec/x86
+
+vpath blit.cc $(REP_DIR)/src/lib/blit
diff --git a/repos/os/lib/mk/hw_x86_64/timer.mk b/repos/os/lib/mk/spec/x86_64/hw_timer.mk
similarity index 100%
rename from repos/os/lib/mk/hw_x86_64/timer.mk
rename to repos/os/lib/mk/spec/x86_64/hw_timer.mk
diff --git a/repos/os/lib/mk/spec/zynq/hw_timer.mk b/repos/os/lib/mk/spec/zynq/hw_timer.mk
new file mode 100644
index 0000000000..c2c7a66fb3
--- /dev/null
+++ b/repos/os/lib/mk/spec/zynq/hw_timer.mk
@@ -0,0 +1,4 @@
+INC_DIR += $(REP_DIR)/src/drivers/timer/spec/hw
+INC_DIR += $(REP_DIR)/src/drivers/timer/spec/hw/spec/zynq
+
+include $(REP_DIR)/lib/mk/timer.inc
diff --git a/repos/os/lib/mk/x86_32/blit.mk b/repos/os/lib/mk/x86_32/blit.mk
deleted file mode 100644
index b0d2a940fb..0000000000
--- a/repos/os/lib/mk/x86_32/blit.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-SRC_CC = blit.cc
-REQUIRES = x86 32bit
-INC_DIR += $(REP_DIR)/src/lib/blit/x86/x86_32 \
- $(REP_DIR)/src/lib/blit/x86
-
-vpath blit.cc $(REP_DIR)/src/lib/blit
diff --git a/repos/os/lib/mk/x86_64/blit.mk b/repos/os/lib/mk/x86_64/blit.mk
deleted file mode 100644
index ac1aa745a7..0000000000
--- a/repos/os/lib/mk/x86_64/blit.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-SRC_CC = blit.cc
-REQUIRES = x86 64bit
-INC_DIR += $(REP_DIR)/src/lib/blit/x86/x86_64 \
- $(REP_DIR)/src/lib/blit/x86
-
-vpath blit.cc $(REP_DIR)/src/lib/blit
diff --git a/repos/os/run/network_test_nic.inc b/repos/os/run/network_test_nic.inc
index 0843722fbc..7120395632 100644
--- a/repos/os/run/network_test_nic.inc
+++ b/repos/os/run/network_test_nic.inc
@@ -16,8 +16,8 @@ set build_components {
drivers/pci drivers/timer drivers/nic
}
-lappend_if [expr [have_spec omap4] || [have_spec platform_arndale]] build_components drivers/usb
-lappend_if [expr [have_spec omap4] || [have_spec platform_arndale]] build_components drivers/usb_net_stat
+lappend_if [expr [have_spec omap4] || [have_spec arndale]] build_components drivers/usb
+lappend_if [expr [have_spec omap4] || [have_spec arndale]] build_components drivers/usb_net_stat
lappend_if [have_spec acpi] build_components drivers/acpi
lappend_if [have_spec pci] build_components drivers/pci/device_pd
lappend_if [have_spec x86] build_components drivers/nic_stat
@@ -28,13 +28,13 @@ lappend_if $use_nic_bridge build_components server/nic_bridge
#
# Choose network driver
#
-if {[expr $use_nic_client && ([have_spec omap4] || [have_spec platform_arndale])]} {
+if {[expr $use_nic_client && ([have_spec omap4] || [have_spec arndale])]} {
set network_driver "usb_drv" }
-if {[expr !$use_nic_client && ([have_spec omap4] || [have_spec platform_arndale])]} {
+if {[expr !$use_nic_client && ([have_spec omap4] || [have_spec arndale])]} {
set network_driver "usb_drv_net_stat" }
-if {[expr $use_nic_client && ![have_spec omap4] && ![have_spec platform_arndale]]} {
+if {[expr $use_nic_client && ![have_spec omap4] && ![have_spec arndale]]} {
set network_driver "nic_drv" }
-if {[expr !$use_nic_client && ![have_spec omap4] && ![have_spec platform_arndale]]} {
+if {[expr !$use_nic_client && ![have_spec omap4] && ![have_spec arndale]]} {
set network_driver "nic_drv_stat" }
build $build_components
@@ -68,7 +68,7 @@ set config {
}
-append_if [expr [have_spec omap4] || [have_spec platform_arndale]] config "
+append_if [expr [have_spec omap4] || [have_spec arndale]] config "
@@ -79,7 +79,7 @@ append_if [expr [have_spec omap4] || [have_spec platform_arndale]] config "
"
-append_if [expr ![have_spec omap4] && ![have_spec platform_arndale]] config "
+append_if [expr ![have_spec omap4] && ![have_spec arndale]] config "
@@ -151,10 +151,10 @@ lappend_if $use_nic_bridge boot_modules nic_bridge
# platform-specific modules
lappend_if [have_spec acpi] boot_modules acpi_drv
lappend_if [have_spec pci] boot_modules pci_drv
-lappend_if [expr [have_spec omap4] || [have_spec platform_arndale]] boot_modules usb_drv
-lappend_if [expr [have_spec omap4] || [have_spec platform_arndale]] boot_modules usb_drv_net_stat
-lappend_if [expr ![have_spec omap4] && ![have_spec platform_arndale]] boot_modules nic_drv
-lappend_if [expr ![have_spec omap4] && ![have_spec platform_arndale]] boot_modules nic_drv_stat
+lappend_if [expr [have_spec omap4] || [have_spec arndale]] boot_modules usb_drv
+lappend_if [expr [have_spec omap4] || [have_spec arndale]] boot_modules usb_drv_net_stat
+lappend_if [expr ![have_spec omap4] && ![have_spec arndale]] boot_modules nic_drv
+lappend_if [expr ![have_spec omap4] && ![have_spec arndale]] boot_modules nic_drv_stat
lappend_if [have_spec nova] boot_modules pci_device_pd
build_boot_image $boot_modules
@@ -177,7 +177,7 @@ if {![regexp cap_net_raw $cap_rights]} {
# Execute test case
#
-if {[expr [have_spec omap4] || [have_spec platform_arndale]]} {
+if {[expr [have_spec omap4] || [have_spec arndale]]} {
run_genode_until {announces service "Nic"} 30
set serial_id $spawn_id
diff --git a/repos/os/run/panda_uart4_echo.run b/repos/os/run/panda_uart4_echo.run
index 4013261771..8a529934c5 100644
--- a/repos/os/run/panda_uart4_echo.run
+++ b/repos/os/run/panda_uart4_echo.run
@@ -2,7 +2,7 @@
# Build
#
assert_spec foc
-assert_spec platform_panda
+assert_spec panda
# generic components
set build_components {
diff --git a/repos/os/run/sd_card.run b/repos/os/run/sd_card.run
index 30c3b53e03..8a1a8cc545 100644
--- a/repos/os/run/sd_card.run
+++ b/repos/os/run/sd_card.run
@@ -9,8 +9,8 @@ set build_components {
drivers/sd_card
test/blk/cli
}
-lappend_if [have_spec platform_arndale] build_components drivers/platform
-lappend_if [have_spec platform_rpi] build_components drivers/platform
+lappend_if [have_spec arndale] build_components drivers/platform
+lappend_if [have_spec rpi] build_components drivers/platform
build $build_components
create_boot_directory
@@ -38,7 +38,7 @@ set config {
}
-append_if [expr [have_spec platform_arndale] || [have_spec platform_rpi]] config {
+append_if [expr [have_spec arndale] || [have_spec rpi]] config {
@@ -73,8 +73,8 @@ set boot_modules {
sd_card_drv
test-blk-cli
}
-lappend_if [have_spec platform_arndale] boot_modules platform_drv
-lappend_if [have_spec platform_rpi] boot_modules platform_drv
+lappend_if [have_spec arndale] boot_modules platform_drv
+lappend_if [have_spec rpi] boot_modules platform_drv
set disk_image "bin/sd_card.img"
diff --git a/repos/os/run/tz_vmm.run b/repos/os/run/tz_vmm.run
index 798c9ade32..e1a4496271 100644
--- a/repos/os/run/tz_vmm.run
+++ b/repos/os/run/tz_vmm.run
@@ -6,7 +6,7 @@
#
assert_spec hw
-assert_spec platform_imx53
+assert_spec imx53
assert_spec trustzone
build "core init server/tz_vmm"
diff --git a/repos/os/src/app/cli_monitor/arm/gdb_prefix.h b/repos/os/src/app/cli_monitor/spec/arm/gdb_prefix.h
similarity index 67%
rename from repos/os/src/app/cli_monitor/arm/gdb_prefix.h
rename to repos/os/src/app/cli_monitor/spec/arm/gdb_prefix.h
index 796bdb4514..32b9f79ec0 100644
--- a/repos/os/src/app/cli_monitor/arm/gdb_prefix.h
+++ b/repos/os/src/app/cli_monitor/spec/arm/gdb_prefix.h
@@ -11,9 +11,9 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _GDB_PREFIX_H_
-#define _GDB_PREFIX_H_
+#ifndef _APP__CLI_MONITOR__SPEC__ARM__GDB_PREFIX_H_
+#define _APP__CLI_MONITOR__SPEC__ARM__GDB_PREFIX_H_
static const char *gdb_prefix = "genode-arm-";
-#endif /* _GDB_PREFIX_H_ */
+#endif /* _APP__CLI_MONITOR__SPEC__ARM__GDB_PREFIX_H_ */
diff --git a/repos/os/src/app/cli_monitor/foc/arndale/extension.cc b/repos/os/src/app/cli_monitor/spec/foc/arndale/extension.cc
similarity index 100%
rename from repos/os/src/app/cli_monitor/foc/arndale/extension.cc
rename to repos/os/src/app/cli_monitor/spec/foc/arndale/extension.cc
diff --git a/repos/os/src/app/cli_monitor/foc/common.h b/repos/os/src/app/cli_monitor/spec/foc/common.h
similarity index 89%
rename from repos/os/src/app/cli_monitor/foc/common.h
rename to repos/os/src/app/cli_monitor/spec/foc/common.h
index d5719aaafa..5a3b140535 100644
--- a/repos/os/src/app/cli_monitor/foc/common.h
+++ b/repos/os/src/app/cli_monitor/spec/foc/common.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _SRC__APP_CLI_MONITOR__FOC__COMMON_H_
-#define _SRC__APP_CLI_MONITOR__FOC__COMMON_H_
+#ifndef _APP__CLI_MONITOR__SPEC__FOC__COMMON_H_
+#define _APP__CLI_MONITOR__SPEC__FOC__COMMON_H_
/* local includes */
#include
@@ -67,4 +67,4 @@ struct Reboot_command : Command
}
};
-#endif /* _SRC__APP_CLI_MONITOR__FOC__COMMON_H_ */
+#endif /* _APP__CLI_MONITOR__SPEC__FOC__COMMON_H_ */
diff --git a/repos/os/src/app/cli_monitor/foc/extension.cc b/repos/os/src/app/cli_monitor/spec/foc/extension.cc
similarity index 100%
rename from repos/os/src/app/cli_monitor/foc/extension.cc
rename to repos/os/src/app/cli_monitor/spec/foc/extension.cc
diff --git a/repos/os/src/app/cli_monitor/x86/gdb_prefix.h b/repos/os/src/app/cli_monitor/spec/x86/gdb_prefix.h
similarity index 67%
rename from repos/os/src/app/cli_monitor/x86/gdb_prefix.h
rename to repos/os/src/app/cli_monitor/spec/x86/gdb_prefix.h
index decbd52d7a..71b84890e9 100644
--- a/repos/os/src/app/cli_monitor/x86/gdb_prefix.h
+++ b/repos/os/src/app/cli_monitor/spec/x86/gdb_prefix.h
@@ -11,9 +11,9 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _GDB_PREFIX_H_
-#define _GDB_PREFIX_H_
+#ifndef _APP__CLI_MONITOR__SPEC__X86__GDB_PREFIX_H_
+#define _APP__CLI_MONITOR__SPEC__X86__GDB_PREFIX_H_
static const char *gdb_prefix = "genode-x86-";
-#endif /* _GDB_PREFIX_H_ */
+#endif /* _APP__CLI_MONITOR__SPEC__X86__GDB_PREFIX_H_ */
diff --git a/repos/os/src/app/cli_monitor/target.mk b/repos/os/src/app/cli_monitor/target.mk
index 1178130422..756d618b80 100644
--- a/repos/os/src/app/cli_monitor/target.mk
+++ b/repos/os/src/app/cli_monitor/target.mk
@@ -4,9 +4,9 @@ LIBS = base cli_monitor config vfs
INC_DIR += $(PRG_DIR)
ifeq ($(findstring arm, $(SPECS)), arm)
-INC_DIR += $(PRG_DIR)/arm
+INC_DIR += $(PRG_DIR)/spec/arm
else
ifeq ($(findstring x86, $(SPECS)), x86)
-INC_DIR += $(PRG_DIR)/x86
+INC_DIR += $(PRG_DIR)/spec/x86
endif
endif
diff --git a/repos/os/src/drivers/acpi/spec/x86/target.mk b/repos/os/src/drivers/acpi/spec/x86/target.mk
new file mode 100644
index 0000000000..92431747b7
--- /dev/null
+++ b/repos/os/src/drivers/acpi/spec/x86/target.mk
@@ -0,0 +1,9 @@
+TARGET = acpi_drv
+REQUIRES = x86
+SRC_CC = main.cc acpi.cc
+LIBS = base
+
+INC_DIR = $(PRG_DIR)/../..
+
+vpath main.cc $(PRG_DIR)/../..
+vpath acpi.cc $(PRG_DIR)/../..
diff --git a/repos/os/src/drivers/acpi/x86/target.mk b/repos/os/src/drivers/acpi/x86/target.mk
deleted file mode 100644
index b41b79351f..0000000000
--- a/repos/os/src/drivers/acpi/x86/target.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-TARGET = acpi_drv
-REQUIRES = x86
-SRC_CC = main.cc acpi.cc
-LIBS = base
-
-INC_DIR = $(PRG_DIR)/..
-
-vpath main.cc $(PRG_DIR)/..
-vpath acpi.cc $(PRG_DIR)/..
diff --git a/repos/os/src/drivers/ahci/exynos5/platform.cc b/repos/os/src/drivers/ahci/spec/exynos5/platform.cc
similarity index 100%
rename from repos/os/src/drivers/ahci/exynos5/platform.cc
rename to repos/os/src/drivers/ahci/spec/exynos5/platform.cc
diff --git a/repos/os/src/drivers/ahci/x86/platform.cc b/repos/os/src/drivers/ahci/spec/x86/platform.cc
similarity index 100%
rename from repos/os/src/drivers/ahci/x86/platform.cc
rename to repos/os/src/drivers/ahci/spec/x86/platform.cc
diff --git a/repos/os/src/drivers/audio/linux/alsa.c b/repos/os/src/drivers/audio/spec/linux/alsa.c
similarity index 100%
rename from repos/os/src/drivers/audio/linux/alsa.c
rename to repos/os/src/drivers/audio/spec/linux/alsa.c
diff --git a/repos/os/src/drivers/audio/linux/alsa.h b/repos/os/src/drivers/audio/spec/linux/alsa.h
similarity index 79%
rename from repos/os/src/drivers/audio/linux/alsa.h
rename to repos/os/src/drivers/audio/spec/linux/alsa.h
index 27eb468a1d..1390735168 100644
--- a/repos/os/src/drivers/audio/linux/alsa.h
+++ b/repos/os/src/drivers/audio/spec/linux/alsa.h
@@ -12,8 +12,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _ALSA_H_
-#define _ALSA_H_
+#ifndef _DRIVERS__AUDIO__SPEC__LINUX__ALSA_H_
+#define _DRIVERS__AUDIO__SPEC__LINUX__ALSA_H_
#ifdef __cplusplus
extern "C" {
@@ -29,4 +29,4 @@ void audio_drv_start(void);
}
#endif
-#endif /* _ALSA_H_ */
+#endif /* _DRIVERS__AUDIO__SPEC__LINUX__ALSA_H_ */
diff --git a/repos/os/src/drivers/audio/linux/main.cc b/repos/os/src/drivers/audio/spec/linux/main.cc
similarity index 100%
rename from repos/os/src/drivers/audio/linux/main.cc
rename to repos/os/src/drivers/audio/spec/linux/main.cc
diff --git a/repos/os/src/drivers/audio/linux/target.mk b/repos/os/src/drivers/audio/spec/linux/target.mk
similarity index 100%
rename from repos/os/src/drivers/audio/linux/target.mk
rename to repos/os/src/drivers/audio/spec/linux/target.mk
diff --git a/repos/os/src/drivers/framebuffer/exynos5/driver.cc b/repos/os/src/drivers/framebuffer/spec/exynos5/driver.cc
similarity index 100%
rename from repos/os/src/drivers/framebuffer/exynos5/driver.cc
rename to repos/os/src/drivers/framebuffer/spec/exynos5/driver.cc
diff --git a/repos/os/src/drivers/framebuffer/exynos5/driver.h b/repos/os/src/drivers/framebuffer/spec/exynos5/driver.h
similarity index 100%
rename from repos/os/src/drivers/framebuffer/exynos5/driver.h
rename to repos/os/src/drivers/framebuffer/spec/exynos5/driver.h
diff --git a/repos/os/src/drivers/framebuffer/exynos5/main.cc b/repos/os/src/drivers/framebuffer/spec/exynos5/main.cc
similarity index 100%
rename from repos/os/src/drivers/framebuffer/exynos5/main.cc
rename to repos/os/src/drivers/framebuffer/spec/exynos5/main.cc
diff --git a/repos/os/src/drivers/framebuffer/exynos5/target.mk b/repos/os/src/drivers/framebuffer/spec/exynos5/target.mk
similarity index 100%
rename from repos/os/src/drivers/framebuffer/exynos5/target.mk
rename to repos/os/src/drivers/framebuffer/spec/exynos5/target.mk
diff --git a/repos/os/src/drivers/framebuffer/imx53/driver.h b/repos/os/src/drivers/framebuffer/spec/imx53/driver.h
similarity index 87%
rename from repos/os/src/drivers/framebuffer/imx53/driver.h
rename to repos/os/src/drivers/framebuffer/spec/imx53/driver.h
index d287c07ec5..b58eecdb4e 100644
--- a/repos/os/src/drivers/framebuffer/imx53/driver.h
+++ b/repos/os/src/drivers/framebuffer/spec/imx53/driver.h
@@ -4,6 +4,16 @@
* \date 2012-06-21
*/
+/*
+ * Copyright (C) 2009-2013 Genode Labs GmbH
+ *
+ * This file is part of the Genode OS framework, which is distributed
+ * under the terms of the GNU General Public License version 2.
+ */
+
+#ifndef _DRIVERS__FRAMEBUFFER__SPEC__IMX53__DRIVER_H_
+#define _DRIVERS__FRAMEBUFFER__SPEC__IMX53__DRIVER_H_
+
/* Genode includes */
#include
#include
@@ -96,3 +106,5 @@ class Framebuffer::Driver
Mode mode() { return Mode(_width, _height, Mode::RGB565); }
Ipu &ipu() { return _ipu; }
};
+
+#endif /* _DRIVERS__FRAMEBUFFER__SPEC__IMX53__DRIVER_H_ */
diff --git a/repos/os/src/drivers/framebuffer/imx53/ipu.h b/repos/os/src/drivers/framebuffer/spec/imx53/ipu.h
similarity index 98%
rename from repos/os/src/drivers/framebuffer/imx53/ipu.h
rename to repos/os/src/drivers/framebuffer/spec/imx53/ipu.h
index de93d13869..baf4cd5667 100644
--- a/repos/os/src/drivers/framebuffer/imx53/ipu.h
+++ b/repos/os/src/drivers/framebuffer/spec/imx53/ipu.h
@@ -5,8 +5,15 @@
* \date 2012-11-10
*/
-#ifndef _IPU_H_
-#define _IPU_H_
+/*
+ * Copyright (C) 2009-2013 Genode Labs GmbH
+ *
+ * This file is part of the Genode OS framework, which is distributed
+ * under the terms of the GNU General Public License version 2.
+ */
+
+#ifndef _DRIVERS__FRAMEBUFFER__SPEC__IMX53__IPU_H_
+#define _DRIVERS__FRAMEBUFFER__SPEC__IMX53__IPU_H_
/* Genode includes */
#include
@@ -544,4 +551,4 @@ class Ipu : Genode::Mmio
Ipu(Genode::addr_t mmio_base) : Genode::Mmio(mmio_base + REGS_OFF) { }
};
-#endif /* _IPU_H_ */
+#endif /* _DRIVERS__FRAMEBUFFER__SPEC__IMX53__IPU_H_ */
diff --git a/repos/os/src/drivers/framebuffer/imx53/main.cc b/repos/os/src/drivers/framebuffer/spec/imx53/main.cc
similarity index 100%
rename from repos/os/src/drivers/framebuffer/imx53/main.cc
rename to repos/os/src/drivers/framebuffer/spec/imx53/main.cc
diff --git a/repos/os/src/drivers/framebuffer/imx53/pwm.h b/repos/os/src/drivers/framebuffer/spec/imx53/pwm.h
similarity index 80%
rename from repos/os/src/drivers/framebuffer/imx53/pwm.h
rename to repos/os/src/drivers/framebuffer/spec/imx53/pwm.h
index cb8c2e5d69..a9cc087df4 100644
--- a/repos/os/src/drivers/framebuffer/imx53/pwm.h
+++ b/repos/os/src/drivers/framebuffer/spec/imx53/pwm.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PWM_H_
-#define _PWM_H_
+#ifndef _DRIVERS__FRAMEBUFFER__SPEC__IMX53__PWM_H_
+#define _DRIVERS__FRAMEBUFFER__SPEC__IMX53__PWM_H_
/* Genode includes */
#include
@@ -33,4 +33,4 @@ struct Pwm : Genode::Mmio
}
};
-#endif /* _PWM_H_ */
+#endif /* _DRIVERS__FRAMEBUFFER__SPEC__IMX53__PWM_H_ */
diff --git a/repos/os/src/drivers/framebuffer/imx53/target.mk b/repos/os/src/drivers/framebuffer/spec/imx53/target.mk
similarity index 100%
rename from repos/os/src/drivers/framebuffer/imx53/target.mk
rename to repos/os/src/drivers/framebuffer/spec/imx53/target.mk
diff --git a/repos/os/src/drivers/framebuffer/omap4/dispc.h b/repos/os/src/drivers/framebuffer/spec/omap4/dispc.h
similarity index 92%
rename from repos/os/src/drivers/framebuffer/omap4/dispc.h
rename to repos/os/src/drivers/framebuffer/spec/omap4/dispc.h
index 840c116c60..4606442494 100644
--- a/repos/os/src/drivers/framebuffer/omap4/dispc.h
+++ b/repos/os/src/drivers/framebuffer/spec/omap4/dispc.h
@@ -5,6 +5,13 @@
* \date 2012-06-11
*/
+/*
+ * Copyright (C) 2009-2013 Genode Labs GmbH
+ *
+ * This file is part of the Genode OS framework, which is distributed
+ * under the terms of the GNU General Public License version 2.
+ */
+
#ifndef _DISPC_H_
#define _DISPC_H_
diff --git a/repos/os/src/drivers/framebuffer/omap4/driver.h b/repos/os/src/drivers/framebuffer/spec/omap4/driver.h
similarity index 100%
rename from repos/os/src/drivers/framebuffer/omap4/driver.h
rename to repos/os/src/drivers/framebuffer/spec/omap4/driver.h
diff --git a/repos/os/src/drivers/framebuffer/omap4/dss.h b/repos/os/src/drivers/framebuffer/spec/omap4/dss.h
similarity index 100%
rename from repos/os/src/drivers/framebuffer/omap4/dss.h
rename to repos/os/src/drivers/framebuffer/spec/omap4/dss.h
diff --git a/repos/os/src/drivers/framebuffer/omap4/hdmi.h b/repos/os/src/drivers/framebuffer/spec/omap4/hdmi.h
similarity index 90%
rename from repos/os/src/drivers/framebuffer/omap4/hdmi.h
rename to repos/os/src/drivers/framebuffer/spec/omap4/hdmi.h
index b9114ad57b..88da0d6f4b 100644
--- a/repos/os/src/drivers/framebuffer/omap4/hdmi.h
+++ b/repos/os/src/drivers/framebuffer/spec/omap4/hdmi.h
@@ -4,8 +4,15 @@
* \date 2012-06-11
*/
-#ifndef _HDMI_H_
-#define _HDMI_H_
+/*
+ * Copyright (C) 2009-2013 Genode Labs GmbH
+ *
+ * This file is part of the Genode OS framework, which is distributed
+ * under the terms of the GNU General Public License version 2.
+ */
+
+#ifndef _DRIVERS__FRAMEBUFFER__SPEC__OMAP4__HDMI_H_
+#define _DRIVERS__FRAMEBUFFER__SPEC__OMAP4__HDMI_H_
/* Genode includes */
#include
@@ -153,4 +160,4 @@ struct Hdmi : Genode::Mmio
Hdmi(Genode::addr_t const mmio_base) : Mmio(mmio_base) { }
};
-#endif /* _HDMI_H_ */
+#endif /* _DRIVERS__FRAMEBUFFER__SPEC__OMAP4__HDMI_H_ */
diff --git a/repos/os/src/drivers/framebuffer/omap4/main.cc b/repos/os/src/drivers/framebuffer/spec/omap4/main.cc
similarity index 100%
rename from repos/os/src/drivers/framebuffer/omap4/main.cc
rename to repos/os/src/drivers/framebuffer/spec/omap4/main.cc
diff --git a/repos/os/src/drivers/framebuffer/omap4/target.mk b/repos/os/src/drivers/framebuffer/spec/omap4/target.mk
similarity index 100%
rename from repos/os/src/drivers/framebuffer/omap4/target.mk
rename to repos/os/src/drivers/framebuffer/spec/omap4/target.mk
diff --git a/repos/os/src/drivers/framebuffer/pl11x/main.cc b/repos/os/src/drivers/framebuffer/spec/pl11x/main.cc
similarity index 100%
rename from repos/os/src/drivers/framebuffer/pl11x/main.cc
rename to repos/os/src/drivers/framebuffer/spec/pl11x/main.cc
diff --git a/repos/os/src/drivers/framebuffer/pl11x/pbxa9/target.mk b/repos/os/src/drivers/framebuffer/spec/pl11x/pbxa9/target.mk
similarity index 78%
rename from repos/os/src/drivers/framebuffer/pl11x/pbxa9/target.mk
rename to repos/os/src/drivers/framebuffer/spec/pl11x/pbxa9/target.mk
index 31fd8c879b..9a5f32b7cb 100644
--- a/repos/os/src/drivers/framebuffer/pl11x/pbxa9/target.mk
+++ b/repos/os/src/drivers/framebuffer/spec/pl11x/pbxa9/target.mk
@@ -1,5 +1,5 @@
TARGET = fb_drv
-REQUIRES = pl11x platform_pbxa9
+REQUIRES = pl11x pbxa9
SRC_CC = main.cc video_memory.cc
LIBS = base
INC_DIR += $(PRG_DIR)/..
diff --git a/repos/os/src/drivers/framebuffer/pl11x/video_memory.cc b/repos/os/src/drivers/framebuffer/spec/pl11x/video_memory.cc
similarity index 100%
rename from repos/os/src/drivers/framebuffer/pl11x/video_memory.cc
rename to repos/os/src/drivers/framebuffer/spec/pl11x/video_memory.cc
diff --git a/repos/os/src/drivers/framebuffer/pl11x/video_memory.h b/repos/os/src/drivers/framebuffer/spec/pl11x/video_memory.h
similarity index 100%
rename from repos/os/src/drivers/framebuffer/pl11x/video_memory.h
rename to repos/os/src/drivers/framebuffer/spec/pl11x/video_memory.h
diff --git a/repos/os/src/drivers/framebuffer/rpi/main.cc b/repos/os/src/drivers/framebuffer/spec/rpi/main.cc
similarity index 100%
rename from repos/os/src/drivers/framebuffer/rpi/main.cc
rename to repos/os/src/drivers/framebuffer/spec/rpi/main.cc
diff --git a/repos/os/src/drivers/framebuffer/rpi/target.mk b/repos/os/src/drivers/framebuffer/spec/rpi/target.mk
similarity index 85%
rename from repos/os/src/drivers/framebuffer/rpi/target.mk
rename to repos/os/src/drivers/framebuffer/spec/rpi/target.mk
index 6317680e6f..3dabddace2 100644
--- a/repos/os/src/drivers/framebuffer/rpi/target.mk
+++ b/repos/os/src/drivers/framebuffer/spec/rpi/target.mk
@@ -1,5 +1,5 @@
TARGET = fb_drv
-REQUIRES = platform_rpi
+REQUIRES = rpi
SRC_CC = main.cc
LIBS = base blit config
INC_DIR += $(PRG_DIR)
diff --git a/repos/os/src/drivers/framebuffer/sdl/fb_sdl.cc b/repos/os/src/drivers/framebuffer/spec/sdl/fb_sdl.cc
similarity index 100%
rename from repos/os/src/drivers/framebuffer/sdl/fb_sdl.cc
rename to repos/os/src/drivers/framebuffer/spec/sdl/fb_sdl.cc
diff --git a/repos/os/src/drivers/framebuffer/sdl/input.cc b/repos/os/src/drivers/framebuffer/spec/sdl/input.cc
similarity index 100%
rename from repos/os/src/drivers/framebuffer/sdl/input.cc
rename to repos/os/src/drivers/framebuffer/spec/sdl/input.cc
diff --git a/repos/os/src/drivers/framebuffer/sdl/input.h b/repos/os/src/drivers/framebuffer/spec/sdl/input.h
similarity index 70%
rename from repos/os/src/drivers/framebuffer/sdl/input.h
rename to repos/os/src/drivers/framebuffer/spec/sdl/input.h
index 4b52c2440d..6bb4f40417 100644
--- a/repos/os/src/drivers/framebuffer/sdl/input.h
+++ b/repos/os/src/drivers/framebuffer/spec/sdl/input.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INPUT_H_
-#define _INPUT_H_
+#ifndef _DRIVERS__FRAMEBUFFER__SPEC__SDL__INPUT_H_
+#define _DRIVERS__FRAMEBUFFER__SPEC__SDL__INPUT_H_
#include
@@ -21,4 +21,4 @@
*/
Input::Event wait_for_event();
-#endif /* _INPUT_H_ */
+#endif /* _DRIVERS__FRAMEBUFFER__SPEC__SDL__INPUT_H_ */
diff --git a/repos/os/src/drivers/framebuffer/sdl/target.mk b/repos/os/src/drivers/framebuffer/spec/sdl/target.mk
similarity index 100%
rename from repos/os/src/drivers/framebuffer/sdl/target.mk
rename to repos/os/src/drivers/framebuffer/spec/sdl/target.mk
diff --git a/repos/os/src/drivers/gpio/imx53/driver.h b/repos/os/src/drivers/gpio/spec/imx53/driver.h
similarity index 98%
rename from repos/os/src/drivers/gpio/imx53/driver.h
rename to repos/os/src/drivers/gpio/spec/imx53/driver.h
index 544944aadd..3177576fa9 100644
--- a/repos/os/src/drivers/gpio/imx53/driver.h
+++ b/repos/os/src/drivers/gpio/spec/imx53/driver.h
@@ -14,8 +14,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVER_H_
-#define _DRIVER_H_
+#ifndef _DRIVERS__GPIO__SPEC__IMX53__DRIVER_H_
+#define _DRIVERS__GPIO__SPEC__IMX53__DRIVER_H_
/* Genode includes */
#include
@@ -309,4 +309,4 @@ Imx53_driver &Imx53_driver::factory(Server::Entrypoint &ep)
return driver;
}
-#endif /* _DRIVER_H_ */
+#endif /* _DRIVERS__GPIO__SPEC__IMX53__DRIVER_H_ */
diff --git a/repos/os/src/drivers/gpio/imx53/gpio.h b/repos/os/src/drivers/gpio/spec/imx53/gpio.h
similarity index 89%
rename from repos/os/src/drivers/gpio/imx53/gpio.h
rename to repos/os/src/drivers/gpio/spec/imx53/gpio.h
index b42cbc1f2c..774b117b06 100644
--- a/repos/os/src/drivers/gpio/imx53/gpio.h
+++ b/repos/os/src/drivers/gpio/spec/imx53/gpio.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _GPIO_H_
-#define _GPIO_H_
+#ifndef _DRIVERS__GPIO__SPEC__IMX53__GPIO_H_
+#define _DRIVERS__GPIO__SPEC__IMX53__GPIO_H_
/* Genode includes */
#include
@@ -45,4 +45,4 @@ struct Gpio_reg : Genode::Attached_io_mem_dataspace, Genode::Mmio
struct Edge_sel : Register_array<0x1c, 32, 32, 1> {};
};
-#endif /* _GPIO_H_ */
+#endif /* _DRIVERS__GPIO__SPEC__IMX53__GPIO_H_ */
diff --git a/repos/os/src/drivers/gpio/imx53/main.cc b/repos/os/src/drivers/gpio/spec/imx53/main.cc
similarity index 100%
rename from repos/os/src/drivers/gpio/imx53/main.cc
rename to repos/os/src/drivers/gpio/spec/imx53/main.cc
diff --git a/repos/os/src/drivers/gpio/imx53/target.mk b/repos/os/src/drivers/gpio/spec/imx53/target.mk
similarity index 100%
rename from repos/os/src/drivers/gpio/imx53/target.mk
rename to repos/os/src/drivers/gpio/spec/imx53/target.mk
diff --git a/repos/os/src/drivers/gpio/omap4/driver.h b/repos/os/src/drivers/gpio/spec/omap4/driver.h
similarity index 98%
rename from repos/os/src/drivers/gpio/omap4/driver.h
rename to repos/os/src/drivers/gpio/spec/omap4/driver.h
index eeb73a1d9e..4305d7b00c 100644
--- a/repos/os/src/drivers/gpio/omap4/driver.h
+++ b/repos/os/src/drivers/gpio/spec/omap4/driver.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVER_H_
-#define _DRIVER_H_
+#ifndef _DRIVERS__GPIO__SPEC__OMAP4__DRIVER_H_
+#define _DRIVERS__GPIO__SPEC__OMAP4__DRIVER_H_
/* Genode includes */
#include
@@ -310,4 +310,4 @@ Omap4_driver& Omap4_driver::factory(Server::Entrypoint &ep)
return driver;
}
-#endif /* _DRIVER_H_ */
+#endif /* _DRIVERS__GPIO__SPEC__OMAP4__DRIVER_H_ */
diff --git a/repos/os/src/drivers/gpio/omap4/gpio.h b/repos/os/src/drivers/gpio/spec/omap4/gpio.h
similarity index 91%
rename from repos/os/src/drivers/gpio/omap4/gpio.h
rename to repos/os/src/drivers/gpio/spec/omap4/gpio.h
index d58a1fad13..c7cca1dee5 100644
--- a/repos/os/src/drivers/gpio/omap4/gpio.h
+++ b/repos/os/src/drivers/gpio/spec/omap4/gpio.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _GPIO_H_
-#define _GPIO_H_
+#ifndef _DRIVERS__GPIO__SPEC__OMAP4__GPIO_H_
+#define _DRIVERS__GPIO__SPEC__OMAP4__GPIO_H_
/* Genode includes */
#include
@@ -46,4 +46,4 @@ struct Gpio_reg : Genode::Attached_io_mem_dataspace, Genode::Mmio
struct Datain : Register_array<0x138, 32, 32, 1> {};
};
-#endif /* _GPIO_H_ */
+#endif /* _DRIVERS__GPIO__SPEC__OMAP4__GPIO_H_ */
diff --git a/repos/os/src/drivers/gpio/omap4/main.cc b/repos/os/src/drivers/gpio/spec/omap4/main.cc
similarity index 100%
rename from repos/os/src/drivers/gpio/omap4/main.cc
rename to repos/os/src/drivers/gpio/spec/omap4/main.cc
diff --git a/repos/os/src/drivers/gpio/omap4/target.mk b/repos/os/src/drivers/gpio/spec/omap4/target.mk
similarity index 100%
rename from repos/os/src/drivers/gpio/omap4/target.mk
rename to repos/os/src/drivers/gpio/spec/omap4/target.mk
diff --git a/repos/os/src/drivers/gpio/rpi/driver.h b/repos/os/src/drivers/gpio/spec/rpi/driver.h
similarity index 97%
rename from repos/os/src/drivers/gpio/rpi/driver.h
rename to repos/os/src/drivers/gpio/spec/rpi/driver.h
index 50d85ad1e3..533e752ce4 100644
--- a/repos/os/src/drivers/gpio/rpi/driver.h
+++ b/repos/os/src/drivers/gpio/spec/rpi/driver.h
@@ -14,8 +14,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVER_H_
-#define _DRIVER_H_
+#ifndef _DRIVERS__GPIO__SPEC__RPI__DRIVER_H_
+#define _DRIVERS__GPIO__SPEC__RPI__DRIVER_H_
/* Genode includes */
#include
@@ -204,4 +204,4 @@ Gpio::Rpi_driver& Gpio::Rpi_driver::factory(Server::Entrypoint &ep)
return driver;
}
-#endif /* _DRIVER_H_ */
+#endif /* _DRIVERS__GPIO__SPEC__RPI__DRIVER_H_ */
diff --git a/repos/os/src/drivers/gpio/rpi/gpio.h b/repos/os/src/drivers/gpio/spec/rpi/gpio.h
similarity index 97%
rename from repos/os/src/drivers/gpio/rpi/gpio.h
rename to repos/os/src/drivers/gpio/spec/rpi/gpio.h
index 7401b0bb28..08d617d87a 100644
--- a/repos/os/src/drivers/gpio/rpi/gpio.h
+++ b/repos/os/src/drivers/gpio/spec/rpi/gpio.h
@@ -14,8 +14,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _GPIO_H_
-#define _GPIO_H_
+#ifndef _DRIVERS__GPIO__SPEC__RPI__GPIO_H_
+#define _DRIVERS__GPIO__SPEC__RPI__GPIO_H_
/* Genode includes */
#include
@@ -235,4 +235,4 @@ class Gpio::Reg : Attached_io_mem_dataspace, Mmio
void clear_event(unsigned gpio) { write(1, gpio); }
};
-#endif /* _GPIO_H_ */
+#endif /* _DRIVERS__GPIO__SPEC__RPI__GPIO_H_ */
diff --git a/repos/os/src/drivers/gpio/rpi/main.cc b/repos/os/src/drivers/gpio/spec/rpi/main.cc
similarity index 100%
rename from repos/os/src/drivers/gpio/rpi/main.cc
rename to repos/os/src/drivers/gpio/spec/rpi/main.cc
diff --git a/repos/os/src/drivers/gpio/rpi/foc/irq.h b/repos/os/src/drivers/gpio/spec/rpi/spec/foc/irq.h
similarity index 70%
rename from repos/os/src/drivers/gpio/rpi/foc/irq.h
rename to repos/os/src/drivers/gpio/spec/rpi/spec/foc/irq.h
index 8c8af8ef86..bdfeb36b2f 100644
--- a/repos/os/src/drivers/gpio/rpi/foc/irq.h
+++ b/repos/os/src/drivers/gpio/spec/rpi/spec/foc/irq.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _IRQ_H_
-#define _IRQ_H_
+#ifndef _DRIVERS__GPIO__SPEC__RPI__SPEC__FOC__IRQ_H_
+#define _DRIVERS__GPIO__SPEC__RPI__SPEC__FOC__IRQ_H_
/* Genode includes */
#include
@@ -22,4 +22,4 @@ namespace Gpio
enum { IRQ = 49 };
}
-#endif /* _IRQ_H_ */
+#endif /* _DRIVERS__GPIO__SPEC__RPI__SPEC__FOC__IRQ_H_ */
diff --git a/repos/os/src/drivers/gpio/rpi/hw/irq.h b/repos/os/src/drivers/gpio/spec/rpi/spec/hw/irq.h
similarity index 72%
rename from repos/os/src/drivers/gpio/rpi/hw/irq.h
rename to repos/os/src/drivers/gpio/spec/rpi/spec/hw/irq.h
index a868887087..dcb7bac667 100644
--- a/repos/os/src/drivers/gpio/rpi/hw/irq.h
+++ b/repos/os/src/drivers/gpio/spec/rpi/spec/hw/irq.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _IRQ_H_
-#define _IRQ_H_
+#ifndef _DRIVERS__GPIO__SPEC__RPI__SPEC__HW__IRQ_H_
+#define _DRIVERS__GPIO__SPEC__RPI__SPEC__HW__IRQ_H_
/* Genode includes */
#include
@@ -22,4 +22,4 @@ namespace Gpio
enum { IRQ = Genode::Board_base::GPU_IRQ_BASE + 49 };
}
-#endif /* _IRQ_H_ */
+#endif /* _DRIVERS__GPIO__SPEC__RPI__SPEC__HW__IRQ_H_ */
diff --git a/repos/os/src/drivers/gpio/rpi/target.mk b/repos/os/src/drivers/gpio/spec/rpi/target.mk
similarity index 100%
rename from repos/os/src/drivers/gpio/rpi/target.mk
rename to repos/os/src/drivers/gpio/spec/rpi/target.mk
diff --git a/repos/os/src/drivers/input/imx53/driver.h b/repos/os/src/drivers/input/spec/imx53/driver.h
similarity index 94%
rename from repos/os/src/drivers/input/imx53/driver.h
rename to repos/os/src/drivers/input/spec/imx53/driver.h
index ebb3c20711..8dfd99c570 100644
--- a/repos/os/src/drivers/input/imx53/driver.h
+++ b/repos/os/src/drivers/input/spec/imx53/driver.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVER_H_
-#define _DRIVER_H_
+#ifndef _DRIVERS__INPUT__SPEC__IMX53__DRIVER_H_
+#define _DRIVERS__INPUT__SPEC__IMX53__DRIVER_H_
/* Genode includes */
#include
@@ -100,4 +100,4 @@ Input::Tablet_driver* Input::Tablet_driver::factory(Server::Entrypoint &ep,
return &driver;
}
-#endif /* _DRIVER_H_ */
+#endif /* _DRIVERS__INPUT__SPEC__IMX53__DRIVER_H_ */
diff --git a/repos/os/src/drivers/input/imx53/egalax_ts.h b/repos/os/src/drivers/input/spec/imx53/egalax_ts.h
similarity index 93%
rename from repos/os/src/drivers/input/imx53/egalax_ts.h
rename to repos/os/src/drivers/input/spec/imx53/egalax_ts.h
index c2353c7cbb..2a66c7eeb2 100644
--- a/repos/os/src/drivers/input/imx53/egalax_ts.h
+++ b/repos/os/src/drivers/input/spec/imx53/egalax_ts.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _EGALAX_TS_H_
-#define _EGALAX_TS_H_
+#ifndef _DRIVERS__INPUT__SPEC__IMX53__EGALAX_TS_H_
+#define _DRIVERS__INPUT__SPEC__IMX53__EGALAX_TS_H_
/* Genode includes */
#include
@@ -94,4 +94,4 @@ class Input::Touchscreen {
}
};
-#endif /* _EGALAX_TS_H_ */
+#endif /* _DRIVERS__INPUT__SPEC__IMX53__EGALAX_TS_H_ */
diff --git a/repos/os/src/drivers/input/imx53/i2c.h b/repos/os/src/drivers/input/spec/imx53/i2c.h
similarity index 96%
rename from repos/os/src/drivers/input/imx53/i2c.h
rename to repos/os/src/drivers/input/spec/imx53/i2c.h
index ab0731a0c1..20e9cd1720 100644
--- a/repos/os/src/drivers/input/imx53/i2c.h
+++ b/repos/os/src/drivers/input/spec/imx53/i2c.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _I2C_H_
-#define _I2C_H_
+#ifndef _DRIVERS__INPUT__SPEC__IMX53__I2C_H_
+#define _DRIVERS__INPUT__SPEC__IMX53__I2C_H_
/* Genode includes */
#include
@@ -178,4 +178,4 @@ class I2c::I2c : Genode::Mmio
};
-#endif /* _I2C_H_ */
+#endif /* _DRIVERS__INPUT__SPEC__IMX53__I2C_H_ */
diff --git a/repos/os/src/drivers/input/imx53/irq_handler.h b/repos/os/src/drivers/input/spec/imx53/irq_handler.h
similarity index 100%
rename from repos/os/src/drivers/input/imx53/irq_handler.h
rename to repos/os/src/drivers/input/spec/imx53/irq_handler.h
diff --git a/repos/os/src/drivers/input/imx53/main.cc b/repos/os/src/drivers/input/spec/imx53/main.cc
similarity index 100%
rename from repos/os/src/drivers/input/imx53/main.cc
rename to repos/os/src/drivers/input/spec/imx53/main.cc
diff --git a/repos/os/src/drivers/input/imx53/mpr121.h b/repos/os/src/drivers/input/spec/imx53/mpr121.h
similarity index 94%
rename from repos/os/src/drivers/input/imx53/mpr121.h
rename to repos/os/src/drivers/input/spec/imx53/mpr121.h
index 04ed97fe0f..af5bb4a79f 100644
--- a/repos/os/src/drivers/input/imx53/mpr121.h
+++ b/repos/os/src/drivers/input/spec/imx53/mpr121.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _MPR121_H_
-#define _MPR121_H_
+#ifndef _DRIVERS__INPUT__SPEC__IMX53__MPR121_H_
+#define _DRIVERS__INPUT__SPEC__IMX53__MPR121_H_
/* Genode includes */
#include
@@ -102,4 +102,4 @@ class Input::Buttons {
}
};
-#endif /* _MPR121_H_ */
+#endif /* _DRIVERS__INPUT__SPEC__IMX53__MPR121_H_ */
diff --git a/repos/os/src/drivers/input/imx53/target.mk b/repos/os/src/drivers/input/spec/imx53/target.mk
similarity index 100%
rename from repos/os/src/drivers/input/imx53/target.mk
rename to repos/os/src/drivers/input/spec/imx53/target.mk
diff --git a/repos/os/src/drivers/input/ps2/input_driver.h b/repos/os/src/drivers/input/spec/ps2/input_driver.h
similarity index 72%
rename from repos/os/src/drivers/input/ps2/input_driver.h
rename to repos/os/src/drivers/input/spec/ps2/input_driver.h
index 199bfe6ca2..31df903d31 100644
--- a/repos/os/src/drivers/input/ps2/input_driver.h
+++ b/repos/os/src/drivers/input/spec/ps2/input_driver.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INPUT_DRIVER_H_
-#define _INPUT_DRIVER_H_
+#ifndef _DRIVERS__INPUT__SPEC__PS2__INPUT_DRIVER_H_
+#define _DRIVERS__INPUT__SPEC__PS2__INPUT_DRIVER_H_
class Input_driver
{
@@ -25,4 +25,4 @@ class Input_driver
virtual ~Input_driver() { }
};
-#endif /* _INPUT_DRIVER_H_ */
+#endif /* _DRIVERS__INPUT__SPEC__PS2__INPUT_DRIVER_H_ */
diff --git a/repos/os/src/drivers/input/ps2/irq_handler.h b/repos/os/src/drivers/input/spec/ps2/irq_handler.h
similarity index 86%
rename from repos/os/src/drivers/input/ps2/irq_handler.h
rename to repos/os/src/drivers/input/spec/ps2/irq_handler.h
index 2cb468c670..c175110ad3 100644
--- a/repos/os/src/drivers/input/ps2/irq_handler.h
+++ b/repos/os/src/drivers/input/spec/ps2/irq_handler.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _IRQ_HANDLER_H_
-#define _IRQ_HANDLER_H_
+#ifndef _DRIVERS__INPUT__SPEC__PS2__IRQ_HANDLER_H_
+#define _DRIVERS__INPUT__SPEC__PS2__IRQ_HANDLER_H_
/* Genode includes */
#include
@@ -52,4 +52,4 @@ class Irq_handler
}
};
-#endif /* _IRQ_HANDLER_H_ */
+#endif /* _DRIVERS__INPUT__SPEC__PS2__IRQ_HANDLER_H_ */
diff --git a/repos/os/src/drivers/input/ps2/pl050/irq_handler.h b/repos/os/src/drivers/input/spec/ps2/pl050/irq_handler.h
similarity index 100%
rename from repos/os/src/drivers/input/ps2/pl050/irq_handler.h
rename to repos/os/src/drivers/input/spec/ps2/pl050/irq_handler.h
diff --git a/repos/os/src/drivers/input/ps2/pl050/main.cc b/repos/os/src/drivers/input/spec/ps2/pl050/main.cc
similarity index 100%
rename from repos/os/src/drivers/input/ps2/pl050/main.cc
rename to repos/os/src/drivers/input/spec/ps2/pl050/main.cc
diff --git a/repos/os/src/drivers/input/ps2/pl050/pl050.h b/repos/os/src/drivers/input/spec/ps2/pl050/pl050.h
similarity index 95%
rename from repos/os/src/drivers/input/ps2/pl050/pl050.h
rename to repos/os/src/drivers/input/spec/ps2/pl050/pl050.h
index cc92111e75..4c0455e2cb 100644
--- a/repos/os/src/drivers/input/ps2/pl050/pl050.h
+++ b/repos/os/src/drivers/input/spec/ps2/pl050/pl050.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PL050_H_
-#define _PL050_H_
+#ifndef _DRIVERS__INPUT__SPEC__PS2__PL050__PL050_H_
+#define _DRIVERS__INPUT__SPEC__PS2__PL050__PL050_H_
/* platform includes */
#include
@@ -156,4 +156,4 @@ class Pl050
Serial_interface *aux_interface() { return &_aux; }
};
-#endif /* _PL050_H_ */
+#endif /* _DRIVERS__INPUT__SPEC__PS2__PL050__PL050_H_ */
diff --git a/repos/os/src/drivers/input/ps2/pl050/target.mk b/repos/os/src/drivers/input/spec/ps2/pl050/target.mk
similarity index 100%
rename from repos/os/src/drivers/input/ps2/pl050/target.mk
rename to repos/os/src/drivers/input/spec/ps2/pl050/target.mk
diff --git a/repos/os/src/drivers/input/ps2/ps2_keyboard.h b/repos/os/src/drivers/input/spec/ps2/ps2_keyboard.h
similarity index 98%
rename from repos/os/src/drivers/input/ps2/ps2_keyboard.h
rename to repos/os/src/drivers/input/spec/ps2/ps2_keyboard.h
index 26c5dd3630..7b1d2e92e3 100644
--- a/repos/os/src/drivers/input/ps2/ps2_keyboard.h
+++ b/repos/os/src/drivers/input/spec/ps2/ps2_keyboard.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PS2_KEYBOARD_H_
-#define _PS2_KEYBOARD_H_
+#ifndef _DRIVERS__INPUT__SPEC__PS2__PS2_KEYBOARD_H_
+#define _DRIVERS__INPUT__SPEC__PS2__PS2_KEYBOARD_H_
#include
#include
@@ -461,4 +461,4 @@ class Ps2_keyboard : public Input_driver
bool event_pending() { return _kbd.data_read_ready(); }
};
-#endif /* _PS2_KEYBOARD_H_ */
+#endif /* _DRIVERS__INPUT__SPEC__PS2__PS2_KEYBOARD_H_ */
diff --git a/repos/os/src/drivers/input/ps2/ps2_mouse.h b/repos/os/src/drivers/input/spec/ps2/ps2_mouse.h
similarity index 97%
rename from repos/os/src/drivers/input/ps2/ps2_mouse.h
rename to repos/os/src/drivers/input/spec/ps2/ps2_mouse.h
index 9593b9fc42..8263dae507 100644
--- a/repos/os/src/drivers/input/ps2/ps2_mouse.h
+++ b/repos/os/src/drivers/input/spec/ps2/ps2_mouse.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PS2_MOUSE_H_
-#define _PS2_MOUSE_H_
+#ifndef _DRIVERS__INPUT__SPEC__PS2__PS2_MOUSE_H_
+#define _DRIVERS__INPUT__SPEC__PS2__PS2_MOUSE_H_
#include
#include
@@ -280,4 +280,4 @@ class Ps2_mouse : public Input_driver
bool event_pending() { return _aux.data_read_ready(); }
};
-#endif /* _PS2_MOUSE_H_ */
+#endif /* _DRIVERS__INPUT__SPEC__PS2__PS2_MOUSE_H_ */
diff --git a/repos/os/src/drivers/input/ps2/scan_code_set_1.h b/repos/os/src/drivers/input/spec/ps2/scan_code_set_1.h
similarity index 100%
rename from repos/os/src/drivers/input/ps2/scan_code_set_1.h
rename to repos/os/src/drivers/input/spec/ps2/scan_code_set_1.h
diff --git a/repos/os/src/drivers/input/ps2/scan_code_set_2.h b/repos/os/src/drivers/input/spec/ps2/scan_code_set_2.h
similarity index 100%
rename from repos/os/src/drivers/input/ps2/scan_code_set_2.h
rename to repos/os/src/drivers/input/spec/ps2/scan_code_set_2.h
diff --git a/repos/os/src/drivers/input/ps2/serial_interface.h b/repos/os/src/drivers/input/spec/ps2/serial_interface.h
similarity index 100%
rename from repos/os/src/drivers/input/ps2/serial_interface.h
rename to repos/os/src/drivers/input/spec/ps2/serial_interface.h
diff --git a/repos/os/src/drivers/input/ps2/x86/i8042.h b/repos/os/src/drivers/input/spec/ps2/x86/i8042.h
similarity index 97%
rename from repos/os/src/drivers/input/ps2/x86/i8042.h
rename to repos/os/src/drivers/input/spec/ps2/x86/i8042.h
index 5154168cc1..5ed7196db5 100644
--- a/repos/os/src/drivers/input/ps2/x86/i8042.h
+++ b/repos/os/src/drivers/input/spec/ps2/x86/i8042.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _I8042_H_
-#define _I8042_H_
+#ifndef _DRIVERS__INPUT__SPEC__PS2__X86__I8042_H_
+#define _DRIVERS__INPUT__SPEC__PS2__X86__I8042_H_
#include
#include
@@ -297,4 +297,4 @@ class I8042
Serial_interface *aux_interface() { return &_aux_interface; }
};
-#endif
+#endif /* _DRIVERS__INPUT__SPEC__PS2__X86__I8042_H_ */
diff --git a/repos/os/src/drivers/input/ps2/x86/main.cc b/repos/os/src/drivers/input/spec/ps2/x86/main.cc
similarity index 100%
rename from repos/os/src/drivers/input/ps2/x86/main.cc
rename to repos/os/src/drivers/input/spec/ps2/x86/main.cc
diff --git a/repos/os/src/drivers/input/ps2/x86/target.mk b/repos/os/src/drivers/input/spec/ps2/x86/target.mk
similarity index 100%
rename from repos/os/src/drivers/input/ps2/x86/target.mk
rename to repos/os/src/drivers/input/spec/ps2/x86/target.mk
diff --git a/repos/os/src/drivers/nic/lan9118/lan9118.h b/repos/os/src/drivers/nic/spec/lan9118/lan9118.h
similarity index 98%
rename from repos/os/src/drivers/nic/lan9118/lan9118.h
rename to repos/os/src/drivers/nic/spec/lan9118/lan9118.h
index 92ac1f9f16..b6d32e844a 100644
--- a/repos/os/src/drivers/nic/lan9118/lan9118.h
+++ b/repos/os/src/drivers/nic/spec/lan9118/lan9118.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _LAN9118_H_
-#define _LAN9118_H_
+#ifndef _DRIVERS__NIC__SPEC__LAN9118__LAN9118_H_
+#define _DRIVERS__NIC__SPEC__LAN9118__LAN9118_H_
#include
#include
@@ -408,4 +408,4 @@ class Lan9118 : public Nic::Session_component,
}
};
-#endif /* _LAN9118_H_ */
+#endif /* _DRIVERS__NIC__SPEC__LAN9118__LAN9118_H_ */
diff --git a/repos/os/src/drivers/nic/lan9118/main.cc b/repos/os/src/drivers/nic/spec/lan9118/main.cc
similarity index 100%
rename from repos/os/src/drivers/nic/lan9118/main.cc
rename to repos/os/src/drivers/nic/spec/lan9118/main.cc
diff --git a/repos/os/src/drivers/nic/lan9118/target.mk b/repos/os/src/drivers/nic/spec/lan9118/target.mk
similarity index 100%
rename from repos/os/src/drivers/nic/lan9118/target.mk
rename to repos/os/src/drivers/nic/spec/lan9118/target.mk
diff --git a/repos/os/src/drivers/nic/linux/main.cc b/repos/os/src/drivers/nic/spec/linux/main.cc
similarity index 100%
rename from repos/os/src/drivers/nic/linux/main.cc
rename to repos/os/src/drivers/nic/spec/linux/main.cc
diff --git a/repos/os/src/drivers/nic/linux/target.mk b/repos/os/src/drivers/nic/spec/linux/target.mk
similarity index 100%
rename from repos/os/src/drivers/nic/linux/target.mk
rename to repos/os/src/drivers/nic/spec/linux/target.mk
diff --git a/repos/os/src/drivers/platform/arndale/cmu.h b/repos/os/src/drivers/platform/spec/arndale/cmu.h
similarity index 98%
rename from repos/os/src/drivers/platform/arndale/cmu.h
rename to repos/os/src/drivers/platform/spec/arndale/cmu.h
index d0a914f512..c5489a7eb4 100644
--- a/repos/os/src/drivers/platform/arndale/cmu.h
+++ b/repos/os/src/drivers/platform/spec/arndale/cmu.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _CMU_H_
-#define _CMU_H_
+#ifndef _DRIVERS__PLATFORM__SPEC__ARNDALE__CMU_H_
+#define _DRIVERS__PLATFORM__SPEC__ARNDALE__CMU_H_
#include
#include
@@ -538,4 +538,4 @@ const Genode::uint8_t Cmu::p_values[] = { 3, 3, 4, 3, 3, 3, 3, 3, 6 };
const Genode::uint32_t Cmu::Clk_div_cpu0::values[] = { 0x1117710, 0x1127710, 0x1137710,
0x2147710, 0x2147710, 0x3157720,
0x4167720, 0x4177730, 0x5377730 };
-#endif /* _CMU_H_ */
+#endif /* _DRIVERS__PLATFORM__SPEC__ARNDALE__CMU_H_ */
diff --git a/repos/os/src/drivers/platform/arndale/main.cc b/repos/os/src/drivers/platform/spec/arndale/main.cc
similarity index 100%
rename from repos/os/src/drivers/platform/arndale/main.cc
rename to repos/os/src/drivers/platform/spec/arndale/main.cc
diff --git a/repos/os/src/drivers/platform/arndale/pmu.h b/repos/os/src/drivers/platform/spec/arndale/pmu.h
similarity index 97%
rename from repos/os/src/drivers/platform/arndale/pmu.h
rename to repos/os/src/drivers/platform/spec/arndale/pmu.h
index f724642ee1..da0ab4ab10 100644
--- a/repos/os/src/drivers/platform/arndale/pmu.h
+++ b/repos/os/src/drivers/platform/spec/arndale/pmu.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PMU_H_
-#define _PMU_H_
+#ifndef _DRIVERS__PLATFORM__SPEC__ARNDALE__PMU_H_
+#define _DRIVERS__PLATFORM__SPEC__ARNDALE__PMU_H_
#include
#include
@@ -229,4 +229,4 @@ class Pmu : public Regulator::Driver,
}
};
-#endif /* _PMU_H_ */
+#endif /* _DRIVERS__PLATFORM__SPEC__ARNDALE__PMU_H_ */
diff --git a/repos/os/src/drivers/platform/arndale/target.mk b/repos/os/src/drivers/platform/spec/arndale/target.mk
similarity index 74%
rename from repos/os/src/drivers/platform/arndale/target.mk
rename to repos/os/src/drivers/platform/spec/arndale/target.mk
index c427ae6fb7..3e2c5c7bed 100644
--- a/repos/os/src/drivers/platform/arndale/target.mk
+++ b/repos/os/src/drivers/platform/spec/arndale/target.mk
@@ -1,5 +1,5 @@
TARGET = platform_drv
-REQUIRES = platform_arndale
+REQUIRES = arndale
SRC_CC = main.cc
INC_DIR += ${PRG_DIR}
LIBS = base
diff --git a/repos/os/src/drivers/platform/imx53/ccm.h b/repos/os/src/drivers/platform/spec/imx53/ccm.h
similarity index 93%
rename from repos/os/src/drivers/platform/imx53/ccm.h
rename to repos/os/src/drivers/platform/spec/imx53/ccm.h
index fed2437b39..c33cefffa1 100644
--- a/repos/os/src/drivers/platform/imx53/ccm.h
+++ b/repos/os/src/drivers/platform/spec/imx53/ccm.h
@@ -12,8 +12,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVERS__PLATFORM__IMX53__CCM_H_
-#define _DRIVERS__PLATFORM__IMX53__CCM_H_
+#ifndef _DRIVERS__PLATFORM__SPEC__IMX53__CCM_H_
+#define _DRIVERS__PLATFORM__SPEC__IMX53__CCM_H_
/* Genode includes */
#include
@@ -91,4 +91,4 @@ class Ccm : public Genode::Attached_io_mem_dataspace,
}
};
-#endif /* _DRIVERS__PLATFORM__IMX53__CCM_H_ */
+#endif /* _DRIVERS__PLATFORM__SPEC__IMX53__CCM_H_ */
diff --git a/repos/os/src/drivers/platform/imx53/iim.h b/repos/os/src/drivers/platform/spec/imx53/iim.h
similarity index 85%
rename from repos/os/src/drivers/platform/imx53/iim.h
rename to repos/os/src/drivers/platform/spec/imx53/iim.h
index 2a67ad5573..b4e77df159 100644
--- a/repos/os/src/drivers/platform/imx53/iim.h
+++ b/repos/os/src/drivers/platform/spec/imx53/iim.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVERS__PLATFORM__IMX53__IIM_H_
-#define _DRIVERS__PLATFORM__IMX53__IIM_H_
+#ifndef _DRIVERS__PLATFORM__SPEC__IMX53__IIM_H_
+#define _DRIVERS__PLATFORM__SPEC__IMX53__IIM_H_
/* Genode includes */
#include
@@ -36,4 +36,4 @@ class Iim : public Genode::Attached_io_mem_dataspace,
unsigned long revision() { return read() & 0xf; }
};
-#endif /* _DRIVERS__PLATFORM__IMX53__IIM_H_ */
+#endif /* _DRIVERS__PLATFORM__SPEC__IMX53__IIM_H_ */
diff --git a/repos/os/src/drivers/platform/imx53/iomux.h b/repos/os/src/drivers/platform/spec/imx53/iomux.h
similarity index 94%
rename from repos/os/src/drivers/platform/imx53/iomux.h
rename to repos/os/src/drivers/platform/spec/imx53/iomux.h
index 886fe7c392..5235108040 100644
--- a/repos/os/src/drivers/platform/imx53/iomux.h
+++ b/repos/os/src/drivers/platform/spec/imx53/iomux.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVERS__PLATFORM__IMX53__IOMUX_H_
-#define _DRIVERS__PLATFORM__IMX53__IOMUX_H_
+#ifndef _DRIVERS__PLATFORM__SPEC__IMX53__IOMUX_H_
+#define _DRIVERS__PLATFORM__SPEC__IMX53__IOMUX_H_
/* Genode includes */
#include
@@ -107,4 +107,4 @@ class Iomux : public Genode::Attached_io_mem_dataspace,
}
};
-#endif /* _DRIVERS__PLATFORM__IMX53__IOMUX_H_ */
+#endif /* _DRIVERS__PLATFORM__SPEC__IMX53__IOMUX_H_ */
diff --git a/repos/os/src/drivers/platform/imx53/main.cc b/repos/os/src/drivers/platform/spec/imx53/main.cc
similarity index 100%
rename from repos/os/src/drivers/platform/imx53/main.cc
rename to repos/os/src/drivers/platform/spec/imx53/main.cc
diff --git a/repos/os/src/drivers/platform/imx53/src.h b/repos/os/src/drivers/platform/spec/imx53/src.h
similarity index 86%
rename from repos/os/src/drivers/platform/imx53/src.h
rename to repos/os/src/drivers/platform/spec/imx53/src.h
index efe4e77953..4c1af9c238 100644
--- a/repos/os/src/drivers/platform/imx53/src.h
+++ b/repos/os/src/drivers/platform/spec/imx53/src.h
@@ -12,8 +12,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVERS__PLATFORM__IMX53__SRC_H_
-#define _DRIVERS__PLATFORM__IMX53__SRC_H_
+#ifndef _DRIVERS__PLATFORM__SPEC__IMX53__SRC_H_
+#define _DRIVERS__PLATFORM__SPEC__IMX53__SRC_H_
/* Genode includes */
#include
@@ -40,4 +40,4 @@ class Src : public Genode::Attached_io_mem_dataspace,
void reset_ipu() { write(1); }
};
-#endif /* _DRIVERS__PLATFORM__IMX53__SRC_H_ */
+#endif /* _DRIVERS__PLATFORM__SPEC__IMX53__SRC_H_ */
diff --git a/repos/os/src/drivers/platform/imx53/target.mk b/repos/os/src/drivers/platform/spec/imx53/target.mk
similarity index 100%
rename from repos/os/src/drivers/platform/imx53/target.mk
rename to repos/os/src/drivers/platform/spec/imx53/target.mk
diff --git a/repos/os/src/drivers/platform/odroid_x2/cmu.h b/repos/os/src/drivers/platform/spec/odroid_x2/cmu.h
similarity index 98%
rename from repos/os/src/drivers/platform/odroid_x2/cmu.h
rename to repos/os/src/drivers/platform/spec/odroid_x2/cmu.h
index cfb1749a73..a565418c38 100644
--- a/repos/os/src/drivers/platform/odroid_x2/cmu.h
+++ b/repos/os/src/drivers/platform/spec/odroid_x2/cmu.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _CMU_H_
-#define _CMU_H_
+#ifndef _DRIVERS__PLATFORM__SPEC__ODROID_X2__CMU_H_
+#define _DRIVERS__PLATFORM__SPEC__ODROID_X2__CMU_H_
#include
#include
@@ -353,4 +353,4 @@ const Genode::uint8_t Cmu::p_values[] = { 3, 3, 4, 3, 3, 3, 3, 3, 6 };
const Genode::uint32_t Cmu::Clk_div_cpu0::values[] = { 0x1117710, 0x1127710, 0x1137710,
0x2147710, 0x2147710, 0x3157720,
0x4167720};
-#endif /* _CMU_H_ */
+#endif /* _DRIVERS__PLATFORM__SPEC__ODROID_X2__CMU_H_ */
diff --git a/repos/os/src/drivers/platform/odroid_x2/main.cc b/repos/os/src/drivers/platform/spec/odroid_x2/main.cc
similarity index 100%
rename from repos/os/src/drivers/platform/odroid_x2/main.cc
rename to repos/os/src/drivers/platform/spec/odroid_x2/main.cc
diff --git a/repos/os/src/drivers/platform/odroid_x2/pmu.h b/repos/os/src/drivers/platform/spec/odroid_x2/pmu.h
similarity index 95%
rename from repos/os/src/drivers/platform/odroid_x2/pmu.h
rename to repos/os/src/drivers/platform/spec/odroid_x2/pmu.h
index 9a36ebaa72..5b6639ce0c 100644
--- a/repos/os/src/drivers/platform/odroid_x2/pmu.h
+++ b/repos/os/src/drivers/platform/spec/odroid_x2/pmu.h
@@ -13,8 +13,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PMU_H_
-#define _PMU_H_
+#ifndef _DRIVERS__PLATFORM__SPEC__ODROID_X2__PMU_H_
+#define _DRIVERS__PLATFORM__SPEC__ODROID_X2__PMU_H_
#include
#include
@@ -151,4 +151,4 @@ class Pmu : public Regulator::Driver,
}
};
-#endif /* _PMU_H_ */
+#endif /* _DRIVERS__PLATFORM__SPEC__ODROID_X2__PMU_H_ */
diff --git a/repos/os/src/drivers/platform/odroid_x2/target.mk b/repos/os/src/drivers/platform/spec/odroid_x2/target.mk
similarity index 72%
rename from repos/os/src/drivers/platform/odroid_x2/target.mk
rename to repos/os/src/drivers/platform/spec/odroid_x2/target.mk
index 4157c0dd9c..291a233723 100644
--- a/repos/os/src/drivers/platform/odroid_x2/target.mk
+++ b/repos/os/src/drivers/platform/spec/odroid_x2/target.mk
@@ -1,5 +1,5 @@
TARGET = platform_drv
-REQUIRES = platform_odroid_x2
+REQUIRES = odroid_x2
SRC_CC = main.cc
INC_DIR += ${PRG_DIR}
LIBS = base
diff --git a/repos/os/src/drivers/platform/rpi/framebuffer_message.h b/repos/os/src/drivers/platform/spec/rpi/framebuffer_message.h
similarity index 100%
rename from repos/os/src/drivers/platform/rpi/framebuffer_message.h
rename to repos/os/src/drivers/platform/spec/rpi/framebuffer_message.h
diff --git a/repos/os/src/drivers/platform/rpi/main.cc b/repos/os/src/drivers/platform/spec/rpi/main.cc
similarity index 100%
rename from repos/os/src/drivers/platform/rpi/main.cc
rename to repos/os/src/drivers/platform/spec/rpi/main.cc
diff --git a/repos/os/src/drivers/platform/rpi/mbox.h b/repos/os/src/drivers/platform/spec/rpi/mbox.h
similarity index 94%
rename from repos/os/src/drivers/platform/rpi/mbox.h
rename to repos/os/src/drivers/platform/spec/rpi/mbox.h
index d35f010a62..9246e331a4 100644
--- a/repos/os/src/drivers/platform/rpi/mbox.h
+++ b/repos/os/src/drivers/platform/spec/rpi/mbox.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _MBOX_H_
-#define _MBOX_H_
+#ifndef _DRIVERS__PLATFORM__SPEC__RPI__MBOX_H_
+#define _DRIVERS__PLATFORM__SPEC__RPI__MBOX_H_
/* Genode includes */
#include
@@ -115,4 +115,4 @@ class Mbox : Genode::Attached_mmio
}
};
-#endif /* _MBOX_H_ */
+#endif /* _DRIVERS__PLATFORM__SPEC__RPI__MBOX_H_ */
diff --git a/repos/os/src/drivers/platform/rpi/property_command.h b/repos/os/src/drivers/platform/spec/rpi/property_command.h
similarity index 100%
rename from repos/os/src/drivers/platform/rpi/property_command.h
rename to repos/os/src/drivers/platform/spec/rpi/property_command.h
diff --git a/repos/os/src/drivers/platform/rpi/target.mk b/repos/os/src/drivers/platform/spec/rpi/target.mk
similarity index 84%
rename from repos/os/src/drivers/platform/rpi/target.mk
rename to repos/os/src/drivers/platform/spec/rpi/target.mk
index 887e77fa19..07c9dbac97 100644
--- a/repos/os/src/drivers/platform/rpi/target.mk
+++ b/repos/os/src/drivers/platform/spec/rpi/target.mk
@@ -1,5 +1,5 @@
TARGET = platform_drv
-REQUIRES = platform_rpi
+REQUIRES = rpi
SRC_CC = main.cc
INC_DIR += ${PRG_DIR}
LIBS = base
diff --git a/repos/os/src/drivers/platform/x86/README b/repos/os/src/drivers/platform/spec/x86/README
similarity index 100%
rename from repos/os/src/drivers/platform/x86/README
rename to repos/os/src/drivers/platform/spec/x86/README
diff --git a/repos/os/src/drivers/platform/x86/device_pd/main.cc b/repos/os/src/drivers/platform/spec/x86/device_pd/main.cc
similarity index 100%
rename from repos/os/src/drivers/platform/x86/device_pd/main.cc
rename to repos/os/src/drivers/platform/spec/x86/device_pd/main.cc
diff --git a/repos/os/src/drivers/platform/x86/device_pd/target.mk b/repos/os/src/drivers/platform/spec/x86/device_pd/target.mk
similarity index 100%
rename from repos/os/src/drivers/platform/x86/device_pd/target.mk
rename to repos/os/src/drivers/platform/spec/x86/device_pd/target.mk
diff --git a/repos/os/src/drivers/platform/x86/irq.cc b/repos/os/src/drivers/platform/spec/x86/irq.cc
similarity index 99%
rename from repos/os/src/drivers/platform/x86/irq.cc
rename to repos/os/src/drivers/platform/spec/x86/irq.cc
index 043fc1a597..849d88e75b 100644
--- a/repos/os/src/drivers/platform/x86/irq.cc
+++ b/repos/os/src/drivers/platform/spec/x86/irq.cc
@@ -15,9 +15,6 @@
#include
#include
-/* Genode OS includes */
-#include
-
/* Platform driver include */
#include "irq.h"
#include "pci_session_component.h"
diff --git a/repos/os/src/drivers/platform/x86/irq.h b/repos/os/src/drivers/platform/spec/x86/irq.h
similarity index 99%
rename from repos/os/src/drivers/platform/x86/irq.h
rename to repos/os/src/drivers/platform/spec/x86/irq.h
index 429d598c3d..9a26cf1e6a 100644
--- a/repos/os/src/drivers/platform/x86/irq.h
+++ b/repos/os/src/drivers/platform/spec/x86/irq.h
@@ -21,7 +21,7 @@
#include
/* platform local includes */
-#include
+#include
namespace Platform {
diff --git a/repos/os/include/platform/irq_proxy.h b/repos/os/src/drivers/platform/spec/x86/irq_proxy.h
similarity index 93%
rename from repos/os/include/platform/irq_proxy.h
rename to repos/os/src/drivers/platform/spec/x86/irq_proxy.h
index ca3ed45bf5..03e3f1758b 100644
--- a/repos/os/include/platform/irq_proxy.h
+++ b/repos/os/src/drivers/platform/spec/x86/irq_proxy.h
@@ -5,8 +5,15 @@
* \date 2009-12-15
*/
-#ifndef _CORE__INCLUDE__IRQ_PROXY_H_
-#define _CORE__INCLUDE__IRQ_PROXY_H_
+/*
+ * Copyright (C) 2009-2015 Genode Labs GmbH
+ *
+ * This file is part of the Genode OS framework, which is distributed
+ * under the terms of the GNU General Public License version 2.
+ */
+
+#ifndef _DRIVERS__PLATFORM__SPEC__X86__IRQ_PROXY_H_
+#define _DRIVERS__PLATFORM__SPEC__X86__IRQ_PROXY_H_
#include
@@ -243,4 +250,4 @@ class Genode::Irq_proxy : public THREAD,
}
};
-#endif /* _CORE__INCLUDE__IRQ_PROXY_H_ */
+#endif /* _DRIVERS__PLATFORM__SPEC__X86__IRQ_PROXY_H_ */
diff --git a/repos/os/src/drivers/platform/x86/main.cc b/repos/os/src/drivers/platform/spec/x86/main.cc
similarity index 100%
rename from repos/os/src/drivers/platform/x86/main.cc
rename to repos/os/src/drivers/platform/spec/x86/main.cc
diff --git a/repos/os/src/drivers/platform/x86/nonpci_devices.cc b/repos/os/src/drivers/platform/spec/x86/nonpci_devices.cc
similarity index 100%
rename from repos/os/src/drivers/platform/x86/nonpci_devices.cc
rename to repos/os/src/drivers/platform/spec/x86/nonpci_devices.cc
diff --git a/repos/os/src/drivers/platform/x86/pci_bridge.h b/repos/os/src/drivers/platform/spec/x86/pci_bridge.h
similarity index 100%
rename from repos/os/src/drivers/platform/x86/pci_bridge.h
rename to repos/os/src/drivers/platform/spec/x86/pci_bridge.h
diff --git a/repos/os/src/drivers/platform/x86/pci_config_access.h b/repos/os/src/drivers/platform/spec/x86/pci_config_access.h
similarity index 100%
rename from repos/os/src/drivers/platform/x86/pci_config_access.h
rename to repos/os/src/drivers/platform/spec/x86/pci_config_access.h
diff --git a/repos/os/src/drivers/platform/x86/pci_device.cc b/repos/os/src/drivers/platform/spec/x86/pci_device.cc
similarity index 100%
rename from repos/os/src/drivers/platform/x86/pci_device.cc
rename to repos/os/src/drivers/platform/spec/x86/pci_device.cc
diff --git a/repos/os/src/drivers/platform/x86/pci_device_component.h b/repos/os/src/drivers/platform/spec/x86/pci_device_component.h
similarity index 100%
rename from repos/os/src/drivers/platform/x86/pci_device_component.h
rename to repos/os/src/drivers/platform/spec/x86/pci_device_component.h
diff --git a/repos/os/src/drivers/platform/x86/pci_device_config.h b/repos/os/src/drivers/platform/spec/x86/pci_device_config.h
similarity index 100%
rename from repos/os/src/drivers/platform/x86/pci_device_config.h
rename to repos/os/src/drivers/platform/spec/x86/pci_device_config.h
diff --git a/repos/os/src/drivers/platform/x86/pci_device_pd_ipc.h b/repos/os/src/drivers/platform/spec/x86/pci_device_pd_ipc.h
similarity index 100%
rename from repos/os/src/drivers/platform/x86/pci_device_pd_ipc.h
rename to repos/os/src/drivers/platform/spec/x86/pci_device_pd_ipc.h
diff --git a/repos/os/src/drivers/platform/x86/pci_session_component.h b/repos/os/src/drivers/platform/spec/x86/pci_session_component.h
similarity index 100%
rename from repos/os/src/drivers/platform/x86/pci_session_component.h
rename to repos/os/src/drivers/platform/spec/x86/pci_session_component.h
diff --git a/repos/os/src/drivers/platform/x86/session.cc b/repos/os/src/drivers/platform/spec/x86/session.cc
similarity index 100%
rename from repos/os/src/drivers/platform/x86/session.cc
rename to repos/os/src/drivers/platform/spec/x86/session.cc
diff --git a/repos/os/src/drivers/platform/x86/target.mk b/repos/os/src/drivers/platform/spec/x86/target.mk
similarity index 100%
rename from repos/os/src/drivers/platform/x86/target.mk
rename to repos/os/src/drivers/platform/spec/x86/target.mk
diff --git a/repos/os/src/drivers/rtc/x86/linux.cc b/repos/os/src/drivers/rtc/spec/x86/linux.cc
similarity index 100%
rename from repos/os/src/drivers/rtc/x86/linux.cc
rename to repos/os/src/drivers/rtc/spec/x86/linux.cc
diff --git a/repos/os/src/drivers/rtc/x86/main.cc b/repos/os/src/drivers/rtc/spec/x86/main.cc
similarity index 100%
rename from repos/os/src/drivers/rtc/x86/main.cc
rename to repos/os/src/drivers/rtc/spec/x86/main.cc
diff --git a/repos/os/src/drivers/rtc/x86/rtc.cc b/repos/os/src/drivers/rtc/spec/x86/rtc.cc
similarity index 100%
rename from repos/os/src/drivers/rtc/x86/rtc.cc
rename to repos/os/src/drivers/rtc/spec/x86/rtc.cc
diff --git a/repos/os/src/drivers/rtc/x86/rtc.h b/repos/os/src/drivers/rtc/spec/x86/rtc.h
similarity index 74%
rename from repos/os/src/drivers/rtc/x86/rtc.h
rename to repos/os/src/drivers/rtc/spec/x86/rtc.h
index 2b82b535e7..c80b1f5d42 100644
--- a/repos/os/src/drivers/rtc/x86/rtc.h
+++ b/repos/os/src/drivers/rtc/spec/x86/rtc.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _RTC_H_
-#define _RTC_H_
+#ifndef _DRIVERS__RTC__SPEC__X86__RTC_H_
+#define _DRIVERS__RTC__SPEC__X86__RTC_H_
#include
#include
@@ -22,4 +22,4 @@ namespace Rtc {
Timestamp get_time();
}
-#endif /* _RTC_H_ */
+#endif /* _DRIVERS__RTC__SPEC__X86__RTC_H_ */
diff --git a/repos/os/src/drivers/rtc/x86/target.mk b/repos/os/src/drivers/rtc/spec/x86/target.mk
similarity index 100%
rename from repos/os/src/drivers/rtc/x86/target.mk
rename to repos/os/src/drivers/rtc/spec/x86/target.mk
diff --git a/repos/os/src/drivers/sd_card/imx53/bench/target.mk b/repos/os/src/drivers/sd_card/imx53/bench/target.mk
deleted file mode 100644
index 51a252a0a3..0000000000
--- a/repos/os/src/drivers/sd_card/imx53/bench/target.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-TARGET = sd_card_bench
-REQUIRES = imx53
-SRC_CC = main.cc
-LIBS = base server
-INC_DIR += $(PRG_DIR)/.. $(PRG_DIR)/../..
diff --git a/repos/os/src/drivers/sd_card/omap4/bench/target.mk b/repos/os/src/drivers/sd_card/omap4/bench/target.mk
deleted file mode 100644
index 2af09402b0..0000000000
--- a/repos/os/src/drivers/sd_card/omap4/bench/target.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-TARGET = sd_card_bench
-REQUIRES = omap4
-SRC_CC = main.cc
-LIBS = base server
-INC_DIR += $(PRG_DIR)/.. $(PRG_DIR)/../..
diff --git a/repos/os/src/drivers/sd_card/rpi/target.mk b/repos/os/src/drivers/sd_card/rpi/target.mk
deleted file mode 100644
index 985cfdc2ae..0000000000
--- a/repos/os/src/drivers/sd_card/rpi/target.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-TARGET = sd_card_drv
-REQUIRES = platform_rpi
-SRC_CC = main.cc
-LIBS = base server
-INC_DIR += $(PRG_DIR) $(PRG_DIR)/..
diff --git a/repos/os/src/drivers/sd_card/exynos5/driver.h b/repos/os/src/drivers/sd_card/spec/exynos5/driver.h
similarity index 94%
rename from repos/os/src/drivers/sd_card/exynos5/driver.h
rename to repos/os/src/drivers/sd_card/spec/exynos5/driver.h
index b91f49bf96..28e84ed62f 100644
--- a/repos/os/src/drivers/sd_card/exynos5/driver.h
+++ b/repos/os/src/drivers/sd_card/spec/exynos5/driver.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVER_H_
-#define _DRIVER_H_
+#ifndef _DRIVERS__SD_CARD__SPEC__EXYNOS5__DRIVER_H_
+#define _DRIVERS__SD_CARD__SPEC__EXYNOS5__DRIVER_H_
#include
#include
@@ -124,4 +124,4 @@ class Block::Exynos5_driver : public Block::Driver
bool dma_enabled() { return _use_dma; }
};
-#endif /* _DRIVER_H_ */
+#endif /* _DRIVERS__SD_CARD__SPEC__EXYNOS5__DRIVER_H_ */
diff --git a/repos/os/src/drivers/sd_card/exynos5/dwmmc.h b/repos/os/src/drivers/sd_card/spec/exynos5/dwmmc.h
similarity index 99%
rename from repos/os/src/drivers/sd_card/exynos5/dwmmc.h
rename to repos/os/src/drivers/sd_card/spec/exynos5/dwmmc.h
index aef1f058fa..32162a199d 100644
--- a/repos/os/src/drivers/sd_card/exynos5/dwmmc.h
+++ b/repos/os/src/drivers/sd_card/spec/exynos5/dwmmc.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DWMMC_H_
-#define _DWMMC_H_
+#ifndef _DRIVERS__SD_CARD__SPEC__EXYNOS5__DWMMC_H_
+#define _DRIVERS__SD_CARD__SPEC__EXYNOS5__DWMMC_H_
#include
#include
@@ -698,4 +698,4 @@ struct Exynos5_msh_controller : private Dwmmc, Sd_card::Host_controller
}
};
-#endif /* _DWMMC_H_ */
+#endif /* _DRIVERS__SD_CARD__SPEC__EXYNOS5__DWMMC_H_ */
diff --git a/repos/os/src/drivers/sd_card/exynos5/main.cc b/repos/os/src/drivers/sd_card/spec/exynos5/main.cc
similarity index 100%
rename from repos/os/src/drivers/sd_card/exynos5/main.cc
rename to repos/os/src/drivers/sd_card/spec/exynos5/main.cc
diff --git a/repos/os/src/drivers/sd_card/exynos5/target.mk b/repos/os/src/drivers/sd_card/spec/exynos5/target.mk
similarity index 61%
rename from repos/os/src/drivers/sd_card/exynos5/target.mk
rename to repos/os/src/drivers/sd_card/spec/exynos5/target.mk
index 8d2b4ebe2a..b0133668da 100644
--- a/repos/os/src/drivers/sd_card/exynos5/target.mk
+++ b/repos/os/src/drivers/sd_card/spec/exynos5/target.mk
@@ -2,4 +2,4 @@ TARGET = sd_card_drv
REQUIRES = exynos5
SRC_CC = main.cc
LIBS = base server
-INC_DIR += $(PRG_DIR) $(PRG_DIR)/..
+INC_DIR += $(PRG_DIR) $(REP_DIR)/src/drivers/sd_card
diff --git a/repos/os/src/drivers/sd_card/imx53/bench/main.cc b/repos/os/src/drivers/sd_card/spec/imx53/bench/main.cc
similarity index 100%
rename from repos/os/src/drivers/sd_card/imx53/bench/main.cc
rename to repos/os/src/drivers/sd_card/spec/imx53/bench/main.cc
diff --git a/repos/os/src/drivers/sd_card/spec/imx53/bench/target.mk b/repos/os/src/drivers/sd_card/spec/imx53/bench/target.mk
new file mode 100644
index 0000000000..c60ae12725
--- /dev/null
+++ b/repos/os/src/drivers/sd_card/spec/imx53/bench/target.mk
@@ -0,0 +1,6 @@
+TARGET = sd_card_bench
+REQUIRES = imx53
+SRC_CC = main.cc
+LIBS = base server
+INC_DIR += $(REP_DIR)/src/drivers/sd_card/spec/imx53
+INC_DIR += $(REP_DIR)/src/drivers/sd_card
diff --git a/repos/os/src/drivers/sd_card/imx53/driver.h b/repos/os/src/drivers/sd_card/spec/imx53/driver.h
similarity index 95%
rename from repos/os/src/drivers/sd_card/imx53/driver.h
rename to repos/os/src/drivers/sd_card/spec/imx53/driver.h
index 2e7bb28638..8b62cb43d0 100644
--- a/repos/os/src/drivers/sd_card/imx53/driver.h
+++ b/repos/os/src/drivers/sd_card/spec/imx53/driver.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVER_H_
-#define _DRIVER_H_
+#ifndef _DRIVERS__SD_CARD__SPEC__IMX53__DRIVER_H_
+#define _DRIVERS__SD_CARD__SPEC__IMX53__DRIVER_H_
#include
#include
@@ -133,4 +133,4 @@ class Block::Imx53_driver : public Block::Driver
return Genode::env()->ram_session()->free(c); }
};
-#endif /* _DRIVER_H_ */
+#endif /* _DRIVERS__SD_CARD__SPEC__IMX53__DRIVER_H_ */
diff --git a/repos/os/src/drivers/sd_card/imx53/esdhcv2.h b/repos/os/src/drivers/sd_card/spec/imx53/esdhcv2.h
similarity index 99%
rename from repos/os/src/drivers/sd_card/imx53/esdhcv2.h
rename to repos/os/src/drivers/sd_card/spec/imx53/esdhcv2.h
index f195330aa1..dd3446fa4f 100644
--- a/repos/os/src/drivers/sd_card/imx53/esdhcv2.h
+++ b/repos/os/src/drivers/sd_card/spec/imx53/esdhcv2.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _ESDHCV2_H_
-#define _ESDHCV2_H_
+#ifndef _DRIVERS__SD_CARD__SPEC__IMX53__ESDHCV2_H_
+#define _DRIVERS__SD_CARD__SPEC__IMX53__ESDHCV2_H_
/* Genode includes */
#include
@@ -847,4 +847,4 @@ struct Esdhcv2_controller : private Esdhcv2, public Sd_card::Host_controller
}
};
-#endif /* _ESDHCV2_H_ */
+#endif /* _DRIVERS__SD_CARD__SPEC__IMX53__ESDHCV2_H_ */
diff --git a/repos/os/src/drivers/sd_card/imx53/main.cc b/repos/os/src/drivers/sd_card/spec/imx53/main.cc
similarity index 100%
rename from repos/os/src/drivers/sd_card/imx53/main.cc
rename to repos/os/src/drivers/sd_card/spec/imx53/main.cc
diff --git a/repos/os/src/drivers/sd_card/imx53/target.mk b/repos/os/src/drivers/sd_card/spec/imx53/target.mk
similarity index 60%
rename from repos/os/src/drivers/sd_card/imx53/target.mk
rename to repos/os/src/drivers/sd_card/spec/imx53/target.mk
index dba3e89a4b..3ebf060542 100644
--- a/repos/os/src/drivers/sd_card/imx53/target.mk
+++ b/repos/os/src/drivers/sd_card/spec/imx53/target.mk
@@ -2,4 +2,4 @@ TARGET = sd_card_drv
REQUIRES = imx53
SRC_CC = main.cc
LIBS = base server
-INC_DIR += $(PRG_DIR) $(PRG_DIR)/..
+INC_DIR += $(PRG_DIR) $(REP_DIR)/src/drivers/sd_card
diff --git a/repos/os/src/drivers/sd_card/omap4/bench/main.cc b/repos/os/src/drivers/sd_card/spec/omap4/bench/main.cc
similarity index 100%
rename from repos/os/src/drivers/sd_card/omap4/bench/main.cc
rename to repos/os/src/drivers/sd_card/spec/omap4/bench/main.cc
diff --git a/repos/os/src/drivers/sd_card/spec/omap4/bench/target.mk b/repos/os/src/drivers/sd_card/spec/omap4/bench/target.mk
new file mode 100644
index 0000000000..f257cc4e1f
--- /dev/null
+++ b/repos/os/src/drivers/sd_card/spec/omap4/bench/target.mk
@@ -0,0 +1,6 @@
+TARGET = sd_card_bench
+REQUIRES = omap4
+SRC_CC = main.cc
+LIBS = base server
+INC_DIR += $(REP_DIR)/src/drivers/sd_card/spec/omap4
+INC_DIR += $(REP_DIR)/src/drivers/sd_card
diff --git a/repos/os/src/drivers/sd_card/omap4/driver.h b/repos/os/src/drivers/sd_card/spec/omap4/driver.h
similarity index 95%
rename from repos/os/src/drivers/sd_card/omap4/driver.h
rename to repos/os/src/drivers/sd_card/spec/omap4/driver.h
index 17fc9736f5..b8367a7a90 100644
--- a/repos/os/src/drivers/sd_card/omap4/driver.h
+++ b/repos/os/src/drivers/sd_card/spec/omap4/driver.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVER_H_
-#define _DRIVER_H_
+#ifndef _DRIVERS__SD_CARD__SPEC__OMAP4__DRIVER_H_
+#define _DRIVERS__SD_CARD__SPEC__OMAP4__DRIVER_H_
#include
#include
@@ -140,4 +140,4 @@ class Block::Omap4_driver : public Block::Driver
return Genode::env()->ram_session()->free(c); }
};
-#endif /* _DRIVER_H_ */
+#endif /* _DRIVERS__SD_CARD__SPEC__OMAP4__DRIVER_H_ */
diff --git a/repos/os/src/drivers/sd_card/omap4/main.cc b/repos/os/src/drivers/sd_card/spec/omap4/main.cc
similarity index 100%
rename from repos/os/src/drivers/sd_card/omap4/main.cc
rename to repos/os/src/drivers/sd_card/spec/omap4/main.cc
diff --git a/repos/os/src/drivers/sd_card/omap4/mmchs.h b/repos/os/src/drivers/sd_card/spec/omap4/mmchs.h
similarity index 99%
rename from repos/os/src/drivers/sd_card/omap4/mmchs.h
rename to repos/os/src/drivers/sd_card/spec/omap4/mmchs.h
index 37ee68865c..75f177f860 100644
--- a/repos/os/src/drivers/sd_card/omap4/mmchs.h
+++ b/repos/os/src/drivers/sd_card/spec/omap4/mmchs.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _MMCHS_H_
-#define _MMCHS_H_
+#ifndef _DRIVERS__SD_CARD__SPEC__OMAP4__MMCHS_H_
+#define _DRIVERS__SD_CARD__SPEC__OMAP4__MMCHS_H_
/* Genode includes */
#include
@@ -1004,4 +1004,4 @@ struct Omap4_hsmmc_controller : private Mmchs, public Sd_card::Host_controller
}
};
-#endif /* _MMCHS_H_ */
+#endif /* _DRIVERS__SD_CARD__SPEC__OMAP4__MMCHS_H_ */
diff --git a/repos/os/src/drivers/sd_card/omap4/target.mk b/repos/os/src/drivers/sd_card/spec/omap4/target.mk
similarity index 60%
rename from repos/os/src/drivers/sd_card/omap4/target.mk
rename to repos/os/src/drivers/sd_card/spec/omap4/target.mk
index 1d26889f51..798c9f287a 100644
--- a/repos/os/src/drivers/sd_card/omap4/target.mk
+++ b/repos/os/src/drivers/sd_card/spec/omap4/target.mk
@@ -2,4 +2,4 @@ TARGET = sd_card_drv
REQUIRES = omap4
SRC_CC = main.cc
LIBS = base server
-INC_DIR += $(PRG_DIR) $(PRG_DIR)/..
+INC_DIR += $(PRG_DIR) $(REP_DIR)/src/drivers/sd_card
diff --git a/repos/os/src/drivers/sd_card/pl180/host_driver.h b/repos/os/src/drivers/sd_card/spec/pl180/host_driver.h
similarity index 100%
rename from repos/os/src/drivers/sd_card/pl180/host_driver.h
rename to repos/os/src/drivers/sd_card/spec/pl180/host_driver.h
diff --git a/repos/os/src/drivers/sd_card/pl180/main.cc b/repos/os/src/drivers/sd_card/spec/pl180/main.cc
similarity index 100%
rename from repos/os/src/drivers/sd_card/pl180/main.cc
rename to repos/os/src/drivers/sd_card/spec/pl180/main.cc
diff --git a/repos/os/src/drivers/sd_card/pl180/pl180.h b/repos/os/src/drivers/sd_card/spec/pl180/pl180.h
similarity index 98%
rename from repos/os/src/drivers/sd_card/pl180/pl180.h
rename to repos/os/src/drivers/sd_card/spec/pl180/pl180.h
index 523fda41fc..ecc42e5f1a 100644
--- a/repos/os/src/drivers/sd_card/pl180/pl180.h
+++ b/repos/os/src/drivers/sd_card/spec/pl180/pl180.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PL180_H_
-#define _PL180_H_
+#ifndef _DRIVERS__SD_CARD__SPEC__PL180__PL180_H_
+#define _DRIVERS__SD_CARD__SPEC__PL180__PL180_H_
#include
#include
@@ -287,4 +287,4 @@ class Pl180 : public Host_driver, public Genode::Irq_handler
}
};
-#endif /* _PL180_H_ */
+#endif /* _DRIVERS__SD_CARD__SPEC__PL180__PL180_H_ */
diff --git a/repos/os/src/drivers/sd_card/pl180/sd_card.h b/repos/os/src/drivers/sd_card/spec/pl180/sd_card.h
similarity index 95%
rename from repos/os/src/drivers/sd_card/pl180/sd_card.h
rename to repos/os/src/drivers/sd_card/spec/pl180/sd_card.h
index a8388578bb..02fc1ad86c 100644
--- a/repos/os/src/drivers/sd_card/pl180/sd_card.h
+++ b/repos/os/src/drivers/sd_card/spec/pl180/sd_card.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _SD_CARD_H_
-#define _SD_CARD_H_
+#ifndef _DRIVERS__SD_CARD__SPEC__PL180__SD_CARD_H_
+#define _DRIVERS__SD_CARD__SPEC__PL180__SD_CARD_H_
#include
@@ -133,4 +133,4 @@ class Sd_card : public Block::Driver
}
};
-#endif /* _SD_CARD_H_ */
+#endif /* _DRIVERS__SD_CARD__SPEC__PL180__SD_CARD_H_ */
diff --git a/repos/os/src/drivers/sd_card/pl180/target.mk b/repos/os/src/drivers/sd_card/spec/pl180/target.mk
similarity index 100%
rename from repos/os/src/drivers/sd_card/pl180/target.mk
rename to repos/os/src/drivers/sd_card/spec/pl180/target.mk
diff --git a/repos/os/src/drivers/sd_card/rpi/driver.h b/repos/os/src/drivers/sd_card/spec/rpi/driver.h
similarity index 95%
rename from repos/os/src/drivers/sd_card/rpi/driver.h
rename to repos/os/src/drivers/sd_card/spec/rpi/driver.h
index d0b30bb4d5..9037ebdfb6 100644
--- a/repos/os/src/drivers/sd_card/rpi/driver.h
+++ b/repos/os/src/drivers/sd_card/spec/rpi/driver.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _DRIVER_H_
-#define _DRIVER_H_
+#ifndef _DRIVERS__SD_CARD__SPEC__RPI__DRIVER_H_
+#define _DRIVERS__SD_CARD__SPEC__RPI__DRIVER_H_
#include
#include
@@ -140,4 +140,4 @@ class Block::Sdhci_driver : public Block::Driver
return Genode::env()->ram_session()->free(c); }
};
-#endif /* _DRIVER_H_ */
+#endif /* _DRIVERS__SD_CARD__SPEC__RPI__DRIVER_H_ */
diff --git a/repos/os/src/drivers/sd_card/rpi/main.cc b/repos/os/src/drivers/sd_card/spec/rpi/main.cc
similarity index 100%
rename from repos/os/src/drivers/sd_card/rpi/main.cc
rename to repos/os/src/drivers/sd_card/spec/rpi/main.cc
diff --git a/repos/os/src/drivers/sd_card/rpi/sdhci.h b/repos/os/src/drivers/sd_card/spec/rpi/sdhci.h
similarity index 98%
rename from repos/os/src/drivers/sd_card/rpi/sdhci.h
rename to repos/os/src/drivers/sd_card/spec/rpi/sdhci.h
index 915d779fda..565caff031 100644
--- a/repos/os/src/drivers/sd_card/rpi/sdhci.h
+++ b/repos/os/src/drivers/sd_card/spec/rpi/sdhci.h
@@ -12,8 +12,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _SDHCI_H_
-#define _SDHCI_H_
+#ifndef _DRIVERS__SD_CARD__SPEC__RPI__SDHCI_H_
+#define _DRIVERS__SD_CARD__SPEC__RPI__SDHCI_H_
/* Genode includes */
#include
@@ -508,4 +508,4 @@ struct Sdhci_controller : private Sdhci, public Sd_card::Host_controller
}
};
-#endif /* _SDHCI_H_ */
+#endif /* _DRIVERS__SD_CARD__SPEC__RPI__SDHCI_H_ */
diff --git a/repos/os/src/drivers/sd_card/spec/rpi/target.mk b/repos/os/src/drivers/sd_card/spec/rpi/target.mk
new file mode 100644
index 0000000000..3822d4d0e5
--- /dev/null
+++ b/repos/os/src/drivers/sd_card/spec/rpi/target.mk
@@ -0,0 +1,5 @@
+TARGET = sd_card_drv
+REQUIRES = rpi
+SRC_CC = main.cc
+LIBS = base server
+INC_DIR += $(PRG_DIR) $(REP_DIR)/src/drivers/sd_card
diff --git a/repos/os/src/drivers/timer/fiasco/platform_timer.cc b/repos/os/src/drivers/timer/spec/fiasco/platform_timer.cc
similarity index 100%
rename from repos/os/src/drivers/timer/fiasco/platform_timer.cc
rename to repos/os/src/drivers/timer/spec/fiasco/platform_timer.cc
diff --git a/repos/os/src/drivers/timer/hw/platform_timer.h b/repos/os/src/drivers/timer/spec/hw/platform_timer.h
similarity index 100%
rename from repos/os/src/drivers/timer/hw/platform_timer.h
rename to repos/os/src/drivers/timer/spec/hw/platform_timer.h
diff --git a/repos/os/include/drivers/timer/sp804_base.h b/repos/os/src/drivers/timer/spec/hw/sp804_base.h
similarity index 96%
rename from repos/os/include/drivers/timer/sp804_base.h
rename to repos/os/src/drivers/timer/spec/hw/sp804_base.h
index 8c538a0fcc..ad8b91d313 100644
--- a/repos/os/include/drivers/timer/sp804_base.h
+++ b/repos/os/src/drivers/timer/spec/hw/sp804_base.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _INCLUDE__DRIVERS__TIMER__SP804_H_
-#define _INCLUDE__DRIVERS__TIMER__SP804_H_
+#ifndef _DRIVERS__TIMER__SPEC__HW__SP804_BASE_H_
+#define _DRIVERS__TIMER__SPEC__HW__SP804_BASE_H_
/* Genode includes */
#include
@@ -179,5 +179,4 @@ class Genode::Sp804_base : public Mmio
static unsigned long max_value() { return Value::MAX_VALUE; }
};
-#endif /* _INCLUDE__DRIVERS__TIMER__SP804_H_ */
-
+#endif /* _DRIVERS__TIMER__SPEC__HW__SP804_BASE_H_ */
diff --git a/repos/os/src/drivers/timer/hw/epit/platform_timer_base.h b/repos/os/src/drivers/timer/spec/hw/spec/epit/platform_timer_base.h
similarity index 98%
rename from repos/os/src/drivers/timer/hw/epit/platform_timer_base.h
rename to repos/os/src/drivers/timer/spec/hw/spec/epit/platform_timer_base.h
index 90831f9c38..12082e646c 100644
--- a/repos/os/src/drivers/timer/hw/epit/platform_timer_base.h
+++ b/repos/os/src/drivers/timer/spec/hw/spec/epit/platform_timer_base.h
@@ -19,7 +19,7 @@
#include
#include
#include
-#include
+#include
namespace Genode
{
diff --git a/repos/os/src/drivers/timer/hw/exynos5/platform_timer_base.h b/repos/os/src/drivers/timer/spec/hw/spec/exynos5/platform_timer_base.h
similarity index 100%
rename from repos/os/src/drivers/timer/hw/exynos5/platform_timer_base.h
rename to repos/os/src/drivers/timer/spec/hw/spec/exynos5/platform_timer_base.h
diff --git a/repos/os/src/drivers/timer/hw/omap4/platform_timer_base.h b/repos/os/src/drivers/timer/spec/hw/spec/omap4/platform_timer_base.h
similarity index 100%
rename from repos/os/src/drivers/timer/hw/omap4/platform_timer_base.h
rename to repos/os/src/drivers/timer/spec/hw/spec/omap4/platform_timer_base.h
diff --git a/repos/os/src/drivers/timer/hw/pbxa9/platform_timer_base.h b/repos/os/src/drivers/timer/spec/hw/spec/pbxa9/platform_timer_base.h
similarity index 96%
rename from repos/os/src/drivers/timer/hw/pbxa9/platform_timer_base.h
rename to repos/os/src/drivers/timer/spec/hw/spec/pbxa9/platform_timer_base.h
index 296e688b24..d1c8b047b5 100644
--- a/repos/os/src/drivers/timer/hw/pbxa9/platform_timer_base.h
+++ b/repos/os/src/drivers/timer/spec/hw/spec/pbxa9/platform_timer_base.h
@@ -16,7 +16,7 @@
/* Genode includes */
#include
-#include
+#include
#include
/**
diff --git a/repos/os/src/drivers/timer/hw/rpi/platform_timer_base.h b/repos/os/src/drivers/timer/spec/hw/spec/rpi/platform_timer_base.h
similarity index 97%
rename from repos/os/src/drivers/timer/hw/rpi/platform_timer_base.h
rename to repos/os/src/drivers/timer/spec/hw/spec/rpi/platform_timer_base.h
index f55de5ad32..7ecad99e13 100644
--- a/repos/os/src/drivers/timer/hw/rpi/platform_timer_base.h
+++ b/repos/os/src/drivers/timer/spec/hw/spec/rpi/platform_timer_base.h
@@ -16,7 +16,7 @@
/* Genode includes */
#include
-#include
+#include
#include
/*
diff --git a/repos/os/src/drivers/timer/hw/zynq/platform_timer_base.h b/repos/os/src/drivers/timer/spec/hw/spec/zynq/platform_timer_base.h
similarity index 100%
rename from repos/os/src/drivers/timer/hw/zynq/platform_timer_base.h
rename to repos/os/src/drivers/timer/spec/hw/spec/zynq/platform_timer_base.h
diff --git a/repos/os/src/drivers/timer/linux/platform_timer.cc b/repos/os/src/drivers/timer/spec/linux/platform_timer.cc
similarity index 100%
rename from repos/os/src/drivers/timer/linux/platform_timer.cc
rename to repos/os/src/drivers/timer/spec/linux/platform_timer.cc
diff --git a/repos/os/src/drivers/timer/nova/platform_timer.h b/repos/os/src/drivers/timer/spec/nova/platform_timer.h
similarity index 100%
rename from repos/os/src/drivers/timer/nova/platform_timer.h
rename to repos/os/src/drivers/timer/spec/nova/platform_timer.h
diff --git a/repos/os/src/drivers/timer/pistachio/platform_timer.cc b/repos/os/src/drivers/timer/spec/pistachio/platform_timer.cc
similarity index 100%
rename from repos/os/src/drivers/timer/pistachio/platform_timer.cc
rename to repos/os/src/drivers/timer/spec/pistachio/platform_timer.cc
diff --git a/repos/os/src/drivers/uart/kdb/fiasco/target.mk b/repos/os/src/drivers/uart/kdb/fiasco/target.mk
deleted file mode 100644
index 661b91574d..0000000000
--- a/repos/os/src/drivers/uart/kdb/fiasco/target.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-REQUIRES = fiasco
-
-include $(PRG_DIR)/../target.inc
diff --git a/repos/os/src/drivers/uart/kdb/foc/target.mk b/repos/os/src/drivers/uart/kdb/foc/target.mk
deleted file mode 100644
index bbd2f3a611..0000000000
--- a/repos/os/src/drivers/uart/kdb/foc/target.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-REQUIRES = foc
-
-include $(PRG_DIR)/../target.inc
diff --git a/repos/os/src/drivers/uart/kdb/spec/fiasco/target.mk b/repos/os/src/drivers/uart/kdb/spec/fiasco/target.mk
new file mode 100644
index 0000000000..6a4aedbd6d
--- /dev/null
+++ b/repos/os/src/drivers/uart/kdb/spec/fiasco/target.mk
@@ -0,0 +1,3 @@
+REQUIRES = fiasco
+
+include $(REP_DIR)/src/drivers/uart/kdb/target.inc
diff --git a/repos/os/src/drivers/uart/kdb/spec/foc/target.mk b/repos/os/src/drivers/uart/kdb/spec/foc/target.mk
new file mode 100644
index 0000000000..745711d231
--- /dev/null
+++ b/repos/os/src/drivers/uart/kdb/spec/foc/target.mk
@@ -0,0 +1,3 @@
+REQUIRES = foc
+
+include $(REP_DIR)/src/drivers/uart/kdb/target.inc
diff --git a/repos/os/src/drivers/uart/kdb/target.inc b/repos/os/src/drivers/uart/kdb/target.inc
index d1146ea51c..f9af4b9fdb 100644
--- a/repos/os/src/drivers/uart/kdb/target.inc
+++ b/repos/os/src/drivers/uart/kdb/target.inc
@@ -2,6 +2,6 @@ TARGET = kdb_uart_drv
SRC_CC = main.cc
LIBS = base config
-INC_DIR += $(PRG_DIR)/.. $(PRG_DIR)/../..
+INC_DIR += $(PRG_DIR)/../.. $(PRG_DIR)/../../..
-vpath main.cc $(PRG_DIR)/..
+vpath main.cc $(PRG_DIR)/../..
diff --git a/repos/os/src/drivers/uart/exynos5/exynos5_uart.h b/repos/os/src/drivers/uart/spec/exynos5/exynos5_uart.h
similarity index 97%
rename from repos/os/src/drivers/uart/exynos5/exynos5_uart.h
rename to repos/os/src/drivers/uart/spec/exynos5/exynos5_uart.h
index e9ed429dff..296d7ecae4 100644
--- a/repos/os/src/drivers/uart/exynos5/exynos5_uart.h
+++ b/repos/os/src/drivers/uart/spec/exynos5/exynos5_uart.h
@@ -21,7 +21,7 @@
#include
#include
-#include
+#include
/* local includes */
#include "uart_driver.h"
diff --git a/repos/os/src/drivers/uart/exynos5/main.cc b/repos/os/src/drivers/uart/spec/exynos5/main.cc
similarity index 100%
rename from repos/os/src/drivers/uart/exynos5/main.cc
rename to repos/os/src/drivers/uart/spec/exynos5/main.cc
diff --git a/repos/os/src/drivers/uart/exynos5/target.mk b/repos/os/src/drivers/uart/spec/exynos5/target.mk
similarity index 62%
rename from repos/os/src/drivers/uart/exynos5/target.mk
rename to repos/os/src/drivers/uart/spec/exynos5/target.mk
index 8b751b3203..96a1629949 100644
--- a/repos/os/src/drivers/uart/exynos5/target.mk
+++ b/repos/os/src/drivers/uart/spec/exynos5/target.mk
@@ -3,4 +3,4 @@ REQUIRES = exynos5
SRC_CC = main.cc
LIBS = base config
-INC_DIR += $(PRG_DIR) $(PRG_DIR)/..
+INC_DIR += $(PRG_DIR) $(REP_DIR)/src/drivers/uart
diff --git a/repos/os/src/drivers/uart/i8250/i8250.h b/repos/os/src/drivers/uart/spec/i8250/i8250.h
similarity index 94%
rename from repos/os/src/drivers/uart/i8250/i8250.h
rename to repos/os/src/drivers/uart/spec/i8250/i8250.h
index da6a497c4c..2faf56c745 100644
--- a/repos/os/src/drivers/uart/i8250/i8250.h
+++ b/repos/os/src/drivers/uart/spec/i8250/i8250.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _I8250_H_
-#define _I8250_H_
+#ifndef _DRIVERS__UART__SPEC__I8250__I8250_H_
+#define _DRIVERS__UART__SPEC__I8250__I8250_H_
/* Genode includes */
#include
@@ -22,7 +22,7 @@
#include
/* local includes */
-#include "uart_driver.h"
+#include
class I8250 : public Uart::Driver, public Genode::Irq_handler
@@ -144,4 +144,4 @@ class I8250 : public Uart::Driver, public Genode::Irq_handler
}
};
-#endif /* _I8250_H_ */
+#endif /* _DRIVERS__UART__SPEC__I8250__I8250_H_ */
diff --git a/repos/os/src/drivers/uart/i8250/main.cc b/repos/os/src/drivers/uart/spec/i8250/main.cc
similarity index 100%
rename from repos/os/src/drivers/uart/i8250/main.cc
rename to repos/os/src/drivers/uart/spec/i8250/main.cc
diff --git a/repos/os/src/drivers/uart/i8250/target.mk b/repos/os/src/drivers/uart/spec/i8250/target.mk
similarity index 60%
rename from repos/os/src/drivers/uart/i8250/target.mk
rename to repos/os/src/drivers/uart/spec/i8250/target.mk
index 5b6aaf5d69..9eb30f492a 100644
--- a/repos/os/src/drivers/uart/i8250/target.mk
+++ b/repos/os/src/drivers/uart/spec/i8250/target.mk
@@ -3,4 +3,4 @@ REQUIRES = x86
SRC_CC = main.cc
LIBS = base config
-INC_DIR += $(PRG_DIR) $(PRG_DIR)/..
+INC_DIR += $(PRG_DIR) $(REP_DIR)/src/drivers/uart
diff --git a/repos/os/src/drivers/uart/omap4/main.cc b/repos/os/src/drivers/uart/spec/omap4/main.cc
similarity index 100%
rename from repos/os/src/drivers/uart/omap4/main.cc
rename to repos/os/src/drivers/uart/spec/omap4/main.cc
diff --git a/repos/os/src/drivers/uart/omap4/omap_uart.h b/repos/os/src/drivers/uart/spec/omap4/omap_uart.h
similarity index 93%
rename from repos/os/src/drivers/uart/omap4/omap_uart.h
rename to repos/os/src/drivers/uart/spec/omap4/omap_uart.h
index 1aaecd1c68..edad8e996c 100644
--- a/repos/os/src/drivers/uart/omap4/omap_uart.h
+++ b/repos/os/src/drivers/uart/spec/omap4/omap_uart.h
@@ -12,8 +12,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _OMAP_UART_H_
-#define _OMAP_UART_H_
+#ifndef _DRIVERS__UART__SPEC__OMAP4__OMAP_UART_H_
+#define _DRIVERS__UART__SPEC__OMAP4__OMAP_UART_H_
/* Genode includes */
#include
@@ -21,7 +21,7 @@
#include
#include
-#include
+#include
/* local includes */
#include "uart_driver.h"
@@ -104,4 +104,4 @@ class Omap_uart : public Genode::Tl16c750_base, public Uart::Driver, public Geno
}
};
-#endif /* _OMAP_UART_H_ */
+#endif /* _DRIVERS__UART__SPEC__OMAP4__OMAP_UART_H_ */
diff --git a/repos/os/src/drivers/uart/omap4/target.mk b/repos/os/src/drivers/uart/spec/omap4/target.mk
similarity index 61%
rename from repos/os/src/drivers/uart/omap4/target.mk
rename to repos/os/src/drivers/uart/spec/omap4/target.mk
index 9ae42a4709..76920bf525 100644
--- a/repos/os/src/drivers/uart/omap4/target.mk
+++ b/repos/os/src/drivers/uart/spec/omap4/target.mk
@@ -3,4 +3,4 @@ REQUIRES = omap4
SRC_CC = main.cc
LIBS = base config
-INC_DIR += $(PRG_DIR) $(PRG_DIR)/..
+INC_DIR += $(PRG_DIR) $(REP_DIR)/src/drivers/uart
diff --git a/repos/os/src/drivers/uart/pl011/calc_brd_values.py b/repos/os/src/drivers/uart/spec/pl011/calc_brd_values.py
similarity index 100%
rename from repos/os/src/drivers/uart/pl011/calc_brd_values.py
rename to repos/os/src/drivers/uart/spec/pl011/calc_brd_values.py
diff --git a/repos/os/src/drivers/uart/pl011/main.cc b/repos/os/src/drivers/uart/spec/pl011/main.cc
similarity index 100%
rename from repos/os/src/drivers/uart/pl011/main.cc
rename to repos/os/src/drivers/uart/spec/pl011/main.cc
diff --git a/repos/os/src/drivers/uart/pl011/pl011.h b/repos/os/src/drivers/uart/spec/pl011/pl011.h
similarity index 96%
rename from repos/os/src/drivers/uart/pl011/pl011.h
rename to repos/os/src/drivers/uart/spec/pl011/pl011.h
index ad6ae05d08..6c42359515 100644
--- a/repos/os/src/drivers/uart/pl011/pl011.h
+++ b/repos/os/src/drivers/uart/spec/pl011/pl011.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _PL011_H_
-#define _PL011_H_
+#ifndef _DRIVERS__UART__SPEC__PL011__PL011_H_
+#define _DRIVERS__UART__SPEC__PL011__PL011_H_
/* Genode includes */
#include
@@ -165,4 +165,4 @@ class Pl011 : public Uart::Driver, public Genode::Irq_handler
}
};
-#endif /* _PL011_H_ */
+#endif /* _DRIVERS__UART__SPEC__PL011__PL011_H_ */
diff --git a/repos/os/src/drivers/uart/pl011/target.mk b/repos/os/src/drivers/uart/spec/pl011/target.mk
similarity index 61%
rename from repos/os/src/drivers/uart/pl011/target.mk
rename to repos/os/src/drivers/uart/spec/pl011/target.mk
index 19e69ce1bf..f17288bc60 100644
--- a/repos/os/src/drivers/uart/pl011/target.mk
+++ b/repos/os/src/drivers/uart/spec/pl011/target.mk
@@ -3,4 +3,4 @@ REQUIRES = pl011
SRC_CC = main.cc
LIBS = base config
-INC_DIR += $(PRG_DIR) $(PRG_DIR)/..
+INC_DIR += $(PRG_DIR) $(REP_DIR)/src/drivers/uart
diff --git a/repos/os/src/init/linux/pd_args.cc b/repos/os/src/init/spec/linux/pd_args.cc
similarity index 100%
rename from repos/os/src/init/linux/pd_args.cc
rename to repos/os/src/init/spec/linux/pd_args.cc
diff --git a/repos/os/src/lib/blit/arm/blit_helper.h b/repos/os/src/lib/blit/spec/arm/blit_helper.h
similarity index 94%
rename from repos/os/src/lib/blit/arm/blit_helper.h
rename to repos/os/src/lib/blit/spec/arm/blit_helper.h
index 4e10e865c0..8833939365 100644
--- a/repos/os/src/lib/blit/arm/blit_helper.h
+++ b/repos/os/src/lib/blit/spec/arm/blit_helper.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _LIB__BLIT__BLIT_HELPER_H_
-#define _LIB__BLIT__BLIT_HELPER_H_
+#ifndef _LIB__BLIT__SPEC__ARM__BLIT_HELPER_H_
+#define _LIB__BLIT__SPEC__ARM__BLIT_HELPER_H_
#include
@@ -85,4 +85,4 @@ static inline void copy_block_32byte(char const *src, int src_w,
}
}
-#endif /* _LIB__BLIT__BLIT_HELPER_H_ */
+#endif /* _LIB__BLIT__SPEC__ARM__BLIT_HELPER_H_ */
diff --git a/repos/os/src/lib/blit/x86/blit_helper.h b/repos/os/src/lib/blit/spec/x86/blit_helper.h
similarity index 92%
rename from repos/os/src/lib/blit/x86/blit_helper.h
rename to repos/os/src/lib/blit/spec/x86/blit_helper.h
index 0cdf9a4f22..b818aae506 100644
--- a/repos/os/src/lib/blit/x86/blit_helper.h
+++ b/repos/os/src/lib/blit/spec/x86/blit_helper.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _LIB__BLIT__BLIT_HELPER_H_
-#define _LIB__BLIT__BLIT_HELPER_H_
+#ifndef _LIB__BLIT__SPEC__X86__BLIT_HELPER_H_
+#define _LIB__BLIT__SPEC__X86__BLIT_HELPER_H_
#include
@@ -67,4 +67,4 @@ static inline void copy_block_32byte(char const *src, int src_w,
copy_32byte_chunks(src, dst, w);
}
-#endif /* _LIB__BLIT__BLIT_HELPER_H_ */
+#endif /* _LIB__BLIT__SPEC__X86__BLIT_HELPER_H_ */
diff --git a/repos/os/src/lib/blit/x86/x86_32/mmx.h b/repos/os/src/lib/blit/spec/x86_32/mmx.h
similarity index 90%
rename from repos/os/src/lib/blit/x86/x86_32/mmx.h
rename to repos/os/src/lib/blit/spec/x86_32/mmx.h
index 50c40f0480..473c8cce06 100644
--- a/repos/os/src/lib/blit/x86/x86_32/mmx.h
+++ b/repos/os/src/lib/blit/spec/x86_32/mmx.h
@@ -12,8 +12,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _MMX_H_
-#define _MMX_H_
+#ifndef _LIB__BLIT__SPEC__X86_32__MMX_H_
+#define _LIB__BLIT__SPEC__X86_32__MMX_H_
/**
* Copy 32byte chunks via MMX
@@ -44,4 +44,4 @@ static inline void copy_32byte_chunks(void const *src, void *dst, int size)
);
}
-#endif /* _MMX_H_ */
+#endif /* _LIB__BLIT__SPEC__X86_32__MMX_H_ */
diff --git a/repos/os/src/lib/blit/x86/x86_64/mmx.h b/repos/os/src/lib/blit/spec/x86_64/mmx.h
similarity index 90%
rename from repos/os/src/lib/blit/x86/x86_64/mmx.h
rename to repos/os/src/lib/blit/spec/x86_64/mmx.h
index e1c28eaf2c..f87a5dd461 100644
--- a/repos/os/src/lib/blit/x86/x86_64/mmx.h
+++ b/repos/os/src/lib/blit/spec/x86_64/mmx.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _MMX_H_
-#define _MMX_H_
+#ifndef _LIB__BLIT__SPEC__X86_64__MMX_H_
+#define _LIB__BLIT__SPEC__X86_64__MMX_H_
/**
* Copy 32byte chunks via MMX
@@ -43,4 +43,4 @@ static inline void copy_32byte_chunks(void const *src, void *dst, int size)
);
}
-#endif /* _MMX_H_ */
+#endif /* _LIB__BLIT__SPEC__X86_64__MMX_H_ */
diff --git a/repos/os/src/server/tz_vmm/imx53/m4if.h b/repos/os/src/server/tz_vmm/spec/imx53/m4if.h
similarity index 93%
rename from repos/os/src/server/tz_vmm/imx53/m4if.h
rename to repos/os/src/server/tz_vmm/spec/imx53/m4if.h
index d22a20e527..dde6b596e8 100644
--- a/repos/os/src/server/tz_vmm/imx53/m4if.h
+++ b/repos/os/src/server/tz_vmm/spec/imx53/m4if.h
@@ -11,8 +11,8 @@
* under the terms of the GNU General Public License version 2.
*/
-#ifndef _SRC__SERVER__VMM__INCLUDE__M4IF_H_
-#define _SRC__SERVER__VMM__INCLUDE__M4IF_H_
+#ifndef _SERVER__TZ_VMM__SPEC__IMX53__M4IF_H_
+#define _SERVER__TZ_VMM__SPEC__IMX53__M4IF_H_
/* Genode includes */
#include
@@ -87,4 +87,4 @@ class M4if : Genode::Mmio
Genode::addr_t violation_addr() { return read(); }
};
-#endif /* _SRC__SERVER__VMM__INCLUDE__M4IF_H_ */
+#endif /* _SERVER__TZ_VMM__SPEC__IMX53__M4IF_H_ */
diff --git a/repos/os/src/server/tz_vmm/imx53/main.cc b/repos/os/src/server/tz_vmm/spec/imx53/main.cc
similarity index 100%
rename from repos/os/src/server/tz_vmm/imx53/main.cc
rename to repos/os/src/server/tz_vmm/spec/imx53/main.cc
diff --git a/repos/os/src/server/tz_vmm/imx53/target.inc b/repos/os/src/server/tz_vmm/spec/imx53/target.inc
similarity index 51%
rename from repos/os/src/server/tz_vmm/imx53/target.inc
rename to repos/os/src/server/tz_vmm/spec/imx53/target.inc
index aaa12a981f..e7145a9c4a 100644
--- a/repos/os/src/server/tz_vmm/imx53/target.inc
+++ b/repos/os/src/server/tz_vmm/spec/imx53/target.inc
@@ -1,9 +1,9 @@
TARGET = tz_vmm
-REQUIRES += trustzone platform_imx53
+REQUIRES += trustzone imx53
LIBS = base
SRC_CC = main.cc
INC_DIR += $(PRG_DIR) \
- $(PRG_DIR)/../include \
+ $(PRG_DIR)/../../include \
$(PRG_DIR)/../imx53
-vpath main.cc $(PRG_DIR)/../imx53
\ No newline at end of file
+vpath main.cc $(PRG_DIR)/../imx53
diff --git a/repos/os/src/server/tz_vmm/imx53_qsb/target.mk b/repos/os/src/server/tz_vmm/spec/imx53_qsb/target.mk
similarity index 100%
rename from repos/os/src/server/tz_vmm/imx53_qsb/target.mk
rename to repos/os/src/server/tz_vmm/spec/imx53_qsb/target.mk
diff --git a/repos/os/src/server/tz_vmm/imx53_qsb/vm.h b/repos/os/src/server/tz_vmm/spec/imx53_qsb/vm.h
similarity index 87%
rename from repos/os/src/server/tz_vmm/imx53_qsb/vm.h
rename to repos/os/src/server/tz_vmm/spec/imx53_qsb/vm.h
index 2f5a623c06..07f634ed70 100644
--- a/repos/os/src/server/tz_vmm/imx53_qsb/vm.h
+++ b/repos/os/src/server/tz_vmm/spec/imx53_qsb/vm.h
@@ -11,6 +11,9 @@
* under the terms of the GNU General Public License version 2.
*/
+#ifndef _SERVER__TZ_VMM__SPEC__IMX53_QSB__VM_H_
+#define _SERVER__TZ_VMM__SPEC__IMX53_QSB__VM_H_
+
#include
#include
@@ -41,3 +44,5 @@ class Vm : public Vm_base
: Vm_base(kernel, initrd, cmdline, ram_base, ram_size,
kernel_offset, mach_type, board_rev) {}
};
+
+#endif /* _SERVER__TZ_VMM__SPEC__IMX53_QSB__VM_H_ */
diff --git a/repos/os/src/server/tz_vmm/usb_armory/target.mk b/repos/os/src/server/tz_vmm/spec/usb_armory/target.mk
similarity index 100%
rename from repos/os/src/server/tz_vmm/usb_armory/target.mk
rename to repos/os/src/server/tz_vmm/spec/usb_armory/target.mk
diff --git a/repos/os/src/server/tz_vmm/usb_armory/vm.h b/repos/os/src/server/tz_vmm/spec/usb_armory/vm.h
similarity index 88%
rename from repos/os/src/server/tz_vmm/usb_armory/vm.h
rename to repos/os/src/server/tz_vmm/spec/usb_armory/vm.h
index 57bd726c6f..74acab19d8 100644
--- a/repos/os/src/server/tz_vmm/usb_armory/vm.h
+++ b/repos/os/src/server/tz_vmm/spec/usb_armory/vm.h
@@ -11,6 +11,9 @@
* under the terms of the GNU General Public License version 2.
*/
+#ifndef _SERVER__TZ_VMM__SPEC__USB_ARMORY__VM_H_
+#define _SERVER__TZ_VMM__SPEC__USB_ARMORY__VM_H_
+
#include
class Vm : public Genode::Rom_connection,
@@ -42,3 +45,5 @@ class Vm : public Genode::Rom_connection,
Vm_base(kernel, initrd, cmdline, ram_base, ram_size,
kernel_offset, mach_type, board_rev) {}
};
+
+#endif /* _SERVER__TZ_VMM__SPEC__USB_ARMORY__VM_H_ */
diff --git a/repos/os/src/test/cpufreq/target.mk b/repos/os/src/test/cpufreq/target.mk
index 5da63596a0..d6ede4fca3 100644
--- a/repos/os/src/test/cpufreq/target.mk
+++ b/repos/os/src/test/cpufreq/target.mk
@@ -1,4 +1,4 @@
TARGET = test-cpufreq
-REQUIRES = platform_arndale
+REQUIRES = arndale
SRC_CC = main.cc
LIBS = base
diff --git a/repos/ports-foc/run/l4linux.run b/repos/ports-foc/run/l4linux.run
index 34b2a95363..3017f51c7f 100644
--- a/repos/ports-foc/run/l4linux.run
+++ b/repos/ports-foc/run/l4linux.run
@@ -12,12 +12,12 @@ set build_components {
drivers/framebuffer
l4linux }
-set use_usb_driver [expr [have_spec omap4] || [have_spec platform_arndale]]
+set use_usb_driver [expr [have_spec omap4] || [have_spec arndale]]
set use_nic_driver [expr !$use_usb_driver && [expr [have_spec lan9118] || [have_spec x86]]]
lappend_if $use_usb_driver build_components drivers/usb
lappend_if $use_nic_driver build_components drivers/nic
-lappend_if [have_spec ps2] build_components drivers/input/ps2
+lappend_if [have_spec ps2] build_components drivers/input/spec/ps2
lappend_if [have_spec gpio] build_components drivers/gpio
source ${genode_dir}/repos/base/run/platform_drv.inc
diff --git a/repos/ports-foc/run/linux_panda.run b/repos/ports-foc/run/linux_panda.run
index fce413d0b6..6304cb1a54 100644
--- a/repos/ports-foc/run/linux_panda.run
+++ b/repos/ports-foc/run/linux_panda.run
@@ -1,5 +1,5 @@
assert_spec foc
-assert_spec platform_panda
+assert_spec panda
#
# Build
diff --git a/repos/ports/lib/mk/fiasco_x86/gdbserver_platform.mk b/repos/ports/lib/mk/fiasco_x86/gdbserver_platform.mk
deleted file mode 100644
index e48b3ea78e..0000000000
--- a/repos/ports/lib/mk/fiasco_x86/gdbserver_platform.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-SRC_CC = fiasco_x86_low.cc
-
-include $(REP_DIR)/lib/mk/x86_32/gdbserver_platform_x86_32.inc
diff --git a/repos/ports/lib/mk/foc_x86_32/gdbserver_platform.mk b/repos/ports/lib/mk/foc_x86_32/gdbserver_platform.mk
deleted file mode 100644
index cff5601f44..0000000000
--- a/repos/ports/lib/mk/foc_x86_32/gdbserver_platform.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-SRC_CC = foc_x86_32_low.cc
-
-include $(REP_DIR)/lib/mk/x86_32/gdbserver_platform_x86_32.inc
diff --git a/repos/ports/lib/mk/linux_x86_32/gdbserver_platform.mk b/repos/ports/lib/mk/linux_x86_32/gdbserver_platform.mk
deleted file mode 100644
index d94a4b45e5..0000000000
--- a/repos/ports/lib/mk/linux_x86_32/gdbserver_platform.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-SRC_CC = linux_x86_32_low.cc
-
-include $(REP_DIR)/lib/mk/x86_32/gdbserver_platform_x86_32.inc
diff --git a/repos/ports/lib/mk/nova_x86_32/gdbserver_platform.mk b/repos/ports/lib/mk/nova_x86_32/gdbserver_platform.mk
deleted file mode 100644
index 49d21272c5..0000000000
--- a/repos/ports/lib/mk/nova_x86_32/gdbserver_platform.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-SRC_CC = nova_x86_32_low.cc
-
-include $(REP_DIR)/lib/mk/x86_32/gdbserver_platform_x86_32.inc
diff --git a/repos/ports/lib/mk/okl4_x86/gdbserver_platform.mk b/repos/ports/lib/mk/okl4_x86/gdbserver_platform.mk
deleted file mode 100644
index c8234d6fb8..0000000000
--- a/repos/ports/lib/mk/okl4_x86/gdbserver_platform.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-SRC_CC = okl4_x86_low.cc
-
-include $(REP_DIR)/lib/mk/x86_32/gdbserver_platform_x86_32.inc
diff --git a/repos/ports/lib/mk/pistachio_x86/gdbserver_platform.mk b/repos/ports/lib/mk/pistachio_x86/gdbserver_platform.mk
deleted file mode 100644
index f37cd5ffea..0000000000
--- a/repos/ports/lib/mk/pistachio_x86/gdbserver_platform.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-SRC_CC = pistachio_x86_low.cc
-
-include $(REP_DIR)/lib/mk/x86_32/gdbserver_platform_x86_32.inc
diff --git a/repos/ports/lib/mk/spec/fiasco_x86/gdbserver_platform.mk b/repos/ports/lib/mk/spec/fiasco_x86/gdbserver_platform.mk
new file mode 100644
index 0000000000..a389462f51
--- /dev/null
+++ b/repos/ports/lib/mk/spec/fiasco_x86/gdbserver_platform.mk
@@ -0,0 +1,3 @@
+SRC_CC = spec/fiasco_x86/low.cc
+
+include $(REP_DIR)/lib/mk/spec/x86_32/gdbserver_platform.inc
diff --git a/repos/ports/lib/mk/foc/virtualbox-hwaccl.mk b/repos/ports/lib/mk/spec/foc/virtualbox-hwaccl.mk
similarity index 100%
rename from repos/ports/lib/mk/foc/virtualbox-hwaccl.mk
rename to repos/ports/lib/mk/spec/foc/virtualbox-hwaccl.mk
diff --git a/repos/ports/lib/mk/foc_arm/gdbserver_platform.mk b/repos/ports/lib/mk/spec/foc_arm/gdbserver_platform.mk
similarity index 83%
rename from repos/ports/lib/mk/foc_arm/gdbserver_platform.mk
rename to repos/ports/lib/mk/spec/foc_arm/gdbserver_platform.mk
index 6a88539d62..87a74cea87 100644
--- a/repos/ports/lib/mk/foc_arm/gdbserver_platform.mk
+++ b/repos/ports/lib/mk/spec/foc_arm/gdbserver_platform.mk
@@ -1,4 +1,4 @@
-SRC_CC = foc_arm_low.cc
+SRC_CC = spec/foc_arm/low.cc
SRC_C = reg-arm.c \
linux-arm-low.c
diff --git a/repos/ports/lib/mk/spec/foc_x86_32/gdbserver_platform.mk b/repos/ports/lib/mk/spec/foc_x86_32/gdbserver_platform.mk
new file mode 100644
index 0000000000..7d18946b4e
--- /dev/null
+++ b/repos/ports/lib/mk/spec/foc_x86_32/gdbserver_platform.mk
@@ -0,0 +1,3 @@
+SRC_CC = spec/foc_x86_32/low.cc
+
+include $(REP_DIR)/lib/mk/spec/x86_32/gdbserver_platform.inc
diff --git a/repos/ports/lib/mk/linux/virtualbox-hwaccl.mk b/repos/ports/lib/mk/spec/linux/virtualbox-hwaccl.mk
similarity index 100%
rename from repos/ports/lib/mk/linux/virtualbox-hwaccl.mk
rename to repos/ports/lib/mk/spec/linux/virtualbox-hwaccl.mk
diff --git a/repos/ports/lib/mk/spec/linux_x86_32/gdbserver_platform.mk b/repos/ports/lib/mk/spec/linux_x86_32/gdbserver_platform.mk
new file mode 100644
index 0000000000..ae562c4c41
--- /dev/null
+++ b/repos/ports/lib/mk/spec/linux_x86_32/gdbserver_platform.mk
@@ -0,0 +1,3 @@
+SRC_CC = spec/linux_x86_32/low.cc
+
+include $(REP_DIR)/lib/mk/spec/x86_32/gdbserver_platform.inc
diff --git a/repos/ports/lib/mk/nova/virtualbox-hwaccl.mk b/repos/ports/lib/mk/spec/nova/virtualbox-hwaccl.mk
similarity index 83%
rename from repos/ports/lib/mk/nova/virtualbox-hwaccl.mk
rename to repos/ports/lib/mk/spec/nova/virtualbox-hwaccl.mk
index 2a71f7700b..36edf44c7b 100644
--- a/repos/ports/lib/mk/nova/virtualbox-hwaccl.mk
+++ b/repos/ports/lib/mk/spec/nova/virtualbox-hwaccl.mk
@@ -8,4 +8,4 @@ INC_DIR += $(call select_from_repositories,src/lib/pthread)
INC_DIR += $(VBOX_DIR)/VMM/include
INC_DIR += $(REP_DIR)/src/virtualbox
-vpath sup.cc $(REP_DIR)/src/virtualbox/nova/
+vpath sup.cc $(REP_DIR)/src/virtualbox/spec/nova/
diff --git a/repos/ports/lib/mk/spec/nova_x86_32/gdbserver_platform.mk b/repos/ports/lib/mk/spec/nova_x86_32/gdbserver_platform.mk
new file mode 100644
index 0000000000..bc3fade94a
--- /dev/null
+++ b/repos/ports/lib/mk/spec/nova_x86_32/gdbserver_platform.mk
@@ -0,0 +1,3 @@
+SRC_CC = spec/nova_x86_32/low.cc
+
+include $(REP_DIR)/lib/mk/spec/x86_32/gdbserver_platform.inc
diff --git a/repos/ports/lib/mk/okl4/virtualbox-hwaccl.mk b/repos/ports/lib/mk/spec/okl4/virtualbox-hwaccl.mk
similarity index 100%
rename from repos/ports/lib/mk/okl4/virtualbox-hwaccl.mk
rename to repos/ports/lib/mk/spec/okl4/virtualbox-hwaccl.mk
diff --git a/repos/ports/lib/mk/spec/okl4_x86/gdbserver_platform.mk b/repos/ports/lib/mk/spec/okl4_x86/gdbserver_platform.mk
new file mode 100644
index 0000000000..129224ed9a
--- /dev/null
+++ b/repos/ports/lib/mk/spec/okl4_x86/gdbserver_platform.mk
@@ -0,0 +1,3 @@
+SRC_CC = spec/okl4_x86/low.cc
+
+include $(REP_DIR)/lib/mk/spec/x86_32/gdbserver_platform.inc
diff --git a/repos/ports/lib/mk/pistachio/virtualbox-hwaccl.mk b/repos/ports/lib/mk/spec/pistachio/virtualbox-hwaccl.mk
similarity index 100%
rename from repos/ports/lib/mk/pistachio/virtualbox-hwaccl.mk
rename to repos/ports/lib/mk/spec/pistachio/virtualbox-hwaccl.mk
diff --git a/repos/ports/lib/mk/spec/pistachio_x86/gdbserver_platform.mk b/repos/ports/lib/mk/spec/pistachio_x86/gdbserver_platform.mk
new file mode 100644
index 0000000000..27f9a04314
--- /dev/null
+++ b/repos/ports/lib/mk/spec/pistachio_x86/gdbserver_platform.mk
@@ -0,0 +1,3 @@
+SRC_CC = spec/pistachio_x86/low.cc
+
+include $(REP_DIR)/lib/mk/spec/x86_32/gdbserver_platform.inc
diff --git a/repos/ports/lib/mk/x86_32/gdbserver_platform_x86_32.inc b/repos/ports/lib/mk/spec/x86_32/gdbserver_platform.inc
similarity index 100%
rename from repos/ports/lib/mk/x86_32/gdbserver_platform_x86_32.inc
rename to repos/ports/lib/mk/spec/x86_32/gdbserver_platform.inc
diff --git a/repos/ports/lib/mk/virtualbox-main.mk b/repos/ports/lib/mk/virtualbox-main.mk
index d2650c77b7..c943eef5ca 100644
--- a/repos/ports/lib/mk/virtualbox-main.mk
+++ b/repos/ports/lib/mk/virtualbox-main.mk
@@ -74,4 +74,4 @@ INC_DIR += $(REP_DIR)/src/virtualbox/frontend
INC_DIR += $(REP_DIR)/src/virtualbox/frontend/VBoxAPIWrap
# search path to 'scan_code_set_2.h'
-INC_DIR += $(call select_from_repositories,src/drivers/input/ps2)
+INC_DIR += $(call select_from_repositories,src/drivers/input/spec/ps2)
diff --git a/repos/ports/run/genode_org.run b/repos/ports/run/genode_org.run
index 77fecd3189..c6dd41ccb1 100644
--- a/repos/ports/run/genode_org.run
+++ b/repos/ports/run/genode_org.run
@@ -20,7 +20,7 @@ set build_components {
app/lighttpd
}
-set use_usb_driver [expr [have_spec omap4] || [have_spec platform_arndale] || [have_spec platform_rpi]]
+set use_usb_driver [expr [have_spec omap4] || [have_spec arndale] || [have_spec rpi]]
set use_nic_driver [expr !$use_usb_driver]
if {$use_usb_driver} { set network_driver "usb_drv" }
diff --git a/repos/ports/run/netperf.inc b/repos/ports/run/netperf.inc
index 9aa1e9f1aa..c8b1d4cbcc 100644
--- a/repos/ports/run/netperf.inc
+++ b/repos/ports/run/netperf.inc
@@ -15,9 +15,9 @@ if {[have_spec hw_odroid_xu]} {
}
if {![info exists use_usb_driver]} {
- set use_usb_driver [expr [have_spec omap4] || [have_spec platform_arndale] || [have_spec platform_rpi]]
+ set use_usb_driver [expr [have_spec omap4] || [have_spec arndale] || [have_spec rpi]]
}
-set use_nic_driver [expr !$use_usb_driver && ![have_spec platform_imx53] && !$use_wifi_driver]
+set use_nic_driver [expr !$use_usb_driver && ![have_spec imx53] && !$use_wifi_driver]
if {[expr !$use_usb_driver && !$use_nic_driver && !$use_wifi_driver]} {
puts "\n Run script is not supported on this platform. \n"; exit 0 }
diff --git a/repos/ports/run/noux_net_netcat.run b/repos/ports/run/noux_net_netcat.run
index 6eae3d4fc7..31a18e5b9a 100644
--- a/repos/ports/run/noux_net_netcat.run
+++ b/repos/ports/run/noux_net_netcat.run
@@ -1,5 +1,5 @@
-set use_usb_driver [expr [have_spec omap4] || [have_spec platform_arndale] || [have_spec platform_rpi]]
-set use_nic_driver [expr !$use_usb_driver && ![have_spec platform_imx53] && ![have_spec linux] && ![have_spec hw_odroid_xu]]
+set use_usb_driver [expr [have_spec omap4] || [have_spec arndale] || [have_spec rpi]]
+set use_nic_driver [expr !$use_usb_driver && ![have_spec imx53] && ![have_spec linux] && ![have_spec hw_odroid_xu]]
if {[expr !$use_usb_driver && !$use_nic_driver]} {
puts "\n Run script is not supported on this platform. \n"; exit 0 }
diff --git a/repos/ports/run/noux_tool_chain_auto.run b/repos/ports/run/noux_tool_chain_auto.run
index 35447d3a5d..93f6617974 100644
--- a/repos/ports/run/noux_tool_chain_auto.run
+++ b/repos/ports/run/noux_tool_chain_auto.run
@@ -27,14 +27,14 @@ if {[have_spec arm]} {
set noux_boot_timeout 350
set tool_chain_timeout 600
- if {[have_spec platform_panda]} {
+ if {[have_spec panda]} {
set platform "hw_panda"
set tool_chain_timeout 1000
}
- if {[have_spec platform_arndale]} {
+ if {[have_spec arndale]} {
set platform "hw_arndale"
}
- if {[have_spec platform_pbxa9]} { set platform "hw_pbxa9" }
+ if {[have_spec pbxa9]} { set platform "hw_pbxa9" }
if {![info exists platform]} {
puts "\n Run script is not supported on this platform. \n"
diff --git a/repos/ports/src/app/dosbox/x86_32/size_defs.h b/repos/ports/src/app/dosbox/spec/x86_32/size_defs.h
similarity index 55%
rename from repos/ports/src/app/dosbox/x86_32/size_defs.h
rename to repos/ports/src/app/dosbox/spec/x86_32/size_defs.h
index 931fcf3fb4..bee09a904c 100644
--- a/repos/ports/src/app/dosbox/x86_32/size_defs.h
+++ b/repos/ports/src/app/dosbox/spec/x86_32/size_defs.h
@@ -1,3 +1,19 @@
+/*
+ * \brief Size definitions
+ * \author Josef Soentgen
+ * \date 2013-10-21
+ */
+
+/*
+ * Copyright (C) 2013-2015 Genode Labs GmbH
+ *
+ * This file is part of the Genode OS framework, which is distributed
+ * under the terms of the GNU General Public License version 2.
+ */
+
+#ifndef _APP__DOSBOX__SPEC__X86_32__SIZE_DEFS_H_
+#define _APP__DOSBOX__SPEC__X86_32__SIZE_DEFS_H_
+
/* The size of `int *', as computed by sizeof. */
#define SIZEOF_INT_P 4
@@ -15,3 +31,5 @@
/* The size of `unsigned short', as computed by sizeof. */
#define SIZEOF_UNSIGNED_SHORT 2
+
+#endif /* _APP__DOSBOX__SPEC__X86_32__SIZE_DEFS_H_ */
diff --git a/repos/ports/src/app/dosbox/x86_64/size_defs.h b/repos/ports/src/app/dosbox/spec/x86_64/size_defs.h
similarity index 55%
rename from repos/ports/src/app/dosbox/x86_64/size_defs.h
rename to repos/ports/src/app/dosbox/spec/x86_64/size_defs.h
index 500278c9a5..de552b16fa 100644
--- a/repos/ports/src/app/dosbox/x86_64/size_defs.h
+++ b/repos/ports/src/app/dosbox/spec/x86_64/size_defs.h
@@ -1,3 +1,19 @@
+/*
+ * \brief Size definitions
+ * \author Josef Soentgen
+ * \date 2013-10-21
+ */
+
+/*
+ * Copyright (C) 2013-2015 Genode Labs GmbH
+ *
+ * This file is part of the Genode OS framework, which is distributed
+ * under the terms of the GNU General Public License version 2.
+ */
+
+#ifndef _APP__DOSBOX__SPEC__X86_64__SIZE_DEFS_H_
+#define _APP__DOSBOX__SPEC__X86_64__SIZE_DEFS_H_
+
/* The size of `int *', as computed by sizeof. */
#define SIZEOF_INT_P 8
@@ -15,3 +31,5 @@
/* The size of `unsigned short', as computed by sizeof. */
#define SIZEOF_UNSIGNED_SHORT 2
+
+#endif /* _APP__DOSBOX__SPEC__X86_64__SIZE_DEFS_H_ */
diff --git a/repos/ports/src/app/dosbox/target.mk b/repos/ports/src/app/dosbox/target.mk
index 202e5df5ae..3098b69b70 100644
--- a/repos/ports/src/app/dosbox/target.mk
+++ b/repos/ports/src/app/dosbox/target.mk
@@ -40,10 +40,10 @@ INC_DIR += $(addprefix $(DOSBOX_DIR)/src, cpu debug dos fpu gui hardware hardwar
CC_OPT = -DHAVE_CONFIG_H -D_GNU_SOURCE=1 -D_REENTRANT
ifeq ($(filter-out $(SPECS),x86_32),)
-INC_DIR += $(PRG_DIR)/x86_32
+INC_DIR += $(PRG_DIR)/spec/x86_32
CC_OPT += -DC_TARGETCPU=X86
else ifeq ($(filter-out $(SPECS),x86_64),)
-INC_DIR += $(PRG_DIR)/x86_64
+INC_DIR += $(PRG_DIR)/spec/x86_64
CC_OPT += -DC_TARGETCPU=X86_64
endif
diff --git a/repos/ports/src/app/openvpn/32bit/config_sizeof_long.h b/repos/ports/src/app/openvpn/spec/32bit/config_sizeof_long.h
similarity index 100%
rename from repos/ports/src/app/openvpn/32bit/config_sizeof_long.h
rename to repos/ports/src/app/openvpn/spec/32bit/config_sizeof_long.h
diff --git a/repos/ports/src/app/openvpn/64bit/config_sizeof_long.h b/repos/ports/src/app/openvpn/spec/64bit/config_sizeof_long.h
similarity index 100%
rename from repos/ports/src/app/openvpn/64bit/config_sizeof_long.h
rename to repos/ports/src/app/openvpn/spec/64bit/config_sizeof_long.h
diff --git a/repos/ports/src/app/openvpn/target.mk b/repos/ports/src/app/openvpn/target.mk
index f712af644a..176b07dcd7 100644
--- a/repos/ports/src/app/openvpn/target.mk
+++ b/repos/ports/src/app/openvpn/target.mk
@@ -97,7 +97,7 @@ ifeq ($(filter-out $(SPECS),32bit),)
else ifeq ($(filter-out $(SPECS),64bit),)
TARGET_CPUBIT=64bit
endif
-INC_DIR += $(REP_DIR)/src/app/openvpn/$(TARGET_CPUBIT)
+INC_DIR += $(REP_DIR)/src/app/openvpn/spec/$(TARGET_CPUBIT)
INC_DIR += $(REP_DIR)/src/app/openvpn/
vpath compat-%.c $(OPENVPN_DIR)/src/compat
diff --git a/repos/ports/src/app/seoul/32bit/target.mk b/repos/ports/src/app/seoul/spec/32bit/target.mk
similarity index 100%
rename from repos/ports/src/app/seoul/32bit/target.mk
rename to repos/ports/src/app/seoul/spec/32bit/target.mk
diff --git a/repos/ports/src/app/seoul/64bit/target.mk b/repos/ports/src/app/seoul/spec/64bit/target.mk
similarity index 100%
rename from repos/ports/src/app/seoul/64bit/target.mk
rename to repos/ports/src/app/seoul/spec/64bit/target.mk
diff --git a/repos/ports/src/app/seoul/target.inc b/repos/ports/src/app/seoul/target.inc
index 7542d85681..c5cf2a8c93 100644
--- a/repos/ports/src/app/seoul/target.inc
+++ b/repos/ports/src/app/seoul/target.inc
@@ -22,12 +22,12 @@ SRC_CC += $(filter-out $(FILTER_OUT),$(addprefix executor/,$(EXECUTOR_SRC_CC)))
INC_DIR += $(SEOUL_CONTRIB_DIR)/include
INC_DIR += $(SEOUL_GENODE_DIR)/include
-INC_DIR += $(PRG_DIR)/../include
+INC_DIR += $(REP_DIR)/src/app/seoul/include
CC_WARN += -Wno-parentheses -Wall
CC_CXX_OPT += -march=core2
CC_CXX_OPT += -mssse3
-vpath %.cc $(SEOUL_CONTRIB_DIR)
-vpath %.cc $(PRG_DIR)/..
-vpath %.tff $(PRG_DIR)/..
+vpath %.cc $(SEOUL_CONTRIB_DIR)
+vpath %.cc $(REP_DIR)/src/app/seoul
+vpath %.tff $(REP_DIR)/src/app/seoul
diff --git a/repos/ports/src/lib/gdbserver_platform/fiasco_x86_low.cc b/repos/ports/src/lib/gdbserver_platform/spec/fiasco_x86/low.cc
similarity index 100%
rename from repos/ports/src/lib/gdbserver_platform/fiasco_x86_low.cc
rename to repos/ports/src/lib/gdbserver_platform/spec/fiasco_x86/low.cc
diff --git a/repos/ports/src/lib/gdbserver_platform/foc_arm_low.cc b/repos/ports/src/lib/gdbserver_platform/spec/foc_arm/low.cc
similarity index 100%
rename from repos/ports/src/lib/gdbserver_platform/foc_arm_low.cc
rename to repos/ports/src/lib/gdbserver_platform/spec/foc_arm/low.cc
diff --git a/repos/ports/src/lib/gdbserver_platform/foc_x86_32_low.cc b/repos/ports/src/lib/gdbserver_platform/spec/foc_x86_32/low.cc
similarity index 100%
rename from repos/ports/src/lib/gdbserver_platform/foc_x86_32_low.cc
rename to repos/ports/src/lib/gdbserver_platform/spec/foc_x86_32/low.cc
diff --git a/repos/ports/src/lib/gdbserver_platform/linux_x86_32_low.cc b/repos/ports/src/lib/gdbserver_platform/spec/linux_x86_32/low.cc
similarity index 100%
rename from repos/ports/src/lib/gdbserver_platform/linux_x86_32_low.cc
rename to repos/ports/src/lib/gdbserver_platform/spec/linux_x86_32/low.cc
diff --git a/repos/ports/src/lib/gdbserver_platform/nova_x86_32_low.cc b/repos/ports/src/lib/gdbserver_platform/spec/nova_x86_32/low.cc
similarity index 100%
rename from repos/ports/src/lib/gdbserver_platform/nova_x86_32_low.cc
rename to repos/ports/src/lib/gdbserver_platform/spec/nova_x86_32/low.cc
diff --git a/repos/ports/src/lib/gdbserver_platform/okl4_x86_low.cc b/repos/ports/src/lib/gdbserver_platform/spec/okl4_x86/low.cc
similarity index 100%
rename from repos/ports/src/lib/gdbserver_platform/okl4_x86_low.cc
rename to repos/ports/src/lib/gdbserver_platform/spec/okl4_x86/low.cc
diff --git a/repos/ports/src/lib/gdbserver_platform/pistachio_x86_low.cc b/repos/ports/src/lib/gdbserver_platform/spec/pistachio_x86/low.cc
similarity index 100%
rename from repos/ports/src/lib/gdbserver_platform/pistachio_x86_low.cc
rename to repos/ports/src/lib/gdbserver_platform/spec/pistachio_x86/low.cc
diff --git a/repos/ports/src/virtualbox/frontend/console.h b/repos/ports/src/virtualbox/frontend/console.h
index 193005c984..d0edc50651 100644
--- a/repos/ports/src/virtualbox/frontend/console.h
+++ b/repos/ports/src/virtualbox/frontend/console.h
@@ -18,7 +18,7 @@
#include
#include
-/* included from os/src/drivers/input/ps2 */
+/* included from os/src/drivers/input/spec/ps2 */
#include
/* VirtualBox includes */
diff --git a/repos/ports/src/virtualbox/nova/sup.cc b/repos/ports/src/virtualbox/spec/nova/sup.cc
similarity index 100%
rename from repos/ports/src/virtualbox/nova/sup.cc
rename to repos/ports/src/virtualbox/spec/nova/sup.cc
diff --git a/repos/ports/src/virtualbox/nova/svm.h b/repos/ports/src/virtualbox/spec/nova/svm.h
similarity index 95%
rename from repos/ports/src/virtualbox/nova/svm.h
rename to repos/ports/src/virtualbox/spec/nova/svm.h
index 60c02c88b5..e41343f405 100644
--- a/repos/ports/src/virtualbox/nova/svm.h
+++ b/repos/ports/src/virtualbox/spec/nova/svm.h
@@ -11,8 +11,8 @@
* version 2.
*/
-#ifndef _GENODE_VIRTUALBOX_SVM__H_
-#define _GENODE_VIRTUALBOX_SVM__H_
+#ifndef _VIRTUALBOX__SPEC__NOVA__SVM_H_
+#define _VIRTUALBOX__SPEC__NOVA__SVM_H_
/* based on HWSVMR0.h - adjusted to Genode/Nova */
@@ -109,4 +109,4 @@ static inline bool svm_load_state(Nova::Utcb * utcb, VM * pVM, PVMCPU pVCpu)
#undef GENODE_WRITE_SELREG
-#endif /* _GENODE_VIRTUALBOX_SVM__H_ */
+#endif /* _VIRTUALBOX__SPEC__NOVA__SVM_H_ */
diff --git a/repos/ports/src/virtualbox/nova/vcpu.h b/repos/ports/src/virtualbox/spec/nova/vcpu.h
similarity index 99%
rename from repos/ports/src/virtualbox/nova/vcpu.h
rename to repos/ports/src/virtualbox/spec/nova/vcpu.h
index b7ccc44bfb..2bde860e21 100644
--- a/repos/ports/src/virtualbox/nova/vcpu.h
+++ b/repos/ports/src/virtualbox/spec/nova/vcpu.h
@@ -12,8 +12,8 @@
* version 2.
*/
-#ifndef _VCPU_H__
-#define _VCPU_H__
+#ifndef _VIRTUALBOX__SPEC__NOVA__VCPU_H_
+#define _VIRTUALBOX__SPEC__NOVA__VCPU_H_
/* Genode includes */
#include
@@ -863,4 +863,4 @@ class Vcpu_handler : public Vmm::Vcpu_dispatcher,
}
};
-#endif /* _VCPU_H__ */
+#endif /* _VIRTUALBOX__SPEC__NOVA__VCPU_H_ */
diff --git a/repos/ports/src/virtualbox/nova/vcpu_svm.h b/repos/ports/src/virtualbox/spec/nova/vcpu_svm.h
similarity index 96%
rename from repos/ports/src/virtualbox/nova/vcpu_svm.h
rename to repos/ports/src/virtualbox/spec/nova/vcpu_svm.h
index f6e7a38a73..5b9cb0b628 100644
--- a/repos/ports/src/virtualbox/nova/vcpu_svm.h
+++ b/repos/ports/src/virtualbox/spec/nova/vcpu_svm.h
@@ -11,6 +11,9 @@
* version 2.
*/
+#ifndef _VIRTUALBOX__SPEC__NOVA__VCPU_SVM_H_
+#define _VIRTUALBOX__SPEC__NOVA__VCPU_SVM_H_
+
/* Genode's VirtualBox includes */
#include "vcpu.h"
#include "svm.h"
@@ -126,3 +129,5 @@ class Vcpu_handler_svm : public Vcpu_handler
return svm_load_state(utcb, pVM, pVCpu);
}
};
+
+#endif /* _VIRTUALBOX__SPEC__NOVA__VCPU_SVM_H_ */
diff --git a/repos/ports/src/virtualbox/nova/vcpu_vmx.h b/repos/ports/src/virtualbox/spec/nova/vcpu_vmx.h
similarity index 98%
rename from repos/ports/src/virtualbox/nova/vcpu_vmx.h
rename to repos/ports/src/virtualbox/spec/nova/vcpu_vmx.h
index 8def5d4df5..ea89700a8c 100644
--- a/repos/ports/src/virtualbox/nova/vcpu_vmx.h
+++ b/repos/ports/src/virtualbox/spec/nova/vcpu_vmx.h
@@ -12,6 +12,9 @@
* version 2.
*/
+#ifndef _VIRTUALBOX__SPEC__NOVA__VCPU_VMX_H_
+#define _VIRTUALBOX__SPEC__NOVA__VCPU_VMX_H_
+
/* VirtualBox includes */
#include
@@ -213,3 +216,5 @@ class Vcpu_handler_vmx : public Vcpu_handler
return vmx_load_state(utcb, pVM, pVCpu);
}
};
+
+#endif /* _VIRTUALBOX__SPEC__NOVA__VCPU_VMX_H_ */
diff --git a/repos/ports/src/virtualbox/nova/vmx.h b/repos/ports/src/virtualbox/spec/nova/vmx.h
similarity index 96%
rename from repos/ports/src/virtualbox/nova/vmx.h
rename to repos/ports/src/virtualbox/spec/nova/vmx.h
index 8eed12a686..be6ceadd7b 100644
--- a/repos/ports/src/virtualbox/nova/vmx.h
+++ b/repos/ports/src/virtualbox/spec/nova/vmx.h
@@ -11,8 +11,8 @@
* version 2.
*/
-#ifndef _GENODE_VIRTUALBOX_VMX__H_
-#define _GENODE_VIRTUALBOX_VMX__H_
+#ifndef _VIRTUALBOX__SPEC__NOVA__VMX_H_
+#define _VIRTUALBOX__SPEC__NOVA__VMX_H_
#define GENODE_READ_SELREG_REQUIRED(REG) \
(pCtx->REG.Sel != utcb->REG.sel) || \
@@ -136,4 +136,4 @@ static inline bool vmx_load_state(Nova::Utcb * utcb, VM * pVM, PVMCPU pVCpu)
#undef GENODE_WRITE_SELREG
-#endif /* _GENODE_VIRTUALBOX_VMX__H_ */
+#endif /* _VIRTUALBOX__SPEC__NOVA__VMX_H_ */
diff --git a/repos/ports/src/virtualbox/target.mk b/repos/ports/src/virtualbox/target.mk
index e503fa826b..7b456a66a7 100644
--- a/repos/ports/src/virtualbox/target.mk
+++ b/repos/ports/src/virtualbox/target.mk
@@ -52,4 +52,4 @@ INC_DIR += $(VBOX_DIR)/Main/xml
INC_DIR += $(VBOX_DIR)/Devices/USB
# search path to 'scan_code_set_2.h'
-INC_DIR += $(call select_from_repositories,src/drivers/input/ps2)
+INC_DIR += $(call select_from_repositories,src/drivers/input/spec/ps2)
diff --git a/tool/builddir/build.mk b/tool/builddir/build.mk
index 1e8973f47e..798cc00796 100644
--- a/tool/builddir/build.mk
+++ b/tool/builddir/build.mk
@@ -75,7 +75,7 @@ select_from_repositories = $(firstword $(foreach REP,$(REPOSITORIES),$(wildcard
-include $(call select_from_repositories,etc/specs.conf)
-include $(BUILD_BASE_DIR)/etc/specs.conf
-export SPEC_FILES := $(foreach SPEC,$(SPECS),$(call select_from_repositories,mk/spec-$(SPEC).mk))
+export SPEC_FILES := $(foreach SPEC,$(SPECS),$(call select_from_repositories,mk/spec/$(SPEC).mk))
include $(SPEC_FILES)
export SPECS
diff --git a/tool/run/power_on/qemu b/tool/run/power_on/qemu
index d3eb4be9b1..80761c9062 100644
--- a/tool/run/power_on/qemu
+++ b/tool/run/power_on/qemu
@@ -39,7 +39,7 @@ proc run_power_on { } {
append qemu_args " -serial mon:stdio " }
# tweak emulated platform for specific platforms
- if {[have_spec platform_pbxa9]} {
+ if {[have_spec pbxa9]} {
#
# For PBXA9 qemu adjusts provided RAM chips to the -m arg. Thus we
# filter user values and force value that enables all chips that Genode
@@ -49,15 +49,15 @@ proc run_power_on { } {
append qemu_args " -m 768"
append qemu_args " -M realview-pbx-a9"
}
- if {[have_spec platform_vpb926]} { append qemu_args " -M versatilepb -m 128 " }
- if {[have_spec platform_zynq]} { append qemu_args " -M xilinx-zynq-a9 -cpu cortex-a9 -m 256 " }
+ if {[have_spec vpb926]} { append qemu_args " -M versatilepb -m 128 " }
+ if {[have_spec zynq_qemu]} { append qemu_args " -M xilinx-zynq-a9 -cpu cortex-a9 -m 256 " }
if {[have_spec hw_x86_64]} {
regsub -all {\-m ([0-9])+} $qemu_args "" qemu_args
append qemu_args " -m 512 "
}
# add devices for specific platforms
- if {[have_spec platform_zynq] && [have_spec cadence_gem]} { append qemu_args " -net nic,model=cadence_gem" }
+ if {[have_spec zynq] && [have_spec cadence_gem]} { append qemu_args " -net nic,model=cadence_gem" }
# on x86, we support booting via pxe or iso/disk image
if {[have_spec x86]} {
diff --git a/tool/run/qemu.inc b/tool/run/qemu.inc
index 798a251fcd..a8851cb382 100644
--- a/tool/run/qemu.inc
+++ b/tool/run/qemu.inc
@@ -23,9 +23,9 @@ proc qemu_args { } {
proc is_qemu_available { } {
if {[have_spec linux]} { return false }
- if {[have_spec platform_panda]
- || [have_spec platform_arndale]
- || [have_spec platform_rpi]} {
+ if {[have_spec panda]
+ || [have_spec arndale]
+ || [have_spec rpi]} {
puts stderr "skipping execution because platform is not supported by qemu"
return false
}