1 /*
2  * IPWireless 3G PCMCIA Network Driver
3  *
4  * Original code
5  *   by Stephen Blackheath <stephen@blacksapphire.com>,
6  *      Ben Martel <benm@symmetric.co.nz>
7  *
8  * Copyrighted as follows:
9  *   Copyright (C) 2004 by Symmetric Systems Ltd (NZ)
10  *
11  * Various driver changes and rewrites, port to new kernels
12  *   Copyright (C) 2006-2007 Jiri Kosina
13  *
14  * Misc code cleanups and updates
15  *   Copyright (C) 2007 David Sterba
16  */
17 
18 #ifndef _IPWIRELESS_CS_H_
19 #define _IPWIRELESS_CS_H_
20 
21 #include <linux/sched.h>
22 #include <linux/types.h>
23 
24 #include <pcmcia/cistpl.h>
25 #include <pcmcia/ds.h>
26 
27 #include "hardware.h"
28 
29 #define IPWIRELESS_PCCARD_NAME		"ipwireless"
30 #define IPWIRELESS_PCMCIA_VERSION	"1.1"
31 #define IPWIRELESS_PCMCIA_AUTHOR        \
32 	"Stephen Blackheath, Ben Martel, Jiri Kosina and David Sterba"
33 
34 #define IPWIRELESS_TX_QUEUE_SIZE  262144
35 #define IPWIRELESS_RX_QUEUE_SIZE  262144
36 
37 #define IPWIRELESS_STATE_DEBUG
38 
39 struct ipw_hardware;
40 struct ipw_network;
41 struct ipw_tty;
42 
43 struct ipw_dev {
44 	struct pcmcia_device *link;
45 	int is_v2_card;
46 
47 	void __iomem *attr_memory;
48 
49 	void __iomem *common_memory;
50 
51 	/* Reference to attribute memory, containing CIS data */
52 	void *attribute_memory;
53 
54 	/* Hardware context */
55 	struct ipw_hardware *hardware;
56 	/* Network layer context */
57 	struct ipw_network *network;
58 	/* TTY device context */
59 	struct ipw_tty *tty;
60 	struct work_struct work_reboot;
61 };
62 
63 /* Module parametres */
64 extern int ipwireless_debug;
65 extern int ipwireless_loopback;
66 extern int ipwireless_out_queue;
67 
68 #endif
69