[PATCH v2 0/5] Add support for RPMI to U-Boot
Charles Perry
charles.perry at microchip.com
Thu Jul 9 16:54:37 CEST 2026
On Thu, Jul 09, 2026 at 03:02:11PM +0200, Michal Simek wrote:
>
>
> On 7/8/26 23:51, Charles Perry wrote:
> > Hello,
> >
> > This series adds support for RISC-V Platform Management Interface (RPMI) to
> > U-Boot. RPMI is an OS-agnostic protocol for communication between an
> > Application Processor (AP) and a Platform Microcontroller (PuC) [1]. The
> > goals and purpose of RPMI are similar to ARM's SCMI.
>
> From the first look it looks like SCMI. Why do you introducing something
> what can be replaced by SCMI?
> And SCMI has only specific ARM transport layer but the rest is arch independent.
Yes, there are alot of similarities between RPMI and SCMI. I found some
justification for this in some Linux Plumbers slide deck on RISC-V power
management by Paul Walmsley [1]:
* The hardware is more sophisticated
* The software is more sophisticated
* Some stakeholders haven’t had input in the past
* RISC-V “big tent” philosophy
I think this is referring to the SBI spec of RISC-V vs arm's PSCI but the
same arguments may as well apply to RPMI vs SCMI.
Some other arguments:
* The microcontroller side is made easier with RPMI because of librpmi [2].
SCMI has SCP-firmware [3] which is a quite complex project compared to
librpmi. Also SCP-firmware doesn't accept contribution anymore.
* RPMI is already in Linux.
For what I'm doing, RPMI is what gave me the first results (controlling
clocks) the quickest because all the pieces were present in Linux, OpenSBI
and librpmi. There are however lots of missing service drivers in Linux and
some other important OS like u-boot don't have support for RPMI at all. So
even though I gave you a bunch of reason for saying yes to RPMI, I do have
some doubt about how long it will take to bring RPMI on par with SCMI,
making the SCMI-for-RISCV transport that you suggest more appealing.
[1]: https://lpc.events/event/2/contributions/197/attachments/133/165/RISC-V_Platform_Power_Management.pdf (slide 22)
[2]: https://github.com/riscv-software-src/librpmi
[3]: https://gitlab.arm.com/firmware/SCP-firmware
>
> In our case where we have Microblaze V in programmable logic I can't see any
> reason to use RPMI for talking to the same server if I need to do it from
> ARM side too via SCMI.
>
> I pretty much think that there should be communication with ARM and instead
> of creating another firmware interface talk to each other and have only one
> which can be used across multiple architectures.
>
> Thanks,
> Michal
Thanks,
Charles
More information about the U-Boot
mailing list