dev/arm: get rid of AmbaDev namespace
[gem5.git] / src / dev / platform.hh
index 1940dcad61284dbb79d7190ab4f44668515687a6..b3d1bec9fec008eaca9ac93e9228884d89998484 100644 (file)
 #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;
 
@@ -55,22 +55,21 @@ class Platform : public SimObject
     /** Pointer to the interrupt controller */
     IntrControl *intrctrl;
 
-    /** 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 postConsoleInt() = 0;
     virtual void clearConsoleInt() = 0;
-    virtual Tick intrFrequency() = 0;
     virtual void postPciInt(int line);
     virtual void clearPciInt(int line);
     virtual Addr pciToDma(Addr pciAddr) const;
-    virtual Addr calcConfigAddr(int bus, int dev, int func) = 0;
+    virtual Addr calcPciConfigAddr(int bus, int dev, int func) = 0;
+    virtual Addr calcPciIOAddr(Addr addr) = 0;
+    virtual Addr calcPciMemAddr(Addr addr) = 0;
     virtual void registerPciDevice(uint8_t bus, uint8_t dev, uint8_t func,
             uint8_t intr);