Lines Matching refs:smc
26 void ev_init(struct s_smc *smc) in ev_init() argument
28 smc->q.ev_put = smc->q.ev_get = smc->q.ev_queue ; in ev_init()
34 void queue_event(struct s_smc *smc, int class, int event) in queue_event() argument
37 smc->q.ev_put->class = class ; in queue_event()
38 smc->q.ev_put->event = event ; in queue_event()
39 if (++smc->q.ev_put == &smc->q.ev_queue[MAX_EVENT]) in queue_event()
40 smc->q.ev_put = smc->q.ev_queue ; in queue_event()
42 if (smc->q.ev_put == smc->q.ev_get) { in queue_event()
43 SMT_ERR_LOG(smc,SMT_E0137, SMT_E0137_MSG) ; in queue_event()
50 void timer_event(struct s_smc *smc, u_long token) in timer_event() argument
55 queue_event(smc,EV_T_CLASS(token),EV_T_EVENT(token)); in timer_event()
65 void ev_dispatcher(struct s_smc *smc) in ev_dispatcher() argument
70 ev = smc->q.ev_get ; in ev_dispatcher()
71 PRINTF("dispatch get %x put %x\n",ev,smc->q.ev_put) ; in ev_dispatcher()
72 while (ev != smc->q.ev_put) { in ev_dispatcher()
76 ecm(smc,(int)ev->event) ; in ev_dispatcher()
79 cfm(smc,(int)ev->event) ; in ev_dispatcher()
82 rmt(smc,(int)ev->event) ; in ev_dispatcher()
85 smt_event(smc,(int)ev->event) ; in ev_dispatcher()
89 timer_test_event(smc,(int)ev->event) ; in ev_dispatcher()
97 pcm(smc,class - EVENT_PCMA,(int)ev->event) ; in ev_dispatcher()
100 SMT_PANIC(smc,SMT_E0121, SMT_E0121_MSG) ; in ev_dispatcher()
104 if (++ev == &smc->q.ev_queue[MAX_EVENT]) in ev_dispatcher()
105 ev = smc->q.ev_queue ; in ev_dispatcher()
108 smc->q.ev_get = ev; in ev_dispatcher()
119 u_short smt_online(struct s_smc *smc, int on) in smt_online() argument
121 queue_event(smc,EVENT_ECM,on ? EC_CONNECT : EC_DISCONNECT) ; in smt_online()
122 ev_dispatcher(smc) ; in smt_online()
123 return smc->mib.fddiSMTCF_State; in smt_online()
133 void do_smt_flag(struct s_smc *smc, char *flag, int value) in do_smt_flag() argument
138 SK_UNUSED(smc) ; in do_smt_flag()
141 deb = &smc->debug; in do_smt_flag()