[PATCH] riscv: Add AIA extension support (Smaia, Ssaia)

Nelson Chu nelson@rivosinc.com
Fri Nov 18 09:34:06 GMT 2022


On Fri, Nov 18, 2022 at 5:08 PM Christoph Müllner
<christoph.muellner@vrull.eu> wrote:
>
>
>
> On Fri, Nov 18, 2022 at 9:12 AM Nelson Chu <nelson@rivosinc.com> wrote:
>>
>> > +DECLARE_CSR(hvien, CSR_HVIEN, CSR_CLASS_SMAIA_AND_H, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
>> > +DECLARE_CSR(hvictl, CSR_HVICTL, CSR_CLASS_SMAIA_AND_H, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
>> > +DECLARE_CSR(hviprio1, CSR_HVIPRIO1, CSR_CLASS_SMAIA_AND_H, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
>> > +DECLARE_CSR(hviprio2, CSR_HVIPRIO2, CSR_CLASS_SMAIA_AND_H, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
>> > +DECLARE_CSR(hidelegh, CSR_HIDELEGH, CSR_CLASS_SMAIA_AND_H_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
>> > +DECLARE_CSR(hvienh, CSR_HVIENH, CSR_CLASS_SMAIA_AND_H_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
>> > +DECLARE_CSR(hviph, CSR_HVIPH, CSR_CLASS_SMAIA_AND_H_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
>> > +DECLARE_CSR(hviprio1h, CSR_HVIPRIO1H, CSR_CLASS_SMAIA_AND_H_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
>> > +DECLARE_CSR(hviprio2h, CSR_HVIPRIO2H, CSR_CLASS_SMAIA_AND_H_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
>>
>> Just curious does the spec clarify these belonged to smaia? or should
>> these just belonged to h?
>
>
> The AIA spec says:
> "If a hart implements the Privileged Architecture’s hypervisor extension, then the hypervisor and
> VS CSRs listed in Table 2.3 are also added"
>
> So I think the way it is modeled is correct.

So if we only enable ssaia and h, then we can only use virtual
supervisor aia CSRs, but cannot use the hypervisor aia?  If that true,
then looks good.

Thanks
Nelson


More information about the Binutils mailing list