|
| | KvmKernelGicV3 (KvmVM &vm, const MuxingKvmGicV3Params ¶ms) |
| | Instantiate a KVM in-kernel GICv3 model. More...
|
| |
| void | init () override |
| |
| uint32_t | readDistributor (Addr daddr) override |
| |
| uint32_t | readRedistributor (const ArmISA::Affinity &aff, Addr daddr) override |
| |
| RegVal | readCpu (const ArmISA::Affinity &aff, ArmISA::MiscRegIndex misc_reg) override |
| |
| void | writeDistributor (Addr daddr, uint32_t data) override |
| |
| void | writeRedistributor (const ArmISA::Affinity &aff, Addr daddr, uint32_t data) override |
| |
| void | writeCpu (const ArmISA::Affinity &aff, ArmISA::MiscRegIndex misc_reg, RegVal data) override |
| |
| | KvmKernelGic (KvmVM &vm, uint32_t dev, unsigned it_lines) |
| | Instantiate a KVM in-kernel GIC model. More...
|
| |
| virtual | ~KvmKernelGic () |
| |
| | KvmKernelGic (const KvmKernelGic &other)=delete |
| |
| | KvmKernelGic (const KvmKernelGic &&other)=delete |
| |
| KvmKernelGic & | operator= (const KvmKernelGic &&rhs)=delete |
| |
| KvmKernelGic & | operator= (const KvmKernelGic &rhs)=delete |
| |
| void | setSPI (unsigned spi) |
| | Raise a shared peripheral interrupt. More...
|
| |
| void | clearSPI (unsigned spi) |
| | Clear a shared peripheral interrupt. More...
|
| |
| void | setPPI (unsigned vcpu, unsigned ppi) |
| | Raise a private peripheral interrupt. More...
|
| |
| void | clearPPI (unsigned vcpu, unsigned ppi) |
| | Clear a private peripheral interrupt. More...
|
| |
|
| template<typename Ret > |
| Ret | getGicReg (unsigned group, unsigned mpidr, unsigned offset) |
| | Get value of GIC register "from" a cpu. More...
|
| |
| template<typename Arg > |
| void | setGicReg (unsigned group, unsigned mpidr, unsigned offset, Arg value) |
| | Set value of GIC register "from" a cpu. More...
|
| |
| void | setIntState (unsigned type, unsigned vcpu, unsigned irq, bool high) |
| | Update the kernel's VGIC interrupt state. More...
|
| |
|
| static void | copyDistRegister (Gicv3Registers *from, Gicv3Registers *to, Addr daddr) |
| |
| static void | copyRedistRegister (Gicv3Registers *from, Gicv3Registers *to, const ArmISA::Affinity &aff, Addr daddr) |
| |
| static void | copyCpuRegister (Gicv3Registers *from, Gicv3Registers *to, const ArmISA::Affinity &aff, ArmISA::MiscRegIndex misc_reg) |
| |
| static void | clearRedistRegister (Gicv3Registers *to, const ArmISA::Affinity &aff, Addr daddr) |
| |
| static void | copyRedistRange (Gicv3Registers *from, Gicv3Registers *to, const ArmISA::Affinity &aff, Addr daddr, size_t size) |
| |
| static void | copyDistRange (Gicv3Registers *from, Gicv3Registers *to, Addr daddr, size_t size) |
| |
| static void | clearDistRange (Gicv3Registers *to, Addr daddr, size_t size) |
| |
| KvmVM & | vm |
| | KVM VM in the parent system. More...
|
| |
| KvmDevice | kdev |
| | Kernel interface to the GIC. More...
|
| |
Definition at line 191 of file gic.hh.