PLATFORM_INTERRUPT_DELEGATION
WARL平台中断 cause 的委托位;只有实现且已由 mideleg 委托到 HS 的 cause 才可进一步委托给 VS。
这个字段控制什么
- - 平台中断 cause 的委托位;只有实现且已由 mideleg 委托到 HS 的 cause 才可进一步委托给 VS。
hideleg 是 Hypervisor 中断委托位图 CSR。
平台中断 cause 的委托位;只有实现且已由 mideleg 委托到 HS 的 cause 才可进一步委托给 VS。
标准保留位,读取为零。
Shlcofideleg 实现时可委托本地计数器溢出中断;否则读取为零。
标准 S-level guest-external、external、timer 和 software interrupt 对应位为只读零。
分别委托 VS external、timer 和 software interrupt;相应 cause 必须已由 mideleg 委托到 HS。
hideleg 是 Hypervisor 中断委托 CSR。它是 HS/M 侧的 Hypervisor 状态,不是 VS supervisor CSR 副本;guest 访问是否允许由 H 扩展和相关 state-enable/AIA/Sstc/Smcsrind 规则决定。
确认当前软件运行在可访问 Hypervisor CSR 的 M/HS 上下文。
确认定义该 CSR 的 H/AIA/Sstc/Smstateen/Smcsrind 等扩展已经实现。
按官方字段读写;guest 相关访问是否通过或 trap 由对应扩展规则和 state-enable 控制。
不能把 hideleg 当作 VS CSR 副本。它是 H-level CSR;guest/VS 访问相关功能时是否 trap 由 H 扩展和对应可选扩展规则决定。