dev-arm: Add read/writeBanked helpers to GICv3
These will be used by AA64 security banked registers in GICv3. Change-Id: Ia980c4f5c14187ab9c18da1d1d596562644111ae Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/20624 Maintainer: Andreas Sandberg <andreas.sandberg@arm.com> Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
@@ -1623,6 +1623,20 @@ Gicv3CPUInterface::setMiscReg(int misc_reg, RegVal val)
|
||||
}
|
||||
}
|
||||
|
||||
RegVal
|
||||
Gicv3CPUInterface::readBankedMiscReg(MiscRegIndex misc_reg) const
|
||||
{
|
||||
return isa->readMiscRegNoEffect(
|
||||
isa->snsBankedIndex64(misc_reg, !isSecureBelowEL3()));
|
||||
}
|
||||
|
||||
void
|
||||
Gicv3CPUInterface::setBankedMiscReg(MiscRegIndex misc_reg, RegVal val) const
|
||||
{
|
||||
isa->setMiscRegNoEffect(
|
||||
isa->snsBankedIndex64(misc_reg, !isSecureBelowEL3()), val);
|
||||
}
|
||||
|
||||
int
|
||||
Gicv3CPUInterface::virtualFindActive(uint32_t int_id) const
|
||||
{
|
||||
|
||||
@@ -338,6 +338,8 @@ class Gicv3CPUInterface : public ArmISA::BaseISADevice, public Serializable
|
||||
void virtualUpdate();
|
||||
RegVal bpr1(Gicv3::GroupId group);
|
||||
|
||||
RegVal readBankedMiscReg(MiscRegIndex misc_reg) const;
|
||||
void setBankedMiscReg(MiscRegIndex misc_reg, RegVal val) const;
|
||||
public:
|
||||
|
||||
Gicv3CPUInterface(Gicv3 * gic, uint32_t cpu_id);
|
||||
|
||||
Reference in New Issue
Block a user