47 struct ControlConversionRegister
49 ControlConversionRegister()
61 pkt->req->setFlags(Request::PRIVILEGED);
63 pkt->req->clearFlags(Request::PRIVILEGED);
67 pkt->req->setFlags(Request::SECURE);
69 pkt->req->clearFlags(Request::SECURE);
73 pkt->req->setFlags(Request::INST_FETCH);
75 pkt->req->clearFlags(Request::INST_FETCH);
138 std::shared_ptr<gem5::AtomicOpFunctor>
o,
bool r)
139 :
op(
o), returnRequired(
r)
184 : privileged(false), secure(false), instruction(false), qos(0)
186 [[maybe_unused]]
static ControlConversionRegister *conversion_register =
187 new ControlConversionRegister();
tlm_extension_base * clone() const override
void copy_from(const tlm_extension_base &ext) override
static AtomicExtension & getExtension(const tlm::tlm_generic_payload *payload)
AtomicExtension(std::shared_ptr< gem5::AtomicOpFunctor > o, bool r)
std::shared_ptr< gem5::AtomicOpFunctor > op
bool isReturnRequired() const
gem5::AtomicOpFunctor * getAtomicOpFunctor() const
static ControlExtension & getExtension(const tlm::tlm_generic_payload *payload)
tlm_extension_base * clone() const override
bool isPrivileged() const
void setPrivileged(bool p)
bool isInstruction() const
void setInstruction(bool i)
void copy_from(const tlm_extension_base &ext) override
static Gem5Extension & getExtension(const tlm::tlm_generic_payload *payload)
Gem5Extension(gem5::PacketPtr p)
tlm_extension_base * clone() const override
gem5::PacketPtr getPacket()
void copy_from(const tlm_extension_base &ext) override
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
uint8_t qosValue() const
QoS Value getter Returns 0 if QoS value was never set (constructor default).
RequestPtr req
A pointer to the original request.
void get_extension(T *&ext) const
constexpr RegId o(int index)
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
void addPayloadToPacketConversionStep(PayloadToPacketConversionStep step)
Notify the Tlm2Gem5 bridge that we need an extra step to properly convert a tlm payload to gem5 packe...
void addPacketToPayloadConversionStep(PacketToPayloadConversionStep step)
Notify the Gem5ToTlm bridge that we need an extra step to properly convert a gem5 packet to tlm paylo...