patch-2.4.0-test12 linux/net/irda/irlap_event.c
Next file: linux/net/packet/af_packet.c
Previous file: linux/net/irda/irlan/irlan_client_event.c
Back to the patch index
Back to the overall index
- Lines: 42
- Date:
Mon Nov 27 18:07:31 2000
- Orig file:
v2.4.0-test11/linux/net/irda/irlap_event.c
- Orig date:
Sun Nov 19 18:44:24 2000
diff -u --recursive --new-file v2.4.0-test11/linux/net/irda/irlap_event.c linux/net/irda/irlap_event.c
@@ -4,10 +4,10 @@
* Version: 0.9
* Description: IrLAP state machine implementation
* Status: Experimental.
- * Author: Dag Brattli <dagb@cs.uit.no>
+ * Author: Dag Brattli <dag@brattli.net>
* Created at: Sat Aug 16 00:59:29 1997
* Modified at: Sat Dec 25 21:07:57 1999
- * Modified by: Dag Brattli <dagb@cs.uit.no>
+ * Modified by: Dag Brattli <dag@brattli.net>
*
* Copyright (c) 1998-2000 Dag Brattli <dag@brattli.net>,
* Copyright (c) 1998 Thomas Davis <ratbert@radiks.net>
@@ -551,13 +551,15 @@
* since we want to work even with devices that violate the
* timing requirements.
*/
- if (irda_device_is_receiving(self->netdev)) {
- IRDA_DEBUG(1, __FUNCTION__
+ if (irda_device_is_receiving(self->netdev) && !self->add_wait) {
+ IRDA_DEBUG(2, __FUNCTION__
"(), device is slow to answer, "
"waiting some more!\n");
irlap_start_slot_timer(self, MSECS_TO_JIFFIES(10));
+ self->add_wait = TRUE;
return ret;
}
+ self->add_wait = FALSE;
if (self->s < self->S) {
irlap_send_discovery_xid_frame(self, self->S,
@@ -1324,9 +1326,7 @@
* of receiving a frame (page 45, IrLAP). Check that
* we only do this once for each frame.
*/
- if (irda_device_is_receiving(self->netdev) &&
- !self->add_wait)
- {
+ if (irda_device_is_receiving(self->netdev) && !self->add_wait) {
IRDA_DEBUG(1, "FINAL_TIMER_EXPIRED when receiving a "
"frame! Waiting a little bit more!\n");
irlap_start_final_timer(self, MSECS_TO_JIFFIES(300));
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)