Re: [RISC-V] [tech-config] Architecture extension proposal for ConfigPtr CSR to "Unified RISC-V Discovery Method" config structure

Jonathan Behrens <behrensj@...>

On Mon, Jun 28, 2021 at 4:51 PM Greg Favor via <> wrote:
On Mon, Jun 28, 2021 at 1:39 PM Jonathan Behrens <behrensj@...> wrote:
Why does it need to be a CSR? In other parts of the boot flow the device tree pointer is passed via a normal general purpose register. Why can't the same be done here?

That's one example of a high-level discovery method used by, for example, some Linux systems.  This low-level discovery method is used by early boot flow software and is used to populate implementation-specific information into the Device Tree (or ACPI) structure that is going to be passed to the OS.

In general, the nature of both low and high level discovery methods within the broad range of RISC-V-based systems is not the subject of this extension.  Architecting and/or standardizing those is the purview of other groups.  But insofar as it has been deemed necessary by various people that RVI develop a standard RISC-V low-level discovery method usable across a wide range of RISC-V systems, this extension provides the one needed ISA hook.

I'm not sure I follow. I understand that the low-level and high-level discovery mechanisms are different, but is there a reason that the pointer to the low-level discovery method needs to be passed via a CSR? Instead, couldn't we just say for instance, "at boot register a5 contains a pointer to the low-level configuration structure."


Join to automatically receive all group messages.