38#ifndef __DEV_ARM_CSS_MHU_H__
39#define __DEV_ARM_CSS_MHU_H__
47struct Ap2ScpDoorbellParams;
52struct Scp2ApDoorbellParams;
67 void update(uint32_t new_val);
148 MHU(
const MHUParams &
p);
void clearInterrupt() override
void raiseInterrupt() override
Ap2ScpDoorbell(const Ap2ScpDoorbellParams &p)
Generic representation of an Arm interrupt pin.
BasicPioDevice(const Params &p, Addr size)
Doorbell(const DoorbellParams &p)
Tick write(PacketPtr pkt) override
Pure virtual function that the device must implement.
Tick read(PacketPtr pkt) override
Pure virtual function that the device must implement.
static const uint32_t SVI_INT
uint32_t read32(const Addr addr, bool secure_access)
@ CPU_INTR_L_STAT
From Application Processor to SCP.
@ SCP_INTR_L_STAT
From SCP to Application Processor.
AddrRangeList getAddrRanges() const override
Determine the address ranges that this device responds to.
MhuDoorbell(const DoorbellParams &p)
virtual void raiseInterrupt()=0
void update(uint32_t new_val)
virtual void clearInterrupt()=0
void raiseInterrupt() override
Scp2ApDoorbell(const Scp2ApDoorbellParams &p)
ArmInterruptPin * interrupt
void clearInterrupt() override
std::list< AddrRange > AddrRangeList
Convenience typedef for a collection of address ranges.
Copyright (c) 2024 Arm Limited 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.