| David Sterba | 099dc4f | 2008-02-07 10:57:12 +0100 | [diff] [blame] | 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_HARDWARE_H_ | 
|  | 19 | #define _IPWIRELESS_CS_HARDWARE_H_ | 
|  | 20 |  | 
|  | 21 | #include <linux/types.h> | 
|  | 22 | #include <linux/sched.h> | 
|  | 23 | #include <linux/interrupt.h> | 
|  | 24 |  | 
|  | 25 | #define IPW_CONTROL_LINE_CTS 0x0001 | 
|  | 26 | #define IPW_CONTROL_LINE_DCD 0x0002 | 
|  | 27 | #define IPW_CONTROL_LINE_DSR 0x0004 | 
|  | 28 | #define IPW_CONTROL_LINE_RI  0x0008 | 
|  | 29 | #define IPW_CONTROL_LINE_DTR 0x0010 | 
|  | 30 | #define IPW_CONTROL_LINE_RTS 0x0020 | 
|  | 31 |  | 
|  | 32 | struct ipw_hardware; | 
|  | 33 | struct ipw_network; | 
|  | 34 |  | 
|  | 35 | struct ipw_hardware *ipwireless_hardware_create(void); | 
|  | 36 | void ipwireless_hardware_free(struct ipw_hardware *hw); | 
| David Sterba | 2fc5577 | 2008-07-28 16:52:49 +0200 | [diff] [blame] | 37 | irqreturn_t ipwireless_interrupt(int irq, void *dev_id); | 
| David Sterba | 099dc4f | 2008-02-07 10:57:12 +0100 | [diff] [blame] | 38 | int ipwireless_set_DTR(struct ipw_hardware *hw, unsigned int channel_idx, | 
|  | 39 | int state); | 
|  | 40 | int ipwireless_set_RTS(struct ipw_hardware *hw, unsigned int channel_idx, | 
|  | 41 | int state); | 
|  | 42 | int ipwireless_send_packet(struct ipw_hardware *hw, | 
|  | 43 | unsigned int channel_idx, | 
| David Sterba | ff3e990 | 2008-07-28 16:53:11 +0200 | [diff] [blame] | 44 | const unsigned char *data, | 
| David Sterba | 099dc4f | 2008-02-07 10:57:12 +0100 | [diff] [blame] | 45 | unsigned int length, | 
|  | 46 | void (*packet_sent_callback) (void *cb, | 
|  | 47 | unsigned int length), | 
|  | 48 | void *sent_cb_data); | 
|  | 49 | void ipwireless_associate_network(struct ipw_hardware *hw, | 
|  | 50 | struct ipw_network *net); | 
|  | 51 | void ipwireless_stop_interrupts(struct ipw_hardware *hw); | 
|  | 52 | void ipwireless_init_hardware_v1(struct ipw_hardware *hw, | 
|  | 53 | unsigned int base_port, | 
|  | 54 | void __iomem *attr_memory, | 
|  | 55 | void __iomem *common_memory, | 
|  | 56 | int is_v2_card, | 
|  | 57 | void (*reboot_cb) (void *data), | 
|  | 58 | void *reboot_cb_data); | 
|  | 59 | void ipwireless_init_hardware_v2_v3(struct ipw_hardware *hw); | 
|  | 60 | void ipwireless_sleep(unsigned int tenths); | 
| David Sterba | 099dc4f | 2008-02-07 10:57:12 +0100 | [diff] [blame] | 61 |  | 
|  | 62 | #endif |