blob: f2cbb116bccb51d2c3c548cf5053b782fb84f9de [file] [log] [blame]
David Sterba099dc4f2008-02-07 10:57:12 +01001/*
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
David Sterba099dc4f2008-02-07 10:57:12 +010024#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
39struct ipw_hardware;
40struct ipw_network;
41struct ipw_tty;
42
43struct ipw_dev {
44 struct pcmcia_device *link;
45 int is_v2_card;
David Sterba09e491e2008-07-28 16:53:16 +020046
David Sterba099dc4f2008-02-07 10:57:12 +010047 void __iomem *attr_memory;
David Sterba09e491e2008-07-28 16:53:16 +020048
David Sterba099dc4f2008-02-07 10:57:12 +010049 void __iomem *common_memory;
David Sterba09e491e2008-07-28 16:53:16 +020050
David Sterba099dc4f2008-02-07 10:57:12 +010051 /* 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 */
64extern int ipwireless_debug;
65extern int ipwireless_loopback;
66extern int ipwireless_out_queue;
67
68#endif