1/* $NetBSD: xenbus.h,v 1.1.1.2 2011/12/07 14:41:17 cegger Exp $ */
2/*****************************************************************************
3 * xenbus.h
4 *
5 * Xenbus protocol details.
6 *
7 * Permission is hereby granted, free of charge, to any person obtaining a copy
8 * of this software and associated documentation files (the "Software"), to
9 * deal in the Software without restriction, including without limitation the
10 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
11 * sell copies of the Software, and to permit persons to whom the Software is
12 * furnished to do so, subject to the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included in
15 * all copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
22 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
23 * DEALINGS IN THE SOFTWARE.
24 *
25 * Copyright (C) 2005 XenSource Ltd.
26 */
27
28#ifndef _XEN_PUBLIC_IO_XENBUS_H
29#define _XEN_PUBLIC_IO_XENBUS_H
30
31/*
32 * The state of either end of the Xenbus, i.e. the current communication
33 * status of initialisation across the bus. States here imply nothing about
34 * the state of the connection between the driver and the kernel's device
35 * layers.
36 */
37enum xenbus_state {
38 XenbusStateUnknown = 0,
39
40 XenbusStateInitialising = 1,
41
42 /*
43 * InitWait: Finished early initialisation but waiting for information
44 * from the peer or hotplug scripts.
45 */
46 XenbusStateInitWait = 2,
47
48 /*
49 * Initialised: Waiting for a connection from the peer.
50 */
51 XenbusStateInitialised = 3,
52
53 XenbusStateConnected = 4,
54
55 /*
56 * Closing: The device is being closed due to an error or an unplug event.
57 */
58 XenbusStateClosing = 5,
59
60 XenbusStateClosed = 6,
61
62 /*
63 * Reconfiguring: The device is being reconfigured.
64 */
65 XenbusStateReconfiguring = 7,
66
67 XenbusStateReconfigured = 8
68};
69typedef enum xenbus_state XenbusState;
70
71#endif /* _XEN_PUBLIC_IO_XENBUS_H */
72
73/*
74 * Local variables:
75 * mode: C
76 * c-set-style: "BSD"
77 * c-basic-offset: 4
78 * tab-width: 4
79 * indent-tabs-mode: nil
80 * End:
81 */
82