X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=OvmfPkg%2FXenBusDxe%2FEventChannel.h;h=4dcc20f73bfc9989159eae70112fd83c11b229fe;hb=bae5ddc057959f264cfedad2b512afc770b1ee7f;hp=5f3171d7ca289b36ec47e41f4c375ecb62be71c7;hpb=f1259bba3647beb30b7c5e2e7dbe6ba060814912;p=mirror_edk2.git diff --git a/OvmfPkg/XenBusDxe/EventChannel.h b/OvmfPkg/XenBusDxe/EventChannel.h index 5f3171d7ca..4dcc20f73b 100644 --- a/OvmfPkg/XenBusDxe/EventChannel.h +++ b/OvmfPkg/XenBusDxe/EventChannel.h @@ -33,4 +33,56 @@ XenEventChannelNotify ( IN evtchn_port_t Port ); +/* + * XenBus protocol + */ + +/** + Allocate a port that can be bind from domain DomainId. + + @param This A pointer to the XENBUS_PROTOCOL. + @param DomainId The domain ID that can bind the newly allocated port. + @param Port A pointer to a evtchn_port_t that will contain the newly + allocated port. + + @retval UINT32 The return value from the hypercall, 0 if success. +**/ +UINT32 +EFIAPI +XenBusEventChannelAllocate ( + IN XENBUS_PROTOCOL *This, + IN domid_t DomainId, + OUT evtchn_port_t *Port + ); + +/** + Send an event to the remote end of the channel whose local endpoint is Port. + + @param This A pointer to the XENBUS_PROTOCOL. + @param Port Local port to the the event from. + + @retval UINT32 The return value from the hypercall, 0 if success. +**/ +UINT32 +EFIAPI +XenBusEventChannelNotify ( + IN XENBUS_PROTOCOL *This, + IN evtchn_port_t Port + ); + +/** + Close a local event channel Port. + + @param This A pointer to the XENBUS_PROTOCOL. + @param Port The event channel to close. + + @retval UINT32 The return value from the hypercall, 0 if success. +**/ +UINT32 +EFIAPI +XenBusEventChannelClose ( + IN XENBUS_PROTOCOL *This, + IN evtchn_port_t Port + ); + #endif