xref: /freebsd-src/sys/contrib/device-tree/Bindings/reserved-memory/xen,shared-memory.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot* Xen hypervisor reserved-memory binding
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotExpose one or more memory regions as reserved-memory to the guest
4*c66ec88fSEmmanuel Vadotvirtual machine. Typically, a region is configured at VM creation time
5*c66ec88fSEmmanuel Vadotto be a shared memory area across multiple virtual machines for
6*c66ec88fSEmmanuel Vadotcommunication among them.
7*c66ec88fSEmmanuel Vadot
8*c66ec88fSEmmanuel VadotFor each of these pre-shared memory regions, a range is exposed under
9*c66ec88fSEmmanuel Vadotthe /reserved-memory node as a child node. Each range sub-node is named
10*c66ec88fSEmmanuel Vadotxen-shmem@<address> and has the following properties:
11*c66ec88fSEmmanuel Vadot
12*c66ec88fSEmmanuel Vadot- compatible:
13*c66ec88fSEmmanuel Vadot	compatible = "xen,shared-memory-v1"
14*c66ec88fSEmmanuel Vadot
15*c66ec88fSEmmanuel Vadot- reg:
16*c66ec88fSEmmanuel Vadot	the base guest physical address and size of the shared memory region
17*c66ec88fSEmmanuel Vadot
18*c66ec88fSEmmanuel Vadot- xen,offset: (borrower VMs only)
19*c66ec88fSEmmanuel Vadot	64 bit integer offset within the owner virtual machine's shared
20*c66ec88fSEmmanuel Vadot	memory region used for the mapping in the borrower VM.
21*c66ec88fSEmmanuel Vadot
22*c66ec88fSEmmanuel Vadot- xen,id:
23*c66ec88fSEmmanuel Vadot	a string that identifies the shared memory region as specified in
24*c66ec88fSEmmanuel Vadot	the VM config file
25