1 /*
2  * Copyright (c) 2006-2013 Cisco Systems, Inc.  All rights reserved.
3  * Copyright (c) 2008      Mellanox Technologies. All rights reserved.
4  * $COPYRIGHT$
5  *
6  * Additional copyrights may follow
7  *
8  * $HEADER$
9  *
10  * @file
11  */
12 
13 #ifndef MCA_PTL_IB_PARAMS_H
14 #define MCA_PTL_IB_PARAMS_H
15 
16 #include "btl_openib.h"
17 
18 
19 /*
20  * Struct to hold the settable values that may be specified in the INI
21  * file
22  */
23 typedef struct opal_btl_openib_ini_values_t {
24     uint32_t mtu;
25     bool mtu_set;
26 
27     uint32_t use_eager_rdma;
28     bool use_eager_rdma_set;
29 
30     char *receive_queues;
31 
32     int32_t max_inline_data;
33     bool max_inline_data_set;
34 
35     bool rdmacm_reject_causes_connect_error;
36     bool rdmacm_reject_causes_connect_error_set;
37 
38     bool ignore_device;
39     bool ignore_device_set;
40 } opal_btl_openib_ini_values_t;
41 
42 
43 BEGIN_C_DECLS
44 
45     /**
46      * Read in the INI files containing device params
47      */
48     int opal_btl_openib_ini_init(void);
49 
50     /**
51      * Query the read-in params for a given device
52      */
53     int opal_btl_openib_ini_query(uint32_t vendor_id,
54                                   uint32_t vendor_part_id,
55                                   opal_btl_openib_ini_values_t *values);
56 
57     /**
58      * Shut down / release all internal state
59      */
60     int opal_btl_openib_ini_finalize(void);
61 
62     /**
63      * string to int convertors with dec/hex autodetection
64      */
65     int opal_btl_openib_ini_intify(char *string);
66     int opal_btl_openib_ini_intify_list(char *str, uint32_t **values, int *len);
67 
68 END_C_DECLS
69 
70 #endif
71