Move options files from <build_dir>/build_options to build_options/<build_dir>.
[gem5.git] / dev / alpha_console.hh
index b617b64e77e93710c6fdd912b9e0ca9c7430d86f..6236c5713cffbc0b0ed6e8142cfe42aefd95d219 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003 The Regents of The University of Michigan
+ * Copyright (c) 2001-2005 The Regents of The University of Michigan
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -26,7 +26,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-/* @file
+/** @file
  * System Console Interface
  */
 
 #include "dev/alpha_access.h"
 #include "dev/io_device.hh"
 #include "sim/host.hh"
+#include "sim/sim_object.hh"
 
 class BaseCPU;
 class SimConsole;
 class System;
-class TlaserClock;
 class SimpleDisk;
 
-/*
+/**
  * Memory mapped interface to the system console. This device
  * represents a shared data region between the OS Kernel and the
  * System Console.
@@ -72,8 +72,14 @@ class SimpleDisk;
 class AlphaConsole : public PioDevice
 {
   protected:
+    struct Access : public AlphaAccess
+    {
+        void serialize(std::ostream &os);
+        void unserialize(Checkpoint *cp, const std::string &section);
+    };
+
     union {
-        AlphaAccess *alphaAccess;
+        Access *alphaAccess;
         uint8_t *consoleData;
     };
 
@@ -83,16 +89,24 @@ class AlphaConsole : public PioDevice
     /** the system console (the terminal) is accessable from the console */
     SimConsole *console;
 
+    /** a pointer to the system we are running in */
+    System *system;
+
+    /** a pointer to the CPU boot cpu */
+    BaseCPU *cpu;
+
     Addr addr;
     static const Addr size = 0x80; // equal to sizeof(alpha_access);
 
   public:
     /** Standard Constructor */
     AlphaConsole(const std::string &name, SimConsole *cons, SimpleDisk *d,
-                 System *system, BaseCPU *cpu, TlaserClock *clock,
-                 int num_cpus, MemoryController *mmu, Addr addr,
+                 System *s, BaseCPU *c, Platform *platform,
+                 MemoryController *mmu, Addr addr,
                  HierParams *hier, Bus *bus);
 
+    virtual void startup();
+
     /**
      * memory mapped reads and writes
      */