/*
- * Copyright (c) 2004 The Regents of The University of Michigan
+ * Copyright (c) 2004-2005 The Regents of The University of Michigan
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef __IO_DEVICE_HH__
-#define __IO_DEVICE_HH__
+#ifndef __DEV_IO_DEVICE_HH__
+#define __DEV_IO_DEVICE_HH__
-#include "mem/functional_mem/functional_memory.hh"
+#include "mem/functional/functional.hh"
class BaseInterface;
class Bus;
class HierParams;
-template <class Bus> class DMAInterface;
+class Platform;
+template <class BusType> class DMAInterface;
class PioDevice : public FunctionalMemory
{
protected:
+ Platform *platform;
BaseInterface *pioInterface;
+ Tick pioLatency;
public:
- PioDevice(const std::string &name);
+ PioDevice(const std::string &name, Platform *p);
virtual ~PioDevice();
};
DMAInterface<Bus> *dmaInterface;
public:
- DmaDevice(const std::string &name);
+ DmaDevice(const std::string &name, Platform *p);
virtual ~DmaDevice();
};
-#endif // __IO_DEVICE_HH__
+#endif // __DEV_IO_DEVICE_HH__