Re: M-Platform/CSI-Base naming

Darius Rad


The Common Software Interface concept seems like it could be a promising
idea, but at this point, that appears to be all it is: an idea. Whether
that idea is fully realized into something that is suitable as the
cornerstone of a platform remains to be seen. I think titling the platform
that way at this point is premature and sets up false expectations. You
said that "CSI was chosen as an unencumbered term", yet every time I have
heard it described, it was something along the lines of "CMSIS, but for
RISC-V", which, to me at least, carries a fair set of assumptions.

On the other hand, you said that a variety of things with respect to the
planning of the Common Software Interface have been communicated up through
leadership at RISC-V. If I understand correctly, that is a driving factor
in retitling the platform to match. If that is the case, it is a little
unclear to me what role this committee has had or is expected to have in
influencing this process. If RISC-V leadership has already decided that
this CSI approach will be followed, then I suppose they could also dictate
the name.

I think evolving the platform previously called M will have some of the
same challenges I have mentioned previously. Inconsistency within and
between the Platform Policy, the Specification, and statements in the
meetings as well as terminology that is not clearly defined make it
difficult to make progress in improving the specification. For example,
the Platform Policy indicates that the purpose of a policy is to ensure
binary compatibility, but you are saying that the goal of the platform
previously called M is specifically not that. As another example, it has
been repeated stated that there are no optional requirements in the
Platform Specification, but there are many such requirements in the
platform previously called M. The Platform Policy is conspicuously silent
on the matter, as well as not having a definition for terms like

// darius

On Mon, Nov 15, 2021 at 12:10:33PM -0800, Kumar Sankaran wrote:
+ platforms mailing list



*From:* Philipp Tomsich <philipp.tomsich@...>
*Sent:* Monday, November 15, 2021 9:25 AM
*To:* darius@...
*Cc:* Kumar Sankaran <ksankaran@...>
*Subject:* M-Platform/CSI-Base naming


As indicated, I'd like to fully understand your thoughts on the M platform
and how it could evolve. Note that defining this platform does not
preclude us from adding other deeply-embedded platforms in the future.

Maybe, to start, let me summarize what has been communicated already to
various stakeholders:

1. It will be based on the RVM profile (which gives us a lot of options and
very few guarantees).

2. We want to provide source code compatibility (for some parts of the
source code).

The blueprint for this was ARM's CMSIS… i.e., a software interface spec
that allows portability for software on uCs in deeply embedded use cases.

Assumption 1 (RVM) precludes us from having anything resembling binary

Note that CSI was chosen as an unencumbered term to mean "Common Software

Given that we'll have a large number of extensions to the basic CSI (e.g.
an abstraction of crypto-operations, security features, NN, etc.), the
model is similar to the ISA: a small CSI with many extensions for specific

This plan and specification scope have been communicated all the way up to
the BoD in early summer. The lack of a draft document should not preclude
us from communicating this plan and scope to the ecosystem at Summit — and
this should be what drives any discussion on the naming.

That said: please share your concerns and thoughts…


Join { to automatically receive all group messages.