diff --git a/src/dev/arm/gic_v3.cc b/src/dev/arm/gic_v3.cc index e14d1f2bef..cb462f7340 100644 --- a/src/dev/arm/gic_v3.cc +++ b/src/dev/arm/gic_v3.cc @@ -286,6 +286,12 @@ Gicv3::postInt(uint32_t cpu, ArmISA::InterruptTypes int_type) ArmSystem::callClearStandByWfi(tc); } +void +Gicv3::update() +{ + distributor->update(); +} + bool Gicv3::supportsVersion(GicVersion version) { diff --git a/src/dev/arm/gic_v3.hh b/src/dev/arm/gic_v3.hh index 120b0390a6..2ea6a98b3b 100644 --- a/src/dev/arm/gic_v3.hh +++ b/src/dev/arm/gic_v3.hh @@ -206,6 +206,8 @@ class Gicv3 : public BaseGic, public Gicv3Registers void postInt(uint32_t cpu, ArmISA::InterruptTypes int_type); + void update(); + protected: // GIC state transfer void copyGicState(Gicv3Registers* from, Gicv3Registers* to); diff --git a/src/dev/arm/gic_v3_distributor.hh b/src/dev/arm/gic_v3_distributor.hh index 9960e91593..f80800fb0a 100644 --- a/src/dev/arm/gic_v3_distributor.hh +++ b/src/dev/arm/gic_v3_distributor.hh @@ -257,7 +257,6 @@ class Gicv3Distributor : public Serializable void serialize(CheckpointOut & cp) const override; void unserialize(CheckpointIn & cp) override; - void update(); Gicv3CPUInterface* route(uint32_t int_id); public: @@ -274,6 +273,7 @@ class Gicv3Distributor : public Serializable bool is_secure_access); void copy(Gicv3Registers *from, Gicv3Registers *to); + void update(); }; } // namespace gem5