riscv-non-isa / riscv-iommu

RISC-V IOMMU Specification
https://jira.riscv.org/browse/RVG-55
Creative Commons Attribution 4.0 International
72 stars 14 forks source link

When an IOMMU interrupt occurs, is icvec configured by hardware or software? #351

Closed 18772820305 closed 3 weeks ago

18772820305 commented 4 weeks ago

Interrupt-cause-to-vector register maps a cause to a vector. All causes can be mapped to the same vector or a cause can be given a unique vector. When an IOMMU interrupt occurs, is icvec configured by hardware or software?

ved-rivos commented 4 weeks ago

Usually in most devices, configurations are provided by software. Hardware may have defaults for certain configurations. In case of the RISC-V IOMMU, reset defaults are specified for a small set of configuration as listed in section 5.2. For the register fields not explicitly listed in section 5.2, the reset default is UNSPECIFIED. The section 6.2 of the specification includes guidelines on initializing the IOMMU registers.

Please see the following sections to understand how the icvec is used:

Issue #299 has some additional information that may be helpful in understanding how the icvec works.

ved-rivos commented 3 weeks ago

Hope that helped. Please feel free to ask if there are further questions.