mem/physical.cc:
Return 0 for block size. The chunk generator should treat this as a infinite size.
mem/physical.hh:
Add function prototype
mem/port.hh:
Fix function to take no arguments
mem/translating_port.cc:
mem/translating_port.hh:
Remove the memsetBlob because it doesn't exist yet.
--HG--
extra : convert_revision :
dfe352acfc2912ecc9a1ba1863e5666f46b991cc
#if FULL_SYSTEM
PhysicalMemory::PhysicalMemory(const string &n, Range<Addr> range,
MemoryController *mmu, const std::string &fname)
- : FunctionalMemory(n), base_addr(range.start), pmem_size(range.size()),
+ : Memory(n), base_addr(range.start), pmem_size(range.size()),
pmem_addr(NULL)
{
if (pmem_size % TheISA::PageBytes != 0)
int
PhysicalMemory::deviceBlockSize()
{
- //For now the largest accesses we can take are Page Sized
- return VMPageSize;
+ //Can accept anysize request
+ return 0;
}
void
void prot_access_error(Addr addr, int size, const std::string &func);
public:
+ virtual int deviceBlockSize();
// Read/Write arbitrary amounts of data to simulated memory space
virtual void prot_read(Addr addr, uint8_t *p, int size);
/** Function to set the pointer for the peer port.
@todo should be called by the configuration stuff (python).
*/
- Port *getPeer(Port *port) { return peer; }
+ Port *getPeer() { return peer; }
protected:
return No_Fault;
}
+/*
Fault
TranslatingPort::memsetBlobFunctional(Addr addr, uint8_t val, int size)
{
return No_Fault;
}
+*/
Fault
TranslatingPort::writeStringFunctional(Addr addr, const char *str)
public:
Fault readBlobFunctional(Addr addr, uint8_t *p, int size);
Fault writeBlobFunctional(Addr addr, uint8_t *p, int size);
- Fault memsetBlobFunctional(Addr addr, uint8_t val, int size);
+ // Fault memsetBlobFunctional(Addr addr, uint8_t val, int size);
Fault writeStringFunctional(Addr addr, const char *str);
Fault readStringFunctional(std::string &str, Addr addr);