1/*******************************************************************************
2 * Agere Systems Inc.
3 * Wireless device driver for Linux (wlags49).
4 *
5 * Copyright (c) 1998-2003 Agere Systems Inc.
6 * All rights reserved.
7 *   http://www.agere.com
8 *
9 * Initially developed by TriplePoint, Inc.
10 *   http://www.triplepoint.com
11 *
12 *------------------------------------------------------------------------------
13 *
14 *   This header file contains version information for the code base, as well as
15 *   special definitions and macros needed by certain versions of the code.
16 *
17 *------------------------------------------------------------------------------
18 *
19 * SOFTWARE LICENSE
20 *
21 * This software is provided subject to the following terms and conditions,
22 * which you should read carefully before using the software.  Using this
23 * software indicates your acceptance of these terms and conditions.  If you do
24 * not agree with these terms and conditions, do not use the software.
25 *
26 * Copyright © 2003 Agere Systems Inc.
27 * All rights reserved.
28 *
29 * Redistribution and use in source or binary forms, with or without
30 * modifications, are permitted provided that the following conditions are met:
31 *
32 * . Redistributions of source code must retain the above copyright notice, this
33 *    list of conditions and the following Disclaimer as comments in the code as
34 *    well as in the documentation and/or other materials provided with the
35 *    distribution.
36 *
37 * . Redistributions in binary form must reproduce the above copyright notice,
38 *    this list of conditions and the following Disclaimer in the documentation
39 *    and/or other materials provided with the distribution.
40 *
41 * . Neither the name of Agere Systems Inc. nor the names of the contributors
42 *    may be used to endorse or promote products derived from this software
43 *    without specific prior written permission.
44 *
45 * Disclaimer
46 *
47 * THIS SOFTWARE IS PROVIDED ÂAS ISÂ AND ANY EXPRESS OR IMPLIED WARRANTIES,
48 * INCLUDING, BUT NOT LIMITED TO, INFRINGEMENT AND THE IMPLIED WARRANTIES OF
49 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  ANY
50 * USE, MODIFICATION OR DISTRIBUTION OF THIS SOFTWARE IS SOLELY AT THE USERS OWN
51 * RISK. IN NO EVENT SHALL AGERE SYSTEMS INC. OR CONTRIBUTORS BE LIABLE FOR ANY
52 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
53 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
54 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
55 * ON ANY THEORY OF LIABILITY, INCLUDING, BUT NOT LIMITED TO, CONTRACT, STRICT
56 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
57 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
58 * DAMAGE.
59 *
60 ******************************************************************************/
61
62#ifndef __WL_VERSION_H__
63#define __WL_VERSION_H__
64
65/*******************************************************************************
66 *  include files
67 ******************************************************************************/
68//#include <linux/config.h>
69
70#ifndef CONFIG_MODVERSIONS
71#define __NO_VERSION__
72#endif  // CONFIG_MODVERSIONS
73
74/*******************************************************************************
75 *  constant definitions
76 ******************************************************************************/
77
78#define VENDOR_NAME         "Agere Systems, http://www.agere.com"
79
80#define DRIVER_NAME         "wlags49"
81#define DRV_IDENTITY        49
82
83#define DRV_MAJOR_VERSION   7
84#define DRV_MINOR_VERSION   22
85#define DRV_VERSION_STR     "7.22"
86
87
88#if defined BUS_PCMCIA
89#define BUS_TYPE            "PCMCIA"
90#elif defined BUS_PCI
91#define BUS_TYPE            "PCI"
92#else
93err: define bus type;
94#endif  // BUS_XXX
95
96#if defined HERMES25
97#define HW_TYPE				"HII.5"
98#else
99#define HW_TYPE				"HII"
100#endif // HERMES25
101
102#if defined WARP
103#define FW_TYPE				"WARP"
104#else
105#define FW_TYPE				"BEAGLE"
106#endif // WARP
107
108#if defined HERMES25
109#if defined WARP
110#define DRV_VARIANT         3
111#else
112#define DRV_VARIANT         4
113#endif // WARP
114#else
115#define DRV_VARIANT         2
116#endif // HERMES25
117
118#ifdef BUS_PCMCIA
119#if defined HERMES25
120#define MODULE_NAME         DRIVER_NAME "_h25_cs"
121#else
122#define MODULE_NAME         DRIVER_NAME "_h2_cs"
123#endif  /* HERMES25 */
124#elif defined BUS_PCI
125#if defined HERMES25
126#define MODULE_NAME         DRIVER_NAME "_h25"
127#else
128#define MODULE_NAME         DRIVER_NAME "_h2"
129#endif  /* HERMES25 */
130#endif  /* BUS_XXX */
131
132#ifdef DBG
133#define MODULE_DATE         __DATE__ " " __TIME__
134#else
135#define MODULE_DATE         "07/18/2004 13:30:00"
136#endif // DBG
137
138//#define STR2(m) #m
139//#define STR1(m) STR2(m)
140//#define MODULE_NAME			STR1( MOD_NAME )
141
142#define VERSION_INFO        MODULE_NAME " v" DRV_VERSION_STR \
143							" for " BUS_TYPE ", " 											   	 \
144							MODULE_DATE " by " VENDOR_NAME
145
146/* The version of wireless extensions we support */
147#define WIRELESS_SUPPORT    21
148
149//#define DBG_MOD_NAME         DRIVER_NAME ":" BUS_TYPE ":" HW_TYPE ":" FW_TYPE
150#define DBG_MOD_NAME        MODULE_NAME
151
152
153
154/*******************************************************************************
155 *  bus architechture specific defines, includes, etc.
156 ******************************************************************************/
157/*
158 * There doesn't seem to be a difference for PCMCIA and PCI anymore, at least
159 * for PCMCIA the same defines are needed now as previously only used for PCI
160 */
161
162#define NEW_MULTICAST
163#define ALLOC_SKB(len)   dev_alloc_skb(len+2)
164#define GET_PACKET(dev, skb, count)\
165                        skb_reserve((skb), 2); \
166                        BLOCK_INPUT(skb_put((skb), (count)), (count)); \
167                        (skb)->protocol = eth_type_trans((skb), (dev))
168#define GET_PACKET_DMA(dev, skb, count)\
169                        skb_reserve((skb), 2); \
170                        BLOCK_INPUT_DMA(skb_put((skb), (count)), (count)); \
171                        (skb)->protocol = eth_type_trans((skb), (dev))
172
173
174
175
176#endif  // __WL_VERSION_H__
177