patch-2.4.0-test11 linux/drivers/net/irda/nsc-ircc.c
Next file: linux/drivers/net/irda/smc-ircc.c
Previous file: linux/drivers/net/irda/irtty.c
Back to the patch index
Back to the overall index
- Lines: 52
- Date:
Sun Nov 12 09:40:48 2000
- Orig file:
v2.4.0-test10/linux/drivers/net/irda/nsc-ircc.c
- Orig date:
Tue Oct 31 12:42:26 2000
diff -u --recursive --new-file v2.4.0-test10/linux/drivers/net/irda/nsc-ircc.c linux/drivers/net/irda/nsc-ircc.c
@@ -1076,9 +1076,15 @@
netif_stop_queue(dev);
/* Check if we need to change the speed */
- if ((speed = irda_get_speed(skb)) != self->io.speed)
- self->new_speed = speed;
-
+ if ((speed = irda_get_speed(skb)) != self->io.speed) {
+ /* Check for empty frame */
+ if (!skb->len) {
+ nsc_ircc_change_speed(self, speed);
+ return 0;
+ } else
+ self->new_speed = speed;
+ }
+
spin_lock_irqsave(&self->lock, flags);
/* Save current bank */
@@ -1120,8 +1126,14 @@
netif_stop_queue(dev);
/* Check if we need to change the speed */
- if ((speed = irda_get_speed(skb)) != self->io.speed)
- self->new_speed = speed;
+ if ((speed = irda_get_speed(skb)) != self->io.speed) {
+ /* Check for empty frame */
+ if (!skb->len) {
+ nsc_ircc_change_speed(self, speed);
+ return 0;
+ } else
+ self->new_speed = speed;
+ }
spin_lock_irqsave(&self->lock, flags);
@@ -2029,10 +2041,15 @@
MODULE_DESCRIPTION("NSC IrDA Device Driver");
MODULE_PARM(qos_mtt_bits, "i");
+MODULE_PARM_DESC(qos_mtt_bits, "Minimum Turn Time");
MODULE_PARM(io, "1-4i");
+MODULE_PARM_DESC(io, "Base I/O addresses");
MODULE_PARM(irq, "1-4i");
+MODULE_PARM_DESC(irq, "IRQ lines");
MODULE_PARM(dma, "1-4i");
+MODULE_PARM_DESC(dma, "DMA channels");
MODULE_PARM(dongle_id, "i");
+MODULE_PARM_DESC(dongle_id, "Type-id of used dongle");
int init_module(void)
{
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)