dev: Delete the authors list from files in src/dev.
[gem5.git] / src / dev / platform.hh
index 0e6f4ba4a86d5bcf794a97db20f50fdd67327759..ba5322a090a95282dbad176e08e7bcd59dcad5e9 100644 (file)
@@ -24,9 +24,6 @@
  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Authors: Andrew Schultz
- *          Nathan Binkert
  */
 
 /**
 #ifndef __DEV_PLATFORM_HH__
 #define __DEV_PLATFORM_HH__
 
+#include <bitset>
+#include <set>
+
+#include "params/Platform.hh"
 #include "sim/sim_object.hh"
-#include "arch/isa_traits.hh"
 
-class PciConfigAll;
 class IntrControl;
-class SimConsole;
+class Terminal;
 class Uart;
 class System;
 
+
 class Platform : public SimObject
 {
   public:
     /** Pointer to the interrupt controller */
     IntrControl *intrctrl;
 
-    /** Pointer to the PCI configuration space */
-    PciConfigAll *pciconfig;
-
-    /** Pointer to the UART, set by the uart */
-    Uart *uart;
-
-    /** Pointer to the system for info about the memory system. */
-    System *system;
-
   public:
-    Platform(const std::string &name, IntrControl *intctrl);
+    typedef PlatformParams Params;
+    Platform(const Params *p);
     virtual ~Platform();
-    virtual void init() { if (pciconfig == NULL) panic("PCI Config not set"); }
+
+    /**
+     * Cause the cpu to post a serial interrupt to the CPU.
+     */
     virtual void postConsoleInt() = 0;
+
+    /**
+     * Clear a posted CPU interrupt
+     */
     virtual void clearConsoleInt() = 0;
-    virtual Tick intrFrequency() = 0;
+
+
+    /**
+     * Cause the chipset to post a cpi interrupt to the CPU.
+     */
     virtual void postPciInt(int line);
+
+    /**
+     * Clear a posted PCI->CPU interrupt
+     */
     virtual void clearPciInt(int line);
-    virtual Addr pciToDma(Addr pciAddr) const;
 };
 
 #endif // __DEV_PLATFORM_HH__