]> git.karo-electronics.de Git - mv-sheeva.git/blob - drivers/char/pcmcia/ipwireless/main.h
Merge branch 'hwpoison' of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux...
[mv-sheeva.git] / drivers / char / pcmcia / ipwireless / main.h
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/cs.h>
25 #include <pcmcia/cistpl.h>
26 #include <pcmcia/ds.h>
27
28 #include "hardware.h"
29
30 #define IPWIRELESS_PCCARD_NAME          "ipwireless"
31 #define IPWIRELESS_PCMCIA_VERSION       "1.1"
32 #define IPWIRELESS_PCMCIA_AUTHOR        \
33         "Stephen Blackheath, Ben Martel, Jiri Kosina and David Sterba"
34
35 #define IPWIRELESS_TX_QUEUE_SIZE  262144
36 #define IPWIRELESS_RX_QUEUE_SIZE  262144
37
38 #define IPWIRELESS_STATE_DEBUG
39
40 struct ipw_hardware;
41 struct ipw_network;
42 struct ipw_tty;
43
44 struct ipw_dev {
45         struct pcmcia_device *link;
46         int is_v2_card;
47
48         window_handle_t handle_attr_memory;
49         void __iomem *attr_memory;
50         win_req_t request_attr_memory;
51
52         window_handle_t handle_common_memory;
53         void __iomem *common_memory;
54         win_req_t request_common_memory;
55
56         /* Reference to attribute memory, containing CIS data */
57         void *attribute_memory;
58
59         /* Hardware context */
60         struct ipw_hardware *hardware;
61         /* Network layer context */
62         struct ipw_network *network;
63         /* TTY device context */
64         struct ipw_tty *tty;
65         struct work_struct work_reboot;
66 };
67
68 /* Module parametres */
69 extern int ipwireless_debug;
70 extern int ipwireless_loopback;
71 extern int ipwireless_out_queue;
72
73 #endif