From 7e971a654e829383f366e498055a894aae7eaf0f Mon Sep 17 00:00:00 2001 From: Rasesh Mody Date: Tue, 11 Dec 2012 12:24:54 +0000 Subject: [PATCH] --- yaml --- r: 342150 b: refs/heads/master c: 215a64a25cd483e54d472987426d78694fc46ed0 h: refs/heads/master v: v3 --- [refs] | 2 +- .../net/ethernet/brocade/bna/bna_tx_rx.c | 27 ++++++++++++++++++- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 6dac09b6f90a..bae46fa084f5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 30f9fc947938d483c48011530973903797e8739f +refs/heads/master: 215a64a25cd483e54d472987426d78694fc46ed0 diff --git a/trunk/drivers/net/ethernet/brocade/bna/bna_tx_rx.c b/trunk/drivers/net/ethernet/brocade/bna/bna_tx_rx.c index 4df6d4b50b45..ea6f4a036401 100644 --- a/trunk/drivers/net/ethernet/brocade/bna/bna_tx_rx.c +++ b/trunk/drivers/net/ethernet/brocade/bna/bna_tx_rx.c @@ -1355,6 +1355,8 @@ bfa_fsm_state_decl(bna_rx, stopped, struct bna_rx, enum bna_rx_event); bfa_fsm_state_decl(bna_rx, start_wait, struct bna_rx, enum bna_rx_event); +bfa_fsm_state_decl(bna_rx, start_stop_wait, + struct bna_rx, enum bna_rx_event); bfa_fsm_state_decl(bna_rx, rxf_start_wait, struct bna_rx, enum bna_rx_event); bfa_fsm_state_decl(bna_rx, started, @@ -1432,7 +1434,7 @@ static void bna_rx_sm_start_wait(struct bna_rx *rx, { switch (event) { case RX_E_STOP: - bfa_fsm_set_state(rx, bna_rx_sm_stop_wait); + bfa_fsm_set_state(rx, bna_rx_sm_start_stop_wait); break; case RX_E_FAIL: @@ -1488,6 +1490,29 @@ bna_rx_sm_rxf_stop_wait(struct bna_rx *rx, enum bna_rx_event event) } +static void +bna_rx_sm_start_stop_wait_entry(struct bna_rx *rx) +{ +} + +static void +bna_rx_sm_start_stop_wait(struct bna_rx *rx, enum bna_rx_event event) +{ + switch (event) { + case RX_E_FAIL: + case RX_E_STOPPED: + bfa_fsm_set_state(rx, bna_rx_sm_stopped); + break; + + case RX_E_STARTED: + bna_rx_enet_stop(rx); + break; + + default: + bfa_sm_fault(event); + } +} + void bna_rx_sm_started_entry(struct bna_rx *rx) {