[PATCH v6] Add virtio SCMI device specification
Souvik Chakravarty
Souvik.Chakravarty at arm.com
Tue Feb 16 11:48:30 EST 2021
> From: Russell King - ARM Linux admin <linux at armlinux.org.uk>
> Sent: Tuesday, February 16, 2021 4:12 PM
>
> On Fri, Feb 12, 2021 at 10:59:20AM +0100, Peter Hilber wrote:
> > This patch proposes a new virtio device for the Arm SCMI protocol.
> >
> > The device provides a simple transport for the Arm SCMI protocol[1].
> > The *S*ystem *C*ontrol and *M*anagement *I*nterface protocol allows
> > speaking to system controllers that allow orchestrating things like
> > power management, system state management and sensor access. The
> SCMI
> > protocol is used on SoCs where multiple cores and co-processors need
> > access to these resources.
> >
> > The virtio transport allows making use of this protocol in virtualized
> > systems.
> >
> > [1] https://developer.arm.com/docs/den0056/c
> >
> > Signed-off-by: Peter Hilber <peter.hilber at opensynergy.com>
>
> I'm not too familiar with SCMI, but I think this question is worth asking...
>
> If the SCMI protocol can be used to control system level power management,
> and if the intention is to expose this firmware interface to virtualised guests,
> what prevents a guest from controlling the power settings for stuff it should
> not have access to?
>
> For example, if it's possible to tell the system to power down a critical host
> component through SCMI, what would prevent a guest requesting that
> critical component from having its power cut?
Short summary:
SCMI as a protocol has built in requirements where only the resources (specific clock, sensor etc.)
which are specifically needed by a VM are exposed to it. Resources are mapped by Identifiers and if
the VM tries to access an identifier which it does not have access to, the SCMI backend
can simply ignore or return DENIED. At no point is direct access to any power mgmt. hardware
granted to any VM, nor is a VM supposed to have global access to all system resources.
There is always a firmware backend which controls the hardware and services
SCMI command requests from agents/guests, after due validation.
The SCMI device/firmware which implements the SCMI backend, is responsible for implementing these
resource isolation guarantees.
Regards,
Souvik
>
> I hope I'm barking up the wrong tree...
>
> --
> RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
> FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!
More information about the linux-arm-kernel
mailing list