Thread (4 messages) 4 messages, 3 authors, 2021-11-02

Re: SCMI protocol for interconnect scaling

From: Georgi Djakov <djakov@kernel.org>
Date: 2021-11-01 17:05:38

On 25.10.21 17:55, Souvik Chakravarty wrote:
Thanks Georgi for initiating this.
Don’t have too much to add, just some initial thinking on my part below.
quoted
From: Georgi Djakov <djakov@kernel.org>
Sent: Thursday, October 21, 2021 12:06 PM


Hi all,

I am recently getting questions about hooking the interconnect framework to
SCMI, so i am starting a discussion on this problem and see who might be
interested in it.

The SCMI spec contains various protocols like the "Performance domain
management protocol". But none of the protocols mentioned in the current
spec (3.0) seem to fit well into the concept we are using to scale interconnect
bandwidth in Linux. I see that people are working in this area and there is
already some support for clocks, resets etc. I am wondering what would be the
right approach to support also interconnect bus scaling via SCMI.
You are right - the current Performance Domain Mgmt. Protocol is not fit for
purpose for this requirement.
quoted
The interconnect framework is part of the linux kernel and it's goal is to manage
the hardware and tune it to the most optimal power- performance profile
according to the aggregated bandwidth demand between the various endpoints
in the system (SoC). This is based on the requests coming from consumer drivers.

As interconnects scaling does not map directly to any of the currently available
protocols in the SCMI spec, i am curious whether there is work in progress on
some other protocol that could support managing resources based on path
endpoints (instead of a single ID). The interconnect framework doesn't populate
every possible path, but it exposes endpoints to client drivers and the path
lookup is dynamic, based on what the clients request. Maybe the SCMI host
could also expose all possible endpoints and let the guest request a path from
the host, based on those endpoints.

There are already suggestions to create vendor-specific SCMI protocols for that,
but i fear that we may end up with more than one protocol for the same thing,
so that's why it might be best to discuss it in public and have a common solution
that works for everyone.
+1. If there is a common requirement to be found that is always the best. Vendor specific
protocols might end up with extensibility issues once a similar protocol gets
supported in a future version of the specification.
Thanks Souvik! Maybe we should try to implement a vendor protocol as
a starting point? I am adding more people who might be interested in
SCMI - folks that have interconnect drivers already merged or in the
process or doing that. The goal is to see who is interested in this
and to figure out a list of requirements for the new protocol.

Apologies to people not interested in ARM's System Control and 
Management Interface. Please ignore this email.

Thanks,
Georgi
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help