Lines Matching refs:sp
43 mhd_drive_set_t *sp, in mhd_ff_disarm() argument
49 MHDPRINTF1(("%s: disarm\n", sp->sr_name)); in mhd_ff_disarm()
52 assert(MUTEX_HELD(&sp->sr_mx)); in mhd_ff_disarm()
55 if (sp->sr_ff < 0) in mhd_ff_disarm()
62 if (ioctl(sp->sr_ff, I_STR, &si) != 0) in mhd_ff_disarm()
74 mhd_drive_set_t *sp, in mhd_ff_open() argument
81 assert(MUTEX_HELD(&sp->sr_mx)); in mhd_ff_open()
82 assert((sp->sr_ff_mode == MHD_FF_DEBUG) || in mhd_ff_open()
83 (sp->sr_ff_mode == MHD_FF_HALT) || in mhd_ff_open()
84 (sp->sr_ff_mode == MHD_FF_PANIC)); in mhd_ff_open()
87 if ((sp->sr_ff < 0) && in mhd_ff_open()
88 ((sp->sr_ff = open("/dev/ff", O_RDWR, 0)) < 0)) { in mhd_ff_open()
93 if (mhd_ff_disarm(sp, mhep) != 0) in mhd_ff_open()
100 si.ic_len = strlen(sp->sr_name); in mhd_ff_open()
101 si.ic_dp = sp->sr_name; in mhd_ff_open()
102 if (ioctl(sp->sr_ff, I_STR, &si) != 0) in mhd_ff_open()
107 switch (sp->sr_ff_mode) { in mhd_ff_open()
122 if (ioctl(sp->sr_ff, I_STR, &si) != 0) in mhd_ff_open()
134 mhd_drive_set_t *sp, in mhd_ff_close() argument
141 assert(MUTEX_HELD(&sp->sr_mx)); in mhd_ff_close()
144 if (sp->sr_ff < 0) in mhd_ff_close()
148 if (mhd_ff_disarm(sp, mhep) != 0) in mhd_ff_close()
152 if (close(sp->sr_ff) != 0) in mhd_ff_close()
154 sp->sr_ff = -1; in mhd_ff_close()
165 mhd_drive_set_t *sp, in mhd_ff_rearm() argument
169 uint_t ff = sp->sr_timeouts.mh_ff; in mhd_ff_rearm()
172 MHDPRINTF1(("%s: rearm\n", sp->sr_name)); in mhd_ff_rearm()
175 assert(MUTEX_HELD(&sp->sr_mx)); in mhd_ff_rearm()
176 assert(sp->sr_ff >= 0); in mhd_ff_rearm()
180 return (mhd_ff_disarm(sp, mhep)); in mhd_ff_rearm()
188 if (ioctl(sp->sr_ff, I_STR, &si) != 0) in mhd_ff_rearm()
200 mhd_drive_set_t *sp in mhd_ff_die() argument
206 MHDPRINTF(("%s: die\n", sp->sr_name)); in mhd_ff_die()
209 assert(MUTEX_HELD(&sp->sr_mx)); in mhd_ff_die()
210 assert(sp->sr_ff >= 0); in mhd_ff_die()
218 if (ioctl(sp->sr_ff, I_STR, &si) != 0) in mhd_ff_die()
227 mhd_drive_set_t *sp in mhd_ff_check() argument
230 mhd_drive_list_t *dlp = &sp->sr_drives; in mhd_ff_check()
231 mhd_msec_t ff = sp->sr_timeouts.mh_ff; in mhd_ff_check()
236 assert(MUTEX_HELD(&sp->sr_mx)); in mhd_ff_check()
237 assert(sp->sr_ff >= 0); in mhd_ff_check()
238 assert((sp->sr_ff_mode == MHD_FF_DEBUG) || in mhd_ff_check()
239 (sp->sr_ff_mode == MHD_FF_HALT) || in mhd_ff_check()
240 (sp->sr_ff_mode == MHD_FF_PANIC)); in mhd_ff_check()
260 if (mhd_ff_rearm(sp, &status) == 0) in mhd_ff_check()
267 sp->sr_name, cnt, ok); in mhd_ff_check()
268 mhd_ff_die(sp); in mhd_ff_check()