1 /******************************************************************************
4 * Xen version, type, and compile information.
6 * Copyright (c) 2005, Nguyen Anh Quynh <aquynh@gmail.com>
7 * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
10 #ifndef __XEN_PUBLIC_VERSION_H__
11 #define __XEN_PUBLIC_VERSION_H__
13 /* NB. All ops return zero on success, except XENVER_version. */
15 /* arg == NULL; returns major:minor (16:16). */
16 #define XENVER_version 0
18 /* arg == xen_extraversion_t. */
19 #define XENVER_extraversion 1
20 struct xen_extraversion {
21 char extraversion[16];
23 #define XEN_EXTRAVERSION_LEN (sizeof(struct xen_extraversion))
25 /* arg == xen_compile_info_t. */
26 #define XENVER_compile_info 2
27 struct xen_compile_info {
30 char compile_domain[32];
31 char compile_date[32];
34 #define XENVER_capabilities 3
35 struct xen_capabilities_info {
38 #define XEN_CAPABILITIES_INFO_LEN (sizeof(struct xen_capabilities_info))
40 #define XENVER_changeset 4
41 struct xen_changeset_info {
44 #define XEN_CHANGESET_INFO_LEN (sizeof(struct xen_changeset_info))
46 #define XENVER_platform_parameters 5
47 struct xen_platform_parameters {
48 unsigned long virt_start;
51 #define XENVER_get_features 6
52 struct xen_feature_info {
53 unsigned int submap_idx; /* IN: which 32-bit submap to return */
54 uint32_t submap; /* OUT: 32-bit submap */
57 /* Declares the features reported by XENVER_get_features. */
60 /* arg == NULL; returns host memory page size. */
61 #define XENVER_pagesize 7
63 #endif /* __XEN_PUBLIC_VERSION_H__ */