xen: Port Xen event channel driver from mini-os
[platform/kernel/u-boot.git] / include / xen / hvm.h
1 /* SPDX-License-Identifier: GPL-2.0
2  *
3  * Simple wrappers around HVM functions
4  *
5  * Copyright (c) 2002-2003, K A Fraser
6  * Copyright (c) 2005, Grzegorz Milos, gm281@cam.ac.uk,Intel Research Cambridge
7  * Copyright (c) 2020, EPAM Systems Inc.
8  */
9 #ifndef XEN_HVM_H__
10 #define XEN_HVM_H__
11
12 #include <asm/xen/hypercall.h>
13 #include <xen/interface/hvm/params.h>
14 #include <xen/interface/xen.h>
15
16 extern struct shared_info *HYPERVISOR_shared_info;
17
18 int hvm_get_parameter(int idx, uint64_t *value);
19 int hvm_get_parameter_maintain_dcache(int idx, uint64_t *value);
20
21 struct shared_info *map_shared_info(void *p);
22 void do_hypervisor_callback(struct pt_regs *regs);
23 void mask_evtchn(uint32_t port);
24 void unmask_evtchn(uint32_t port);
25 void clear_evtchn(uint32_t port);
26
27 #endif /* XEN_HVM_H__ */