18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * IPWireless 3G PCMCIA Network Driver 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Original code 68c2ecf20Sopenharmony_ci * by Stephen Blackheath <stephen@blacksapphire.com>, 78c2ecf20Sopenharmony_ci * Ben Martel <benm@symmetric.co.nz> 88c2ecf20Sopenharmony_ci * 98c2ecf20Sopenharmony_ci * Copyrighted as follows: 108c2ecf20Sopenharmony_ci * Copyright (C) 2004 by Symmetric Systems Ltd (NZ) 118c2ecf20Sopenharmony_ci * 128c2ecf20Sopenharmony_ci * Various driver changes and rewrites, port to new kernels 138c2ecf20Sopenharmony_ci * Copyright (C) 2006-2007 Jiri Kosina 148c2ecf20Sopenharmony_ci * 158c2ecf20Sopenharmony_ci * Misc code cleanups and updates 168c2ecf20Sopenharmony_ci * Copyright (C) 2007 David Sterba 178c2ecf20Sopenharmony_ci */ 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci#ifndef _IPWIRELESS_CS_H_ 208c2ecf20Sopenharmony_ci#define _IPWIRELESS_CS_H_ 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ci#include <linux/sched.h> 238c2ecf20Sopenharmony_ci#include <linux/types.h> 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci#include <pcmcia/cistpl.h> 268c2ecf20Sopenharmony_ci#include <pcmcia/ds.h> 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci#include "hardware.h" 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ci#define IPWIRELESS_PCCARD_NAME "ipwireless" 318c2ecf20Sopenharmony_ci#define IPWIRELESS_PCMCIA_VERSION "1.1" 328c2ecf20Sopenharmony_ci#define IPWIRELESS_PCMCIA_AUTHOR \ 338c2ecf20Sopenharmony_ci "Stephen Blackheath, Ben Martel, Jiri Kosina and David Sterba" 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ci#define IPWIRELESS_TX_QUEUE_SIZE 262144 368c2ecf20Sopenharmony_ci#define IPWIRELESS_RX_QUEUE_SIZE 262144 378c2ecf20Sopenharmony_ci 388c2ecf20Sopenharmony_ci#define IPWIRELESS_STATE_DEBUG 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_cistruct ipw_hardware; 418c2ecf20Sopenharmony_cistruct ipw_network; 428c2ecf20Sopenharmony_cistruct ipw_tty; 438c2ecf20Sopenharmony_ci 448c2ecf20Sopenharmony_cistruct ipw_dev { 458c2ecf20Sopenharmony_ci struct pcmcia_device *link; 468c2ecf20Sopenharmony_ci int is_v2_card; 478c2ecf20Sopenharmony_ci 488c2ecf20Sopenharmony_ci void __iomem *attr_memory; 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci void __iomem *common_memory; 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci /* Reference to attribute memory, containing CIS data */ 538c2ecf20Sopenharmony_ci void *attribute_memory; 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ci /* Hardware context */ 568c2ecf20Sopenharmony_ci struct ipw_hardware *hardware; 578c2ecf20Sopenharmony_ci /* Network layer context */ 588c2ecf20Sopenharmony_ci struct ipw_network *network; 598c2ecf20Sopenharmony_ci /* TTY device context */ 608c2ecf20Sopenharmony_ci struct ipw_tty *tty; 618c2ecf20Sopenharmony_ci struct work_struct work_reboot; 628c2ecf20Sopenharmony_ci}; 638c2ecf20Sopenharmony_ci 648c2ecf20Sopenharmony_ci/* Module parametres */ 658c2ecf20Sopenharmony_ciextern int ipwireless_debug; 668c2ecf20Sopenharmony_ciextern int ipwireless_loopback; 678c2ecf20Sopenharmony_ciextern int ipwireless_out_queue; 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ci#endif 70