* Stephan Diestelhorst
*/
-#include "debug/EnergyCtrl.hh"
#include "dev/arm/energy_ctrl.hh"
+
+#include "debug/EnergyCtrl.hh"
#include "mem/packet.hh"
#include "mem/packet_access.hh"
#include "params/EnergyCtrl.hh"
domainIDIndexToRead(0),
perfLevelAck(0),
perfLevelToRead(0),
- updateAckEvent(this)
+ updateAckEvent([this]{ updatePLAck(); }, name())
{
fatal_if(!p->dvfs_handler, "EnergyCtrl: Needs a DVFSHandler for a "
"functioning system.\n");
{
assert(pkt->getAddr() >= pioAddr && pkt->getAddr() < pioAddr + pioSize);
assert(pkt->getSize() == 4);
- pkt->allocate();
Addr daddr = pkt->getAddr() - pioAddr;
assert((daddr & 3) == 0);
if (!dvfsHandler->isEnabled()) {
// NB: Zero is a good response if the handler is disabled
- pkt->set<uint32_t>(0);
+ pkt->setLE<uint32_t>(0);
warn_once("EnergyCtrl: Disabled handler, ignoring read from reg %i\n",
reg);
DPRINTF(EnergyCtrl, "dvfs handler disabled, return 0 for read from "\
panic("Tried to read EnergyCtrl at offset %#x / reg %i\n", daddr,
reg);
}
- pkt->set<uint32_t>(result);
+ pkt->setLE<uint32_t>(result);
pkt->makeAtomicResponse();
return pioDelay;
}
assert(pkt->getSize() == 4);
uint32_t data;
- data = pkt->get<uint32_t>();
+ data = pkt->getLE<uint32_t>();
Addr daddr = pkt->getAddr() - pioAddr;
assert((daddr & 3) == 0);
}
void
-EnergyCtrl::serialize(std::ostream &os)
+EnergyCtrl::serialize(CheckpointOut &cp) const
{
SERIALIZE_SCALAR(domainID);
SERIALIZE_SCALAR(domainIDIndexToRead);
}
void
-EnergyCtrl::unserialize(Checkpoint *cp, const std::string §ion)
+EnergyCtrl::unserialize(CheckpointIn &cp)
{
UNSERIALIZE_SCALAR(domainID);
UNSERIALIZE_SCALAR(domainIDIndexToRead);