152 ddi_no_info, /* getinfo */
153 nulldev, /* identify */
154 nulldev, /* probe */
155 skd_attach, /* attach */
156 skd_detach, /* detach */
157 nodev, /* reset */
158 NULL, /* char/block ops */
159 NULL, /* bus operations */
160 NULL, /* power management */
161 skd_sys_quiesce_dev /* quiesce */
162 };
163
164 static struct modldrv modldrv = {
165 &mod_driverops, /* type of module: driver */
166 "sTec skd v" DRV_VER_COMPL, /* name of module */
167 &skd_dev_ops /* driver dev_ops */
168 };
169
170 static struct modlinkage modlinkage = {
171 MODREV_1,
172 &modldrv,
173 NULL
174 };
175
176 /*
177 * sTec-required wrapper for debug printing.
178 */
179 /*PRINTFLIKE2*/
180 static inline void
181 Dcmn_err(int lvl, const char *fmt, ...)
182 {
183 va_list ap;
184
185 if (skd_dbg_level == 0)
186 return;
187
188 va_start(ap, fmt);
189 vcmn_err(lvl, fmt, ap);
190 va_end(ap);
191 }
192
193 /*
|
152 ddi_no_info, /* getinfo */
153 nulldev, /* identify */
154 nulldev, /* probe */
155 skd_attach, /* attach */
156 skd_detach, /* detach */
157 nodev, /* reset */
158 NULL, /* char/block ops */
159 NULL, /* bus operations */
160 NULL, /* power management */
161 skd_sys_quiesce_dev /* quiesce */
162 };
163
164 static struct modldrv modldrv = {
165 &mod_driverops, /* type of module: driver */
166 "sTec skd v" DRV_VER_COMPL, /* name of module */
167 &skd_dev_ops /* driver dev_ops */
168 };
169
170 static struct modlinkage modlinkage = {
171 MODREV_1,
172 { &modldrv, NULL }
173 };
174
175 /*
176 * sTec-required wrapper for debug printing.
177 */
178 /*PRINTFLIKE2*/
179 static inline void
180 Dcmn_err(int lvl, const char *fmt, ...)
181 {
182 va_list ap;
183
184 if (skd_dbg_level == 0)
185 return;
186
187 va_start(ap, fmt);
188 vcmn_err(lvl, fmt, ap);
189 va_end(ap);
190 }
191
192 /*
|