1 /*********************************************************************
6 * Status: Experimental.
7 * Author: Dag Brattli <dagb@cs.uit.no>
8 * Created at: Tue Dec 9 21:13:12 1997
9 * Modified at: Tue Jan 25 09:10:18 2000
10 * Modified by: Dag Brattli <dagb@cs.uit.no>
12 * Copyright (c) 1997, 1999-2000 Dag Brattli, All Rights Reserved.
14 * This program is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU General Public License as
16 * published by the Free Software Foundation; either version 2 of
17 * the License, or (at your option) any later version.
19 * Neither Dag Brattli nor University of Tromsø admit liability nor
20 * provide warranty for any of this software. This material is
21 * provided "AS-IS" and at no charge.
23 ********************************************************************/
29 #include <linux/skbuff.h>
30 #include <linux/termios.h>
31 #include <linux/netdevice.h>
33 #include <net/irda/irda.h>
34 #include <net/irda/irqueue.h>
35 #include <net/irda/irda_device.h>
42 #define IRTTY_IOC_MAGIC 'e'
43 #define IRTTY_IOCTDONGLE _IO(IRTTY_IOC_MAGIC, 1)
44 #define IRTTY_IOCGET _IOR(IRTTY_IOC_MAGIC, 2, struct irtty_info)
45 #define IRTTY_IOC_MAXNR 2
48 irda_queue_t q; /* Must be first */
51 struct net_device *netdev; /* Yes! we are some kind of netdevice */
52 struct irda_task *task;
53 struct net_device_stats stats;
55 struct tty_struct *tty;
56 struct irlap_cb *irlap; /* The link layer we are binded to */
58 chipio_t io; /* IrDA controller information */
59 iobuff_t tx_buff; /* Transmit buffer */
60 iobuff_t rx_buff; /* Receive buffer */
62 struct qos_info qos; /* QoS capabilities for this device */
63 dongle_t *dongle; /* Dongle driver */
66 __u32 flags; /* Interface flags */
71 int irtty_register_dongle(struct dongle_reg *dongle);
72 void irtty_unregister_dongle(struct dongle_reg *dongle);