>> Document optional property "riscv,hart-indexes" >That is obvious reading the diff. Why do you need this? I say it briefly in the description for the property. In more details this is described in the other patch comment - for code that uses this property. Is it better to repeat more detailed description in this patch comment as well? >Also, what happens when this property is not present? Logical hart index get used, i.e. index in the "extended-interrupts" Shall I add full explanation to this patch comment? This one, it is a comment from the 2-nd patch in this set: Risc-V APLIC specification defines "hart index" in [1]: Within a given interrupt domain, each of the domain’s harts has a unique index number in the range 0 to 2^14 − 1 (= 16,383). The index number a domain associates with a hart may or may not have any relationship to the unique hart identifier (“hart ID”) that the RISC-V Privileged Architecture assigns to the hart. Two different interrupt domains may employ entirely different index numbers for the same set of harts. Further, this document says in "4.5 Memory-mapped control region for an interrupt domain": The array of IDC structures may include some for potential hart index numbers that are not actual hart index numbers in the domain. For example, the first IDC structure is always for hart index 0, but 0 is not necessarily a valid index number for any hart in the domain. Support arbitrary hart indexes specified in optional APLIC property "riscv,hart-indexes" that should be array of u32 elements, one per interrupt target. If this property not specified, fallback is to use logical hart indexes within the domain. [1]: https://github.com/riscv/riscv-aia Thanks, Vladimir