1 /* controlvmcompletionstatus.c
2  *
3  * Copyright (C) 2010 - 2015 UNISYS CORPORATION
4  * All Rights Reserved.
5  *
6  * This program is free software; you can redistribute it and/or modify it
7  * under the terms and conditions of the GNU General Public License,
8  * version 2, as published by the Free Software Foundation.
9  *
10  * This program is distributed in the hope that it will be useful, but
11  * WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or
13  * NON INFRINGEMENT.  See the GNU General Public License for more
14  * details.
15  */
16 
17 /*  Defines for all valid values returned in the response message header
18  *  completionStatus field.  See controlvmchannel.h for description of
19  *  the header: _CONTROLVM_MESSAGE_HEADER.
20  */
21 
22 #ifndef __CONTROLVMCOMPLETIONSTATUS_H__
23 #define __CONTROLVMCOMPLETIONSTATUS_H__
24 
25 /* General Errors------------------------------------------------------[0-99] */
26 #define CONTROLVM_RESP_SUCCESS                                  0
27 #define CONTROLVM_RESP_ERROR_ALREADY_DONE                       1
28 #define CONTROLVM_RESP_ERROR_IOREMAP_FAILED                     2
29 #define CONTROLVM_RESP_ERROR_KMALLOC_FAILED                     3
30 #define CONTROLVM_RESP_ERROR_MESSAGE_ID_UNKNOWN                 4
31 #define CONTROLVM_RESP_ERROR_MESSAGE_ID_INVALID_FOR_CLIENT      5
32 
33 /* CONTROLVM_INIT_CHIPSET-------------------------------------------[100-199] */
34 #define CONTROLVM_RESP_ERROR_CLIENT_SWITCHCOUNT_NONZERO         100
35 #define CONTROLVM_RESP_ERROR_EXPECTED_CHIPSET_INIT              101
36 
37 /* Maximum Limit----------------------------------------------------[200-299] */
38 #define CONTROLVM_RESP_ERROR_MAX_BUSES		201	/* BUS_CREATE */
39 #define CONTROLVM_RESP_ERROR_MAX_DEVICES        202	/* DEVICE_CREATE */
40 /* Payload and Parameter Related------------------------------------[400-499] */
41 #define CONTROLVM_RESP_ERROR_PAYLOAD_INVALID	400	/* SWITCH_ATTACHEXTPORT,
42 							 * DEVICE_CONFIGURE */
43 #define CONTROLVM_RESP_ERROR_INITIATOR_PARAMETER_INVALID 401	/* Multiple */
44 #define CONTROLVM_RESP_ERROR_TARGET_PARAMETER_INVALID 402 /* DEVICE_CONFIGURE */
45 #define CONTROLVM_RESP_ERROR_CLIENT_PARAMETER_INVALID 403 /* DEVICE_CONFIGURE */
46 /* Specified[Packet Structure] Value-------------------------------[500-599] */
47 #define CONTROLVM_RESP_ERROR_BUS_INVALID	500	/* SWITCH_ATTACHINTPORT,
48 							 * BUS_CONFIGURE,
49 							 * DEVICE_CREATE,
50 							 * DEVICE_CONFIG
51 							 * DEVICE_DESTROY */
52 #define CONTROLVM_RESP_ERROR_DEVICE_INVALID	501 /* SWITCH_ATTACHINTPORT */
53 						    /* DEVICE_CREATE,
54 						     * DEVICE_CONFIGURE,
55 						     * DEVICE_DESTROY */
56 #define CONTROLVM_RESP_ERROR_CHANNEL_INVALID	502 /* DEVICE_CREATE,
57 						     * DEVICE_CONFIGURE */
58 /* Partition Driver Callback Interface----------------------[600-699] */
59 #define CONTROLVM_RESP_ERROR_VIRTPCI_DRIVER_FAILURE 604	/* BUS_CREATE,
60 							 * BUS_DESTROY,
61 							 * DEVICE_CREATE,
62 							 * DEVICE_DESTROY */
63 /* Unable to invoke VIRTPCI callback */
64 #define CONTROLVM_RESP_ERROR_VIRTPCI_DRIVER_CALLBACK_ERROR 605
65 							/* BUS_CREATE,
66 							 * BUS_DESTROY,
67 							 * DEVICE_CREATE,
68 							 * DEVICE_DESTROY */
69 /* VIRTPCI Callback returned error */
70 #define CONTROLVM_RESP_ERROR_GENERIC_DRIVER_CALLBACK_ERROR 606
71 							/* SWITCH_ATTACHEXTPORT,
72 							 * SWITCH_DETACHEXTPORT
73 							 * DEVICE_CONFIGURE */
74 
75 /* generic device callback returned error */
76 /* Bus Related------------------------------------------------------[700-799] */
77 #define CONTROLVM_RESP_ERROR_BUS_DEVICE_ATTACHED 700	/* BUS_DESTROY */
78 /* Channel Related--------------------------------------------------[800-899] */
79 #define CONTROLVM_RESP_ERROR_CHANNEL_TYPE_UNKNOWN 800	/* GET_CHANNELINFO,
80 							 * DEVICE_DESTROY */
81 #define CONTROLVM_RESP_ERROR_CHANNEL_SIZE_TOO_SMALL 801	/* DEVICE_CREATE */
82 /* Chipset Shutdown Related---------------------------------------[1000-1099] */
83 #define CONTROLVM_RESP_ERROR_CHIPSET_SHUTDOWN_FAILED            1000
84 #define CONTROLVM_RESP_ERROR_CHIPSET_SHUTDOWN_ALREADY_ACTIVE    1001
85 
86 /* Chipset Stop Related-------------------------------------------[1100-1199] */
87 #define CONTROLVM_RESP_ERROR_CHIPSET_STOP_FAILED_BUS            1100
88 #define CONTROLVM_RESP_ERROR_CHIPSET_STOP_FAILED_SWITCH         1101
89 
90 /* Device Related-------------------------------------------------[1400-1499] */
91 #define CONTROLVM_RESP_ERROR_DEVICE_UDEV_TIMEOUT                1400
92 
93 #endif /* __CONTROLVMCOMPLETIONSTATUS_H__ not defined */
94