Go to the documentation of this file.
71 warn_once(
"A9SCU with >4 CPUs is unsupported");
73 "Too many CPUs (%d) for A9SCU!", threads);
75 int smp_bits, core_cnt;
76 smp_bits = (1 << threads) - 1;
77 core_cnt = threads - 1;
78 pkt->
setLE(smp_bits << 4 | core_cnt);
83 panic(
"Tried to read SCU at offset %#x\n", daddr);
100 warn(
"Tried to write SCU at offset %#x\n", daddr);
108 A9SCUParams::create()
110 return new A9SCU(
this);
void makeAtomicResponse()
Addr pioAddr
Address that the device listens to.
virtual Tick read(PacketPtr pkt)
Handle a read to the device.
uint64_t Tick
Tick count type.
Addr pioSize
Size that the device's address range.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
Tick pioDelay
Delay that the device experinces on an access.
void setLE(T v)
Set the value in the data pointer to v as little endian.
A9SCU(Params *p)
The constructor for RealView just registers itself with the MMU.
#define fatal_if(cond,...)
Conditional fatal macro that checks the supplied condition and only causes a fatal error if the condi...
virtual Tick write(PacketPtr pkt)
All writes are panic.
#define panic(...)
This implements a cprintf based panic() function.
Generated on Wed Sep 30 2020 14:02:10 for gem5 by doxygen 1.8.17