xref: /linux/drivers/firmware/arm_rmm/Kconfig (revision 303bff3637d13f0ecbb280c7cb403470c440a2a6)
102e32115SCatalin Marinas# SPDX-License-Identifier: GPL-2.0-only
24cd84902SAneesh Kumar K.V (Arm)config ARCH_SUPPORTS_RMM
34cd84902SAneesh Kumar K.V (Arm)	bool
44cd84902SAneesh Kumar K.V (Arm)
524657f2cSSteven Priceconfig ARM_RMM_RMI
624657f2cSSteven Price	bool "Realm Management Interface (RMI) Support"
724657f2cSSteven Price	depends on ARCH_SUPPORTS_RMM
824657f2cSSteven Price	help
924657f2cSSteven Price	  Support the Realm Management Monitor (RMM) on Arm systems that
1024657f2cSSteven Price	  implement the Realm Management Extension (RME), as defined by the
1124657f2cSSteven Price	  Arm Confidential Compute Architecture.
1224657f2cSSteven Price
1324657f2cSSteven Price	  The RMM runs at EL2 in the Realm world and provides the Realm
1424657f2cSSteven Price	  Management Interface (RMI) used by a Normal World host to create,
1524657f2cSSteven Price	  manage and run protected virtual machines called Realms. The RMM can
1624657f2cSSteven Price	  also act as a TSM, as defined by the PCIe TDISP and can manage the
1724657f2cSSteven Price	  PCI IDE setup for securing the PCIe links.
1824657f2cSSteven Price
1924657f2cSSteven Price	  This option builds the host-side RMI support used by KVM to detect a
2024657f2cSSteven Price	  compatible RMM, configure it, manage delegated memory and enable
2124657f2cSSteven Price	  Realm guests.
2224657f2cSSteven Price
2324657f2cSSteven Price	  Selecting this option does not by itself make Realm guests available:
2424657f2cSSteven Price	  the system must also provide RME-capable hardware and firmware with a
2524657f2cSSteven Price	  compatible RMM implementation.
26*d0de3a73SCatalin Marinas
274cd84902SAneesh Kumar K.V (Arm)config ARM_RMM_RSI
284cd84902SAneesh Kumar K.V (Arm)	bool "Realm Service Interface (RSI) Support"
294cd84902SAneesh Kumar K.V (Arm)	depends on ARCH_SUPPORTS_RMM
304cd84902SAneesh Kumar K.V (Arm)	default y
314cd84902SAneesh Kumar K.V (Arm)	help
324cd84902SAneesh Kumar K.V (Arm)	  Enable support for running Linux as a Realm guest under a Realm
334cd84902SAneesh Kumar K.V (Arm)	  Management Monitor (RMM), as defined by the Arm Confidential
344cd84902SAneesh Kumar K.V (Arm)	  Compute Architecture.
354cd84902SAneesh Kumar K.V (Arm)
364cd84902SAneesh Kumar K.V (Arm)	  The RMM exposes the Realm Service Interface (RSI) to Realm guests.
374cd84902SAneesh Kumar K.V (Arm)	  Linux uses RSI to negotiate the interface version, obtain the Realm
384cd84902SAneesh Kumar K.V (Arm)	  configuration, and manage the protected or shared state of guest
394cd84902SAneesh Kumar K.V (Arm)	  memory.
40