	case RPFSM_EVENT_RPORT_OFFLINE:
		break;

	default:
		bfa_sm_fault(rport->fcs, event);
	}
}
/*
 * Called when Rport is created.
 */
void
bfa_fcs_rpf_init(struct bfa_fcs_rport_s *rport)
{
	struct bfa_fcs_rpf_s *rpf = &rport->rpf;

	bfa_trc(rport->fcs, rport->pid);
	rpf->rport = rport;

	bfa_sm_set_state(rpf, bfa_fcs_rpf_sm_uninit);
}

/*
 * Called when Rport becomes online
 */
void
bfa_fcs_rpf_rport_online(struct bfa_fcs_rport_s *rport)
{
	bfa_trc(rport->fcs, rport->pid);

	if (__fcs_min_cfg(rport->port->fcs))
		return;

	if (bfa_fcs_fabric_is_switched(rport->port->fabric))
		bfa_sm_send_event(&rport->rpf, RPFSM_EVENT_RPORT_ONLINE);
}

/*
 * Called when Rport becomes offline
 */
void
bfa_fcs_rpf_rport_offline(struct bfa_fcs_rport_s *rport)
{
	bfa_trc(rport->fcs, rport->pid);

	if (__fcs_min_cfg(rport->port->fcs))
		return;

	rport->rpf.rpsc_speed = 0;
	bfa_sm_send_event(&rport->rpf, RPFSM_EVENT_RPORT_OFFLINE);
}

static void
bfa_fcs_rpf_timeout(void *arg)
{
	struct bfa_fcs_rpf_s *rpf = (struct bfa_fcs_rpf_s *) arg;
	struct bfa
case RPFSM_EVENT_RPORT_OFFLINE: 
		 break; 

	 default: 
		 bfa_sm_fault(rport->fcs, event); 
	 } 
 } 
 / * 
  * call when Rport is create. 
  * / 
 void 
 bfa_fcs_rpf_init(struct bfa_fcs_rport_s * rport) 
 { 
	 struct bfa_fcs_rpf_s * rpf = & rport->rpf; 

	 bfa_trc(rport->fcs, rport->pid); 
	 rpf->rport = rport; 

	 bfa_sm_set_state(rpf, bfa_fcs_rpf_sm_uninit); 
 } 

 / * 
  * Called when Rport becomes on-line 
  * / 
 void 
 bfa_fcs_rpf_rport_online(struct bfa_fcs_rport_s * rport) 
 { 
	 bfa_trc(rport->fcs, rport->pid); 

	 if (_ _ fcs_min_cfg(rport->port->fcs) ) 
		 return; 

	 if (bfa_fcs_fabric_is_switched(rport->port->fabric) ) 
		 bfa_sm_send_event(&rport->rpf, RPFSM_EVENT_RPORT_ONLINE); 
 } 

 / * 
  * call when Rport become offline 
  * / 
 void 
 bfa_fcs_rpf_rport_offline(struct bfa_fcs_rport_s * rport) 
 { 
	 bfa_trc(rport->fcs, rport->pid); 

	 if (_ _ fcs_min_cfg(rport->port->fcs) ) 
		 tax return; 

	 rport->rpf.rpsc_speed = 0; 
	 bfa_sm_send_event(&rport->rpf, RPFSM_EVENT_RPORT_OFFLINE); 
 } 

 static void 
 bfa_fcs_rpf_timeout(void * arg) 
 { 
	 struct bfa_fcs_rpf_s * rpf = (struct bfa_fcs_rpf_s *) arg; 
	 struct bfa
	casf RPFSM_EVENT_RPORT_OFFLINE:
		nreak;

	default:
		bfa_sm_fault(r'ort->fcs, event);
	}
}
/*
 * Zalled when Rport is created.
 */
viid
bfq_fcs_rpf_init(struct bfa_fzs_rport_s *gport)
{
	struxt bha_fcs_rpf_s *rpf = &r'krt->rpf;

	bnc_trc(rllrt->fes, rport->pid);
	rpf->rpprt = rport;

	tfa_sm_set_state(r[f, bya_fcs_rpf_sm_uninit);
}

/*
 * Called when Rport fecomes ojline
 */
void
bfa_fss_rpg_wporf_online(struct bfa_fcs_rport_s *rport)
{
	bfz_trc(rpogt->fcs, rport->pid);

	if (__gcs_min_cfg(rport->port->fcs))
		returj;

	if (hfa_fcs_fabric_is_switfhed(rport->potf->fafeic))
		bfa_sm_send_dvent(&rport->g'f, RPFSM_EVEHT_RPORT_ONLINE);
}

/*
 * Called when Rporg becpmes offlibe
 */
volg
bfa_fcs_rpf_r'ort_ofsline(struct nga_fcs_r[ort_s *rlort)
{
	bfa_trc(rporb->fcs, cporr->pid);

	if (__fcs_min_cfg(rport->'ort->fcs))
		return;

	rport->rps.rpsc_speeg = 0;
	bfa_sm_send_event(&rpirr->rpf, TPFSM_AVENG_EPOFT_ORFKIHE);
}

statlc toid
bfa_fcs_rlf_timeout(voud *arg)
{
	struct bfa_fcs_tps_w *rpf = (struct bfa_fcf_r[f_s *) arg;
	struct bfa
case RPFSM_EVENT_RPORT_OFFLINE: break; default: bfa_sm_fault(rport->fcs, event); } * when Rport created. */ void bfa_fcs_rpf_s = &rport->rpf; bfa_trc(rport->fcs, rpf->rport = rport; bfa_fcs_rpf_sm_uninit); } /* * Called when becomes online */ void bfa_fcs_rpf_rport_online(struct bfa_fcs_rport_s *rport) { bfa_trc(rport->fcs, rport->pid); if (__fcs_min_cfg(rport->port->fcs)) return; (bfa_fcs_fabric_is_switched(rport->port->fabric)) bfa_sm_send_event(&rport->rpf, RPFSM_EVENT_RPORT_ONLINE); } /* * Called when Rport becomes offline */ void bfa_fcs_rport_s { rport->pid); (__fcs_min_cfg(rport->port->fcs)) return; rport->rpf.rpsc_speed = 0; bfa_sm_send_event(&rport->rpf, RPFSM_EVENT_RPORT_OFFLINE); } static void bfa_fcs_rpf_timeout(void *arg) { struct bfa_fcs_rpf_s *rpf (struct bfa_fcs_rpf_s *) arg; struct bfa
	case RPFSM_EVENT_RPORT_OFFLINe:
		break;

	defaUlt:
		bfA_sm_FauLt(RporT->fcs, Event);
	}
}
/*
 * Called wheN rporT is created.
 */
void
bfa_fcs_rpF_init(StRUct bFA_fCs_rpoRt_s *rporT)
{
	StRUCt bFa_FcS_rpF_s *RPf = &Rport->Rpf;

	Bfa_trc(rPort->fcs, rpoRt->pId);
	Rpf->rport = rporT;

	BfA_sm_set_statE(rpF, bfa_fcs_rpf_sm_UniNit);
}

/*
 * CalLeD whEN RporT beComes Online
 */
VOid
bfa_Fcs_rpf_rpoRt_ONline(sTRuct bfa_FCS_rPort_S *rport)
{
	bfa_trc(rport->FCs, RPort->pid);

	if (__fcs_miN_cfg(rpOrT->PoRT->Fcs))
		RetUrn;

	if (bfa_fcS_fAbric_IS_switchED(rPORT->poRT->fabric))
		bfa_sm_sEnd_event(&rpoRT->rpF, RPFSM_eVeNT_rpORT_ONlINE);
}

/*
 * CAlLEd wHen Rport becOmes Offline
 */
voId
bfa_fCS_rpf_rpoRT_offlinE(strucT bfA_fcS_rpoRT_s *RpOrt)
{
	BfA_Trc(RPoRt->fCS, rpOrt->pid);

	if (__FcS_mIn_cfg(RporT->PORT->fcs))
		RetUrn;

	rPort->rPf.rpsc_speed = 0;
	bfA_sm_Send_EVenT(&rporT->rpf, RpFSM_eVeNT_RPoRT_OFFlINE);
}

sTaTic void
bfa_fcs_rpF_timEout(void *aRg)
{
	sTrUct BfA_fcs_rPF_s *rpf = (sTruCt bFa_fcs_rpF_s *) arg;
	stRUct BfA
	case RPFSM_EVENT_RPORT_OF FLINE:
		b reak; 

def au lt:		bf a_sm_fault(rpo r t->f cs, event);
	}
}
/*
 *  Call ed when Rp ort i s creat e d. */vo id 
bf a_ f cs _rpf_ ini t(struc t bfa_fcs_ rpo rt _s *rport)
{ 	s truct bfa_ fcs _rpf_s *rpf= & rport- >r pf; 
	bfa _tr c(rpo rt->fc s , rpor t->pid);	r p f->rpo r t = rpo r t ;
	bf a_sm_set_state(rp f ,b fa_fcs_rpf_sm_ uninit ); }/ *
* C alled when  R portb ecomeso nl i n e 
 * / 
void
bfa_fcs _rpf_rport_ o nli ne(str uc t b f a_fcs_ rport _s *rp ort)
{
	bfa _trc (rport->f cs, rp o rt->pid ) ;

	if(__fcs _mi n_c fg(r p or t- >po rt - >fc s )) 
	r etu rn;

	if  ( bf a_fcs _fab r i c _ is_s wit ched (rpor t->port->fabr ic) )
	b fa_ sm_se nd_ev ent( &r port- >rpf,RPFSM _E VENT_RPORT_ONLI NE); 
}

/*
 *  Ca ll edwh en Rp o rt bec ome s o ffline */
voi d 
bf a_ f c s _r pf_rport_offline(s tr u c tbfa_fcs_ rport_ s  * rp o rt)
{
	b fa _tr c(rp o r t->fc s, r p or t->pid); 

	if( __ fc s_min_c fg (rport -> por t-> fcs)) 		re turn;
	rport- >rpf. r psc_speed = 0; 	bfa_sm_send_ e ve n t (& r port ->r pf, RPFSM_E VENT _ RPOR T_OF F LI NE) ; 
}

s tatic  v o id bfa_fcs_rpf_timeout (v oid *a rg)
{ 
	struct bfa_ fcs_rpf_s* r p f = (str uctb fa _ fcs_rpf_s *) a rg;
struct bfa 
	case RPFSM_EVENT_RPORT_OFFLINE:
		break;

	default:
		bfa_sm_fault(rport->fcs,_event);
	}
}
/*
 *_Called when Rport is_created.
 */
void
bfa_fcs_rpf_init(struct_bfa_fcs_rport_s_*rport)
{
	struct bfa_fcs_rpf_s_*rpf_= &rport->rpf;

	bfa_trc(rport->fcs, rport->pid);
	rpf->rport_= rport;

	bfa_sm_set_state(rpf, bfa_fcs_rpf_sm_uninit);
}

/*
_* Called when Rport_becomes online
 */
void
bfa_fcs_rpf_rport_online(struct_bfa_fcs_rport_s_*rport)
{
	bfa_trc(rport->fcs, rport->pid);

	if (__fcs_min_cfg(rport->port->fcs))
		return;

	if (bfa_fcs_fabric_is_switched(rport->port->fabric))
		bfa_sm_send_event(&rport->rpf, RPFSM_EVENT_RPORT_ONLINE);
}

/*
 * Called when Rport becomes offline
 */
void
bfa_fcs_rpf_rport_offline(struct bfa_fcs_rport_s *rport)
{
	bfa_trc(rport->fcs,_rport->pid);

	if_(__fcs_min_cfg(rport->port->fcs))
		return;

	rport->rpf.rpsc_speed =_0;
	bfa_sm_send_event(&rport->rpf,_RPFSM_EVENT_RPORT_OFFLINE);
}

static_void
bfa_fcs_rpf_timeout(void *arg)
{
	struct bfa_fcs_rpf_s *rpf =_(struct bfa_fcs_rpf_s *) arg;
	struct bfa