[ipoib,core] Improve support for partitioning.
[mirror/winof/.git] / core / al / kernel / al_proxy_ioc.c
1 /*\r
2  * Copyright (c) 2005 SilverStorm Technologies.  All rights reserved.\r
3  * Copyright (c) 1996-2003 Intel Corporation. All rights reserved. \r
4  *\r
5  * This software is available to you under the OpenIB.org BSD license\r
6  * below:\r
7  *\r
8  *     Redistribution and use in source and binary forms, with or\r
9  *     without modification, are permitted provided that the following\r
10  *     conditions are met:\r
11  *\r
12  *      - Redistributions of source code must retain the above\r
13  *        copyright notice, this list of conditions and the following\r
14  *        disclaimer.\r
15  *\r
16  *      - Redistributions in binary form must reproduce the above\r
17  *        copyright notice, this list of conditions and the following\r
18  *        disclaimer in the documentation and/or other materials\r
19  *        provided with the distribution.\r
20  *\r
21  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
22  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
23  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
24  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS\r
25  * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\r
26  * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
27  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r
28  * SOFTWARE.\r
29  *\r
30  * $Id$\r
31  */\r
32 \r
33 \r
34 #include <complib/comp_lib.h>\r
35 #include <iba/ib_al.h>\r
36 #include <iba/ib_al_ioctl.h>\r
37 #include "al_debug.h"\r
38 #include "al.h"\r
39 #include "al_dev.h"\r
40 #include "al_proxy.h"\r
41 #include "ib_common.h"\r
42 \r
43 cl_status_t\r
44 ioc_ioctl(\r
45         IN              cl_ioctl_handle_t               h_ioctl,\r
46                 OUT     size_t                                  *p_ret_bytes )\r
47 {\r
48         cl_status_t cl_status;\r
49 \r
50         UNUSED_PARAM( p_ret_bytes );\r
51 \r
52         switch( cl_ioctl_ctl_code( h_ioctl ) )\r
53         {\r
54         case UAL_REQ_CREATE_PDO:\r
55                 {\r
56                         cl_status = bus_add_pkey(h_ioctl);\r
57                         break;\r
58                 }\r
59 \r
60         case UAL_REQ_REMOVE_PDO:\r
61                 {\r
62                         cl_status = bus_rem_pkey(h_ioctl);\r
63                         break;\r
64                 }\r
65                 default:\r
66                         cl_status = CL_INVALID_PARAMETER;\r
67                         break;\r
68         }\r
69         return cl_status;\r
70 }\r