summaryrefslogtreecommitdiff
path: root/mem
diff options
context:
space:
mode:
authorAli Saidi <saidi@eecs.umich.edu>2006-04-12 17:46:25 -0400
committerAli Saidi <saidi@eecs.umich.edu>2006-04-12 17:46:25 -0400
commit81a735a7166f206848a3ec5f7a8153336347f3ae (patch)
tree4ef2b22e8600b7fa66cc108b3c5b4c1f202e308a /mem
parent08d9e0ea7ad5f6a0addd711bc4ff14cff2789170 (diff)
downloadgem5-81a735a7166f206848a3ec5f7a8153336347f3ae.tar.xz
fs now gets to the point where it would really like a filesystem.
Time to make the ide device work arch/alpha/system.cc: write the machine type and rev in the correct place cpu/simple/cpu.cc: reset the packet structure every time it's reused... wow the simple cpu code for talking to memory is getting horrible. dev/alpha_console.cc: move the setAlphaAccess to startup() to make sure that the console binary is loaded dev/tsunami_cchip.cc: dev/tsunami_pchip.cc: dev/uart8250.cc: fix a couple of bugs injected in the newmem fixes mem/bus.cc: More verbose bus tracing mem/packet.hh: Add a constructor to packet to set the result to unknown and a reset method in the case it's being reused mem/vport.hh: don't need are own read/write methods since the base functional port ones call writeBlob readBlob which do the translation for us --HG-- extra : convert_revision : 8d0e2b782bfbf13dc5c59dab1a79a084d2a7da0a
Diffstat (limited to 'mem')
-rw-r--r--mem/bus.cc1
-rw-r--r--mem/packet.hh6
-rw-r--r--mem/vport.hh33
3 files changed, 7 insertions, 33 deletions
diff --git a/mem/bus.cc b/mem/bus.cc
index 8031dae96..5e84beb83 100644
--- a/mem/bus.cc
+++ b/mem/bus.cc
@@ -57,6 +57,7 @@ Bus::findPort(Addr addr, int id)
if (portList[i].range == addr) {
dest_id = portList[i].portId;
found = true;
+ DPRINTF(Bus, "Found Addr: %llx on device %d\n", addr, dest_id);
}
i++;
}
diff --git a/mem/packet.hh b/mem/packet.hh
index 91e56385d..843d34ac0 100644
--- a/mem/packet.hh
+++ b/mem/packet.hh
@@ -128,6 +128,12 @@ struct Packet
/** Accessor function that returns the destination index of
the packet. */
short getDest() const { return dest; }
+
+ Packet()
+ : result(Unknown)
+ {}
+
+ void reset() { result = Unknown; }
};
#endif //__MEM_PACKET_HH
diff --git a/mem/vport.hh b/mem/vport.hh
index da036b981..fbc230ba3 100644
--- a/mem/vport.hh
+++ b/mem/vport.hh
@@ -63,39 +63,6 @@ class VirtualPort : public FunctionalPort
*/
bool nullExecContext() { return xc != NULL; }
- /** Write a piece of data into a virtual address.
- * @param vaddr virtual address to write to
- * @param data data to write
- */
- template <typename T>
- inline void write(Addr vaddr, T data)
- {
- Addr paddr;
- if (xc)
- paddr = TheISA::vtophys(xc,vaddr);
- else
- paddr = TheISA::vtophys(vaddr);
-
- FunctionalPort::write(paddr, data);
- }
-
- /** Read data from a virtual address and return it.
- * @param vaddr address to read
- * @return data read
- */
-
- template <typename T>
- inline T read(Addr vaddr)
- {
- Addr paddr;
- if (xc)
- paddr = TheISA::vtophys(xc,vaddr);
- else
- paddr = TheISA::vtophys(vaddr);
-
- return FunctionalPort::read<T>(paddr);
- }
-
/** Version of readblob that translates virt->phys and deals
* with page boundries. */
virtual void readBlob(Addr addr, uint8_t *p, int size);