How many bits of ASID/VMID does P550/EIC7700X support? Linux is reporting both as 0-bit, hence the same as disabled (no support). Is it expected? I remember the hifive unmatched and starfive jh7110 also do not support ASID (0-bit), although u74 can be configured to support ASID. Perhaps SoC vendor (ESWIN) decided to configure the core without ASID/VMID? Or there’re some bits in the feature disable CSR that controls the width (disable/enable) of ASID/VMID, and can be programmed?
The P550 cores in the EIC7700X have 0 ASID/VMID bits, so the only valid ASID/VMID value is 0. However, ASID 0 is still a real ASID; there is still a difference between sfence.vma
of ASID 0 (which does not affect global pages) and sfence.vma
without supplying an ASID (which does affect global pages). So it’s not quite accurate to say the cores “do not support ASID”.