aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/bfa/bfa_svc.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/bfa/bfa_svc.c')
-rw-r--r--drivers/scsi/bfa/bfa_svc.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/scsi/bfa/bfa_svc.c b/drivers/scsi/bfa/bfa_svc.c
index e7669f8ef78..b2538d60db3 100644
--- a/drivers/scsi/bfa/bfa_svc.c
+++ b/drivers/scsi/bfa/bfa_svc.c
@@ -4275,6 +4275,10 @@ bfa_rport_sm_offline(struct bfa_rport_s *rp, enum bfa_rport_event event)
4275 bfa_sm_set_state(rp, bfa_rport_sm_iocdisable); 4275 bfa_sm_set_state(rp, bfa_rport_sm_iocdisable);
4276 break; 4276 break;
4277 4277
4278 case BFA_RPORT_SM_OFFLINE:
4279 bfa_rport_offline_cb(rp);
4280 break;
4281
4278 default: 4282 default:
4279 bfa_stats(rp, sm_off_unexp); 4283 bfa_stats(rp, sm_off_unexp);
4280 bfa_sm_fault(rp->bfa, event); 4284 bfa_sm_fault(rp->bfa, event);
@@ -4391,6 +4395,7 @@ bfa_rport_sm_offline_pending(struct bfa_rport_s *rp,
4391 case BFA_RPORT_SM_HWFAIL: 4395 case BFA_RPORT_SM_HWFAIL:
4392 bfa_stats(rp, sm_offp_hwf); 4396 bfa_stats(rp, sm_offp_hwf);
4393 bfa_sm_set_state(rp, bfa_rport_sm_iocdisable); 4397 bfa_sm_set_state(rp, bfa_rport_sm_iocdisable);
4398 bfa_rport_offline_cb(rp);
4394 break; 4399 break;
4395 4400
4396 default: 4401 default:
@@ -4769,8 +4774,10 @@ bfa_rport_speed(struct bfa_rport_s *rport, enum bfa_port_speed speed)
4769 WARN_ON(speed == 0); 4774 WARN_ON(speed == 0);
4770 WARN_ON(speed == BFA_PORT_SPEED_AUTO); 4775 WARN_ON(speed == BFA_PORT_SPEED_AUTO);
4771 4776
4772 rport->rport_info.speed = speed; 4777 if (rport) {
4773 bfa_sm_send_event(rport, BFA_RPORT_SM_SET_SPEED); 4778 rport->rport_info.speed = speed;
4779 bfa_sm_send_event(rport, BFA_RPORT_SM_SET_SPEED);
4780 }
4774} 4781}
4775 4782
4776/* Set Rport LUN Mask */ 4783/* Set Rport LUN Mask */