Mixing SCMI and ACPI?

From: Wojciech Bartczak
Date: Fri Feb 04 2022 - 08:33:01 EST


Hi Folks,

I have been working with SCMI for some time now.
Here at Marvell, we use very common software stack.
Mostly ATF, U-Boot and Kernel. With this software stack, SCMI integration is
just a matter of following the common sense.
Recently, the new requirement for supporting ACPI and UEFI has arrived.
The main goal is to have ACPI and platform that works almost the same.

This is where the problem begins. SCMI is quite well-defined for
DT-based environments. Unfortunately, there are not too many mentions
for the UEFI/ACPI based platforms. This is probably caused by the fact that
SCMI overlaps with ACPI in some points like sensors or performance management.
However, SCMI has one single advantage over the ACPI, namely it defines pretty
nice framework for clocks management. ACPI is silent in this regard.
It is just delegating clocks to OSPM. The kernel and OS should be unaware of
the clocks management according to the ACPI spec. This surely does work for x86,
but not so well for ARM.

Wonder, if you had chance discuss using SCMI in ACPI based environments?
I am mostly interested in the description using ACPI tables and eventually
the bindings for ACPI tables. I need something portable and
in line with future development for SCMI.

Now the review of existing threads and forums returns almost nothing.
The SCMI specification wasn't too helpful either.
I did the code review too. But only thing I see are bindings for DT (v5.17-rc2).
It will help greatly if you have any advice or pointer that I could try.
Has anyone done this before?

Thanks,
Wojciech.