Commit 6819bc2e authored by YOSHIFUJI Hideaki's avatar YOSHIFUJI Hideaki Committed by David S. Miller

[NET] IRDA: Fix whitespace errors.

Signed-off-by: default avatarYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 981c0ff6
...@@ -138,7 +138,7 @@ static void irda_disconnect_indication(void *instance, void *sap, ...@@ -138,7 +138,7 @@ static void irda_disconnect_indication(void *instance, void *sap,
sk->sk_shutdown |= SEND_SHUTDOWN; sk->sk_shutdown |= SEND_SHUTDOWN;
sk->sk_state_change(sk); sk->sk_state_change(sk);
sock_orphan(sk); sock_orphan(sk);
release_sock(sk); release_sock(sk);
/* Close our TSAP. /* Close our TSAP.
...@@ -158,7 +158,7 @@ static void irda_disconnect_indication(void *instance, void *sap, ...@@ -158,7 +158,7 @@ static void irda_disconnect_indication(void *instance, void *sap,
irttp_close_tsap(self->tsap); irttp_close_tsap(self->tsap);
self->tsap = NULL; self->tsap = NULL;
} }
} }
/* Note : once we are there, there is not much you want to do /* Note : once we are there, there is not much you want to do
* with the socket anymore, apart from closing it. * with the socket anymore, apart from closing it.
...@@ -1211,7 +1211,7 @@ static int irda_release(struct socket *sock) ...@@ -1211,7 +1211,7 @@ static int irda_release(struct socket *sock)
IRDA_DEBUG(2, "%s()\n", __FUNCTION__); IRDA_DEBUG(2, "%s()\n", __FUNCTION__);
if (sk == NULL) if (sk == NULL)
return 0; return 0;
lock_sock(sk); lock_sock(sk);
...@@ -1259,7 +1259,7 @@ static int irda_release(struct socket *sock) ...@@ -1259,7 +1259,7 @@ static int irda_release(struct socket *sock)
* memory leak is now gone... - Jean II * memory leak is now gone... - Jean II
*/ */
return 0; return 0;
} }
/* /*
...@@ -1312,7 +1312,7 @@ static int irda_sendmsg(struct kiocb *iocb, struct socket *sock, ...@@ -1312,7 +1312,7 @@ static int irda_sendmsg(struct kiocb *iocb, struct socket *sock,
len = self->max_data_size; len = self->max_data_size;
} }
skb = sock_alloc_send_skb(sk, len + self->max_header_size + 16, skb = sock_alloc_send_skb(sk, len + self->max_header_size + 16,
msg->msg_flags & MSG_DONTWAIT, &err); msg->msg_flags & MSG_DONTWAIT, &err);
if (!skb) if (!skb)
return -ENOBUFS; return -ENOBUFS;
...@@ -1714,7 +1714,7 @@ static int irda_shutdown(struct socket *sock, int how) ...@@ -1714,7 +1714,7 @@ static int irda_shutdown(struct socket *sock, int how)
self->daddr = DEV_ADDR_ANY; /* Until we get re-connected */ self->daddr = DEV_ADDR_ANY; /* Until we get re-connected */
self->saddr = 0x0; /* so IrLMP assign us any link */ self->saddr = 0x0; /* so IrLMP assign us any link */
return 0; return 0;
} }
/* /*
......
/********************************************************************* /*********************************************************************
* *
* Filename: discovery.c * Filename: discovery.c
* Version: 0.1 * Version: 0.1
* Description: Routines for handling discoveries at the IrLMP layer * Description: Routines for handling discoveries at the IrLMP layer
...@@ -10,24 +10,24 @@ ...@@ -10,24 +10,24 @@
* Modified by: Dag Brattli <dagb@cs.uit.no> * Modified by: Dag Brattli <dagb@cs.uit.no>
* Modified at: Fri May 28 3:11 CST 1999 * Modified at: Fri May 28 3:11 CST 1999
* Modified by: Horst von Brand <vonbrand@sleipnir.valparaiso.cl> * Modified by: Horst von Brand <vonbrand@sleipnir.valparaiso.cl>
* *
* Copyright (c) 1999 Dag Brattli, All Rights Reserved. * Copyright (c) 1999 Dag Brattli, All Rights Reserved.
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of * published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version. * the License, or (at your option) any later version.
* *
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details. * GNU General Public License for more details.
* *
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software * along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA * MA 02111-1307 USA
* *
********************************************************************/ ********************************************************************/
#include <linux/string.h> #include <linux/string.h>
...@@ -65,9 +65,9 @@ void irlmp_add_discovery(hashbin_t *cachelog, discovery_t *new) ...@@ -65,9 +65,9 @@ void irlmp_add_discovery(hashbin_t *cachelog, discovery_t *new)
spin_lock_irqsave(&cachelog->hb_spinlock, flags); spin_lock_irqsave(&cachelog->hb_spinlock, flags);
/* /*
* Remove all discoveries of devices that has previously been * Remove all discoveries of devices that has previously been
* discovered on the same link with the same name (info), or the * discovered on the same link with the same name (info), or the
* same daddr. We do this since some devices (mostly PDAs) change * same daddr. We do this since some devices (mostly PDAs) change
* their device address between every discovery. * their device address between every discovery.
*/ */
...@@ -79,10 +79,10 @@ void irlmp_add_discovery(hashbin_t *cachelog, discovery_t *new) ...@@ -79,10 +79,10 @@ void irlmp_add_discovery(hashbin_t *cachelog, discovery_t *new)
discovery = (discovery_t *) hashbin_get_next(cachelog); discovery = (discovery_t *) hashbin_get_next(cachelog);
if ((node->data.saddr == new->data.saddr) && if ((node->data.saddr == new->data.saddr) &&
((node->data.daddr == new->data.daddr) || ((node->data.daddr == new->data.daddr) ||
(strcmp(node->data.info, new->data.info) == 0))) (strcmp(node->data.info, new->data.info) == 0)))
{ {
/* This discovery is a previous discovery /* This discovery is a previous discovery
* from the same device, so just remove it * from the same device, so just remove it
*/ */
hashbin_remove_this(cachelog, (irda_queue_t *) node); hashbin_remove_this(cachelog, (irda_queue_t *) node);
...@@ -134,7 +134,7 @@ void irlmp_add_discovery_log(hashbin_t *cachelog, hashbin_t *log) ...@@ -134,7 +134,7 @@ void irlmp_add_discovery_log(hashbin_t *cachelog, hashbin_t *log)
discovery = (discovery_t *) hashbin_remove_first(log); discovery = (discovery_t *) hashbin_remove_first(log);
} }
/* Delete the now empty log */ /* Delete the now empty log */
hashbin_delete(log, (FREE_FUNC) kfree); hashbin_delete(log, (FREE_FUNC) kfree);
} }
...@@ -232,7 +232,7 @@ void irlmp_dump_discoveries(hashbin_t *log) ...@@ -232,7 +232,7 @@ void irlmp_dump_discoveries(hashbin_t *log)
while (discovery != NULL) { while (discovery != NULL) {
IRDA_DEBUG(0, "Discovery:\n"); IRDA_DEBUG(0, "Discovery:\n");
IRDA_DEBUG(0, " daddr=%08x\n", discovery->data.daddr); IRDA_DEBUG(0, " daddr=%08x\n", discovery->data.daddr);
IRDA_DEBUG(0, " saddr=%08x\n", discovery->data.saddr); IRDA_DEBUG(0, " saddr=%08x\n", discovery->data.saddr);
IRDA_DEBUG(0, " nickname=%s\n", discovery->data.info); IRDA_DEBUG(0, " nickname=%s\n", discovery->data.info);
discovery = (discovery_t *) hashbin_get_next(log); discovery = (discovery_t *) hashbin_get_next(log);
...@@ -321,26 +321,26 @@ static inline discovery_t *discovery_seq_idx(loff_t pos) ...@@ -321,26 +321,26 @@ static inline discovery_t *discovery_seq_idx(loff_t pos)
{ {
discovery_t *discovery; discovery_t *discovery;
for (discovery = (discovery_t *) hashbin_get_first(irlmp->cachelog); for (discovery = (discovery_t *) hashbin_get_first(irlmp->cachelog);
discovery != NULL; discovery != NULL;
discovery = (discovery_t *) hashbin_get_next(irlmp->cachelog)) { discovery = (discovery_t *) hashbin_get_next(irlmp->cachelog)) {
if (pos-- == 0) if (pos-- == 0)
break; break;
} }
return discovery; return discovery;
} }
static void *discovery_seq_start(struct seq_file *seq, loff_t *pos) static void *discovery_seq_start(struct seq_file *seq, loff_t *pos)
{ {
spin_lock_irq(&irlmp->cachelog->hb_spinlock); spin_lock_irq(&irlmp->cachelog->hb_spinlock);
return *pos ? discovery_seq_idx(*pos - 1) : SEQ_START_TOKEN; return *pos ? discovery_seq_idx(*pos - 1) : SEQ_START_TOKEN;
} }
static void *discovery_seq_next(struct seq_file *seq, void *v, loff_t *pos) static void *discovery_seq_next(struct seq_file *seq, void *v, loff_t *pos)
{ {
++*pos; ++*pos;
return (v == SEQ_START_TOKEN) return (v == SEQ_START_TOKEN)
? (void *) hashbin_get_first(irlmp->cachelog) ? (void *) hashbin_get_first(irlmp->cachelog)
: (void *) hashbin_get_next(irlmp->cachelog); : (void *) hashbin_get_next(irlmp->cachelog);
} }
...@@ -357,9 +357,9 @@ static int discovery_seq_show(struct seq_file *seq, void *v) ...@@ -357,9 +357,9 @@ static int discovery_seq_show(struct seq_file *seq, void *v)
else { else {
const discovery_t *discovery = v; const discovery_t *discovery = v;
seq_printf(seq, "nickname: %s, hint: 0x%02x%02x", seq_printf(seq, "nickname: %s, hint: 0x%02x%02x",
discovery->data.info, discovery->data.info,
discovery->data.hints[0], discovery->data.hints[0],
discovery->data.hints[1]); discovery->data.hints[1]);
#if 0 #if 0
if ( discovery->data.hints[0] & HINT_PNP) if ( discovery->data.hints[0] & HINT_PNP)
...@@ -376,20 +376,20 @@ static int discovery_seq_show(struct seq_file *seq, void *v) ...@@ -376,20 +376,20 @@ static int discovery_seq_show(struct seq_file *seq, void *v)
seq_puts(seq, "Fax "); seq_puts(seq, "Fax ");
if ( discovery->data.hints[0] & HINT_LAN) if ( discovery->data.hints[0] & HINT_LAN)
seq_puts(seq, "LAN Access "); seq_puts(seq, "LAN Access ");
if ( discovery->data.hints[1] & HINT_TELEPHONY) if ( discovery->data.hints[1] & HINT_TELEPHONY)
seq_puts(seq, "Telephony "); seq_puts(seq, "Telephony ");
if ( discovery->data.hints[1] & HINT_FILE_SERVER) if ( discovery->data.hints[1] & HINT_FILE_SERVER)
seq_puts(seq, "File Server "); seq_puts(seq, "File Server ");
if ( discovery->data.hints[1] & HINT_COMM) if ( discovery->data.hints[1] & HINT_COMM)
seq_puts(seq, "IrCOMM "); seq_puts(seq, "IrCOMM ");
if ( discovery->data.hints[1] & HINT_OBEX) if ( discovery->data.hints[1] & HINT_OBEX)
seq_puts(seq, "IrOBEX "); seq_puts(seq, "IrOBEX ");
#endif #endif
seq_printf(seq,", saddr: 0x%08x, daddr: 0x%08x\n\n", seq_printf(seq,", saddr: 0x%08x, daddr: 0x%08x\n\n",
discovery->data.saddr, discovery->data.saddr,
discovery->data.daddr); discovery->data.daddr);
seq_putc(seq, '\n'); seq_putc(seq, '\n');
} }
return 0; return 0;
......
/********************************************************************* /*********************************************************************
* *
* Filename: ircomm_core.c * Filename: ircomm_core.c
* Version: 1.0 * Version: 1.0
* Description: IrCOMM service interface * Description: IrCOMM service interface
...@@ -8,25 +8,25 @@ ...@@ -8,25 +8,25 @@
* Created at: Sun Jun 6 20:37:34 1999 * Created at: Sun Jun 6 20:37:34 1999
* Modified at: Tue Dec 21 13:26:41 1999 * Modified at: Tue Dec 21 13:26:41 1999
* Modified by: Dag Brattli <dagb@cs.uit.no> * Modified by: Dag Brattli <dagb@cs.uit.no>
* *
* Copyright (c) 1999 Dag Brattli, All Rights Reserved. * Copyright (c) 1999 Dag Brattli, All Rights Reserved.
* Copyright (c) 2000-2003 Jean Tourrilhes <jt@hpl.hp.com> * Copyright (c) 2000-2003 Jean Tourrilhes <jt@hpl.hp.com>
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of * published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version. * the License, or (at your option) any later version.
* *
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details. * GNU General Public License for more details.
* *
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software * along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA * MA 02111-1307 USA
* *
********************************************************************/ ********************************************************************/
#include <linux/module.h> #include <linux/module.h>
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
#include <net/irda/ircomm_core.h> #include <net/irda/ircomm_core.h>
static int __ircomm_close(struct ircomm_cb *self); static int __ircomm_close(struct ircomm_cb *self);
static void ircomm_control_indication(struct ircomm_cb *self, static void ircomm_control_indication(struct ircomm_cb *self,
struct sk_buff *skb, int clen); struct sk_buff *skb, int clen);
#ifdef CONFIG_PROC_FS #ifdef CONFIG_PROC_FS
...@@ -69,22 +69,22 @@ hashbin_t *ircomm = NULL; ...@@ -69,22 +69,22 @@ hashbin_t *ircomm = NULL;
static int __init ircomm_init(void) static int __init ircomm_init(void)
{ {
ircomm = hashbin_new(HB_LOCK); ircomm = hashbin_new(HB_LOCK);
if (ircomm == NULL) { if (ircomm == NULL) {
IRDA_ERROR("%s(), can't allocate hashbin!\n", __FUNCTION__); IRDA_ERROR("%s(), can't allocate hashbin!\n", __FUNCTION__);
return -ENOMEM; return -ENOMEM;
} }
#ifdef CONFIG_PROC_FS #ifdef CONFIG_PROC_FS
{ struct proc_dir_entry *ent; { struct proc_dir_entry *ent;
ent = create_proc_entry("ircomm", 0, proc_irda); ent = create_proc_entry("ircomm", 0, proc_irda);
if (ent) if (ent)
ent->proc_fops = &ircomm_proc_fops; ent->proc_fops = &ircomm_proc_fops;
} }
#endif /* CONFIG_PROC_FS */ #endif /* CONFIG_PROC_FS */
IRDA_MESSAGE("IrCOMM protocol (Dag Brattli)\n"); IRDA_MESSAGE("IrCOMM protocol (Dag Brattli)\n");
return 0; return 0;
} }
...@@ -139,7 +139,7 @@ struct ircomm_cb *ircomm_open(notify_t *notify, __u8 service_type, int line) ...@@ -139,7 +139,7 @@ struct ircomm_cb *ircomm_open(notify_t *notify, __u8 service_type, int line)
hashbin_insert(ircomm, (irda_queue_t *) self, line, NULL); hashbin_insert(ircomm, (irda_queue_t *) self, line, NULL);
ircomm_next_state(self, IRCOMM_IDLE); ircomm_next_state(self, IRCOMM_IDLE);
return self; return self;
} }
...@@ -195,8 +195,8 @@ int ircomm_close(struct ircomm_cb *self) ...@@ -195,8 +195,8 @@ int ircomm_close(struct ircomm_cb *self)
entry = hashbin_remove(ircomm, self->line, NULL); entry = hashbin_remove(ircomm, self->line, NULL);
IRDA_ASSERT(entry == self, return -1;); IRDA_ASSERT(entry == self, return -1;);
return __ircomm_close(self); return __ircomm_close(self);
} }
EXPORT_SYMBOL(ircomm_close); EXPORT_SYMBOL(ircomm_close);
...@@ -206,9 +206,9 @@ EXPORT_SYMBOL(ircomm_close); ...@@ -206,9 +206,9 @@ EXPORT_SYMBOL(ircomm_close);
* *
* Impl. of this function is differ from one of the reference. This * Impl. of this function is differ from one of the reference. This
* function does discovery as well as sending connect request * function does discovery as well as sending connect request
* *
*/ */
int ircomm_connect_request(struct ircomm_cb *self, __u8 dlsap_sel, int ircomm_connect_request(struct ircomm_cb *self, __u8 dlsap_sel,
__u32 saddr, __u32 daddr, struct sk_buff *skb, __u32 saddr, __u32 daddr, struct sk_buff *skb,
__u8 service_type) __u8 service_type)
{ {
...@@ -243,20 +243,20 @@ void ircomm_connect_indication(struct ircomm_cb *self, struct sk_buff *skb, ...@@ -243,20 +243,20 @@ void ircomm_connect_indication(struct ircomm_cb *self, struct sk_buff *skb,
struct ircomm_info *info) struct ircomm_info *info)
{ {
int clen = 0; int clen = 0;
IRDA_DEBUG(2, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s()\n", __FUNCTION__ );
/* Check if the packet contains data on the control channel */ /* Check if the packet contains data on the control channel */
if (skb->len > 0) if (skb->len > 0)
clen = skb->data[0]; clen = skb->data[0];
/* /*
* If there are any data hiding in the control channel, we must * If there are any data hiding in the control channel, we must
* deliver it first. The side effect is that the control channel * deliver it first. The side effect is that the control channel
* will be removed from the skb * will be removed from the skb
*/ */
if (self->notify.connect_indication) if (self->notify.connect_indication)
self->notify.connect_indication(self->notify.instance, self, self->notify.connect_indication(self->notify.instance, self,
info->qos, info->max_data_size, info->qos, info->max_data_size,
info->max_header_size, skb); info->max_header_size, skb);
else { else {
...@@ -282,7 +282,7 @@ int ircomm_connect_response(struct ircomm_cb *self, struct sk_buff *userdata) ...@@ -282,7 +282,7 @@ int ircomm_connect_response(struct ircomm_cb *self, struct sk_buff *userdata)
ret = ircomm_do_event(self, IRCOMM_CONNECT_RESPONSE, userdata, NULL); ret = ircomm_do_event(self, IRCOMM_CONNECT_RESPONSE, userdata, NULL);
return ret; return ret;
} }
EXPORT_SYMBOL(ircomm_connect_response); EXPORT_SYMBOL(ircomm_connect_response);
...@@ -299,7 +299,7 @@ void ircomm_connect_confirm(struct ircomm_cb *self, struct sk_buff *skb, ...@@ -299,7 +299,7 @@ void ircomm_connect_confirm(struct ircomm_cb *self, struct sk_buff *skb,
if (self->notify.connect_confirm ) if (self->notify.connect_confirm )
self->notify.connect_confirm(self->notify.instance, self->notify.connect_confirm(self->notify.instance,
self, info->qos, self, info->qos,
info->max_data_size, info->max_data_size,
info->max_header_size, skb); info->max_header_size, skb);
else { else {
...@@ -322,7 +322,7 @@ int ircomm_data_request(struct ircomm_cb *self, struct sk_buff *skb) ...@@ -322,7 +322,7 @@ int ircomm_data_request(struct ircomm_cb *self, struct sk_buff *skb)
IRDA_ASSERT(self != NULL, return -EFAULT;); IRDA_ASSERT(self != NULL, return -EFAULT;);
IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -EFAULT;); IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -EFAULT;);
IRDA_ASSERT(skb != NULL, return -EFAULT;); IRDA_ASSERT(skb != NULL, return -EFAULT;);
ret = ircomm_do_event(self, IRCOMM_DATA_REQUEST, skb, NULL); ret = ircomm_do_event(self, IRCOMM_DATA_REQUEST, skb, NULL);
return ret; return ret;
...@@ -337,7 +337,7 @@ EXPORT_SYMBOL(ircomm_data_request); ...@@ -337,7 +337,7 @@ EXPORT_SYMBOL(ircomm_data_request);
* *
*/ */
void ircomm_data_indication(struct ircomm_cb *self, struct sk_buff *skb) void ircomm_data_indication(struct ircomm_cb *self, struct sk_buff *skb)
{ {
IRDA_DEBUG(4, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(4, "%s()\n", __FUNCTION__ );
IRDA_ASSERT(skb->len > 0, return;); IRDA_ASSERT(skb->len > 0, return;);
...@@ -363,9 +363,9 @@ void ircomm_process_data(struct ircomm_cb *self, struct sk_buff *skb) ...@@ -363,9 +363,9 @@ void ircomm_process_data(struct ircomm_cb *self, struct sk_buff *skb)
clen = skb->data[0]; clen = skb->data[0];
/* /*
* If there are any data hiding in the control channel, we must * If there are any data hiding in the control channel, we must
* deliver it first. The side effect is that the control channel * deliver it first. The side effect is that the control channel
* will be removed from the skb * will be removed from the skb
*/ */
if (clen > 0) if (clen > 0)
...@@ -375,7 +375,7 @@ void ircomm_process_data(struct ircomm_cb *self, struct sk_buff *skb) ...@@ -375,7 +375,7 @@ void ircomm_process_data(struct ircomm_cb *self, struct sk_buff *skb)
skb_pull(skb, clen+1); skb_pull(skb, clen+1);
if (skb->len) if (skb->len)
ircomm_data_indication(self, skb); ircomm_data_indication(self, skb);
else { else {
IRDA_DEBUG(4, "%s(), data was control info only!\n", IRDA_DEBUG(4, "%s(), data was control info only!\n",
__FUNCTION__ ); __FUNCTION__ );
...@@ -391,13 +391,13 @@ void ircomm_process_data(struct ircomm_cb *self, struct sk_buff *skb) ...@@ -391,13 +391,13 @@ void ircomm_process_data(struct ircomm_cb *self, struct sk_buff *skb)
int ircomm_control_request(struct ircomm_cb *self, struct sk_buff *skb) int ircomm_control_request(struct ircomm_cb *self, struct sk_buff *skb)
{ {
int ret; int ret;
IRDA_DEBUG(2, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s()\n", __FUNCTION__ );
IRDA_ASSERT(self != NULL, return -EFAULT;); IRDA_ASSERT(self != NULL, return -EFAULT;);
IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -EFAULT;); IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -EFAULT;);
IRDA_ASSERT(skb != NULL, return -EFAULT;); IRDA_ASSERT(skb != NULL, return -EFAULT;);
ret = ircomm_do_event(self, IRCOMM_CONTROL_REQUEST, skb, NULL); ret = ircomm_do_event(self, IRCOMM_CONTROL_REQUEST, skb, NULL);
return ret; return ret;
...@@ -411,10 +411,10 @@ EXPORT_SYMBOL(ircomm_control_request); ...@@ -411,10 +411,10 @@ EXPORT_SYMBOL(ircomm_control_request);
* Data has arrived on the control channel * Data has arrived on the control channel
* *
*/ */
static void ircomm_control_indication(struct ircomm_cb *self, static void ircomm_control_indication(struct ircomm_cb *self,
struct sk_buff *skb, int clen) struct sk_buff *skb, int clen)
{ {
IRDA_DEBUG(2, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s()\n", __FUNCTION__ );
/* Use udata for delivering data on the control channel */ /* Use udata for delivering data on the control channel */
if (self->notify.udata_indication) { if (self->notify.udata_indication) {
...@@ -427,8 +427,8 @@ static void ircomm_control_indication(struct ircomm_cb *self, ...@@ -427,8 +427,8 @@ static void ircomm_control_indication(struct ircomm_cb *self,
/* Remove data channel from control channel */ /* Remove data channel from control channel */
skb_trim(ctrl_skb, clen+1); skb_trim(ctrl_skb, clen+1);
self->notify.udata_indication(self->notify.instance, self, self->notify.udata_indication(self->notify.instance, self,
ctrl_skb); ctrl_skb);
/* Drop reference count - /* Drop reference count -
...@@ -455,7 +455,7 @@ int ircomm_disconnect_request(struct ircomm_cb *self, struct sk_buff *userdata) ...@@ -455,7 +455,7 @@ int ircomm_disconnect_request(struct ircomm_cb *self, struct sk_buff *userdata)
IRDA_ASSERT(self != NULL, return -1;); IRDA_ASSERT(self != NULL, return -1;);
IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -1;); IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -1;);
ret = ircomm_do_event(self, IRCOMM_DISCONNECT_REQUEST, userdata, ret = ircomm_do_event(self, IRCOMM_DISCONNECT_REQUEST, userdata,
&info); &info);
return ret; return ret;
} }
...@@ -472,7 +472,7 @@ void ircomm_disconnect_indication(struct ircomm_cb *self, struct sk_buff *skb, ...@@ -472,7 +472,7 @@ void ircomm_disconnect_indication(struct ircomm_cb *self, struct sk_buff *skb,
struct ircomm_info *info) struct ircomm_info *info)
{ {
IRDA_DEBUG(2, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s()\n", __FUNCTION__ );
IRDA_ASSERT(info != NULL, return;); IRDA_ASSERT(info != NULL, return;);
if (self->notify.disconnect_indication) { if (self->notify.disconnect_indication) {
...@@ -486,7 +486,7 @@ void ircomm_disconnect_indication(struct ircomm_cb *self, struct sk_buff *skb, ...@@ -486,7 +486,7 @@ void ircomm_disconnect_indication(struct ircomm_cb *self, struct sk_buff *skb,
/* /*
* Function ircomm_flow_request (self, flow) * Function ircomm_flow_request (self, flow)
* *
* *
* *
*/ */
void ircomm_flow_request(struct ircomm_cb *self, LOCAL_FLOW flow) void ircomm_flow_request(struct ircomm_cb *self, LOCAL_FLOW flow)
...@@ -517,7 +517,7 @@ static void *ircomm_seq_start(struct seq_file *seq, loff_t *pos) ...@@ -517,7 +517,7 @@ static void *ircomm_seq_start(struct seq_file *seq, loff_t *pos)
self = (struct ircomm_cb *) hashbin_get_next(ircomm)) { self = (struct ircomm_cb *) hashbin_get_next(ircomm)) {
if (off++ == *pos) if (off++ == *pos)
break; break;
} }
return self; return self;
} }
...@@ -535,7 +535,7 @@ static void ircomm_seq_stop(struct seq_file *seq, void *v) ...@@ -535,7 +535,7 @@ static void ircomm_seq_stop(struct seq_file *seq, void *v)
} }
static int ircomm_seq_show(struct seq_file *seq, void *v) static int ircomm_seq_show(struct seq_file *seq, void *v)
{ {
const struct ircomm_cb *self = v; const struct ircomm_cb *self = v;
IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -EINVAL; ); IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -EINVAL; );
...@@ -548,7 +548,7 @@ static int ircomm_seq_show(struct seq_file *seq, void *v) ...@@ -548,7 +548,7 @@ static int ircomm_seq_show(struct seq_file *seq, void *v)
seq_printf(seq, seq_printf(seq,
" state: %s, slsap_sel: %#02x, dlsap_sel: %#02x, mode:", " state: %s, slsap_sel: %#02x, dlsap_sel: %#02x, mode:",
ircomm_state[ self->state], ircomm_state[ self->state],
self->slsap_sel, self->dlsap_sel); self->slsap_sel, self->dlsap_sel);
if(self->service_type & IRCOMM_3_WIRE_RAW) if(self->service_type & IRCOMM_3_WIRE_RAW)
seq_printf(seq, " 3-wire-raw"); seq_printf(seq, " 3-wire-raw");
......
/********************************************************************* /*********************************************************************
* *
* Filename: ircomm_event.c * Filename: ircomm_event.c
* Version: 1.0 * Version: 1.0
* Description: IrCOMM layer state machine * Description: IrCOMM layer state machine
...@@ -8,24 +8,24 @@ ...@@ -8,24 +8,24 @@
* Created at: Sun Jun 6 20:33:11 1999 * Created at: Sun Jun 6 20:33:11 1999
* Modified at: Sun Dec 12 13:44:32 1999 * Modified at: Sun Dec 12 13:44:32 1999
* Modified by: Dag Brattli <dagb@cs.uit.no> * Modified by: Dag Brattli <dagb@cs.uit.no>
* *
* Copyright (c) 1999 Dag Brattli, All Rights Reserved. * Copyright (c) 1999 Dag Brattli, All Rights Reserved.
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of * published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version. * the License, or (at your option) any later version.
* *
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details. * GNU General Public License for more details.
* *
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software * along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA * MA 02111-1307 USA
* *
********************************************************************/ ********************************************************************/
#include <linux/sched.h> #include <linux/sched.h>
...@@ -41,13 +41,13 @@ ...@@ -41,13 +41,13 @@
#include <net/irda/ircomm_core.h> #include <net/irda/ircomm_core.h>
#include <net/irda/ircomm_event.h> #include <net/irda/ircomm_event.h>
static int ircomm_state_idle(struct ircomm_cb *self, IRCOMM_EVENT event, static int ircomm_state_idle(struct ircomm_cb *self, IRCOMM_EVENT event,
struct sk_buff *skb, struct ircomm_info *info); struct sk_buff *skb, struct ircomm_info *info);
static int ircomm_state_waiti(struct ircomm_cb *self, IRCOMM_EVENT event, static int ircomm_state_waiti(struct ircomm_cb *self, IRCOMM_EVENT event,
struct sk_buff *skb, struct ircomm_info *info); struct sk_buff *skb, struct ircomm_info *info);
static int ircomm_state_waitr(struct ircomm_cb *self, IRCOMM_EVENT event, static int ircomm_state_waitr(struct ircomm_cb *self, IRCOMM_EVENT event,
struct sk_buff *skb, struct ircomm_info *info); struct sk_buff *skb, struct ircomm_info *info);
static int ircomm_state_conn(struct ircomm_cb *self, IRCOMM_EVENT event, static int ircomm_state_conn(struct ircomm_cb *self, IRCOMM_EVENT event,
struct sk_buff *skb, struct ircomm_info *info); struct sk_buff *skb, struct ircomm_info *info);
char *ircomm_state[] = { char *ircomm_state[] = {
...@@ -60,26 +60,26 @@ char *ircomm_state[] = { ...@@ -60,26 +60,26 @@ char *ircomm_state[] = {
#ifdef CONFIG_IRDA_DEBUG #ifdef CONFIG_IRDA_DEBUG
static char *ircomm_event[] = { static char *ircomm_event[] = {
"IRCOMM_CONNECT_REQUEST", "IRCOMM_CONNECT_REQUEST",
"IRCOMM_CONNECT_RESPONSE", "IRCOMM_CONNECT_RESPONSE",
"IRCOMM_TTP_CONNECT_INDICATION", "IRCOMM_TTP_CONNECT_INDICATION",
"IRCOMM_LMP_CONNECT_INDICATION", "IRCOMM_LMP_CONNECT_INDICATION",
"IRCOMM_TTP_CONNECT_CONFIRM", "IRCOMM_TTP_CONNECT_CONFIRM",
"IRCOMM_LMP_CONNECT_CONFIRM", "IRCOMM_LMP_CONNECT_CONFIRM",
"IRCOMM_LMP_DISCONNECT_INDICATION", "IRCOMM_LMP_DISCONNECT_INDICATION",
"IRCOMM_TTP_DISCONNECT_INDICATION", "IRCOMM_TTP_DISCONNECT_INDICATION",
"IRCOMM_DISCONNECT_REQUEST", "IRCOMM_DISCONNECT_REQUEST",
"IRCOMM_TTP_DATA_INDICATION", "IRCOMM_TTP_DATA_INDICATION",
"IRCOMM_LMP_DATA_INDICATION", "IRCOMM_LMP_DATA_INDICATION",
"IRCOMM_DATA_REQUEST", "IRCOMM_DATA_REQUEST",
"IRCOMM_CONTROL_REQUEST", "IRCOMM_CONTROL_REQUEST",
"IRCOMM_CONTROL_INDICATION", "IRCOMM_CONTROL_INDICATION",
}; };
#endif /* CONFIG_IRDA_DEBUG */ #endif /* CONFIG_IRDA_DEBUG */
static int (*state[])(struct ircomm_cb *self, IRCOMM_EVENT event, static int (*state[])(struct ircomm_cb *self, IRCOMM_EVENT event,
struct sk_buff *skb, struct ircomm_info *info) = struct sk_buff *skb, struct ircomm_info *info) =
{ {
ircomm_state_idle, ircomm_state_idle,
ircomm_state_waiti, ircomm_state_waiti,
...@@ -93,14 +93,14 @@ static int (*state[])(struct ircomm_cb *self, IRCOMM_EVENT event, ...@@ -93,14 +93,14 @@ static int (*state[])(struct ircomm_cb *self, IRCOMM_EVENT event,
* IrCOMM is currently idle * IrCOMM is currently idle
* *
*/ */
static int ircomm_state_idle(struct ircomm_cb *self, IRCOMM_EVENT event, static int ircomm_state_idle(struct ircomm_cb *self, IRCOMM_EVENT event,
struct sk_buff *skb, struct ircomm_info *info) struct sk_buff *skb, struct ircomm_info *info)
{ {
int ret = 0; int ret = 0;
switch (event) { switch (event) {
case IRCOMM_CONNECT_REQUEST: case IRCOMM_CONNECT_REQUEST:
ircomm_next_state(self, IRCOMM_WAITI); ircomm_next_state(self, IRCOMM_WAITI);
ret = self->issue.connect_request(self, skb, info); ret = self->issue.connect_request(self, skb, info);
break; break;
case IRCOMM_TTP_CONNECT_INDICATION: case IRCOMM_TTP_CONNECT_INDICATION:
...@@ -119,10 +119,10 @@ static int ircomm_state_idle(struct ircomm_cb *self, IRCOMM_EVENT event, ...@@ -119,10 +119,10 @@ static int ircomm_state_idle(struct ircomm_cb *self, IRCOMM_EVENT event,
/* /*
* Function ircomm_state_waiti (self, event, skb) * Function ircomm_state_waiti (self, event, skb)
* *
* The IrCOMM user has requested an IrCOMM connection to the remote * The IrCOMM user has requested an IrCOMM connection to the remote
* device and is awaiting confirmation * device and is awaiting confirmation
*/ */
static int ircomm_state_waiti(struct ircomm_cb *self, IRCOMM_EVENT event, static int ircomm_state_waiti(struct ircomm_cb *self, IRCOMM_EVENT event,
struct sk_buff *skb, struct ircomm_info *info) struct sk_buff *skb, struct ircomm_info *info)
{ {
int ret = 0; int ret = 0;
...@@ -152,8 +152,8 @@ static int ircomm_state_waiti(struct ircomm_cb *self, IRCOMM_EVENT event, ...@@ -152,8 +152,8 @@ static int ircomm_state_waiti(struct ircomm_cb *self, IRCOMM_EVENT event,
* IrCOMM has received an incoming connection request and is awaiting * IrCOMM has received an incoming connection request and is awaiting
* response from the user * response from the user
*/ */
static int ircomm_state_waitr(struct ircomm_cb *self, IRCOMM_EVENT event, static int ircomm_state_waitr(struct ircomm_cb *self, IRCOMM_EVENT event,
struct sk_buff *skb, struct ircomm_info *info) struct sk_buff *skb, struct ircomm_info *info)
{ {
int ret = 0; int ret = 0;
...@@ -185,7 +185,7 @@ static int ircomm_state_waitr(struct ircomm_cb *self, IRCOMM_EVENT event, ...@@ -185,7 +185,7 @@ static int ircomm_state_waitr(struct ircomm_cb *self, IRCOMM_EVENT event,
* IrCOMM is connected to the peer IrCOMM device * IrCOMM is connected to the peer IrCOMM device
* *
*/ */
static int ircomm_state_conn(struct ircomm_cb *self, IRCOMM_EVENT event, static int ircomm_state_conn(struct ircomm_cb *self, IRCOMM_EVENT event,
struct sk_buff *skb, struct ircomm_info *info) struct sk_buff *skb, struct ircomm_info *info)
{ {
int ret = 0; int ret = 0;
...@@ -228,7 +228,7 @@ static int ircomm_state_conn(struct ircomm_cb *self, IRCOMM_EVENT event, ...@@ -228,7 +228,7 @@ static int ircomm_state_conn(struct ircomm_cb *self, IRCOMM_EVENT event,
* *
*/ */
int ircomm_do_event(struct ircomm_cb *self, IRCOMM_EVENT event, int ircomm_do_event(struct ircomm_cb *self, IRCOMM_EVENT event,
struct sk_buff *skb, struct ircomm_info *info) struct sk_buff *skb, struct ircomm_info *info)
{ {
IRDA_DEBUG(4, "%s: state=%s, event=%s\n", __FUNCTION__ , IRDA_DEBUG(4, "%s: state=%s, event=%s\n", __FUNCTION__ ,
ircomm_state[self->state], ircomm_event[event]); ircomm_state[self->state], ircomm_event[event]);
...@@ -245,7 +245,7 @@ int ircomm_do_event(struct ircomm_cb *self, IRCOMM_EVENT event, ...@@ -245,7 +245,7 @@ int ircomm_do_event(struct ircomm_cb *self, IRCOMM_EVENT event,
void ircomm_next_state(struct ircomm_cb *self, IRCOMM_STATE state) void ircomm_next_state(struct ircomm_cb *self, IRCOMM_STATE state)
{ {
self->state = state; self->state = state;
IRDA_DEBUG(4, "%s: next state=%s, service type=%d\n", __FUNCTION__ , IRDA_DEBUG(4, "%s: next state=%s, service type=%d\n", __FUNCTION__ ,
ircomm_state[self->state], self->service_type); ircomm_state[self->state], self->service_type);
} }
/********************************************************************* /*********************************************************************
* *
* Filename: ircomm_lmp.c * Filename: ircomm_lmp.c
* Version: 1.0 * Version: 1.0
* Description: Interface between IrCOMM and IrLMP * Description: Interface between IrCOMM and IrLMP
...@@ -9,25 +9,25 @@ ...@@ -9,25 +9,25 @@
* Modified at: Sun Dec 12 13:44:17 1999 * Modified at: Sun Dec 12 13:44:17 1999
* Modified by: Dag Brattli <dagb@cs.uit.no> * Modified by: Dag Brattli <dagb@cs.uit.no>
* Sources: Previous IrLPT work by Thomas Davis * Sources: Previous IrLPT work by Thomas Davis
* *
* Copyright (c) 1999 Dag Brattli, All Rights Reserved. * Copyright (c) 1999 Dag Brattli, All Rights Reserved.
* Copyright (c) 2000-2003 Jean Tourrilhes <jt@hpl.hp.com> * Copyright (c) 2000-2003 Jean Tourrilhes <jt@hpl.hp.com>
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of * published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version. * the License, or (at your option) any later version.
* *
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details. * GNU General Public License for more details.
* *
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software * along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA * MA 02111-1307 USA
* *
********************************************************************/ ********************************************************************/
#include <linux/sched.h> #include <linux/sched.h>
...@@ -45,11 +45,11 @@ ...@@ -45,11 +45,11 @@
/* /*
* Function ircomm_lmp_connect_request (self, userdata) * Function ircomm_lmp_connect_request (self, userdata)
* *
* *
* *
*/ */
static int ircomm_lmp_connect_request(struct ircomm_cb *self, static int ircomm_lmp_connect_request(struct ircomm_cb *self,
struct sk_buff *userdata, struct sk_buff *userdata,
struct ircomm_info *info) struct ircomm_info *info)
{ {
int ret = 0; int ret = 0;
...@@ -61,14 +61,14 @@ static int ircomm_lmp_connect_request(struct ircomm_cb *self, ...@@ -61,14 +61,14 @@ static int ircomm_lmp_connect_request(struct ircomm_cb *self,
skb_get(userdata); skb_get(userdata);
ret = irlmp_connect_request(self->lsap, info->dlsap_sel, ret = irlmp_connect_request(self->lsap, info->dlsap_sel,
info->saddr, info->daddr, NULL, userdata); info->saddr, info->daddr, NULL, userdata);
return ret; return ret;
} }
/* /*
* Function ircomm_lmp_connect_response (self, skb) * Function ircomm_lmp_connect_response (self, skb)
* *
* *
* *
*/ */
static int ircomm_lmp_connect_response(struct ircomm_cb *self, static int ircomm_lmp_connect_response(struct ircomm_cb *self,
...@@ -78,7 +78,7 @@ static int ircomm_lmp_connect_response(struct ircomm_cb *self, ...@@ -78,7 +78,7 @@ static int ircomm_lmp_connect_response(struct ircomm_cb *self,
int ret; int ret;
IRDA_DEBUG(0, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(0, "%s()\n", __FUNCTION__ );
/* Any userdata supplied? */ /* Any userdata supplied? */
if (userdata == NULL) { if (userdata == NULL) {
tx_skb = alloc_skb(LMP_MAX_HEADER, GFP_ATOMIC); tx_skb = alloc_skb(LMP_MAX_HEADER, GFP_ATOMIC);
...@@ -88,8 +88,8 @@ static int ircomm_lmp_connect_response(struct ircomm_cb *self, ...@@ -88,8 +88,8 @@ static int ircomm_lmp_connect_response(struct ircomm_cb *self,
/* Reserve space for MUX and LAP header */ /* Reserve space for MUX and LAP header */
skb_reserve(tx_skb, LMP_MAX_HEADER); skb_reserve(tx_skb, LMP_MAX_HEADER);
} else { } else {
/* /*
* Check that the client has reserved enough space for * Check that the client has reserved enough space for
* headers * headers
*/ */
IRDA_ASSERT(skb_headroom(userdata) >= LMP_MAX_HEADER, IRDA_ASSERT(skb_headroom(userdata) >= LMP_MAX_HEADER,
...@@ -105,22 +105,22 @@ static int ircomm_lmp_connect_response(struct ircomm_cb *self, ...@@ -105,22 +105,22 @@ static int ircomm_lmp_connect_response(struct ircomm_cb *self,
return 0; return 0;
} }
static int ircomm_lmp_disconnect_request(struct ircomm_cb *self, static int ircomm_lmp_disconnect_request(struct ircomm_cb *self,
struct sk_buff *userdata, struct sk_buff *userdata,
struct ircomm_info *info) struct ircomm_info *info)
{ {
struct sk_buff *tx_skb; struct sk_buff *tx_skb;
int ret; int ret;
IRDA_DEBUG(0, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(0, "%s()\n", __FUNCTION__ );
if (!userdata) { if (!userdata) {
tx_skb = alloc_skb(LMP_MAX_HEADER, GFP_ATOMIC); tx_skb = alloc_skb(LMP_MAX_HEADER, GFP_ATOMIC);
if (!tx_skb) if (!tx_skb)
return -ENOMEM; return -ENOMEM;
/* Reserve space for MUX and LAP header */ /* Reserve space for MUX and LAP header */
skb_reserve(tx_skb, LMP_MAX_HEADER); skb_reserve(tx_skb, LMP_MAX_HEADER);
userdata = tx_skb; userdata = tx_skb;
} else { } else {
/* Don't forget to refcount it - should be NULL anyway */ /* Don't forget to refcount it - should be NULL anyway */
...@@ -136,7 +136,7 @@ static int ircomm_lmp_disconnect_request(struct ircomm_cb *self, ...@@ -136,7 +136,7 @@ static int ircomm_lmp_disconnect_request(struct ircomm_cb *self,
* Function ircomm_lmp_flow_control (skb) * Function ircomm_lmp_flow_control (skb)
* *
* This function is called when a data frame we have sent to IrLAP has * This function is called when a data frame we have sent to IrLAP has
* been deallocated. We do this to make sure we don't flood IrLAP with * been deallocated. We do this to make sure we don't flood IrLAP with
* frames, since we are not using the IrTTP flow control mechanism * frames, since we are not using the IrTTP flow control mechanism
*/ */
static void ircomm_lmp_flow_control(struct sk_buff *skb) static void ircomm_lmp_flow_control(struct sk_buff *skb)
...@@ -150,29 +150,29 @@ static void ircomm_lmp_flow_control(struct sk_buff *skb) ...@@ -150,29 +150,29 @@ static void ircomm_lmp_flow_control(struct sk_buff *skb)
cb = (struct irda_skb_cb *) skb->cb; cb = (struct irda_skb_cb *) skb->cb;
IRDA_DEBUG(2, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s()\n", __FUNCTION__ );
line = cb->line; line = cb->line;
self = (struct ircomm_cb *) hashbin_lock_find(ircomm, line, NULL); self = (struct ircomm_cb *) hashbin_lock_find(ircomm, line, NULL);
if (!self) { if (!self) {
IRDA_DEBUG(2, "%s(), didn't find myself\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s(), didn't find myself\n", __FUNCTION__ );
return; return;
} }
IRDA_ASSERT(self != NULL, return;); IRDA_ASSERT(self != NULL, return;);
IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return;); IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return;);
self->pkt_count--; self->pkt_count--;
if ((self->pkt_count < 2) && (self->flow_status == FLOW_STOP)) { if ((self->pkt_count < 2) && (self->flow_status == FLOW_STOP)) {
IRDA_DEBUG(2, "%s(), asking TTY to start again!\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s(), asking TTY to start again!\n", __FUNCTION__ );
self->flow_status = FLOW_START; self->flow_status = FLOW_START;
if (self->notify.flow_indication) if (self->notify.flow_indication)
self->notify.flow_indication(self->notify.instance, self->notify.flow_indication(self->notify.instance,
self, FLOW_START); self, FLOW_START);
} }
} }
/* /*
* Function ircomm_lmp_data_request (self, userdata) * Function ircomm_lmp_data_request (self, userdata)
* *
...@@ -180,7 +180,7 @@ static void ircomm_lmp_flow_control(struct sk_buff *skb) ...@@ -180,7 +180,7 @@ static void ircomm_lmp_flow_control(struct sk_buff *skb)
* *
*/ */
static int ircomm_lmp_data_request(struct ircomm_cb *self, static int ircomm_lmp_data_request(struct ircomm_cb *self,
struct sk_buff *skb, struct sk_buff *skb,
int not_used) int not_used)
{ {
struct irda_skb_cb *cb; struct irda_skb_cb *cb;
...@@ -189,8 +189,8 @@ static int ircomm_lmp_data_request(struct ircomm_cb *self, ...@@ -189,8 +189,8 @@ static int ircomm_lmp_data_request(struct ircomm_cb *self,
IRDA_ASSERT(skb != NULL, return -1;); IRDA_ASSERT(skb != NULL, return -1;);
cb = (struct irda_skb_cb *) skb->cb; cb = (struct irda_skb_cb *) skb->cb;
cb->line = self->line; cb->line = self->line;
IRDA_DEBUG(4, "%s(), sending frame\n", __FUNCTION__ ); IRDA_DEBUG(4, "%s(), sending frame\n", __FUNCTION__ );
...@@ -199,13 +199,13 @@ static int ircomm_lmp_data_request(struct ircomm_cb *self, ...@@ -199,13 +199,13 @@ static int ircomm_lmp_data_request(struct ircomm_cb *self,
skb->destructor = ircomm_lmp_flow_control; skb->destructor = ircomm_lmp_flow_control;
if ((self->pkt_count++ > 7) && (self->flow_status == FLOW_START)) { if ((self->pkt_count++ > 7) && (self->flow_status == FLOW_START)) {
IRDA_DEBUG(2, "%s(), asking TTY to slow down!\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s(), asking TTY to slow down!\n", __FUNCTION__ );
self->flow_status = FLOW_STOP; self->flow_status = FLOW_STOP;
if (self->notify.flow_indication) if (self->notify.flow_indication)
self->notify.flow_indication(self->notify.instance, self->notify.flow_indication(self->notify.instance,
self, FLOW_STOP); self, FLOW_STOP);
} }
ret = irlmp_data_request(self->lsap, skb); ret = irlmp_data_request(self->lsap, skb);
if (ret) { if (ret) {
IRDA_ERROR("%s(), failed\n", __FUNCTION__); IRDA_ERROR("%s(), failed\n", __FUNCTION__);
...@@ -227,11 +227,11 @@ static int ircomm_lmp_data_indication(void *instance, void *sap, ...@@ -227,11 +227,11 @@ static int ircomm_lmp_data_indication(void *instance, void *sap,
struct ircomm_cb *self = (struct ircomm_cb *) instance; struct ircomm_cb *self = (struct ircomm_cb *) instance;
IRDA_DEBUG(4, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(4, "%s()\n", __FUNCTION__ );
IRDA_ASSERT(self != NULL, return -1;); IRDA_ASSERT(self != NULL, return -1;);
IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -1;); IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -1;);
IRDA_ASSERT(skb != NULL, return -1;); IRDA_ASSERT(skb != NULL, return -1;);
ircomm_do_event(self, IRCOMM_LMP_DATA_INDICATION, skb, NULL); ircomm_do_event(self, IRCOMM_LMP_DATA_INDICATION, skb, NULL);
/* Drop reference count - see ircomm_tty_data_indication(). */ /* Drop reference count - see ircomm_tty_data_indication(). */
...@@ -241,15 +241,15 @@ static int ircomm_lmp_data_indication(void *instance, void *sap, ...@@ -241,15 +241,15 @@ static int ircomm_lmp_data_indication(void *instance, void *sap,
} }
/* /*
* Function ircomm_lmp_connect_confirm (instance, sap, qos, max_sdu_size, * Function ircomm_lmp_connect_confirm (instance, sap, qos, max_sdu_size,
* max_header_size, skb) * max_header_size, skb)
* *
* Connection has been confirmed by peer device * Connection has been confirmed by peer device
* *
*/ */
static void ircomm_lmp_connect_confirm(void *instance, void *sap, static void ircomm_lmp_connect_confirm(void *instance, void *sap,
struct qos_info *qos, struct qos_info *qos,
__u32 max_seg_size, __u32 max_seg_size,
__u8 max_header_size, __u8 max_header_size,
struct sk_buff *skb) struct sk_buff *skb)
{ {
...@@ -312,7 +312,7 @@ static void ircomm_lmp_connect_indication(void *instance, void *sap, ...@@ -312,7 +312,7 @@ static void ircomm_lmp_connect_indication(void *instance, void *sap,
* Peer device has closed the connection, or the link went down for some * Peer device has closed the connection, or the link went down for some
* other reason * other reason
*/ */
static void ircomm_lmp_disconnect_indication(void *instance, void *sap, static void ircomm_lmp_disconnect_indication(void *instance, void *sap,
LM_REASON reason, LM_REASON reason,
struct sk_buff *skb) struct sk_buff *skb)
{ {
......
This diff is collapsed.
/********************************************************************* /*********************************************************************
* *
* Filename: ircomm_ttp.c * Filename: ircomm_ttp.c
* Version: 1.0 * Version: 1.0
* Description: Interface between IrCOMM and IrTTP * Description: Interface between IrCOMM and IrTTP
...@@ -8,25 +8,25 @@ ...@@ -8,25 +8,25 @@
* Created at: Sun Jun 6 20:48:27 1999 * Created at: Sun Jun 6 20:48:27 1999
* Modified at: Mon Dec 13 11:35:13 1999 * Modified at: Mon Dec 13 11:35:13 1999
* Modified by: Dag Brattli <dagb@cs.uit.no> * Modified by: Dag Brattli <dagb@cs.uit.no>
* *
* Copyright (c) 1999 Dag Brattli, All Rights Reserved. * Copyright (c) 1999 Dag Brattli, All Rights Reserved.
* Copyright (c) 2000-2003 Jean Tourrilhes <jt@hpl.hp.com> * Copyright (c) 2000-2003 Jean Tourrilhes <jt@hpl.hp.com>
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of * published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version. * the License, or (at your option) any later version.
* *
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details. * GNU General Public License for more details.
* *
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software * along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA * MA 02111-1307 USA
* *
********************************************************************/ ********************************************************************/
#include <linux/sched.h> #include <linux/sched.h>
...@@ -43,8 +43,8 @@ ...@@ -43,8 +43,8 @@
static int ircomm_ttp_data_indication(void *instance, void *sap, static int ircomm_ttp_data_indication(void *instance, void *sap,
struct sk_buff *skb); struct sk_buff *skb);
static void ircomm_ttp_connect_confirm(void *instance, void *sap, static void ircomm_ttp_connect_confirm(void *instance, void *sap,
struct qos_info *qos, struct qos_info *qos,
__u32 max_sdu_size, __u32 max_sdu_size,
__u8 max_header_size, __u8 max_header_size,
struct sk_buff *skb); struct sk_buff *skb);
static void ircomm_ttp_connect_indication(void *instance, void *sap, static void ircomm_ttp_connect_indication(void *instance, void *sap,
...@@ -54,25 +54,25 @@ static void ircomm_ttp_connect_indication(void *instance, void *sap, ...@@ -54,25 +54,25 @@ static void ircomm_ttp_connect_indication(void *instance, void *sap,
struct sk_buff *skb); struct sk_buff *skb);
static void ircomm_ttp_flow_indication(void *instance, void *sap, static void ircomm_ttp_flow_indication(void *instance, void *sap,
LOCAL_FLOW cmd); LOCAL_FLOW cmd);
static void ircomm_ttp_disconnect_indication(void *instance, void *sap, static void ircomm_ttp_disconnect_indication(void *instance, void *sap,
LM_REASON reason, LM_REASON reason,
struct sk_buff *skb); struct sk_buff *skb);
static int ircomm_ttp_data_request(struct ircomm_cb *self, static int ircomm_ttp_data_request(struct ircomm_cb *self,
struct sk_buff *skb, struct sk_buff *skb,
int clen); int clen);
static int ircomm_ttp_connect_request(struct ircomm_cb *self, static int ircomm_ttp_connect_request(struct ircomm_cb *self,
struct sk_buff *userdata, struct sk_buff *userdata,
struct ircomm_info *info); struct ircomm_info *info);
static int ircomm_ttp_connect_response(struct ircomm_cb *self, static int ircomm_ttp_connect_response(struct ircomm_cb *self,
struct sk_buff *userdata); struct sk_buff *userdata);
static int ircomm_ttp_disconnect_request(struct ircomm_cb *self, static int ircomm_ttp_disconnect_request(struct ircomm_cb *self,
struct sk_buff *userdata, struct sk_buff *userdata,
struct ircomm_info *info); struct ircomm_info *info);
/* /*
* Function ircomm_open_tsap (self) * Function ircomm_open_tsap (self)
* *
* *
* *
*/ */
int ircomm_open_tsap(struct ircomm_cb *self) int ircomm_open_tsap(struct ircomm_cb *self)
...@@ -113,11 +113,11 @@ int ircomm_open_tsap(struct ircomm_cb *self) ...@@ -113,11 +113,11 @@ int ircomm_open_tsap(struct ircomm_cb *self)
/* /*
* Function ircomm_ttp_connect_request (self, userdata) * Function ircomm_ttp_connect_request (self, userdata)
* *
* *
* *
*/ */
static int ircomm_ttp_connect_request(struct ircomm_cb *self, static int ircomm_ttp_connect_request(struct ircomm_cb *self,
struct sk_buff *userdata, struct sk_buff *userdata,
struct ircomm_info *info) struct ircomm_info *info)
{ {
int ret = 0; int ret = 0;
...@@ -129,16 +129,16 @@ static int ircomm_ttp_connect_request(struct ircomm_cb *self, ...@@ -129,16 +129,16 @@ static int ircomm_ttp_connect_request(struct ircomm_cb *self,
skb_get(userdata); skb_get(userdata);
ret = irttp_connect_request(self->tsap, info->dlsap_sel, ret = irttp_connect_request(self->tsap, info->dlsap_sel,
info->saddr, info->daddr, NULL, info->saddr, info->daddr, NULL,
TTP_SAR_DISABLE, userdata); TTP_SAR_DISABLE, userdata);
return ret; return ret;
} }
/* /*
* Function ircomm_ttp_connect_response (self, skb) * Function ircomm_ttp_connect_response (self, skb)
* *
* *
* *
*/ */
static int ircomm_ttp_connect_response(struct ircomm_cb *self, static int ircomm_ttp_connect_response(struct ircomm_cb *self,
...@@ -147,7 +147,7 @@ static int ircomm_ttp_connect_response(struct ircomm_cb *self, ...@@ -147,7 +147,7 @@ static int ircomm_ttp_connect_response(struct ircomm_cb *self,
int ret; int ret;
IRDA_DEBUG(4, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(4, "%s()\n", __FUNCTION__ );
/* Don't forget to refcount it - should be NULL anyway */ /* Don't forget to refcount it - should be NULL anyway */
if(userdata) if(userdata)
skb_get(userdata); skb_get(userdata);
...@@ -160,14 +160,14 @@ static int ircomm_ttp_connect_response(struct ircomm_cb *self, ...@@ -160,14 +160,14 @@ static int ircomm_ttp_connect_response(struct ircomm_cb *self,
/* /*
* Function ircomm_ttp_data_request (self, userdata) * Function ircomm_ttp_data_request (self, userdata)
* *
* Send IrCOMM data to IrTTP layer. Currently we do not try to combine * Send IrCOMM data to IrTTP layer. Currently we do not try to combine
* control data with pure data, so they will be sent as separate frames. * control data with pure data, so they will be sent as separate frames.
* Should not be a big problem though, since control frames are rare. But * Should not be a big problem though, since control frames are rare. But
* some of them are sent after connection establishment, so this can * some of them are sent after connection establishment, so this can
* increase the latency a bit. * increase the latency a bit.
*/ */
static int ircomm_ttp_data_request(struct ircomm_cb *self, static int ircomm_ttp_data_request(struct ircomm_cb *self,
struct sk_buff *skb, struct sk_buff *skb,
int clen) int clen)
{ {
int ret; int ret;
...@@ -176,7 +176,7 @@ static int ircomm_ttp_data_request(struct ircomm_cb *self, ...@@ -176,7 +176,7 @@ static int ircomm_ttp_data_request(struct ircomm_cb *self,
IRDA_DEBUG(2, "%s(), clen=%d\n", __FUNCTION__ , clen); IRDA_DEBUG(2, "%s(), clen=%d\n", __FUNCTION__ , clen);
/* /*
* Insert clen field, currently we either send data only, or control * Insert clen field, currently we either send data only, or control
* only frames, to make things easier and avoid queueing * only frames, to make things easier and avoid queueing
*/ */
...@@ -210,7 +210,7 @@ static int ircomm_ttp_data_indication(void *instance, void *sap, ...@@ -210,7 +210,7 @@ static int ircomm_ttp_data_indication(void *instance, void *sap,
struct ircomm_cb *self = (struct ircomm_cb *) instance; struct ircomm_cb *self = (struct ircomm_cb *) instance;
IRDA_DEBUG(4, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(4, "%s()\n", __FUNCTION__ );
IRDA_ASSERT(self != NULL, return -1;); IRDA_ASSERT(self != NULL, return -1;);
IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -1;); IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -1;);
IRDA_ASSERT(skb != NULL, return -1;); IRDA_ASSERT(skb != NULL, return -1;);
...@@ -224,8 +224,8 @@ static int ircomm_ttp_data_indication(void *instance, void *sap, ...@@ -224,8 +224,8 @@ static int ircomm_ttp_data_indication(void *instance, void *sap,
} }
static void ircomm_ttp_connect_confirm(void *instance, void *sap, static void ircomm_ttp_connect_confirm(void *instance, void *sap,
struct qos_info *qos, struct qos_info *qos,
__u32 max_sdu_size, __u32 max_sdu_size,
__u8 max_header_size, __u8 max_header_size,
struct sk_buff *skb) struct sk_buff *skb)
{ {
...@@ -261,7 +261,7 @@ static void ircomm_ttp_connect_confirm(void *instance, void *sap, ...@@ -261,7 +261,7 @@ static void ircomm_ttp_connect_confirm(void *instance, void *sap,
* Function ircomm_ttp_connect_indication (instance, sap, qos, max_sdu_size, * Function ircomm_ttp_connect_indication (instance, sap, qos, max_sdu_size,
* max_header_size, skb) * max_header_size, skb)
* *
* *
* *
*/ */
static void ircomm_ttp_connect_indication(void *instance, void *sap, static void ircomm_ttp_connect_indication(void *instance, void *sap,
...@@ -301,11 +301,11 @@ static void ircomm_ttp_connect_indication(void *instance, void *sap, ...@@ -301,11 +301,11 @@ static void ircomm_ttp_connect_indication(void *instance, void *sap,
/* /*
* Function ircomm_ttp_disconnect_request (self, userdata, info) * Function ircomm_ttp_disconnect_request (self, userdata, info)
* *
* *
* *
*/ */
static int ircomm_ttp_disconnect_request(struct ircomm_cb *self, static int ircomm_ttp_disconnect_request(struct ircomm_cb *self,
struct sk_buff *userdata, struct sk_buff *userdata,
struct ircomm_info *info) struct ircomm_info *info)
{ {
int ret; int ret;
...@@ -322,10 +322,10 @@ static int ircomm_ttp_disconnect_request(struct ircomm_cb *self, ...@@ -322,10 +322,10 @@ static int ircomm_ttp_disconnect_request(struct ircomm_cb *self,
/* /*
* Function ircomm_ttp_disconnect_indication (instance, sap, reason, skb) * Function ircomm_ttp_disconnect_indication (instance, sap, reason, skb)
* *
* *
* *
*/ */
static void ircomm_ttp_disconnect_indication(void *instance, void *sap, static void ircomm_ttp_disconnect_indication(void *instance, void *sap,
LM_REASON reason, LM_REASON reason,
struct sk_buff *skb) struct sk_buff *skb)
{ {
...@@ -361,7 +361,7 @@ static void ircomm_ttp_flow_indication(void *instance, void *sap, ...@@ -361,7 +361,7 @@ static void ircomm_ttp_flow_indication(void *instance, void *sap,
IRDA_ASSERT(self != NULL, return;); IRDA_ASSERT(self != NULL, return;);
IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return;); IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return;);
if (self->notify.flow_indication) if (self->notify.flow_indication)
self->notify.flow_indication(self->notify.instance, self, cmd); self->notify.flow_indication(self->notify.instance, self, cmd);
} }
......
This diff is collapsed.
This diff is collapsed.
/********************************************************************* /*********************************************************************
* *
* Filename: ircomm_tty_ioctl.c * Filename: ircomm_tty_ioctl.c
* Version: * Version:
* Description: * Description:
* Status: Experimental. * Status: Experimental.
* Author: Dag Brattli <dagb@cs.uit.no> * Author: Dag Brattli <dagb@cs.uit.no>
* Created at: Thu Jun 10 14:39:09 1999 * Created at: Thu Jun 10 14:39:09 1999
* Modified at: Wed Jan 5 14:45:43 2000 * Modified at: Wed Jan 5 14:45:43 2000
* Modified by: Dag Brattli <dagb@cs.uit.no> * Modified by: Dag Brattli <dagb@cs.uit.no>
* *
* Copyright (c) 1999-2000 Dag Brattli, All Rights Reserved. * Copyright (c) 1999-2000 Dag Brattli, All Rights Reserved.
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of * published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version. * the License, or (at your option) any later version.
* *
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details. * GNU General Public License for more details.
* *
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software * along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA * MA 02111-1307 USA
* *
********************************************************************/ ********************************************************************/
#include <linux/init.h> #include <linux/init.h>
...@@ -75,7 +75,7 @@ static void ircomm_tty_change_speed(struct ircomm_tty_cb *self) ...@@ -75,7 +75,7 @@ static void ircomm_tty_change_speed(struct ircomm_tty_cb *self)
} }
if (cflag & CSTOPB) if (cflag & CSTOPB)
cval |= IRCOMM_2_STOP_BIT; cval |= IRCOMM_2_STOP_BIT;
if (cflag & PARENB) if (cflag & PARENB)
cval |= IRCOMM_PARITY_ENABLE; cval |= IRCOMM_PARITY_ENABLE;
if (!(cflag & PARODD)) if (!(cflag & PARODD))
...@@ -88,7 +88,7 @@ static void ircomm_tty_change_speed(struct ircomm_tty_cb *self) ...@@ -88,7 +88,7 @@ static void ircomm_tty_change_speed(struct ircomm_tty_cb *self)
self->settings.data_rate = baud; self->settings.data_rate = baud;
ircomm_param_request(self, IRCOMM_DATA_RATE, FALSE); ircomm_param_request(self, IRCOMM_DATA_RATE, FALSE);
/* CTS flow control flag and modem status interrupts */ /* CTS flow control flag and modem status interrupts */
if (cflag & CRTSCTS) { if (cflag & CRTSCTS) {
self->flags |= ASYNC_CTS_FLOW; self->flags |= ASYNC_CTS_FLOW;
...@@ -104,7 +104,7 @@ static void ircomm_tty_change_speed(struct ircomm_tty_cb *self) ...@@ -104,7 +104,7 @@ static void ircomm_tty_change_speed(struct ircomm_tty_cb *self)
self->flags &= ~ASYNC_CHECK_CD; self->flags &= ~ASYNC_CHECK_CD;
else else
self->flags |= ASYNC_CHECK_CD; self->flags |= ASYNC_CHECK_CD;
#if 0 #if 0
/* /*
* Set up parity check flag * Set up parity check flag
*/ */
...@@ -113,7 +113,7 @@ static void ircomm_tty_change_speed(struct ircomm_tty_cb *self) ...@@ -113,7 +113,7 @@ static void ircomm_tty_change_speed(struct ircomm_tty_cb *self)
driver->read_status_mask |= LSR_FE | LSR_PE; driver->read_status_mask |= LSR_FE | LSR_PE;
if (I_BRKINT(driver->tty) || I_PARMRK(driver->tty)) if (I_BRKINT(driver->tty) || I_PARMRK(driver->tty))
driver->read_status_mask |= LSR_BI; driver->read_status_mask |= LSR_BI;
/* /*
* Characters to ignore * Characters to ignore
*/ */
...@@ -124,17 +124,17 @@ static void ircomm_tty_change_speed(struct ircomm_tty_cb *self) ...@@ -124,17 +124,17 @@ static void ircomm_tty_change_speed(struct ircomm_tty_cb *self)
if (I_IGNBRK(self->tty)) { if (I_IGNBRK(self->tty)) {
self->ignore_status_mask |= LSR_BI; self->ignore_status_mask |= LSR_BI;
/* /*
* If we're ignore parity and break indicators, ignore * If we're ignore parity and break indicators, ignore
* overruns too. (For real raw support). * overruns too. (For real raw support).
*/ */
if (I_IGNPAR(self->tty)) if (I_IGNPAR(self->tty))
self->ignore_status_mask |= LSR_OE; self->ignore_status_mask |= LSR_OE;
} }
#endif #endif
self->settings.data_format = cval; self->settings.data_format = cval;
ircomm_param_request(self, IRCOMM_DATA_FORMAT, FALSE); ircomm_param_request(self, IRCOMM_DATA_FORMAT, FALSE);
ircomm_param_request(self, IRCOMM_FLOW_CONTROL, TRUE); ircomm_param_request(self, IRCOMM_FLOW_CONTROL, TRUE);
} }
/* /*
...@@ -145,7 +145,7 @@ static void ircomm_tty_change_speed(struct ircomm_tty_cb *self) ...@@ -145,7 +145,7 @@ static void ircomm_tty_change_speed(struct ircomm_tty_cb *self)
* should be prepared to accept the case where old == NULL, and try to * should be prepared to accept the case where old == NULL, and try to
* do something rational. * do something rational.
*/ */
void ircomm_tty_set_termios(struct tty_struct *tty, void ircomm_tty_set_termios(struct tty_struct *tty,
struct ktermios *old_termios) struct ktermios *old_termios)
{ {
struct ircomm_tty_cb *self = (struct ircomm_tty_cb *) tty->driver_data; struct ircomm_tty_cb *self = (struct ircomm_tty_cb *) tty->driver_data;
...@@ -153,8 +153,8 @@ void ircomm_tty_set_termios(struct tty_struct *tty, ...@@ -153,8 +153,8 @@ void ircomm_tty_set_termios(struct tty_struct *tty,
IRDA_DEBUG(2, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s()\n", __FUNCTION__ );
if ((cflag == old_termios->c_cflag) && if ((cflag == old_termios->c_cflag) &&
(RELEVANT_IFLAG(tty->termios->c_iflag) == (RELEVANT_IFLAG(tty->termios->c_iflag) ==
RELEVANT_IFLAG(old_termios->c_iflag))) RELEVANT_IFLAG(old_termios->c_iflag)))
{ {
return; return;
...@@ -168,21 +168,21 @@ void ircomm_tty_set_termios(struct tty_struct *tty, ...@@ -168,21 +168,21 @@ void ircomm_tty_set_termios(struct tty_struct *tty,
self->settings.dte &= ~(IRCOMM_DTR|IRCOMM_RTS); self->settings.dte &= ~(IRCOMM_DTR|IRCOMM_RTS);
ircomm_param_request(self, IRCOMM_DTE, TRUE); ircomm_param_request(self, IRCOMM_DTE, TRUE);
} }
/* Handle transition away from B0 status */ /* Handle transition away from B0 status */
if (!(old_termios->c_cflag & CBAUD) && if (!(old_termios->c_cflag & CBAUD) &&
(cflag & CBAUD)) { (cflag & CBAUD)) {
self->settings.dte |= IRCOMM_DTR; self->settings.dte |= IRCOMM_DTR;
if (!(tty->termios->c_cflag & CRTSCTS) || if (!(tty->termios->c_cflag & CRTSCTS) ||
!test_bit(TTY_THROTTLED, &tty->flags)) { !test_bit(TTY_THROTTLED, &tty->flags)) {
self->settings.dte |= IRCOMM_RTS; self->settings.dte |= IRCOMM_RTS;
} }
ircomm_param_request(self, IRCOMM_DTE, TRUE); ircomm_param_request(self, IRCOMM_DTE, TRUE);
} }
/* Handle turning off CRTSCTS */ /* Handle turning off CRTSCTS */
if ((old_termios->c_cflag & CRTSCTS) && if ((old_termios->c_cflag & CRTSCTS) &&
!(tty->termios->c_cflag & CRTSCTS)) !(tty->termios->c_cflag & CRTSCTS))
{ {
tty->hw_stopped = 0; tty->hw_stopped = 0;
ircomm_tty_start(tty); ircomm_tty_start(tty);
...@@ -192,7 +192,7 @@ void ircomm_tty_set_termios(struct tty_struct *tty, ...@@ -192,7 +192,7 @@ void ircomm_tty_set_termios(struct tty_struct *tty,
/* /*
* Function ircomm_tty_tiocmget (tty, file) * Function ircomm_tty_tiocmget (tty, file)
* *
* *
* *
*/ */
int ircomm_tty_tiocmget(struct tty_struct *tty, struct file *file) int ircomm_tty_tiocmget(struct tty_struct *tty, struct file *file)
...@@ -217,12 +217,12 @@ int ircomm_tty_tiocmget(struct tty_struct *tty, struct file *file) ...@@ -217,12 +217,12 @@ int ircomm_tty_tiocmget(struct tty_struct *tty, struct file *file)
/* /*
* Function ircomm_tty_tiocmset (tty, file, set, clear) * Function ircomm_tty_tiocmset (tty, file, set, clear)
* *
* *
* *
*/ */
int ircomm_tty_tiocmset(struct tty_struct *tty, struct file *file, int ircomm_tty_tiocmset(struct tty_struct *tty, struct file *file,
unsigned int set, unsigned int clear) unsigned int set, unsigned int clear)
{ {
struct ircomm_tty_cb *self = (struct ircomm_tty_cb *) tty->driver_data; struct ircomm_tty_cb *self = (struct ircomm_tty_cb *) tty->driver_data;
IRDA_DEBUG(2, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s()\n", __FUNCTION__ );
...@@ -249,21 +249,21 @@ int ircomm_tty_tiocmset(struct tty_struct *tty, struct file *file, ...@@ -249,21 +249,21 @@ int ircomm_tty_tiocmset(struct tty_struct *tty, struct file *file,
self->settings.dte |= IRCOMM_DELTA_DTR; self->settings.dte |= IRCOMM_DELTA_DTR;
ircomm_param_request(self, IRCOMM_DTE, TRUE); ircomm_param_request(self, IRCOMM_DTE, TRUE);
return 0; return 0;
} }
/* /*
* Function get_serial_info (driver, retinfo) * Function get_serial_info (driver, retinfo)
* *
* *
* *
*/ */
static int ircomm_tty_get_serial_info(struct ircomm_tty_cb *self, static int ircomm_tty_get_serial_info(struct ircomm_tty_cb *self,
struct serial_struct __user *retinfo) struct serial_struct __user *retinfo)
{ {
struct serial_struct info; struct serial_struct info;
if (!retinfo) if (!retinfo)
return -EFAULT; return -EFAULT;
...@@ -277,11 +277,11 @@ static int ircomm_tty_get_serial_info(struct ircomm_tty_cb *self, ...@@ -277,11 +277,11 @@ static int ircomm_tty_get_serial_info(struct ircomm_tty_cb *self,
info.closing_wait = self->closing_wait; info.closing_wait = self->closing_wait;
/* For compatibility */ /* For compatibility */
info.type = PORT_16550A; info.type = PORT_16550A;
info.port = 0; info.port = 0;
info.irq = 0; info.irq = 0;
info.xmit_fifo_size = 0; info.xmit_fifo_size = 0;
info.hub6 = 0; info.hub6 = 0;
info.custom_divisor = 0; info.custom_divisor = 0;
if (copy_to_user(retinfo, &info, sizeof(*retinfo))) if (copy_to_user(retinfo, &info, sizeof(*retinfo)))
...@@ -293,7 +293,7 @@ static int ircomm_tty_get_serial_info(struct ircomm_tty_cb *self, ...@@ -293,7 +293,7 @@ static int ircomm_tty_get_serial_info(struct ircomm_tty_cb *self,
/* /*
* Function set_serial_info (driver, new_info) * Function set_serial_info (driver, new_info)
* *
* *
* *
*/ */
static int ircomm_tty_set_serial_info(struct ircomm_tty_cb *self, static int ircomm_tty_set_serial_info(struct ircomm_tty_cb *self,
...@@ -311,7 +311,7 @@ static int ircomm_tty_set_serial_info(struct ircomm_tty_cb *self, ...@@ -311,7 +311,7 @@ static int ircomm_tty_set_serial_info(struct ircomm_tty_cb *self,
state = self state = self
old_state = *self; old_state = *self;
if (!capable(CAP_SYS_ADMIN)) { if (!capable(CAP_SYS_ADMIN)) {
if ((new_serial.baud_base != state->settings.data_rate) || if ((new_serial.baud_base != state->settings.data_rate) ||
(new_serial.close_delay != state->close_delay) || (new_serial.close_delay != state->close_delay) ||
...@@ -368,10 +368,10 @@ static int ircomm_tty_set_serial_info(struct ircomm_tty_cb *self, ...@@ -368,10 +368,10 @@ static int ircomm_tty_set_serial_info(struct ircomm_tty_cb *self,
/* /*
* Function ircomm_tty_ioctl (tty, file, cmd, arg) * Function ircomm_tty_ioctl (tty, file, cmd, arg)
* *
* *
* *
*/ */
int ircomm_tty_ioctl(struct tty_struct *tty, struct file *file, int ircomm_tty_ioctl(struct tty_struct *tty, struct file *file,
unsigned int cmd, unsigned long arg) unsigned int cmd, unsigned long arg)
{ {
struct ircomm_tty_cb *self = (struct ircomm_tty_cb *) tty->driver_data; struct ircomm_tty_cb *self = (struct ircomm_tty_cb *) tty->driver_data;
...@@ -416,7 +416,7 @@ int ircomm_tty_ioctl(struct tty_struct *tty, struct file *file, ...@@ -416,7 +416,7 @@ int ircomm_tty_ioctl(struct tty_struct *tty, struct file *file,
put_user(cnow.brk, &p_cuser->brk) || put_user(cnow.brk, &p_cuser->brk) ||
put_user(cnow.buf_overrun, &p_cuser->buf_overrun)) put_user(cnow.buf_overrun, &p_cuser->buf_overrun))
return -EFAULT; return -EFAULT;
#endif #endif
return 0; return 0;
default: default:
ret = -ENOIOCTLCMD; /* ioctls which we must ignore */ ret = -ENOIOCTLCMD; /* ioctls which we must ignore */
......
...@@ -341,11 +341,11 @@ static void irda_task_timer_expired(void *data) ...@@ -341,11 +341,11 @@ static void irda_task_timer_expired(void *data)
*/ */
static void irda_device_setup(struct net_device *dev) static void irda_device_setup(struct net_device *dev)
{ {
dev->hard_header_len = 0; dev->hard_header_len = 0;
dev->addr_len = LAP_ALEN; dev->addr_len = LAP_ALEN;
dev->type = ARPHRD_IRDA; dev->type = ARPHRD_IRDA;
dev->tx_queue_len = 8; /* Window size + 1 s-frame */ dev->tx_queue_len = 8; /* Window size + 1 s-frame */
memset(dev->broadcast, 0xff, LAP_ALEN); memset(dev->broadcast, 0xff, LAP_ALEN);
...@@ -354,7 +354,7 @@ static void irda_device_setup(struct net_device *dev) ...@@ -354,7 +354,7 @@ static void irda_device_setup(struct net_device *dev)
} }
/* /*
* Funciton alloc_irdadev * Funciton alloc_irdadev
* Allocates and sets up an IRDA device in a manner similar to * Allocates and sets up an IRDA device in a manner similar to
* alloc_etherdev. * alloc_etherdev.
*/ */
...@@ -386,9 +386,9 @@ dongle_t *irda_device_dongle_init(struct net_device *dev, int type) ...@@ -386,9 +386,9 @@ dongle_t *irda_device_dongle_init(struct net_device *dev, int type)
/* Try to load the module needed */ /* Try to load the module needed */
if (!reg && capable(CAP_SYS_MODULE)) { if (!reg && capable(CAP_SYS_MODULE)) {
spin_unlock(&dongles->hb_spinlock); spin_unlock(&dongles->hb_spinlock);
request_module("irda-dongle-%d", type); request_module("irda-dongle-%d", type);
spin_lock(&dongles->hb_spinlock); spin_lock(&dongles->hb_spinlock);
reg = hashbin_find(dongles, type, NULL); reg = hashbin_find(dongles, type, NULL);
} }
...@@ -438,15 +438,15 @@ int irda_device_register_dongle(struct dongle_reg *new) ...@@ -438,15 +438,15 @@ int irda_device_register_dongle(struct dongle_reg *new)
spin_lock(&dongles->hb_spinlock); spin_lock(&dongles->hb_spinlock);
/* Check if this dongle has been registered before */ /* Check if this dongle has been registered before */
if (hashbin_find(dongles, new->type, NULL)) { if (hashbin_find(dongles, new->type, NULL)) {
IRDA_MESSAGE("%s: Dongle type %x already registered\n", IRDA_MESSAGE("%s: Dongle type %x already registered\n",
__FUNCTION__, new->type); __FUNCTION__, new->type);
} else { } else {
/* Insert IrDA dongle into hashbin */ /* Insert IrDA dongle into hashbin */
hashbin_insert(dongles, (irda_queue_t *) new, new->type, NULL); hashbin_insert(dongles, (irda_queue_t *) new, new->type, NULL);
} }
spin_unlock(&dongles->hb_spinlock); spin_unlock(&dongles->hb_spinlock);
return 0; return 0;
} }
EXPORT_SYMBOL(irda_device_register_dongle); EXPORT_SYMBOL(irda_device_register_dongle);
...@@ -462,7 +462,7 @@ void irda_device_unregister_dongle(struct dongle_reg *dongle) ...@@ -462,7 +462,7 @@ void irda_device_unregister_dongle(struct dongle_reg *dongle)
spin_lock(&dongles->hb_spinlock); spin_lock(&dongles->hb_spinlock);
node = hashbin_remove(dongles, dongle->type, NULL); node = hashbin_remove(dongles, dongle->type, NULL);
if (!node) if (!node)
IRDA_ERROR("%s: dongle not found!\n", __FUNCTION__); IRDA_ERROR("%s: dongle not found!\n", __FUNCTION__);
spin_unlock(&dongles->hb_spinlock); spin_unlock(&dongles->hb_spinlock);
} }
......
...@@ -79,10 +79,10 @@ static int iriap_data_indication(void *instance, void *sap, ...@@ -79,10 +79,10 @@ static int iriap_data_indication(void *instance, void *sap,
static void iriap_watchdog_timer_expired(void *data); static void iriap_watchdog_timer_expired(void *data);
static inline void iriap_start_watchdog_timer(struct iriap_cb *self, static inline void iriap_start_watchdog_timer(struct iriap_cb *self,
int timeout) int timeout)
{ {
irda_start_timer(&self->watchdog_timer, timeout, self, irda_start_timer(&self->watchdog_timer, timeout, self,
iriap_watchdog_timer_expired); iriap_watchdog_timer_expired);
} }
...@@ -674,7 +674,7 @@ static void iriap_getvaluebyclass_indication(struct iriap_cb *self, ...@@ -674,7 +674,7 @@ static void iriap_getvaluebyclass_indication(struct iriap_cb *self,
if (attrib == NULL) { if (attrib == NULL) {
IRDA_DEBUG(2, "LM-IAS: Attribute %s not found\n", attr); IRDA_DEBUG(2, "LM-IAS: Attribute %s not found\n", attr);
iriap_getvaluebyclass_response(self, obj->id, iriap_getvaluebyclass_response(self, obj->id,
IAS_ATTRIB_UNKNOWN, IAS_ATTRIB_UNKNOWN,
&irias_missing); &irias_missing);
return; return;
} }
...@@ -971,7 +971,7 @@ static const char *ias_value_types[] = { ...@@ -971,7 +971,7 @@ static const char *ias_value_types[] = {
"IAS_STRING" "IAS_STRING"
}; };
static inline struct ias_object *irias_seq_idx(loff_t pos) static inline struct ias_object *irias_seq_idx(loff_t pos)
{ {
struct ias_object *obj; struct ias_object *obj;
...@@ -980,7 +980,7 @@ static inline struct ias_object *irias_seq_idx(loff_t pos) ...@@ -980,7 +980,7 @@ static inline struct ias_object *irias_seq_idx(loff_t pos)
if (pos-- == 0) if (pos-- == 0)
break; break;
} }
return obj; return obj;
} }
...@@ -995,7 +995,7 @@ static void *irias_seq_next(struct seq_file *seq, void *v, loff_t *pos) ...@@ -995,7 +995,7 @@ static void *irias_seq_next(struct seq_file *seq, void *v, loff_t *pos)
{ {
++*pos; ++*pos;
return (v == SEQ_START_TOKEN) return (v == SEQ_START_TOKEN)
? (void *) hashbin_get_first(irias_objects) ? (void *) hashbin_get_first(irias_objects)
: (void *) hashbin_get_next(irias_objects); : (void *) hashbin_get_next(irias_objects);
} }
...@@ -1027,7 +1027,7 @@ static int irias_seq_show(struct seq_file *seq, void *v) ...@@ -1027,7 +1027,7 @@ static int irias_seq_show(struct seq_file *seq, void *v)
for (attrib = (struct ias_attrib *) hashbin_get_first(obj->attribs); for (attrib = (struct ias_attrib *) hashbin_get_first(obj->attribs);
attrib != NULL; attrib != NULL;
attrib = (struct ias_attrib *) hashbin_get_next(obj->attribs)) { attrib = (struct ias_attrib *) hashbin_get_next(obj->attribs)) {
IRDA_ASSERT(attrib->magic == IAS_ATTRIB_MAGIC, IRDA_ASSERT(attrib->magic == IAS_ATTRIB_MAGIC,
goto outloop; ); goto outloop; );
...@@ -1046,14 +1046,14 @@ static int irias_seq_show(struct seq_file *seq, void *v) ...@@ -1046,14 +1046,14 @@ static int irias_seq_show(struct seq_file *seq, void *v)
attrib->value->t.string); attrib->value->t.string);
break; break;
case IAS_OCT_SEQ: case IAS_OCT_SEQ:
seq_printf(seq, "octet sequence (%d bytes)\n", seq_printf(seq, "octet sequence (%d bytes)\n",
attrib->value->len); attrib->value->len);
break; break;
case IAS_MISSING: case IAS_MISSING:
seq_puts(seq, "missing\n"); seq_puts(seq, "missing\n");
break; break;
default: default:
seq_printf(seq, "type %d?\n", seq_printf(seq, "type %d?\n",
attrib->value->type); attrib->value->type);
} }
seq_putc(seq, '\n'); seq_putc(seq, '\n');
......
...@@ -57,8 +57,8 @@ static char *strndup(char *str, size_t max) ...@@ -57,8 +57,8 @@ static char *strndup(char *str, size_t max)
len = max; len = max;
/* Allocate new string */ /* Allocate new string */
new_str = kmalloc(len + 1, GFP_ATOMIC); new_str = kmalloc(len + 1, GFP_ATOMIC);
if (new_str == NULL) { if (new_str == NULL) {
IRDA_WARNING("%s: Unable to kmalloc!\n", __FUNCTION__); IRDA_WARNING("%s: Unable to kmalloc!\n", __FUNCTION__);
return NULL; return NULL;
} }
...@@ -78,7 +78,7 @@ static char *strndup(char *str, size_t max) ...@@ -78,7 +78,7 @@ static char *strndup(char *str, size_t max)
*/ */
struct ias_object *irias_new_object( char *name, int id) struct ias_object *irias_new_object( char *name, int id)
{ {
struct ias_object *obj; struct ias_object *obj;
IRDA_DEBUG( 4, "%s()\n", __FUNCTION__); IRDA_DEBUG( 4, "%s()\n", __FUNCTION__);
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
/********************************************************************* /*********************************************************************
* *
* Filename: irlan_eth.c * Filename: irlan_eth.c
* Version: * Version:
* Description: * Description:
* Status: Experimental. * Status: Experimental.
* Author: Dag Brattli <dagb@cs.uit.no> * Author: Dag Brattli <dagb@cs.uit.no>
* Created at: Thu Oct 15 08:37:58 1998 * Created at: Thu Oct 15 08:37:58 1998
...@@ -11,18 +11,18 @@ ...@@ -11,18 +11,18 @@
* Sources: skeleton.c by Donald Becker <becker@CESDIS.gsfc.nasa.gov> * Sources: skeleton.c by Donald Becker <becker@CESDIS.gsfc.nasa.gov>
* slip.c by Laurence Culhane, <loz@holmes.demon.co.uk> * slip.c by Laurence Culhane, <loz@holmes.demon.co.uk>
* Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org> * Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org>
* *
* Copyright (c) 1998-2000 Dag Brattli, All Rights Reserved. * Copyright (c) 1998-2000 Dag Brattli, All Rights Reserved.
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of * published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version. * the License, or (at your option) any later version.
* *
* Neither Dag Brattli nor University of Troms admit liability nor * Neither Dag Brattli nor University of Troms admit liability nor
* provide warranty for any of this software. This material is * provide warranty for any of this software. This material is
* provided "AS-IS" and at no charge. * provided "AS-IS" and at no charge.
* *
********************************************************************/ ********************************************************************/
#include <linux/netdevice.h> #include <linux/netdevice.h>
...@@ -55,7 +55,7 @@ static void irlan_eth_setup(struct net_device *dev) ...@@ -55,7 +55,7 @@ static void irlan_eth_setup(struct net_device *dev)
{ {
dev->open = irlan_eth_open; dev->open = irlan_eth_open;
dev->stop = irlan_eth_close; dev->stop = irlan_eth_close;
dev->hard_start_xmit = irlan_eth_xmit; dev->hard_start_xmit = irlan_eth_xmit;
dev->get_stats = irlan_eth_get_stats; dev->get_stats = irlan_eth_get_stats;
dev->set_multicast_list = irlan_eth_set_multicast_list; dev->set_multicast_list = irlan_eth_set_multicast_list;
dev->destructor = free_netdev; dev->destructor = free_netdev;
...@@ -63,8 +63,8 @@ static void irlan_eth_setup(struct net_device *dev) ...@@ -63,8 +63,8 @@ static void irlan_eth_setup(struct net_device *dev)
SET_MODULE_OWNER(dev); SET_MODULE_OWNER(dev);
ether_setup(dev); ether_setup(dev);
/* /*
* Lets do all queueing in IrTTP instead of this device driver. * Lets do all queueing in IrTTP instead of this device driver.
* Queueing here as well can introduce some strange latency * Queueing here as well can introduce some strange latency
* problems, which we will avoid by setting the queue size to 0. * problems, which we will avoid by setting the queue size to 0.
...@@ -104,17 +104,17 @@ struct net_device *alloc_irlandev(const char *name) ...@@ -104,17 +104,17 @@ struct net_device *alloc_irlandev(const char *name)
static int irlan_eth_open(struct net_device *dev) static int irlan_eth_open(struct net_device *dev)
{ {
struct irlan_cb *self = netdev_priv(dev); struct irlan_cb *self = netdev_priv(dev);
IRDA_DEBUG(2, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s()\n", __FUNCTION__ );
/* Ready to play! */ /* Ready to play! */
netif_stop_queue(dev); /* Wait until data link is ready */ netif_stop_queue(dev); /* Wait until data link is ready */
/* We are now open, so time to do some work */ /* We are now open, so time to do some work */
self->disconnect_reason = 0; self->disconnect_reason = 0;
irlan_client_wakeup(self, self->saddr, self->daddr); irlan_client_wakeup(self, self->saddr, self->daddr);
/* Make sure we have a hardware address before we return, /* Make sure we have a hardware address before we return,
so DHCP clients gets happy */ so DHCP clients gets happy */
return wait_event_interruptible(self->open_wait, return wait_event_interruptible(self->open_wait,
!self->tsap_data->connected); !self->tsap_data->connected);
...@@ -124,30 +124,30 @@ static int irlan_eth_open(struct net_device *dev) ...@@ -124,30 +124,30 @@ static int irlan_eth_open(struct net_device *dev)
* Function irlan_eth_close (dev) * Function irlan_eth_close (dev)
* *
* Stop the ether network device, his function will usually be called by * Stop the ether network device, his function will usually be called by
* ifconfig down. We should now disconnect the link, We start the * ifconfig down. We should now disconnect the link, We start the
* close timer, so that the instance will be removed if we are unable * close timer, so that the instance will be removed if we are unable
* to discover the remote device after the disconnect. * to discover the remote device after the disconnect.
*/ */
static int irlan_eth_close(struct net_device *dev) static int irlan_eth_close(struct net_device *dev)
{ {
struct irlan_cb *self = netdev_priv(dev); struct irlan_cb *self = netdev_priv(dev);
IRDA_DEBUG(2, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s()\n", __FUNCTION__ );
/* Stop device */ /* Stop device */
netif_stop_queue(dev); netif_stop_queue(dev);
irlan_close_data_channel(self); irlan_close_data_channel(self);
irlan_close_tsaps(self); irlan_close_tsaps(self);
irlan_do_client_event(self, IRLAN_LMP_DISCONNECT, NULL); irlan_do_client_event(self, IRLAN_LMP_DISCONNECT, NULL);
irlan_do_provider_event(self, IRLAN_LMP_DISCONNECT, NULL); irlan_do_provider_event(self, IRLAN_LMP_DISCONNECT, NULL);
/* Remove frames queued on the control channel */ /* Remove frames queued on the control channel */
skb_queue_purge(&self->client.txq); skb_queue_purge(&self->client.txq);
self->client.tx_busy = 0; self->client.tx_busy = 0;
return 0; return 0;
} }
...@@ -164,7 +164,7 @@ static int irlan_eth_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -164,7 +164,7 @@ static int irlan_eth_xmit(struct sk_buff *skb, struct net_device *dev)
/* skb headroom large enough to contain all IrDA-headers? */ /* skb headroom large enough to contain all IrDA-headers? */
if ((skb_headroom(skb) < self->max_header_size) || (skb_shared(skb))) { if ((skb_headroom(skb) < self->max_header_size) || (skb_shared(skb))) {
struct sk_buff *new_skb = struct sk_buff *new_skb =
skb_realloc_headroom(skb, self->max_header_size); skb_realloc_headroom(skb, self->max_header_size);
/* We have to free the original skb anyway */ /* We have to free the original skb anyway */
...@@ -176,7 +176,7 @@ static int irlan_eth_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -176,7 +176,7 @@ static int irlan_eth_xmit(struct sk_buff *skb, struct net_device *dev)
/* Use the new skb instead */ /* Use the new skb instead */
skb = new_skb; skb = new_skb;
} }
dev->trans_start = jiffies; dev->trans_start = jiffies;
...@@ -187,7 +187,7 @@ static int irlan_eth_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -187,7 +187,7 @@ static int irlan_eth_xmit(struct sk_buff *skb, struct net_device *dev)
ret = irttp_data_request(self->tsap_data, skb); ret = irttp_data_request(self->tsap_data, skb);
if (ret < 0) { if (ret < 0) {
/* /*
* IrTTPs tx queue is full, so we just have to * IrTTPs tx queue is full, so we just have to
* drop the frame! You might think that we should * drop the frame! You might think that we should
* just return -1 and don't deallocate the frame, * just return -1 and don't deallocate the frame,
...@@ -195,15 +195,15 @@ static int irlan_eth_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -195,15 +195,15 @@ static int irlan_eth_xmit(struct sk_buff *skb, struct net_device *dev)
* we have replaced the original skb with a new * we have replaced the original skb with a new
* one with larger headroom, and that would really * one with larger headroom, and that would really
* confuse do_dev_queue_xmit() in dev.c! I have * confuse do_dev_queue_xmit() in dev.c! I have
* tried :-) DB * tried :-) DB
*/ */
/* irttp_data_request already free the packet */ /* irttp_data_request already free the packet */
self->stats.tx_dropped++; self->stats.tx_dropped++;
} else { } else {
self->stats.tx_packets++; self->stats.tx_packets++;
self->stats.tx_bytes += skb->len; self->stats.tx_bytes += skb->len;
} }
return 0; return 0;
} }
...@@ -218,37 +218,37 @@ int irlan_eth_receive(void *instance, void *sap, struct sk_buff *skb) ...@@ -218,37 +218,37 @@ int irlan_eth_receive(void *instance, void *sap, struct sk_buff *skb)
struct irlan_cb *self = instance; struct irlan_cb *self = instance;
if (skb == NULL) { if (skb == NULL) {
++self->stats.rx_dropped; ++self->stats.rx_dropped;
return 0; return 0;
} }
if (skb->len < ETH_HLEN) { if (skb->len < ETH_HLEN) {
IRDA_DEBUG(0, "%s() : IrLAN frame too short (%d)\n", IRDA_DEBUG(0, "%s() : IrLAN frame too short (%d)\n",
__FUNCTION__, skb->len); __FUNCTION__, skb->len);
++self->stats.rx_dropped; ++self->stats.rx_dropped;
dev_kfree_skb(skb); dev_kfree_skb(skb);
return 0; return 0;
} }
/* /*
* Adopt this frame! Important to set all these fields since they * Adopt this frame! Important to set all these fields since they
* might have been previously set by the low level IrDA network * might have been previously set by the low level IrDA network
* device driver * device driver
*/ */
skb->dev = self->dev; skb->dev = self->dev;
skb->protocol=eth_type_trans(skb, skb->dev); /* Remove eth header */ skb->protocol=eth_type_trans(skb, skb->dev); /* Remove eth header */
self->stats.rx_packets++; self->stats.rx_packets++;
self->stats.rx_bytes += skb->len; self->stats.rx_bytes += skb->len;
netif_rx(skb); /* Eat it! */ netif_rx(skb); /* Eat it! */
return 0; return 0;
} }
/* /*
* Function irlan_eth_flow (status) * Function irlan_eth_flow (status)
* *
* Do flow control between IP/Ethernet and IrLAN/IrTTP. This is done by * Do flow control between IP/Ethernet and IrLAN/IrTTP. This is done by
* controlling the queue stop/start. * controlling the queue stop/start.
* *
* The IrDA link layer has the advantage to have flow control, and * The IrDA link layer has the advantage to have flow control, and
...@@ -268,11 +268,11 @@ void irlan_eth_flow_indication(void *instance, void *sap, LOCAL_FLOW flow) ...@@ -268,11 +268,11 @@ void irlan_eth_flow_indication(void *instance, void *sap, LOCAL_FLOW flow)
IRDA_ASSERT(self != NULL, return;); IRDA_ASSERT(self != NULL, return;);
IRDA_ASSERT(self->magic == IRLAN_MAGIC, return;); IRDA_ASSERT(self->magic == IRLAN_MAGIC, return;);
dev = self->dev; dev = self->dev;
IRDA_ASSERT(dev != NULL, return;); IRDA_ASSERT(dev != NULL, return;);
IRDA_DEBUG(0, "%s() : flow %s ; running %d\n", __FUNCTION__, IRDA_DEBUG(0, "%s() : flow %s ; running %d\n", __FUNCTION__,
flow == FLOW_STOP ? "FLOW_STOP" : "FLOW_START", flow == FLOW_STOP ? "FLOW_STOP" : "FLOW_START",
netif_running(dev)); netif_running(dev));
...@@ -301,10 +301,10 @@ void irlan_eth_send_gratuitous_arp(struct net_device *dev) ...@@ -301,10 +301,10 @@ void irlan_eth_send_gratuitous_arp(struct net_device *dev)
{ {
struct in_device *in_dev; struct in_device *in_dev;
/* /*
* When we get a new MAC address do a gratuitous ARP. This * When we get a new MAC address do a gratuitous ARP. This
* is useful if we have changed access points on the same * is useful if we have changed access points on the same
* subnet. * subnet.
*/ */
#ifdef CONFIG_INET #ifdef CONFIG_INET
IRDA_DEBUG(4, "IrLAN: Sending gratuitous ARP\n"); IRDA_DEBUG(4, "IrLAN: Sending gratuitous ARP\n");
...@@ -313,10 +313,10 @@ void irlan_eth_send_gratuitous_arp(struct net_device *dev) ...@@ -313,10 +313,10 @@ void irlan_eth_send_gratuitous_arp(struct net_device *dev)
if (in_dev == NULL) if (in_dev == NULL)
goto out; goto out;
if (in_dev->ifa_list) if (in_dev->ifa_list)
arp_send(ARPOP_REQUEST, ETH_P_ARP, arp_send(ARPOP_REQUEST, ETH_P_ARP,
in_dev->ifa_list->ifa_address, in_dev->ifa_list->ifa_address,
dev, dev,
in_dev->ifa_list->ifa_address, in_dev->ifa_list->ifa_address,
NULL, dev->dev_addr, NULL); NULL, dev->dev_addr, NULL);
out: out:
...@@ -331,9 +331,9 @@ void irlan_eth_send_gratuitous_arp(struct net_device *dev) ...@@ -331,9 +331,9 @@ void irlan_eth_send_gratuitous_arp(struct net_device *dev)
* *
*/ */
#define HW_MAX_ADDRS 4 /* Must query to get it! */ #define HW_MAX_ADDRS 4 /* Must query to get it! */
static void irlan_eth_set_multicast_list(struct net_device *dev) static void irlan_eth_set_multicast_list(struct net_device *dev)
{ {
struct irlan_cb *self = netdev_priv(dev); struct irlan_cb *self = netdev_priv(dev);
IRDA_DEBUG(2, "%s()\n", __FUNCTION__ ); IRDA_DEBUG(2, "%s()\n", __FUNCTION__ );
...@@ -346,7 +346,7 @@ static void irlan_eth_set_multicast_list(struct net_device *dev) ...@@ -346,7 +346,7 @@ static void irlan_eth_set_multicast_list(struct net_device *dev)
if (dev->flags & IFF_PROMISC) { if (dev->flags & IFF_PROMISC) {
/* Enable promiscuous mode */ /* Enable promiscuous mode */
IRDA_WARNING("Promiscous mode not implemented by IrLAN!\n"); IRDA_WARNING("Promiscous mode not implemented by IrLAN!\n");
} }
else if ((dev->flags & IFF_ALLMULTI) || dev->mc_count > HW_MAX_ADDRS) { else if ((dev->flags & IFF_ALLMULTI) || dev->mc_count > HW_MAX_ADDRS) {
/* Disable promiscuous mode, use normal mode. */ /* Disable promiscuous mode, use normal mode. */
IRDA_DEBUG(4, "%s(), Setting multicast filter\n", __FUNCTION__ ); IRDA_DEBUG(4, "%s(), Setting multicast filter\n", __FUNCTION__ );
...@@ -378,7 +378,7 @@ static void irlan_eth_set_multicast_list(struct net_device *dev) ...@@ -378,7 +378,7 @@ static void irlan_eth_set_multicast_list(struct net_device *dev)
* Get the current statistics for this device * Get the current statistics for this device
* *
*/ */
static struct net_device_stats *irlan_eth_get_stats(struct net_device *dev) static struct net_device_stats *irlan_eth_get_stats(struct net_device *dev)
{ {
struct irlan_cb *self = netdev_priv(dev); struct irlan_cb *self = netdev_priv(dev);
......
/********************************************************************* /*********************************************************************
* *
* Filename: irlan_event.c * Filename: irlan_event.c
* Version: * Version:
* Description: * Description:
* Status: Experimental. * Status: Experimental.
* Author: Dag Brattli <dagb@cs.uit.no> * Author: Dag Brattli <dagb@cs.uit.no>
* Created at: Tue Oct 20 09:10:16 1998 * Created at: Tue Oct 20 09:10:16 1998
* Modified at: Sat Oct 30 12:59:01 1999 * Modified at: Sat Oct 30 12:59:01 1999
* Modified by: Dag Brattli <dagb@cs.uit.no> * Modified by: Dag Brattli <dagb@cs.uit.no>
* *
* Copyright (c) 1998-1999 Dag Brattli, All Rights Reserved. * Copyright (c) 1998-1999 Dag Brattli, All Rights Reserved.
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as * modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of * published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version. * the License, or (at your option) any later version.
* *
* Neither Dag Brattli nor University of Tromsø admit liability nor * Neither Dag Brattli nor University of Tromsø admit liability nor
* provide warranty for any of this software. This material is * provide warranty for any of this software. This material is
* provided "AS-IS" and at no charge. * provided "AS-IS" and at no charge.
* *
********************************************************************/ ********************************************************************/
#include <net/irda/irlan_event.h> #include <net/irda/irlan_event.h>
...@@ -38,7 +38,7 @@ char *irlan_state[] = { ...@@ -38,7 +38,7 @@ char *irlan_state[] = {
"IRLAN_SYNC", "IRLAN_SYNC",
}; };
void irlan_next_client_state(struct irlan_cb *self, IRLAN_STATE state) void irlan_next_client_state(struct irlan_cb *self, IRLAN_STATE state)
{ {
IRDA_DEBUG(2, "%s(), %s\n", __FUNCTION__ , irlan_state[state]); IRDA_DEBUG(2, "%s(), %s\n", __FUNCTION__ , irlan_state[state]);
...@@ -48,7 +48,7 @@ void irlan_next_client_state(struct irlan_cb *self, IRLAN_STATE state) ...@@ -48,7 +48,7 @@ void irlan_next_client_state(struct irlan_cb *self, IRLAN_STATE state)
self->client.state = state; self->client.state = state;
} }
void irlan_next_provider_state(struct irlan_cb *self, IRLAN_STATE state) void irlan_next_provider_state(struct irlan_cb *self, IRLAN_STATE state)
{ {
IRDA_DEBUG(2, "%s(), %s\n", __FUNCTION__ , irlan_state[state]); IRDA_DEBUG(2, "%s(), %s\n", __FUNCTION__ , irlan_state[state]);
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -827,7 +827,7 @@ static int irlap_state_conn(struct irlap_cb *self, IRLAP_EVENT event, ...@@ -827,7 +827,7 @@ static int irlap_state_conn(struct irlap_cb *self, IRLAP_EVENT event,
irlap_disconnect_indication(self, LAP_DISC_INDICATION); irlap_disconnect_indication(self, LAP_DISC_INDICATION);
break; break;
default: default:
IRDA_DEBUG(1, "%s(), Unknown event %d, %s\n", __FUNCTION__, IRDA_DEBUG(1, "%s(), Unknown event %d, %s\n", __FUNCTION__,
event, irlap_event[event]); event, irlap_event[event]);
ret = -1; ret = -1;
...@@ -864,7 +864,7 @@ static int irlap_state_setup(struct irlap_cb *self, IRLAP_EVENT event, ...@@ -864,7 +864,7 @@ static int irlap_state_setup(struct irlap_cb *self, IRLAP_EVENT event,
* between 15 msecs and 45 msecs. * between 15 msecs and 45 msecs.
*/ */
irlap_start_backoff_timer(self, msecs_to_jiffies(20 + irlap_start_backoff_timer(self, msecs_to_jiffies(20 +
(jiffies % 30))); (jiffies % 30)));
} else { } else {
/* Always switch state before calling upper layers */ /* Always switch state before calling upper layers */
irlap_next_state(self, LAP_NDM); irlap_next_state(self, LAP_NDM);
...@@ -1377,7 +1377,7 @@ static int irlap_state_nrm_p(struct irlap_cb *self, IRLAP_EVENT event, ...@@ -1377,7 +1377,7 @@ static int irlap_state_nrm_p(struct irlap_cb *self, IRLAP_EVENT event,
/* Resend rejected frames */ /* Resend rejected frames */
irlap_resend_rejected_frames(self, CMD_FRAME); irlap_resend_rejected_frames(self, CMD_FRAME);
/* Give peer some time to retransmit! /* Give peer some time to retransmit!
* But account for our own Tx. */ * But account for our own Tx. */
irlap_start_final_timer(self, 2 * self->final_timeout); irlap_start_final_timer(self, 2 * self->final_timeout);
......
This diff is collapsed.
This diff is collapsed.
...@@ -615,7 +615,7 @@ static int irlmp_state_connect(struct lsap_cb *self, IRLMP_EVENT event, ...@@ -615,7 +615,7 @@ static int irlmp_state_connect(struct lsap_cb *self, IRLMP_EVENT event,
default: default:
/* LM_LAP_DISCONNECT_INDICATION : Should never happen, we /* LM_LAP_DISCONNECT_INDICATION : Should never happen, we
* are *not* yet bound to the IrLAP link. Jean II */ * are *not* yet bound to the IrLAP link. Jean II */
IRDA_DEBUG(0, "%s(), Unknown event %s on LSAP %#02x\n", IRDA_DEBUG(0, "%s(), Unknown event %s on LSAP %#02x\n",
__FUNCTION__, irlmp_event[event], self->slsap_sel); __FUNCTION__, irlmp_event[event], self->slsap_sel);
break; break;
} }
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -146,7 +146,7 @@ static void ...@@ -146,7 +146,7 @@ static void
void *); void *);
static void static void
irnet_discovervalue_confirm(int, irnet_discovervalue_confirm(int,
__u16, __u16,
struct ias_value *, struct ias_value *,
void *); void *);
#ifdef DISCOVERY_EVENTS #ifdef DISCOVERY_EVENTS
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment