debuggers.hg

view xen/include/asm-x86/hvm/domain.h @ 10949:b33c08de3d98

[HVM] Add a concept of HVM parameters to the hypervisor.

Each HVM domain has a space of HVM parameters associated with it,
and these can be manipulated via a new hvm_op hypercall. This means
that the hypervisor no longer needs to parse the hvm_info table, so
remove that code.

Signed-off-by: Steven Smith <ssmith@xensource.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
author kfraser@localhost.localdomain
date Thu Aug 03 13:53:33 2006 +0100 (2006-08-03)
parents da7fe04d8e80
children dc7b56b8cfb5
line source
1 /*
2 * domain.h: HVM per domain definitions
3 *
4 * Copyright (c) 2004, Intel Corporation.
5 * Copyright (c) 2005, International Business Machines Corporation
6 *
7 * This program is free software; you can redistribute it and/or modify it
8 * under the terms and conditions of the GNU General Public License,
9 * version 2, as published by the Free Software Foundation.
10 *
11 * This program is distributed in the hope it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
14 * more details.
15 *
16 * You should have received a copy of the GNU General Public License along with
17 * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
18 * Place - Suite 330, Boston, MA 02111-1307 USA.
19 *
20 */
22 #ifndef __ASM_X86_HVM_DOMAIN_H__
23 #define __ASM_X86_HVM_DOMAIN_H__
25 #include <asm/e820.h>
26 #include <asm/hvm/vpic.h>
27 #include <asm/hvm/vpit.h>
28 #include <asm/hvm/vlapic.h>
29 #include <asm/hvm/vioapic.h>
30 #include <public/hvm/params.h>
32 #define HVM_PBUF_SIZE 80
34 struct hvm_domain {
35 unsigned long shared_page_va;
36 s64 tsc_frequency;
37 struct pl_time pl_time;
39 struct hvm_virpic vpic;
40 struct hvm_vioapic vioapic;
41 struct hvm_io_handler io_handler;
43 unsigned char round_info[256];
44 spinlock_t round_robin_lock;
45 int interrupt_request;
47 int pbuf_index;
48 char pbuf[HVM_PBUF_SIZE];
50 uint64_t params[HVM_NR_PARAMS];
51 };
53 #endif /* __ASM_X86_HVM_DOMAIN_H__ */