126 rdsib_detach, /* detach */
127 nodev, /* reset */
128 &rdsib_cb_ops, /* driver ops - devctl interfaces */
129 NULL, /* bus operations */
130 NULL, /* power */
131 ddi_quiesce_not_needed, /* devo_quiesce */
132 };
133
134 /*
135 * Module linkage information.
136 */
137 #define RDS_DEVDESC "RDS IB driver"
138 static struct modldrv rdsib_modldrv = {
139 &mod_driverops, /* Driver module */
140 RDS_DEVDESC, /* Driver name and version */
141 &rdsib_ops, /* Driver ops */
142 };
143
144 static struct modlinkage rdsib_modlinkage = {
145 MODREV_1,
146 (void *)&rdsib_modldrv,
147 NULL
148 };
149
150 /* Called from _init */
151 int
152 rdsib_init()
153 {
154 /* RDS supports only one instance */
155 rdsib_statep = kmem_zalloc(sizeof (rds_state_t), KM_SLEEP);
156
157 rw_init(&rdsib_statep->rds_sessionlock, NULL, RW_DRIVER, NULL);
158 rw_init(&rdsib_statep->rds_hca_lock, NULL, RW_DRIVER, NULL);
159
160 rw_init(&rds_loopback_portmap_lock, NULL, RW_DRIVER, NULL);
161 bzero(rds_loopback_portmap, RDS_PORT_MAP_SIZE);
162
163 mutex_init(&rds_dpool.pool_lock, NULL, MUTEX_DRIVER, NULL);
164 cv_init(&rds_dpool.pool_cv, NULL, CV_DRIVER, NULL);
165 mutex_init(&rds_cpool.pool_lock, NULL, MUTEX_DRIVER, NULL);
166 cv_init(&rds_cpool.pool_cv, NULL, CV_DRIVER, NULL);
167
|
126 rdsib_detach, /* detach */
127 nodev, /* reset */
128 &rdsib_cb_ops, /* driver ops - devctl interfaces */
129 NULL, /* bus operations */
130 NULL, /* power */
131 ddi_quiesce_not_needed, /* devo_quiesce */
132 };
133
134 /*
135 * Module linkage information.
136 */
137 #define RDS_DEVDESC "RDS IB driver"
138 static struct modldrv rdsib_modldrv = {
139 &mod_driverops, /* Driver module */
140 RDS_DEVDESC, /* Driver name and version */
141 &rdsib_ops, /* Driver ops */
142 };
143
144 static struct modlinkage rdsib_modlinkage = {
145 MODREV_1,
146 { (void *)&rdsib_modldrv, NULL }
147 };
148
149 /* Called from _init */
150 int
151 rdsib_init()
152 {
153 /* RDS supports only one instance */
154 rdsib_statep = kmem_zalloc(sizeof (rds_state_t), KM_SLEEP);
155
156 rw_init(&rdsib_statep->rds_sessionlock, NULL, RW_DRIVER, NULL);
157 rw_init(&rdsib_statep->rds_hca_lock, NULL, RW_DRIVER, NULL);
158
159 rw_init(&rds_loopback_portmap_lock, NULL, RW_DRIVER, NULL);
160 bzero(rds_loopback_portmap, RDS_PORT_MAP_SIZE);
161
162 mutex_init(&rds_dpool.pool_lock, NULL, MUTEX_DRIVER, NULL);
163 cv_init(&rds_dpool.pool_cv, NULL, CV_DRIVER, NULL);
164 mutex_init(&rds_cpool.pool_lock, NULL, MUTEX_DRIVER, NULL);
165 cv_init(&rds_cpool.pool_cv, NULL, CV_DRIVER, NULL);
166
|