mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-19 11:04:00 +08:00
NFC: st21nfcb: Fix improper ndlc T2 management
T2 was never started when sending a command. Start it when sending a command for the first attempt and stop it once we receive the answer. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This commit is contained in:
parent
4294e32040
commit
fa0daa02fb
@ -112,6 +112,10 @@ static void llt_ndlc_send_queue(struct llt_ndlc *ndlc)
|
|||||||
ndlc->t1_active = true;
|
ndlc->t1_active = true;
|
||||||
mod_timer(&ndlc->t1_timer, time_sent +
|
mod_timer(&ndlc->t1_timer, time_sent +
|
||||||
msecs_to_jiffies(NDLC_TIMER_T1));
|
msecs_to_jiffies(NDLC_TIMER_T1));
|
||||||
|
/* start timer t2 for chip availability */
|
||||||
|
ndlc->t2_active = true;
|
||||||
|
mod_timer(&ndlc->t2_timer, time_sent +
|
||||||
|
msecs_to_jiffies(NDLC_TIMER_T2));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -207,7 +211,7 @@ static void llt_ndlc_sm_work(struct work_struct *work)
|
|||||||
ndlc->t2_active = false;
|
ndlc->t2_active = false;
|
||||||
ndlc->t1_active = false;
|
ndlc->t1_active = false;
|
||||||
del_timer_sync(&ndlc->t1_timer);
|
del_timer_sync(&ndlc->t1_timer);
|
||||||
|
del_timer_sync(&ndlc->t2_timer);
|
||||||
ndlc_close(ndlc);
|
ndlc_close(ndlc);
|
||||||
ndlc->hard_fault = -EREMOTEIO;
|
ndlc->hard_fault = -EREMOTEIO;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user