31#include "debug/LupioSYS.hh"
33#include "params/LupioSYS.hh"
65 panic(
"Unexpected write to the LupioRTC device at address %d!",
77 "Read request - addr: %#x, size: %#x\n", daddr, pkt->
getSize());
Addr pioAddr
Address that the device listens to.
Tick pioDelay
Delay that the device experinces on an access.
LupioSYS: A Real-Time System Controller virtual device which provides a way for the software to halt ...
uint8_t lupioSYSRead(const uint8_t addr)
void lupioSYSWrite(const uint8_t addr, const uint64_t val64)
Tick read(PacketPtr pkt) override
Implement BasicPioDevice virtual functions.
Tick write(PacketPtr pkt) override
Pure virtual function that the device must implement.
LupioSYS(const Params ¶ms)
const ByteOrder byteOrder
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
void setUintX(uint64_t w, ByteOrder endian)
Set the value in the word w after truncating it to the length of the packet and then byteswapping it ...
void makeResponse()
Take a request packet and modify it in place to be suitable for returning as a response to that reque...
uint64_t getUintX(ByteOrder endian) const
Get the data in the packet byte swapped from the specified endianness and zero-extended to 64 bits.
#define panic(...)
This implements a cprintf based panic() function.
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
uint64_t Tick
Tick count type.
void exitSimLoopNow(const std::string &message, int exit_code, Tick repeat, bool serialize)
Schedule an event as above, but make it high priority so it runs before any normal events which are s...