1*4dbfe546STejas Mutalikdesai# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*4dbfe546STejas Mutalikdesai%YAML 1.2 3*4dbfe546STejas Mutalikdesai--- 4*4dbfe546STejas Mutalikdesai$id: http://devicetree.org/schemas/arm/xen.yaml# 5*4dbfe546STejas Mutalikdesai$schema: http://devicetree.org/meta-schemas/core.yaml# 6*4dbfe546STejas Mutalikdesai 7*4dbfe546STejas Mutalikdesaititle: Xen hypervisor 8*4dbfe546STejas Mutalikdesai 9*4dbfe546STejas Mutalikdesaimaintainers: 10*4dbfe546STejas Mutalikdesai - Stefano Stabellini <sstabellini@kernel.org> 11*4dbfe546STejas Mutalikdesai 12*4dbfe546STejas Mutalikdesaidescription: 13*4dbfe546STejas Mutalikdesai Xen ARM virtual platforms shall have a top-level "hypervisor" node with 14*4dbfe546STejas Mutalikdesai the properties defined below. 15*4dbfe546STejas Mutalikdesai 16*4dbfe546STejas Mutalikdesaiproperties: 17*4dbfe546STejas Mutalikdesai $nodename: 18*4dbfe546STejas Mutalikdesai pattern: '^hypervisor(@[0-9a-f]+)?$' 19*4dbfe546STejas Mutalikdesai 20*4dbfe546STejas Mutalikdesai compatible: 21*4dbfe546STejas Mutalikdesai description: 22*4dbfe546STejas Mutalikdesai Specifies the Xen hypervisor. The version of the Xen ABI is encoded 23*4dbfe546STejas Mutalikdesai in the first item as "xen,xen-<version>", followed by the generic 24*4dbfe546STejas Mutalikdesai "xen,xen" string. 25*4dbfe546STejas Mutalikdesai items: 26*4dbfe546STejas Mutalikdesai - pattern: '^xen,xen-[0-9]+\.[0-9]+$' 27*4dbfe546STejas Mutalikdesai - const: xen,xen 28*4dbfe546STejas Mutalikdesai 29*4dbfe546STejas Mutalikdesai reg: 30*4dbfe546STejas Mutalikdesai description: | 31*4dbfe546STejas Mutalikdesai Base physical address and size of the regions in memory where special 32*4dbfe546STejas Mutalikdesai resources should be mapped to, using a HYPERVISOR_memory_op hypercall. 33*4dbfe546STejas Mutalikdesai 34*4dbfe546STejas Mutalikdesai Region 0 is reserved for mapping the grant table and must always be 35*4dbfe546STejas Mutalikdesai present. The memory region must be large enough to map the whole grant 36*4dbfe546STejas Mutalikdesai table (it is larger or equal to gnttab_max_grant_frames()). 37*4dbfe546STejas Mutalikdesai 38*4dbfe546STejas Mutalikdesai Regions 1...N are extended regions (unused address space) for mapping 39*4dbfe546STejas Mutalikdesai foreign GFNs and grants. They might be absent if there is nothing to 40*4dbfe546STejas Mutalikdesai expose. 41*4dbfe546STejas Mutalikdesai minItems: 1 42*4dbfe546STejas Mutalikdesai 43*4dbfe546STejas Mutalikdesai interrupts: 44*4dbfe546STejas Mutalikdesai description: 45*4dbfe546STejas Mutalikdesai The interrupt used by Xen to inject event notifications. 46*4dbfe546STejas Mutalikdesai A GIC node is also required. 47*4dbfe546STejas Mutalikdesai maxItems: 1 48*4dbfe546STejas Mutalikdesai 49*4dbfe546STejas Mutalikdesai uefi: 50*4dbfe546STejas Mutalikdesai type: object 51*4dbfe546STejas Mutalikdesai description: 52*4dbfe546STejas Mutalikdesai Node populated by Xen to support UEFI on Xen ARM virtual platforms. 53*4dbfe546STejas Mutalikdesai The format and meaning of the "xen,uefi-*" parameters are similar to 54*4dbfe546STejas Mutalikdesai those in Documentation/arch/arm/uefi.rst, but are provided by the Xen 55*4dbfe546STejas Mutalikdesai hypervisor together with a set of UEFI runtime services implemented via 56*4dbfe546STejas Mutalikdesai hypercalls. 57*4dbfe546STejas Mutalikdesai 58*4dbfe546STejas Mutalikdesai properties: 59*4dbfe546STejas Mutalikdesai xen,uefi-system-table: 60*4dbfe546STejas Mutalikdesai description: Guest physical address of the UEFI System Table. 61*4dbfe546STejas Mutalikdesai $ref: /schemas/types.yaml#/definitions/uint64 62*4dbfe546STejas Mutalikdesai 63*4dbfe546STejas Mutalikdesai xen,uefi-mmap-start: 64*4dbfe546STejas Mutalikdesai description: Guest physical address of the UEFI memory map. 65*4dbfe546STejas Mutalikdesai $ref: /schemas/types.yaml#/definitions/uint64 66*4dbfe546STejas Mutalikdesai 67*4dbfe546STejas Mutalikdesai xen,uefi-mmap-size: 68*4dbfe546STejas Mutalikdesai description: Size in bytes of the UEFI memory map pointed to by xen,uefi-mmap-start. 69*4dbfe546STejas Mutalikdesai $ref: /schemas/types.yaml#/definitions/uint32 70*4dbfe546STejas Mutalikdesai 71*4dbfe546STejas Mutalikdesai xen,uefi-mmap-desc-size: 72*4dbfe546STejas Mutalikdesai description: Size in bytes of each entry in the UEFI memory map. 73*4dbfe546STejas Mutalikdesai $ref: /schemas/types.yaml#/definitions/uint32 74*4dbfe546STejas Mutalikdesai 75*4dbfe546STejas Mutalikdesai xen,uefi-mmap-desc-ver: 76*4dbfe546STejas Mutalikdesai description: Version of the mmap descriptor format. 77*4dbfe546STejas Mutalikdesai $ref: /schemas/types.yaml#/definitions/uint32 78*4dbfe546STejas Mutalikdesai 79*4dbfe546STejas Mutalikdesai required: 80*4dbfe546STejas Mutalikdesai - xen,uefi-system-table 81*4dbfe546STejas Mutalikdesai - xen,uefi-mmap-start 82*4dbfe546STejas Mutalikdesai - xen,uefi-mmap-size 83*4dbfe546STejas Mutalikdesai - xen,uefi-mmap-desc-size 84*4dbfe546STejas Mutalikdesai - xen,uefi-mmap-desc-ver 85*4dbfe546STejas Mutalikdesai 86*4dbfe546STejas Mutalikdesai additionalProperties: false 87*4dbfe546STejas Mutalikdesai 88*4dbfe546STejas Mutalikdesairequired: 89*4dbfe546STejas Mutalikdesai - compatible 90*4dbfe546STejas Mutalikdesai - reg 91*4dbfe546STejas Mutalikdesai - interrupts 92*4dbfe546STejas Mutalikdesai 93*4dbfe546STejas MutalikdesaiadditionalProperties: false 94*4dbfe546STejas Mutalikdesai 95*4dbfe546STejas Mutalikdesaiexamples: 96*4dbfe546STejas Mutalikdesai - | 97*4dbfe546STejas Mutalikdesai hypervisor@b0000000 { 98*4dbfe546STejas Mutalikdesai compatible = "xen,xen-4.3", "xen,xen"; 99*4dbfe546STejas Mutalikdesai reg = <0xb0000000 0x20000>; 100*4dbfe546STejas Mutalikdesai interrupts = <1 15 0xf08>; 101*4dbfe546STejas Mutalikdesai 102*4dbfe546STejas Mutalikdesai uefi { 103*4dbfe546STejas Mutalikdesai xen,uefi-system-table = /bits/ 64 <0x1301415>; 104*4dbfe546STejas Mutalikdesai xen,uefi-mmap-start = /bits/ 64 <0x7591400>; 105*4dbfe546STejas Mutalikdesai xen,uefi-mmap-size = <0x1800>; 106*4dbfe546STejas Mutalikdesai xen,uefi-mmap-desc-size = <0x30>; 107*4dbfe546STejas Mutalikdesai xen,uefi-mmap-desc-ver = <1>; 108*4dbfe546STejas Mutalikdesai }; 109*4dbfe546STejas Mutalikdesai }; 110*4dbfe546STejas Mutalikdesai... 111