Re: [RFC PATCH] firmware: scmi: Make SCMI arch independent

Michal Simek <[email protected]> Fri, 10 Jul 2026 10:46:15 +0200
Newsgroups org.kernel.vger.arm-scmi,dev.linux.lists.imx,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-clk,org.kernel.vger.linux-doc,org.kernel.vger.linux-gpio,org.kernel.vger.linux-hwmon,org.kernel.vger.linux-iio,org.kernel.vger.linux-kernel,org.kernel.vger.linux-pm
Message-ID <[email protected]>

On 7/10/26 10:38, Sudeep Holla wrote:
> On Fri, Jul 10, 2026 at 09:42:09AM +0200, Michal Simek wrote:
>>
>>
>> On 7/10/26 09:35, Sudeep Holla wrote:
>>> On Fri, Jul 10, 2026 at 09:03:32AM +0200, Michal Simek wrote:
>>>>
>>>>
>>>> On 7/9/26 17:56, Cristian Marussi wrote:
>>>>> On Thu, Jul 09, 2026 at 03:27:00PM +0200, Michal Simek wrote:
>>>>>> On heterogenious systems like AMD/Xilinx FPGA there is a need to talk to
>>>>>> SCMI server from different architectures than ARM that's why remove
>>>>>> ARM/ARM64 Kconfig dependency with also remove ARM from description and
>>>>>> rename folder to reflect it.
>>>>>
>>>>> While I understand dropping the dependency on ARM (I always wanted to do
>>>>> that and test if it worked at all on some otehr archs with QEMU), I am
>>>>> not sure about the whole renaming party ? why is needed just for
>>>>> cosmetic reasons ? it is at the end an arm originated protocol so I dont
>>>>> see it as a being wrong to be named as such even though used by other
>>>>> archs...I have not really strong opinion on this...
>>>>
>>>> I have been in CC on U-Boot RPMI patches which got to my attention because
>>>> I don't want to have another interface for MB-V(riscv-) running in
>>>> programmable logic and have another server in the system doing the same
>>>> thing.
>>>>
>>>
>>> Ah that's interesting. I wasn't aware of that. I still agree with the move
>>> in principle, but how does that align with these:
>>>
>>> drivers/clk/clk-rpmi.c
>>> drivers/irqchip/irq-riscv-rpmi-sysmsi.c
>>> include/linux/mailbox/riscv-rpmi-message.h
>>> drivers/mailbox/riscv-sbi-mpxy-mbox.c(Should be fine as it is just transport)
>>
>> I am having separate discussion on u-boot mailing list about RPMI and it's
>> usage on non riscv architectures because one raised argument was that it is
>> community driver spec compare to SCMI which is owned by ARM. But IMHO only
>> for riscv.
>>
> 
> IIRC in LPC 2024, we did discuss opening up SCMI so that RISCV could use it as
> is instead of copying quite a lot from SCMI for RPMI in some closed groups.
> 
> Here is the summary we got from couple of RISC-V vendors at the time:
> "
> RPMI is comparable to Arm SCMI, but it includes RISC-V-specific services such
> as HART State Management, CPPC, Management Mode, and RAS Agent. The SBI MPXY
> extension enables secure and non-secure system partitions to exchange RPMI
> messages, allows an M-mode RPMI transport to be shared with S-mode, and lets
> hypervisors virtualize RPMI for guests or VMs.
> 
> RPMI development is already well advanced, with much of the client-driver work
> implemented in OpenSBI. Supervisor software can access selected RPMI services
> through SBI MPXY. A permissively licensed reference implementation, librpmi,
> is also available for platform vendors.
> 
> RPMI was created after evaluating Arm SCMI, mainly to support RISC-V-specific
> requirements.
> "
> 
> I didn't pursue it any further following some of these followup discussions
> post LPC 2024.

interesting. It looks like that they even didn't try to ARM about it.

> 
>>>
>>> Now I feel we need some alignment before making $subject move.
>>>
>>>> Based on that we had discussed about it with Vincent and Souvik (we missed
>>>> you there) about using SCMI on non ARM platform and both of them didn't see
>>>> the concern to be marked as ARM only protocol.
>>>> Truth is that some of protocols have ARM in description, file names, etc but
>>>> some of them not. That's why I think it is good time to sync it up and
>>>> enable
>>>> running this protocol on other SOCs.
>>>>
>>>>> ... my concern really is ... wont this full scale rename simply generate
>>>>> a lot of un-needed churn for future fixes and/or backporting ?
>>>> I don't think it is going to be a big problem because it is just git mv
>>>> which git is able to gracefully handle.
>>>>
>>>
>>> Otherwise it may end up being unnecessary churn though I completely agree
>>> with the git/backporting aspects. Just don't want to churn things up until
>>> we have some plan and further changes/users of this move.
>>
>> As I wrote above AMD/Xilinx platform with SCMI server where ARM RPU/APUs
>> (with multiple VMs) and Microblaze-V in programmable logic acting as
>> separate agents is going to be the first user. And for being able to run
>> SCMI on Linux running on Microblaze-V I need enable SCMI on non ARM
>> architecture.
>>
> 
> Ah OK, if the plan is to just use SCMI as is and having "ARM/arm" name is
> a blocker, then sure we can get that done. Hope you are aware of and already
> considered some of the RISC-V specifics listed above and ruled out any of
> those as concerns to use SCMI on RISC-V platforms.

I know that we can't maintain SCMI and RPMI servers running on the same chip 
doing the same things. We don't have space for it and make no sense to duplicate 
testing on it too.

Thanks,
Michal