1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 2099dc4fbSDavid Sterba /* 3099dc4fbSDavid Sterba * IPWireless 3G PCMCIA Network Driver 4099dc4fbSDavid Sterba * 5099dc4fbSDavid Sterba * Original code 6099dc4fbSDavid Sterba * by Stephen Blackheath <stephen@blacksapphire.com>, 7099dc4fbSDavid Sterba * Ben Martel <benm@symmetric.co.nz> 8099dc4fbSDavid Sterba * 9099dc4fbSDavid Sterba * Copyrighted as follows: 10099dc4fbSDavid Sterba * Copyright (C) 2004 by Symmetric Systems Ltd (NZ) 11099dc4fbSDavid Sterba * 12099dc4fbSDavid Sterba * Various driver changes and rewrites, port to new kernels 13099dc4fbSDavid Sterba * Copyright (C) 2006-2007 Jiri Kosina 14099dc4fbSDavid Sterba * 15099dc4fbSDavid Sterba * Misc code cleanups and updates 16099dc4fbSDavid Sterba * Copyright (C) 2007 David Sterba 17099dc4fbSDavid Sterba */ 18099dc4fbSDavid Sterba 19099dc4fbSDavid Sterba #ifndef _IPWIRELESS_CS_H_ 20099dc4fbSDavid Sterba #define _IPWIRELESS_CS_H_ 21099dc4fbSDavid Sterba 22099dc4fbSDavid Sterba #include <linux/sched.h> 23099dc4fbSDavid Sterba #include <linux/types.h> 24099dc4fbSDavid Sterba 25099dc4fbSDavid Sterba #include <pcmcia/cistpl.h> 26099dc4fbSDavid Sterba #include <pcmcia/ds.h> 27099dc4fbSDavid Sterba 28099dc4fbSDavid Sterba #include "hardware.h" 29099dc4fbSDavid Sterba 30099dc4fbSDavid Sterba #define IPWIRELESS_PCCARD_NAME "ipwireless" 31099dc4fbSDavid Sterba #define IPWIRELESS_PCMCIA_VERSION "1.1" 32099dc4fbSDavid Sterba #define IPWIRELESS_PCMCIA_AUTHOR \ 33099dc4fbSDavid Sterba "Stephen Blackheath, Ben Martel, Jiri Kosina and David Sterba" 34099dc4fbSDavid Sterba 35099dc4fbSDavid Sterba #define IPWIRELESS_TX_QUEUE_SIZE 262144 36099dc4fbSDavid Sterba #define IPWIRELESS_RX_QUEUE_SIZE 262144 37099dc4fbSDavid Sterba 38099dc4fbSDavid Sterba #define IPWIRELESS_STATE_DEBUG 39099dc4fbSDavid Sterba 40099dc4fbSDavid Sterba struct ipw_hardware; 41099dc4fbSDavid Sterba struct ipw_network; 42099dc4fbSDavid Sterba struct ipw_tty; 43099dc4fbSDavid Sterba 44099dc4fbSDavid Sterba struct ipw_dev { 45099dc4fbSDavid Sterba struct pcmcia_device *link; 46099dc4fbSDavid Sterba int is_v2_card; 4709e491e9SDavid Sterba 48099dc4fbSDavid Sterba void __iomem *attr_memory; 4909e491e9SDavid Sterba 50099dc4fbSDavid Sterba void __iomem *common_memory; 5109e491e9SDavid Sterba 52099dc4fbSDavid Sterba /* Reference to attribute memory, containing CIS data */ 53099dc4fbSDavid Sterba void *attribute_memory; 54099dc4fbSDavid Sterba 55099dc4fbSDavid Sterba /* Hardware context */ 56099dc4fbSDavid Sterba struct ipw_hardware *hardware; 57099dc4fbSDavid Sterba /* Network layer context */ 58099dc4fbSDavid Sterba struct ipw_network *network; 59099dc4fbSDavid Sterba /* TTY device context */ 60099dc4fbSDavid Sterba struct ipw_tty *tty; 61099dc4fbSDavid Sterba struct work_struct work_reboot; 62099dc4fbSDavid Sterba }; 63099dc4fbSDavid Sterba 64099dc4fbSDavid Sterba /* Module parametres */ 65099dc4fbSDavid Sterba extern int ipwireless_debug; 66099dc4fbSDavid Sterba extern int ipwireless_loopback; 67099dc4fbSDavid Sterba extern int ipwireless_out_queue; 68099dc4fbSDavid Sterba 69099dc4fbSDavid Sterba #endif 70