Lines Matching refs:fsm
112 static void mpc_action_nop(fsm_instance *fsm, int event, void *arg);
113 static void mpc_action_go_ready(fsm_instance *fsm, int event, void *arg);
117 static void mpc_action_yside_xid(fsm_instance *fsm, int event, void *arg);
118 static void mpc_action_doxid0(fsm_instance *fsm, int event, void *arg);
119 static void mpc_action_doxid7(fsm_instance *fsm, int event, void *arg);
120 static void mpc_action_xside_xid(fsm_instance *fsm, int event, void *arg);
121 static void mpc_action_rcvd_xid0(fsm_instance *fsm, int event, void *arg);
122 static void mpc_action_rcvd_xid7(fsm_instance *fsm, int event, void *arg);
345 CTCM_FUNTAIL, dev->name, fsm_getstate_str(grp->fsm));
347 switch (fsm_getstate(grp->fsm)) {
357 /*fsm_newstate(grp->fsm, MPCG_STATE_XID2INITW);*/
369 fsm_event(priv->fsm, DEV_EVENT_START, dev);
383 fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
415 CTCM_FUNTAIL, dev->name, fsm_getstate_str(grp->fsm));
420 switch (fsm_getstate(grp->fsm)) {
435 fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
457 if ((fsm_getstate(rch->fsm) > CH_XID0_PENDING) ||
458 (fsm_getstate(wch->fsm) > CH_XID0_PENDING)) {
465 fsm_newstate(grp->fsm, MPCG_STATE_XID0IOWAIT);
473 (fsm_getstate(rch->fsm) == CH_XID0_PENDING))
474 fsm_event(grp->fsm, MPCG_EVENT_XID0DO, rch);
487 (fsm_getstate(wch->fsm) == CH_XID0_PENDING))
488 fsm_event(grp->fsm, MPCG_EVENT_XID0DO, wch);
540 fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
571 mpcg_state = fsm_getstate(grp->fsm);
580 fsm_newstate(grp->fsm, MPCG_STATE_FLOWC);
586 fsm_newstate(grp->fsm, MPCG_STATE_READY);
684 fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
827 static void mpc_action_go_ready(fsm_instance *fsm, int event, void *arg)
851 fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
889 fsm_newstate(grp->fsm, MPCG_STATE_READY);
897 ctcmpc_chx_rxidle(ch->fsm, CTC_EVENT_START, ch);
906 ctcm_chx_txidle(ch->fsm, CTC_EVENT_START, ch);
925 * helper of dev_action (called from channel fsm)
945 fsm_getstate_str(grp->fsm), grp->num_channel_paths,
964 fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
991 fsm_newstate(ch->fsm, CH_XID0_PENDING);
995 (fsm_getstate(grp->fsm) < MPCG_STATE_XID2INITW)) {
996 fsm_newstate(grp->fsm, MPCG_STATE_XID2INITW);
1018 fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
1024 fsm_getstate_str(grp->fsm), grp->num_channel_paths,
1074 if ((fsm_getstate(grp->fsm) == MPCG_STATE_FLOWC) ||
1075 ((fsm_getstate(grp->fsm) == MPCG_STATE_READY) &&
1099 if (unlikely(fsm_getstate(grp->fsm) != MPCG_STATE_READY))
1148 fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
1198 fsm_event(grp->fsm, MPCG_EVENT_XID2, mpcginfo);
1200 fsm_event(grp->fsm, MPCG_EVENT_DISCONC, mpcginfo);
1219 fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
1245 while ((fsm_getstate(grp->fsm) != MPCG_STATE_FLOWC) &&
1253 fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
1278 grp->fsm = init_fsm("mpcg", mpcg_state_names, mpcg_event_names,
1281 if (grp->fsm == NULL) {
1286 fsm_newstate(grp->fsm, MPCG_STATE_RESET);
1287 fsm_settimer(grp->fsm, &grp->timer);
1292 kfree_fsm(grp->fsm);
1312 kfree_fsm(grp->fsm);
1365 grp->saved_state = fsm_getstate(grp->fsm);
1366 fsm_newstate(grp->fsm, MPCG_STATE_INOP);
1426 fsm_newstate(grp->fsm, MPCG_STATE_RESET);
1434 fsm_newstate(grp->fsm, MPCG_STATE_RESET);
1446 * fi An instance of an mpc_group fsm.
1463 switch (fsm_getstate(grp->fsm)) {
1468 if ((fsm_getstate(rch->fsm) == CH_XID0_PENDING) &&
1469 (fsm_getstate(wch->fsm) == CH_XID0_PENDING))
1473 fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
1504 fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
1661 static void mpc_action_side_xid(fsm_instance *fsm, void *arg, int side)
1818 static void mpc_action_xside_xid(fsm_instance *fsm, int event, void *arg)
1820 mpc_action_side_xid(fsm, arg, XSIDE);
1827 static void mpc_action_yside_xid(fsm_instance *fsm, int event, void *arg)
1829 mpc_action_side_xid(fsm, arg, YSIDE);
1836 static void mpc_action_doxid0(fsm_instance *fsm, int event, void *arg)
1853 fsm_newstate(ch->fsm, CH_XID0_INPROGRESS);
1857 switch (fsm_getstate(grp->fsm)) {
1868 fsm_event(grp->fsm, MPCG_EVENT_DOIO, ch);
1877 static void mpc_action_doxid7(fsm_instance *fsm, int event, void *arg)
1902 if (fsm_getstate(ch->fsm) == CH_XID7_PENDING1) {
1903 fsm_newstate(ch->fsm, CH_XID7_PENDING2);
1909 } else if (fsm_getstate(ch->fsm) < CH_XID7_PENDING2) {
1910 fsm_newstate(ch->fsm, CH_XID7_PENDING2);
1919 if (fsm_getstate(ch->fsm) < CH_XID7_PENDING4) {
1920 fsm_newstate(ch->fsm, CH_XID7_PENDING4);
1926 } else if (fsm_getstate(ch->fsm) == CH_XID7_PENDING3) {
1927 fsm_newstate(ch->fsm, CH_XID7_PENDING4);
1936 fsm_event(grp->fsm, MPCG_EVENT_DOIO, ch);
1946 static void mpc_action_rcvd_xid0(fsm_instance *fsm, int event, void *arg)
1959 if (fsm_getstate(ch->fsm) < CH_XID7_PENDING)
1960 fsm_newstate(ch->fsm, CH_XID7_PENDING);
1968 switch (fsm_getstate(grp->fsm)) {
1970 fsm_newstate(grp->fsm, MPCG_STATE_XID2INITX);
1974 fsm_newstate(grp->fsm, MPCG_STATE_XID0IOWAIX);
1979 fsm_newstate(grp->fsm, MPCG_STATE_XID7INITW);
1981 fsm_event(grp->fsm, MPCG_EVENT_XID2DONE, dev);
1986 fsm_newstate(grp->fsm, MPCG_STATE_XID7INITI);
1988 fsm_event(grp->fsm, MPCG_EVENT_XID2DONE, dev);
1998 fsm_getstate_str(grp->fsm), fsm_getstate_str(ch->fsm));
2008 static void mpc_action_rcvd_xid7(fsm_instance *fsm, int event, void *arg)
2026 switch (fsm_getstate(grp->fsm)) {
2028 fsm_newstate(grp->fsm, MPCG_STATE_XID7INITZ);
2032 fsm_newstate(grp->fsm, MPCG_STATE_XID7INITX);
2043 fsm_newstate(grp->fsm, MPCG_STATE_XID7INITF);
2046 fsm_event(grp->fsm, MPCG_EVENT_XID7DONE, dev);