Removed ARM11MP - unsupported and non-functional.
authorDavid Cock <david.cock@inf.ethz.ch>
Fri, 28 Aug 2015 15:18:48 +0000 (17:18 +0200)
committerDavid Cock <david.cock@inf.ethz.ch>
Fri, 28 Aug 2015 15:18:48 +0000 (17:18 +0200)
Signed-off-by: David Cock <david.cock@inf.ethz.ch>

hake/ARM11MP.hs [deleted file]
hake/Args.hs
hake/RuleDefs.hs
hake/hake.sh
hake/notes.txt
hake/symbolic_targets.mk
kernel/Hakefile
platforms/Hakefile

diff --git a/hake/ARM11MP.hs b/hake/ARM11MP.hs
deleted file mode 100644 (file)
index 4e3efc8..0000000
+++ /dev/null
@@ -1,166 +0,0 @@
---------------------------------------------------------------------------
--- Copyright (c) 2007-2010, ETH Zurich.
--- All rights reserved.
---
--- This file is distributed under the terms in the attached LICENSE file.
--- If you do not find this file, copies can be found by writing to:
--- ETH Zurich D-INFK, Universit√§tstasse 6, CH-8092 Zurich. Attn: Systems Group.
---
--- Architectural definitions for Barrelfish on ARMv6K ISA.
---
--- The build target is the Realview target on qemu-system-arm with the
--- arm11mpcore CPU.
---
---------------------------------------------------------------------------
-
-module ARM11MP where
-
-import HakeTypes
-import qualified Config
-import qualified ARMv5
-import qualified ArchDefaults
-
--------------------------------------------------------------------------
---
--- Architecture specific definitions for ARMv6
---
--------------------------------------------------------------------------
-
-arch       = "arm11mp"
-archFamily = "arm"
-
-compiler    = Config.arm_cc
-objcopy     = Config.arm_objcopy
-objdump     = Config.arm_objdump
-ar          = Config.arm_ar
-ranlib      = Config.arm_ranlib
-cxxcompiler = Config.arm_cxx
-
-ourCommonFlags = [ Str "-fno-unwind-tables",
-                   Str "-Wno-packed-bitfield-compat",
-                   Str "-mcpu=mpcore",
-                   Str "-mapcs",
-                   Str "-mabi=aapcs-linux",
-                   Str "-ffixed-r9",
-                   Str "-DTHREAD_REGISTER=R9" ]
-
-cFlags = ArchDefaults.commonCFlags 
-         ++ ArchDefaults.commonFlags
-         ++ ourCommonFlags
-
-cxxFlags = ArchDefaults.commonCxxFlags
-           ++ ArchDefaults.commonFlags
-           ++ ourCommonFlags
-
-cDefines = ArchDefaults.cDefines options
-
-ourLdFlags = ARMv5.ourLdFlags
-
-ldFlags = ArchDefaults.ldFlags arch ++ ourLdFlags
-ldCxxFlags = ArchDefaults.ldCxxFlags arch ++ ourLdFlags
-
-stdLibs = ArchDefaults.stdLibs arch ++ [ Str "-lgcc" ]
-
-options = (ArchDefaults.options arch archFamily) { 
-            optFlags = cFlags,
-            optCxxFlags = cxxFlags,
-            optDefines = cDefines,
-            optLdFlags = ldFlags,
-            optLdCxxFlags = ldCxxFlags,
-            optLibs = stdLibs,
-            optInterconnectDrivers = ["lmp"],
-            optFlounderBackends = ["lmp"]
-          }
-
---
--- Compilers
---
-cCompiler = ArchDefaults.cCompiler arch compiler Config.cOptFlags
-cxxCompiler = ArchDefaults.cxxCompiler arch cxxcompiler Config.cOptFlags
-makeDepend = ArchDefaults.makeDepend arch compiler
-makeCxxDepend  = ArchDefaults.makeCxxDepend arch cxxcompiler
-cToAssembler = ArchDefaults.cToAssembler arch compiler Config.cOptFlags
-assembler = ArchDefaults.assembler arch compiler Config.cOptFlags
-archive = ArchDefaults.archive arch
-linker = ArchDefaults.linker arch compiler
-cxxlinker = ArchDefaults.cxxlinker arch cxxcompiler
-
---
--- The kernel is "different"
---
-
-kernelCFlags = [ Str s | s <- [ "-fno-builtin",
-                                "-fno-unwind-tables",
-                                "-nostdinc",
-                                "-std=c99",
-                                "-mcpu=mpcore",
-                                "-mapcs",
-                                "-mabi=aapcs-linux",
-                                "-fPIE",
-                                "-U__linux__",
-                                "-Wall",
-                                "-Wshadow",
-                                "-Wstrict-prototypes",
-                                "-Wold-style-definition",
-                                "-Wmissing-prototypes",
-                                "-Wmissing-declarations",
-                                "-Wmissing-field-initializers",
-                                "-Wredundant-decls",
-                                "-Werror",
-                                "-imacros deputy/nodeputy.h",
-                                "-fpie",
-                                "-fno-stack-check",
-                                "-ffreestanding",
-                                "-fomit-frame-pointer",
-                                "-mno-long-calls",
-                                "-Wmissing-noreturn",
-                                "-mno-apcs-stack-check",
-                                "-mno-apcs-reentrant",
-                                "-msingle-pic-base",
-                                "-mpic-register=r10",
-                                "-DPIC_REGISTER=R10",
-                                "-ffixed-r9",
-                                "-DTHREAD_REGISTER=R9" ]]
-
-kernelLdFlags = [ Str "-Wl,-N",
-                  NStr "-Wl,-Map,", Out arch "kernel.map",
-                  Str "-fno-builtin",
-                  Str "-nostdlib",
-                  Str "-Wl,--fatal-warnings"
-                ]
-
-
---
--- Link the kernel (CPU Driver)
---
-linkKernel :: Options -> [String] -> [String] -> String -> HRule
-linkKernel opts objs libs kbin =
-    let linkscript = "/kernel/linker.lds"
-        kbootable  = kbin ++ ".bin"
-    in
-        Rules [ Rule ([ Str compiler ] ++
-                    map Str Config.cOptFlags ++
-                    [ NStr "-T", In BuildTree arch linkscript,
-                      Str "-o", Out arch kbin
-                    ]
-                    ++ (optLdFlags opts)
-                    ++
-                    [ In BuildTree arch o | o <- objs ]
-                    ++
-                    [ In BuildTree arch l | l <- libs ]
-                    ++
-                    [ Str "-lgcc" ]
-                   ),
-              -- Edit ELF header so qemu-system-arm will treat it as a Linux kernel
-              Rule [ In SrcTree "src" "/tools/arm-mkbootelf.sh",
-                     Str objdump, In BuildTree arch kbin, Out arch (kbootable)],
-              -- Generate kernel assembly dump
-              Rule [ Str (objdump ++ " -d -M reg-names-raw"),
-                    In BuildTree arch kbin, Str ">", Out arch (kbin ++ ".asm")],
-              Rule [ Str "cpp",
-                     NStr "-I", NoDep SrcTree "src" "/kernel/include/arch/arm",
-                     Str "-D__ASSEMBLER__",
-                     Str "-P", In SrcTree "src" "/kernel/arch/arm/linker.lds.in",
-                     Out arch linkscript
-                   ]
-            ]
index d379c35..f45f1cb 100644 (file)
@@ -71,7 +71,8 @@ defaultArgs = Args {
       architectures = allArchitectures
 }
 
-allArchitectures = [ "x86_64", "x86_32", "armv5", "arm11mp", "xscale", "armv7", "armv7-m", "armv8", "k1om" ]
+allArchitectures = [ "x86_64", "x86_32", "armv5", "xscale", "armv7",
+                     "armv7-m", "armv8", "k1om" ]
 allArchitectureFamilies = [ "x86_64", "x86_32", "arm", "k1om" ]
 -- architectures that currently support THC
 thcArchitectures = ["x86_64", "x86_32"]
index d0ba03f..9445a62 100644 (file)
@@ -19,7 +19,6 @@ import qualified X86_64
 import qualified K1om
 import qualified X86_32
 import qualified ARMv5
-import qualified ARM11MP
 import qualified XScale
 import qualified ARMv7
 import qualified ARMv7_M
@@ -87,7 +86,6 @@ options "x86_64" = X86_64.options
 options "k1om" = K1om.options
 options "x86_32" = X86_32.options
 options "armv5" = ARMv5.options
-options "arm11mp" = ARM11MP.options
 options "xscale" = XScale.options
 options "armv7" = ARMv7.options
 options "armv7-m" = ARMv7_M.options
@@ -98,7 +96,6 @@ kernelCFlags "x86_64" = X86_64.kernelCFlags
 kernelCFlags "k1om" = K1om.kernelCFlags
 kernelCFlags "x86_32" = X86_32.kernelCFlags
 kernelCFlags "armv5" = ARMv5.kernelCFlags
-kernelCFlags "arm11mp" = ARM11MP.kernelCFlags
 kernelCFlags "xscale" = XScale.kernelCFlags
 kernelCFlags "armv7" = ARMv7.kernelCFlags
 kernelCFlags "armv7-m" = ARMv7_M.kernelCFlags
@@ -109,7 +106,6 @@ kernelLdFlags "x86_64" = X86_64.kernelLdFlags
 kernelLdFlags "k1om" = K1om.kernelLdFlags
 kernelLdFlags "x86_32" = X86_32.kernelLdFlags
 kernelLdFlags "armv5" = ARMv5.kernelLdFlags
-kernelLdFlags "arm11mp" = ARM11MP.kernelLdFlags
 kernelLdFlags "xscale" = XScale.kernelLdFlags
 kernelLdFlags "armv7" = ARMv7.kernelLdFlags
 kernelLdFlags "armv7-m" = ARMv7_M.kernelLdFlags
@@ -192,7 +188,6 @@ cCompiler opts phase src obj
     | optArch opts == "k1om"    = K1om.cCompiler opts phase src obj
     | optArch opts == "x86_32"  = X86_32.cCompiler opts phase src obj
     | optArch opts == "armv5"   = ARMv5.cCompiler opts phase src obj
-    | optArch opts == "arm11mp" = ARM11MP.cCompiler opts phase src obj
     | optArch opts == "xscale" = XScale.cCompiler opts phase src obj
     | optArch opts == "armv7" = ARMv7.cCompiler opts phase src obj
     | optArch opts == "armv7-m" = ARMv7_M.cCompiler opts phase src obj
@@ -226,8 +221,6 @@ makeDepend opts phase src obj depfile
         X86_32.makeDepend opts phase src obj depfile
     | optArch opts == "armv5" =
         ARMv5.makeDepend opts phase src obj depfile
-    | optArch opts == "arm11mp" =
-        ARM11MP.makeDepend opts phase src obj depfile
     | optArch opts == "xscale" =
         XScale.makeDepend opts phase src obj depfile
     | optArch opts == "armv7" = 
@@ -252,7 +245,6 @@ cToAssembler opts phase src afile objdepfile
     | optArch opts == "k1om"  = K1om.cToAssembler opts phase src afile objdepfile
     | optArch opts == "x86_32"  = X86_32.cToAssembler opts phase src afile objdepfile
     | optArch opts == "armv5"   = ARMv5.cToAssembler opts phase src afile objdepfile
-    | optArch opts == "arm11mp" = ARM11MP.cToAssembler opts phase src afile objdepfile
     | optArch opts == "xscale" = XScale.cToAssembler opts phase src afile objdepfile
     | optArch opts == "armv7" = ARMv7.cToAssembler opts phase src afile objdepfile
     | optArch opts == "armv7-m" = ARMv7_M.cToAssembler opts phase src afile objdepfile
@@ -268,7 +260,6 @@ assembler opts src obj
     | optArch opts == "k1om"  = K1om.assembler opts src obj
     | optArch opts == "x86_32"  = X86_32.assembler opts src obj
     | optArch opts == "armv5"   = ARMv5.assembler opts src obj
-    | optArch opts == "arm11mp" = ARM11MP.assembler opts src obj
     | optArch opts == "xscale" = XScale.assembler opts src obj
     | optArch opts == "armv7" = ARMv7.assembler opts src obj
     | optArch opts == "armv7-m" = ARMv7_M.assembler opts src obj
@@ -281,7 +272,6 @@ archive opts objs libs name libname
     | optArch opts == "k1om"  = K1om.archive opts objs libs name libname
     | optArch opts == "x86_32"  = X86_32.archive opts objs libs name libname
     | optArch opts == "armv5"     = ARMv5.archive opts objs libs name libname
-    | optArch opts == "arm11mp" = ARM11MP.archive opts objs libs name libname
     | optArch opts == "xscale" = XScale.archive opts objs libs name libname
     | optArch opts == "armv7" = ARMv7.archive opts objs libs name libname
     | optArch opts == "armv7-m" = ARMv7_M.archive opts objs libs name libname
@@ -294,7 +284,6 @@ linker opts objs libs bin
     | optArch opts == "k1om" = K1om.linker opts objs libs bin
     | optArch opts == "x86_32" = X86_32.linker opts objs libs bin
     | optArch opts == "armv5"  = ARMv5.linker opts objs libs bin
-    | optArch opts == "arm11mp" = ARM11MP.linker opts objs libs bin
     | optArch opts == "xscale" = XScale.linker opts objs libs bin
     | optArch opts == "armv7" = ARMv7.linker opts objs libs bin
     | optArch opts == "armv7-m" = ARMv7_M.linker opts objs libs bin
@@ -790,7 +779,6 @@ linkKernel opts name objs libs
     | optArch opts == "k1om" = K1om.linkKernel opts objs [libraryPath l | l <- libs ] ("/sbin" </> name)
     | optArch opts == "x86_32" = X86_32.linkKernel opts objs [libraryPath l | l <- libs ] ("/sbin" </> name)
     | optArch opts == "armv5" = ARMv5.linkKernel opts objs [libraryPath l | l <- libs ] ("/sbin" </> name)
-    | optArch opts == "arm11mp" = ARM11MP.linkKernel opts objs [libraryPath l | l <- libs ] ("/sbin" </> name)
     | optArch opts == "xscale" = XScale.linkKernel opts objs [libraryPath l | l <- libs ] ("/sbin" </> name)
     | optArch opts == "armv7" = ARMv7.linkKernel opts objs [libraryPath l | l <- libs ] name
     | optArch opts == "armv7-m" = ARMv7_M.linkKernel opts objs [libraryPath l | l <- libs ] name
index 316622a..6b94a63 100755 (executable)
@@ -34,7 +34,7 @@ usage() {
     echo "  argument specifying the top of the source tree."
     echo ""
     echo "  Known architectures may include: "
-    echo "     x86_64 x86_32 armv5 arm11mp xscale armv7 armv7-m k10m"
+    echo "     x86_64 x86_32 armv5 xscale armv7 armv7-m k10m"
     exit 1;
 }
 
index a502fde..8a1627a 100644 (file)
@@ -54,4 +54,4 @@ data RuleToken = In     TreeRef String String -- Input to the computation
 -----------
 Later: 
 
-data Arch = ARM | ARM11MP | Beehive | SCC | X86_32 | X86_64 
+data Arch = ARM | Beehive | SCC | X86_32 | X86_64 
index 20521b8..47bf723 100644 (file)
@@ -349,11 +349,6 @@ MODULES_armv7=\
        sbin/fish \
        sbin/corectrl
 
-# ARM11MP-specific modules to build by default
-MODULES_arm11mp=\
-       sbin/cpu \
-       sbin/cpu.bin
-
 # construct list of all modules to be built (arch-specific and common for each arch)
 MODULES=$(foreach a,$(HAKE_ARCHS),$(foreach m,$(MODULES_$(a)),$(a)/$(m)) \
                                   $(foreach m,$(MODULES_COMMON),$(a)/$(m))) \
index b0d70a2..22e35fb 100644 (file)
@@ -253,33 +253,6 @@ let
      addLibraries = [ "elf", "cpio" ]
      },
   --
-  -- ARM11MP ARMv6 core, currently unsupported.
-  -- XXX: reorganize sources for ARMv6
-  --
-  cpuDriver {
-     architectures = [ "arm11mp" ],
-     assemblyFiles = [ "arch/armv5/boot.S",
-                       "arch/armv5/exceptions.S",
-                       "arch/paging_cp.S" ],
-     cFiles = [ "arch/arm/exn.c", 
-                "arch/arm/exec.c", 
-                "arch/arm/misc.c", 
-                "arch/arm/phys_mmap.c", 
-                "arch/arm/syscall.c",
-                "arch/armv5/init.c", 
-                "arch/armv5/integrator.c", 
-                "arch/armv5/kludges.c", 
-                "arch/armv5/kputchar.c", 
-                "arch/armv5/pl011_uart.c", 
-                "arch/armv5/paging.c", 
-                "arch/armv5/startup_arch.c" ], 
-     mackerelDevices = [ "arm", 
-                         "arm_icp_pit", 
-                         "arm_icp_pic0", 
-                         "pl011_uart" ],
-     addLibraries = [ "elf", "cpio" ]
-     },
-  --
   -- ARM Gem5 Cortex-A series ARMv7 core
   --
   cpuDriver {
index adfacbb..eedb79a 100644 (file)
@@ -384,10 +384,6 @@ let bin_rcce_lu = [ "/sbin/" ++ f | f <- [
     ([ ("armv5", "/sbin/" ++ f) | f <- [ "cpu", "cpu.bin" ]])
     "Very basic ARMv5 configuration for testing",
 
-    platform "ARM11MP" [ "arm11mp" ]
-    ([ ("arm11mp", "/sbin/" ++ f) | f <- [ "cpu", "cpu.bin" ]])
-    "Very basic ARM11MP configuration for testing",
-
     platform "XScale" [ "xscale" ]
     ([ ("xscale", "/sbin/" ++ f) | f <- [ "cpu_ixp2800", "cpu_ixp2800.bin" ]])
     "Very basic XScale configuration for testing",
@@ -536,13 +532,5 @@ let bin_rcce_lu = [ "/sbin/" ++ f | f <- [
       Str "--initrd", In BuildTree "armv5" "/romfs.cpio",
       Str "--arch", Str "armv5",
       Str "--debug", In SrcTree "tools" "/tools/debug.arm.gdb" ]
-    "Boot QEMU under GDB as an ARMv5-based Integrator/CP board",
-
-    boot "qemu_arm11mp" [ "arm11mp" ] [
-      In SrcTree "tools" "/tools/qemu-wrapper.sh",
-      Str "--kernel", In BuildTree "arm11mp" "/sbin/cpu.bin",
-      Str "--initrd", In BuildTree "arm11mp" "/romfs.cpio",
-      Str "--arch", Str "arm11mp" ]
-    "Boot QEMU as an ARM11MPCore-based Realview board"
-    
+    "Boot QEMU under GDB as an ARMv5-based Integrator/CP board"
  ]