[PATCH v8 02/20] dt-bindings: hypervisor: Add MediaTek GenieZone hypervisor

From: Yi-De Wu
Date: Thu Dec 28 2023 - 05:52:24 EST


From: "Yingshiuan Pan" <yingshiuan.pan@xxxxxxxxxxxx>

Add documentation for GenieZone(gzvm) node. This node informs gzvm
driver to start probing if geniezone hypervisor is available and
able to do virtual machine operations.

[Reason to use dt solution]
- The GenieZone hypervisor serves as a vendor model for facilitating platform
virtualization, with an implementation that is independent from Linuxism.
- In contrast to the dt solution, our previous approach involved probing via
hypercall to determine the existence of our hypervisor. However, this method
raised concerns about potentially impacting all systems, including those
without the GenieZone hypervisor embedded[ref].

ref: https://lore.kernel.org/all/2fe0c7f9-55fc-ae63-3631-8526a0212ccd@xxxxxxxxxx/

Signed-off-by: Yingshiuan Pan <yingshiuan.pan@xxxxxxxxxxxx>
Signed-off-by: Liju Chen <liju-clr.chen@xxxxxxxxxxxx>
Signed-off-by: Yi-De Wu <yi-de.wu@xxxxxxxxxxxx>
---
.../hypervisor/mediatek,geniezone-hyp.yaml | 31 +++++++++++++++++++
MAINTAINERS | 1 +
2 files changed, 32 insertions(+)
create mode 100644 Documentation/devicetree/bindings/hypervisor/mediatek,geniezone-hyp.yaml

diff --git a/Documentation/devicetree/bindings/hypervisor/mediatek,geniezone-hyp.yaml b/Documentation/devicetree/bindings/hypervisor/mediatek,geniezone-hyp.yaml
new file mode 100644
index 000000000000..ab89a4c310cb
--- /dev/null
+++ b/Documentation/devicetree/bindings/hypervisor/mediatek,geniezone-hyp.yaml
@@ -0,0 +1,31 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/hypervisor/mediatek,geniezone-hyp.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: MediaTek GenieZone hypervisor
+
+maintainers:
+ - Yingshiuan Pan <yingshiuan.pan@xxxxxxxxxxxx>
+
+description:
+ This interface is designed for integrating GenieZone hypervisor into Android
+ Virtualization Framework(AVF) along with Crosvm as a VMM.
+ It acts like a wrapper for every hypercall to GenieZone hypervisor in
+ order to control guest VM lifecycles and virtual interrupt injections.
+
+properties:
+ compatible:
+ const: mediatek,geniezone-hyp
+
+required:
+ - compatible
+
+additionalProperties: false
+
+examples:
+ - |
+ hypervisor {
+ compatible = "mediatek,geniezone-hyp";
+ };
diff --git a/MAINTAINERS b/MAINTAINERS
index 184a16268032..ac2b1c91f4b5 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -8983,6 +8983,7 @@ GENIEZONE HYPERVISOR DRIVER
M: Yingshiuan Pan <yingshiuan.pan@xxxxxxxxxxxx>
M: Ze-Yu Wang <ze-yu.wang@xxxxxxxxxxxx>
M: Yi-De Wu <yi-de.wu@xxxxxxxxxxxx>
+F: Documentation/devicetree/bindings/hypervisor/mediatek,geniezone-hyp.yaml
F: Documentation/virt/geniezone/

GENWQE (IBM Generic Workqueue Card)
--
2.18.0