xref: /netbsd-src/sys/arch/xen/include/xenio.h (revision 23c8222edbfb0f0932d88a8351d3a0cf817dfb9e)
1 /*	$NetBSD: xenio.h,v 1.1 2004/05/07 15:51:04 cl Exp $	*/
2 
3 /*
4  *
5  * Copyright (c) 2003, 2004 Keir Fraser (on behalf of the Xen team)
6  * All rights reserved.
7  *
8  * Permission is hereby granted, free of charge, to any person obtaining a copy
9  * of this software and associated documentation files (the "Software"), to
10  * deal in the Software without restriction, including without limitation the
11  * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
12  * sell copies of the Software, and to permit persons to whom the Software is
13  * furnished to do so, subject to the following conditions:
14  *
15  * The above copyright notice and this permission notice shall be included in
16  * all copies or substantial portions of the Software.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
24  * DEALINGS IN THE SOFTWARE.
25  */
26 
27 
28 #ifndef __SYS_XENIO_H__
29 #define __SYS_XENIO_H__
30 
31 typedef struct privcmd_hypercall {
32 	unsigned long	op;
33 	unsigned long	arg[5];
34 } privcmd_hypercall_t;
35 
36 typedef struct privcmd_blkmsg {
37 	unsigned long	op;
38 	void		*buf;
39 	int		buf_size;
40 } privcmd_blkmsg_t;
41 
42 #define IOCTL_PRIVCMD_HYPERCALL \
43 	_IOC(IOC_IN, 'P', 0, sizeof(privcmd_hypercall_t))
44 #define IOCTL_PRIVCMD_BLKMSG \
45 	_IOC(IOC_VOID, 'P', 1, sizeof(privcmd_blkmsg_t))
46 
47 #endif /* __SYS_XENIO_H__ */
48