Tony Feng <tony.fengkai <at> gmail.com> writes:

> 
> 
> Hi,
> 
> In M5Port::recvFunctional of RubyPort.cc, if the isPhysMemAddress test fails, 
does it necessarily mean it is a packet sent to a pio port?
> 
> I added some debugging info, found the packet has an invalid source id, and a 
destination address of 0x80000000, whereas I believe the system port range is 0 
- 0x7ffffff. Could anyone share thoughts on this?
> 
> 
> Thanks,
> Tony
> 
> 
> 
> _______________________________________________
> gem5-users mailing list
> gem5-users <at> gem5.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users


I believe I've found where went wrong, but still don't know the solution.

Since I was running ARM FS with Ruby, the bootloader needs to be setup:
info: Using bootloader at address 0x80000000

this msg was shown immediately after I caught a functional access for address 
0x8000000. 

Maybe something is wrong with the bootloader setup. The way that I implemented 
it in FSConfig.py is:
self.realview.nvmem = PhysicalMemory(range = AddrRange(Addr('2GB'), size = 
'64MB'), zero = True)
self.boot_loader = binary('boot.arm')
self.boot_loader_mem = self.realview.nvmem
self.realview.nvmem.port = self.piobus.master

where the piobus is directly connected to the memory:
self.piobus.master = physmem.port

Could anyone observe anything wrong here? Or could anyone explain why a request 
has the address of the bootloader?

Thanks,
Tony

_______________________________________________
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to