Subversion Repositories HelenOS

Rev

Rev 1952 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1952 Rev 2017
Line 59... Line 59...
59
#define XEN_SET_CALLBACKS       4
59
#define XEN_SET_CALLBACKS       4
60
#define XEN_UPDATE_VA_MAPPING   14
60
#define XEN_UPDATE_VA_MAPPING   14
61
#define XEN_EVENT_CHANNEL_OP    16
61
#define XEN_EVENT_CHANNEL_OP    16
62
#define XEN_VERSION             17
62
#define XEN_VERSION             17
63
#define XEN_CONSOLE_IO          18
63
#define XEN_CONSOLE_IO          18
64
#define XEN_VM_ASSIST           21
-
 
65
#define XEN_MMUEXT_OP           26
64
#define XEN_MMUEXT_OP           26
66
 
65
 
67
 
66
 
68
/*
67
/*
69
 * Commands for XEN_CONSOLE_IO
68
 * Commands for XEN_CONSOLE_IO
Line 99... Line 98...
99
#define UVMF_MULTI              0        /**< Flush subset of TLBs */
98
#define UVMF_MULTI              0        /**< Flush subset of TLBs */
100
#define UVMF_LOCAL              0        /**< Flush local TLB */
99
#define UVMF_LOCAL              0        /**< Flush local TLB */
101
#define UVMF_ALL                (1 << 2) /**< Flush all TLBs */
100
#define UVMF_ALL                (1 << 2) /**< Flush all TLBs */
102
 
101
 
103
 
102
 
104
/*
-
 
105
 * Commands to XEN_VM_ASSIST
-
 
106
 */
-
 
107
#define VMASST_CMD_ENABLE               0
-
 
108
#define VMASST_CMD_DISABLE              1
-
 
109
#define VMASST_TYPE_4GB_SEGMENTS        0
-
 
110
#define VMASST_TYPE_4GB_SEGMENTS_NOTIFY 1
-
 
111
#define VMASST_TYPE_WRITABLE_PAGETABLES 2
-
 
112
 
-
 
113
 
-
 
114
#define DOMID_SELF (0x7FF0U)
103
#define DOMID_SELF (0x7FF0U)
115
#define DOMID_IO   (0x7FF1U)
104
#define DOMID_IO   (0x7FF1U)
116
 
105
 
117
 
106
 
118
#define force_evtchn_callback() ((void) xen_version(0, 0))
107
#define force_evtchn_callback() ((void) xen_version(0, 0))
Line 218... Line 207...
218
static inline int xen_console_io(const unsigned int cmd, const unsigned int count, const char *str)
207
static inline int xen_console_io(const unsigned int cmd, const unsigned int count, const char *str)
219
{
208
{
220
    return hypercall3(XEN_CONSOLE_IO, cmd, count, str);
209
    return hypercall3(XEN_CONSOLE_IO, cmd, count, str);
221
}
210
}
222
 
211
 
223
static inline int xen_vm_assist(const unsigned int cmd, const unsigned int type)
-
 
224
{
-
 
225
    return hypercall2(XEN_VM_ASSIST, cmd, type);
-
 
226
}
-
 
227
 
-
 
228
static inline int xen_set_callbacks(const unsigned int event_selector, const void *event_address, const unsigned int failsafe_selector, void *failsafe_address)
212
static inline int xen_set_callbacks(const unsigned int event_selector, const void *event_address, const unsigned int failsafe_selector, void *failsafe_address)
229
{
213
{
230
    return hypercall4(XEN_SET_CALLBACKS, event_selector, event_address, failsafe_selector, failsafe_address);
214
    return hypercall4(XEN_SET_CALLBACKS, event_selector, event_address, failsafe_selector, failsafe_address);
231
}
215
}
232
 
216