X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fdev%2Farm%2Fenergy_ctrl.cc;h=ba2d3e942297fe6d05e807913f90507a903f7038;hb=5c891178b9e96df79bf03ccd758747b20dc2654e;hp=cbfa5aa79272bcd9995258e782ebb07342a8c3aa;hpb=04e51e5e3e0d2c8af658e5ae29a240a0aac78f6e;p=gem5.git diff --git a/src/dev/arm/energy_ctrl.cc b/src/dev/arm/energy_ctrl.cc index cbfa5aa79..ba2d3e942 100644 --- a/src/dev/arm/energy_ctrl.cc +++ b/src/dev/arm/energy_ctrl.cc @@ -39,8 +39,9 @@ * 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" @@ -53,7 +54,7 @@ EnergyCtrl::EnergyCtrl(const Params *p) 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"); @@ -64,7 +65,6 @@ EnergyCtrl::read(PacketPtr pkt) { assert(pkt->getAddr() >= pioAddr && pkt->getAddr() < pioAddr + pioSize); assert(pkt->getSize() == 4); - pkt->allocate(); Addr daddr = pkt->getAddr() - pioAddr; assert((daddr & 3) == 0); @@ -72,7 +72,7 @@ EnergyCtrl::read(PacketPtr pkt) if (!dvfsHandler->isEnabled()) { // NB: Zero is a good response if the handler is disabled - pkt->set(0); + pkt->setLE(0); warn_once("EnergyCtrl: Disabled handler, ignoring read from reg %i\n", reg); DPRINTF(EnergyCtrl, "dvfs handler disabled, return 0 for read from "\ @@ -141,7 +141,7 @@ EnergyCtrl::read(PacketPtr pkt) panic("Tried to read EnergyCtrl at offset %#x / reg %i\n", daddr, reg); } - pkt->set(result); + pkt->setLE(result); pkt->makeAtomicResponse(); return pioDelay; } @@ -153,7 +153,7 @@ EnergyCtrl::write(PacketPtr pkt) assert(pkt->getSize() == 4); uint32_t data; - data = pkt->get(); + data = pkt->getLE(); Addr daddr = pkt->getAddr() - pioAddr; assert((daddr & 3) == 0); @@ -217,7 +217,7 @@ EnergyCtrl::write(PacketPtr pkt) } void -EnergyCtrl::serialize(std::ostream &os) +EnergyCtrl::serialize(CheckpointOut &cp) const { SERIALIZE_SCALAR(domainID); SERIALIZE_SCALAR(domainIDIndexToRead); @@ -229,7 +229,7 @@ EnergyCtrl::serialize(std::ostream &os) } void -EnergyCtrl::unserialize(Checkpoint *cp, const std::string §ion) +EnergyCtrl::unserialize(CheckpointIn &cp) { UNSERIALIZE_SCALAR(domainID); UNSERIALIZE_SCALAR(domainIDIndexToRead);