diff options
author | Greg Kroah-Hartman <gregkh@suse.de> | 2010-05-21 12:48:55 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-05-21 12:48:55 -0700 |
commit | c8d1a126924fcbc1d61ceb830226e0c7afdcc841 (patch) | |
tree | d3f3c850481c33b7f433175e83a189f958b1b868 /drivers/staging/wlags49_h2 | |
parent | d7dbf4ffee1c7a17e2e5b5f01efe76fbd1671db6 (diff) | |
parent | 107c161b7ddeeb7da43509cc6b29211885ccd9af (diff) | |
download | linux-c8d1a126924fcbc1d61ceb830226e0c7afdcc841.tar.gz linux-c8d1a126924fcbc1d61ceb830226e0c7afdcc841.tar.bz2 linux-c8d1a126924fcbc1d61ceb830226e0c7afdcc841.zip |
Merge staging-next tree into Linus's latest version
Conflicts:
drivers/staging/arlan/arlan-main.c
drivers/staging/comedi/drivers/cb_das16_cs.c
drivers/staging/cx25821/cx25821-alsa.c
drivers/staging/dt3155/dt3155_drv.c
drivers/staging/hv/hv.c
drivers/staging/netwave/netwave_cs.c
drivers/staging/wavelan/wavelan.c
drivers/staging/wavelan/wavelan_cs.c
drivers/staging/wlags49_h2/wl_cs.c
This required a bit of hand merging due to the conflicts
that happened in the later .34-rc releases, as well as
some staging driver changing coming in through other trees
(v4l and pcmcia).
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/wlags49_h2')
-rw-r--r-- | drivers/staging/wlags49_h2/Kconfig | 2 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/README.wlags49 | 2 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/ap_h2.c | 80 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/debug.h | 104 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/dhf.c | 143 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/dhf.h | 56 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/dhfcfg.h | 118 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/hcf.c | 15 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/wl_cs.c | 32 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/wl_cs.h | 4 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/wl_internal.h | 8 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/wl_main.c | 3 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/wl_netdev.c | 39 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/wl_priv.c | 11 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/wl_profile.c | 957 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/wl_sysfs.c | 3 | ||||
-rw-r--r-- | drivers/staging/wlags49_h2/wl_wext.c | 9 |
17 files changed, 729 insertions, 857 deletions
diff --git a/drivers/staging/wlags49_h2/Kconfig b/drivers/staging/wlags49_h2/Kconfig index 92053fe70130..b6fc2ca7d85c 100644 --- a/drivers/staging/wlags49_h2/Kconfig +++ b/drivers/staging/wlags49_h2/Kconfig @@ -1,6 +1,6 @@ config WLAGS49_H2 tristate "Agere Systems HERMES II Wireless PC Card Model 0110" - depends on WLAN_80211 && WIRELESS_EXT && PCMCIA + depends on WLAN && WIRELESS_EXT && PCMCIA select WEXT_SPY ---help--- Driver for wireless cards using Agere's HERMES II chipset diff --git a/drivers/staging/wlags49_h2/README.wlags49 b/drivers/staging/wlags49_h2/README.wlags49 index 7586fd09adc9..f65acd6f5f54 100644 --- a/drivers/staging/wlags49_h2/README.wlags49 +++ b/drivers/staging/wlags49_h2/README.wlags49 @@ -84,7 +84,7 @@ TABLE OF CONTENTS. the functions to interface to the Network Interface Card (NIC). The HCF provides for all WaveLAN NIC types one standard interface to the MSF. This I/F is called the Wireless Connection Interface (WCI) and is the - subject of a seperate document (025726). + subject of a separate document (025726). The HCF directory contains firmware images to allow the card to operate in either station (STA) or Access Point (AP) mode. In the build process, the diff --git a/drivers/staging/wlags49_h2/ap_h2.c b/drivers/staging/wlags49_h2/ap_h2.c index f5123d2cb4c1..eb8244c4d6f0 100644 --- a/drivers/staging/wlags49_h2/ap_h2.c +++ b/drivers/staging/wlags49_h2/ap_h2.c @@ -25,10 +25,10 @@ */ -#include "hcfcfg.h" // to get hcf_16 etc defined as well as - // possible settings which inluence mdd.h or dhf.h -#include "mdd.h" //to get COMP_ID_STA etc defined -#include "dhf.h" //used to be "fhfmem.h", to get memblock,plugrecord, +#include "hcfcfg.h" /* to get hcf_16 etc defined as well as */ + /* possible settings which inluence mdd.h or dhf.h */ +#include "mdd.h" /* to get COMP_ID_STA etc defined */ +#include "dhf.h" /* used to be "fhfmem.h", to get memblock,plugrecord, */ static const hcf_8 fw_image_1_data[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -3238,59 +3238,59 @@ static const hcf_8 fw_image_4_data[] = { static const CFG_IDENTITY_STRCT fw_image_infoidentity[] = { { - sizeof( CFG_IDENTITY_STRCT ) / sizeof(hcf_16) - 1, + sizeof(CFG_IDENTITY_STRCT) / sizeof(hcf_16) - 1, CFG_FW_IDENTITY, COMP_ID_FW_AP, - 2, //Variant - 2, //Major - 36 //Minor + 2, /* Variant / + 2, /* Major */ + 36 /* Minor */ }, - { 0000, 0000, 0000, 0000, 0000, 0000 } //endsentinel + { 0000, 0000, 0000, 0000, 0000, 0000 } /* endsentinel */ }; static const CFG_PROG_STRCT fw_image_code[] = { { 8, CFG_PROG, - CFG_PROG_VOLATILE, // mode - 0x0146, // sizeof(fw_image_1_data), - 0x00000060, // Target address in NIC Memory - 0x0000, // CRC: yes/no TYPE: primary/station/tertiary - (hcf_8 FAR *) fw_image_1_data + CFG_PROG_VOLATILE, /* mode */ + 0x0146, /* sizeof(fw_image_1_data), */ + 0x00000060, /* Target address in NIC Memory */ + 0x0000, /* CRC: yes/no TYPE: primary/station/tertiary */ + (hcf_8 FAR *) fw_image_1_data }, { 8, CFG_PROG, - CFG_PROG_VOLATILE, // mode - 0x1918, // sizeof(fw_image_2_data), - 0x00000C16, // Target address in NIC Memory - 0x0000, // CRC: yes/no TYPE: primary/station/tertiary - (hcf_8 FAR *) fw_image_2_data + CFG_PROG_VOLATILE, /* mode */ + 0x1918, /* sizeof(fw_image_2_data), */ + 0x00000C16, /* Target address in NIC Memory */ + 0x0000, /* CRC: yes/no TYPE: primary/station/tertiary */ + (hcf_8 FAR *) fw_image_2_data }, { 8, CFG_PROG, - CFG_PROG_VOLATILE, // mode - 0x01bc, // sizeof(fw_image_3_data), - 0x001E252E, // Target address in NIC Memory - 0x0000, // CRC: yes/no TYPE: primary/station/tertiary - (hcf_8 FAR *) fw_image_3_data + CFG_PROG_VOLATILE, /* mode */ + 0x01bc, /* sizeof(fw_image_3_data), */ + 0x001E252E, /* Target address in NIC Memory */ + 0x0000, /* CRC: yes/no TYPE: primary/station/tertiary */ + (hcf_8 FAR *) fw_image_3_data }, { 8, CFG_PROG, - CFG_PROG_VOLATILE, // mode - 0xab28, // sizeof(fw_image_4_data), - 0x001F4000, // Target address in NIC Memory - 0x0000, // CRC: yes/no TYPE: primary/station/tertiary - (hcf_8 FAR *) fw_image_4_data + CFG_PROG_VOLATILE, /* mode */ + 0xab28, /* sizeof(fw_image_4_data), */ + 0x001F4000, /* Target address in NIC Memory */ + 0x0000, /* CRC: yes/no TYPE: primary/station/tertiary */ + (hcf_8 FAR *) fw_image_4_data }, { 5, CFG_PROG, - CFG_PROG_STOP, // mode + CFG_PROG_STOP, /* mode*/ 0000, - 0x000F1297, // Start execution address + 0x000F1297, /* Start execution address */ }, { 0000, 0000, 0000, 0000, 00000000, 0000, 00000000} }; @@ -3301,7 +3301,7 @@ static const CFG_RANGE20_STRCT fw_image_infocompat[] = { COMP_ROLE_SUPL, COMP_ID_APF, { - { 2, 2, 4 } //variant, bottom, top + { 2, 2, 4 } /* variant, bottom, top */ } }, { 3 + ((20 * sizeof(CFG_RANGE_SPEC_STRCT)) / sizeof(hcf_16)), @@ -3309,9 +3309,9 @@ static const CFG_RANGE20_STRCT fw_image_infocompat[] = { COMP_ROLE_ACT, COMP_ID_MFI, { - { 4, 6, 7 }, //variant, bottom, top - { 5, 6, 7 }, //variant, bottom, top - { 6, 6, 7 } //variant, bottom, top + { 4, 6, 7 }, /* variant, bottom, top */ + { 5, 6, 7 }, /* variant, bottom, top */ + { 6, 6, 7 } /* variant, bottom, top */ } }, { 3 + ((20 * sizeof(CFG_RANGE_SPEC_STRCT)) / sizeof(hcf_16)), @@ -3319,18 +3319,18 @@ static const CFG_RANGE20_STRCT fw_image_infocompat[] = { COMP_ROLE_ACT, COMP_ID_CFI, { - { 2, 1, 2 } //variant, bottom, top + { 2, 1, 2 } /* variant, bottom, top */ } }, - { 0000, 0000, 0000, 0000, { { 0000, 0000, 0000 } } } //endsentinel + { 0000, 0000, 0000, 0000, { { 0000, 0000, 0000 } } } /* endsentinel */ }; memimage fw_image = { - "FUPU7D37dhfwci\001C", //signature, <format number>, C/Bin type + "FUPU7D37dhfwci\001C", /* signature, <format number>, C/Bin type */ (CFG_PROG_STRCT *) fw_image_code, 0x000F1297, - 00000000, //(dummy) pdaplug - 00000000, //(dummy) priplug + 00000000, /* (dummy) pdaplug */ + 00000000, /* (dummy) priplug */ (CFG_RANGE20_STRCT *) fw_image_infocompat, (CFG_IDENTITY_STRCT *) fw_image_infoidentity, }; diff --git a/drivers/staging/wlags49_h2/debug.h b/drivers/staging/wlags49_h2/debug.h index 0b52e17b3011..2c3dd140a35f 100644 --- a/drivers/staging/wlags49_h2/debug.h +++ b/drivers/staging/wlags49_h2/debug.h @@ -22,7 +22,7 @@ * software indicates your acceptance of these terms and conditions. If you do * not agree with these terms and conditions, do not use the software. * - * Copyright © 2003 Agere Systems Inc. + * Copyright (c) 2003 Agere Systems Inc. * All rights reserved. * * Redistribution and use in source or binary forms, with or without @@ -70,7 +70,7 @@ #else #undef DBG #define DBG 1 -#endif //DBG +#endif /* DBG */ @@ -84,7 +84,7 @@ #ifndef DBG_LVL #define DBG_LVL 5 /* yields nothing via init_module, original value of 5 yields DBG_TRACE_ON and DBG_VERBOSE_ON */ -#endif // DBG_LVL +#endif /* DBG_LVL*/ #define DBG_ERROR_ON 0x00000001L @@ -100,80 +100,94 @@ #define DBG_DEFAULTS (DBG_ERROR_ON | DBG_WARNING_ON | DBG_BREAK_ON) -#define DBG_FLAGS(A) (A)->DebugFlag -#define DBG_NAME(A) (A)->dbgName -#define DBG_LEVEL(A) (A)->dbgLevel +#define DBG_FLAGS(A) ((A)->DebugFlag) +#define DBG_NAME(A) ((A)->dbgName) +#define DBG_LEVEL(A) ((A)->dbgLevel) #ifndef PRINTK # define PRINTK(S...) printk(S) -#endif // PRINTK +#endif /* PRINTK */ #ifndef DBG_PRINT # define DBG_PRINT(S...) PRINTK(KERN_DEBUG S) -#endif // DBG_PRINT +#endif /* DBG_PRINT */ #ifndef DBG_PRINTC # define DBG_PRINTC(S...) PRINTK(S) -#endif // DBG_PRINTC +#endif /* DBG_PRINTC */ #ifndef DBG_TRAP # define DBG_TRAP {} -#endif // DBG_TRAP +#endif /* DBG_TRAP */ #define _ENTER_STR ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>" #define _LEAVE_STR "<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<" -#define _DBG_ENTER(A) DBG_PRINT("%s:%.*s:%s\n",DBG_NAME(A),++DBG_LEVEL(A),_ENTER_STR,__FUNC__) -#define _DBG_LEAVE(A) DBG_PRINT("%s:%.*s:%s\n",DBG_NAME(A),DBG_LEVEL(A)--,_LEAVE_STR,__FUNC__) +#define _DBG_ENTER(A) DBG_PRINT("%s:%.*s:%s\n", DBG_NAME(A), ++DBG_LEVEL(A), _ENTER_STR, __FUNC__) +#define _DBG_LEAVE(A) DBG_PRINT("%s:%.*s:%s\n", DBG_NAME(A), DBG_LEVEL(A)--, _LEAVE_STR, __FUNC__) #define DBG_FUNC(F) static const char *__FUNC__ = F; -#define DBG_ENTER(A) {if (DBG_FLAGS(A) & DBG_TRACE_ON) _DBG_ENTER(A);} +#define DBG_ENTER(A) {if (DBG_FLAGS(A) & DBG_TRACE_ON) \ + _DBG_ENTER(A); } -#define DBG_LEAVE(A) {if (DBG_FLAGS(A) & DBG_TRACE_ON) _DBG_LEAVE(A);} +#define DBG_LEAVE(A) {if (DBG_FLAGS(A) & DBG_TRACE_ON) \ + _DBG_LEAVE(A); } -#define DBG_PARAM(A,N,F,S...) {if (DBG_FLAGS(A) & DBG_PARAM_ON) \ - DBG_PRINT(" %s -- "F"\n",N,S);} +#define DBG_PARAM(A, N, F, S...) {if (DBG_FLAGS(A) & DBG_PARAM_ON) \ + DBG_PRINT(" %s -- "F"\n", N, S); } -#define DBG_ERROR(A,S...) {if (DBG_FLAGS(A) & DBG_ERROR_ON) \ - {DBG_PRINT("%s:ERROR:%s ",DBG_NAME(A),__FUNC__);DBG_PRINTC(S);DBG_TRAP;}} +#define DBG_ERROR(A, S...) {if (DBG_FLAGS(A) & DBG_ERROR_ON) {\ + DBG_PRINT("%s:ERROR:%s ", DBG_NAME(A), __FUNC__);\ + DBG_PRINTC(S); \ + DBG_TRAP; \ + } \ + } -#define DBG_WARNING(A,S...) {if (DBG_FLAGS(A) & DBG_WARNING_ON) \ - {DBG_PRINT("%s:WARNING:%s ",DBG_NAME(A),__FUNC__);DBG_PRINTC(S);}} +#define DBG_WARNING(A, S...) {if (DBG_FLAGS(A) & DBG_WARNING_ON) {\ + DBG_PRINT("%s:WARNING:%s ", DBG_NAME(A), __FUNC__);\ + DBG_PRINTC(S); } } -#define DBG_NOTICE(A,S...) {if (DBG_FLAGS(A) & DBG_NOTICE_ON) \ - {DBG_PRINT("%s:NOTICE:%s ",DBG_NAME(A),__FUNC__);DBG_PRINTC(S);}} +#define DBG_NOTICE(A, S...) {if (DBG_FLAGS(A) & DBG_NOTICE_ON) {\ + DBG_PRINT("%s:NOTICE:%s ", DBG_NAME(A), __FUNC__);\ + DBG_PRINTC(S); \ + } \ + } -#define DBG_TRACE(A,S...) do {if (DBG_FLAGS(A) & DBG_TRACE_ON) \ - {DBG_PRINT("%s:%s ",DBG_NAME(A),__FUNC__);DBG_PRINTC(S);}} while (0) +#define DBG_TRACE(A, S...) do {if (DBG_FLAGS(A) & DBG_TRACE_ON) {\ + DBG_PRINT("%s:%s ", DBG_NAME(A), __FUNC__);\ + DBG_PRINTC(S); } } while (0) -#define DBG_RX(A,S...) {if (DBG_FLAGS(A) & DBG_RX_ON) \ - {DBG_PRINT(S);}} +#define DBG_RX(A, S...) {if (DBG_FLAGS(A) & DBG_RX_ON) {\ + DBG_PRINT(S); } } -#define DBG_TX(A,S...) {if (DBG_FLAGS(A) & DBG_TX_ON) \ - {DBG_PRINT(S);}} +#define DBG_TX(A, S...) {if (DBG_FLAGS(A) & DBG_TX_ON) {\ + DBG_PRINT(S); } } -#define DBG_DS(A,S...) {if (DBG_FLAGS(A) & DBG_DS_ON) \ - {DBG_PRINT(S);}} +#define DBG_DS(A, S...) {if (DBG_FLAGS(A) & DBG_DS_ON) {\ + DBG_PRINT(S); } } -#define DBG_ASSERT(C) {if (!(C)) \ - {DBG_PRINT("ASSERT(%s) -- %s#%d (%s)\n", \ - #C,__FILE__,__LINE__,__FUNC__); \ - DBG_TRAP;}} +#define DBG_ASSERT(C) { \ + if (!(C)) {\ + DBG_PRINT("ASSERT(%s) -- %s#%d (%s)\n", \ + #C, __FILE__, __LINE__, __FUNC__); \ + DBG_TRAP; \ + } \ + } typedef struct { char *dbgName; @@ -183,7 +197,7 @@ typedef struct { /****************************************************************************/ -#else // DBG +#else /* DBG */ /****************************************************************************/ #define DBG_DEFN @@ -192,21 +206,21 @@ typedef struct { #define DBG_PRINT(S...) #define DBG_ENTER(A) #define DBG_LEAVE(A) -#define DBG_PARAM(A,N,F,S...) -#define DBG_ERROR(A,S...) -#define DBG_WARNING(A,S...) -#define DBG_NOTICE(A,S...) -#define DBG_TRACE(A,S...) -#define DBG_RX(A,S...) -#define DBG_TX(A,S...) -#define DBG_DS(A,S...) +#define DBG_PARAM(A, N, F, S...) +#define DBG_ERROR(A, S...) +#define DBG_WARNING(A, S...) +#define DBG_NOTICE(A, S...) +#define DBG_TRACE(A, S...) +#define DBG_RX(A, S...) +#define DBG_TX(A, S...) +#define DBG_DS(A, S...) #define DBG_ASSERT(C) -#endif // DBG +#endif /* DBG */ /****************************************************************************/ -#endif // _DEBUG_H +#endif /* _DEBUG_H */ diff --git a/drivers/staging/wlags49_h2/dhf.c b/drivers/staging/wlags49_h2/dhf.c index b6f5834b1aff..bb80b547cc19 100644 --- a/drivers/staging/wlags49_h2/dhf.c +++ b/drivers/staging/wlags49_h2/dhf.c @@ -1,5 +1,5 @@ -// vim:tw=110:ts=4: +/* vim:tw=110:ts=4: */ /************************************************************************************************************** * * FILE : DHF.C @@ -54,8 +54,8 @@ * software indicates your acceptance of these terms and conditions. If you do * not agree with these terms and conditions, do not use the software. * -* COPYRIGHT © 1999 - 2000 by Lucent Technologies. All Rights Reserved -* COPYRIGHT © 2001 - 2004 by Agere Systems Inc. All Rights Reserved +* COPYRIGHT (C) 1999 - 2000 by Lucent Technologies. All Rights Reserved +* COPYRIGHT (C) 2001 - 2004 by Agere Systems Inc. All Rights Reserved * All rights reserved. * * Redistribution and use in source or binary forms, with or without @@ -97,7 +97,7 @@ #include "dhf.h" #include "mmd.h" -//to distinguish MMD from HCF asserts by means of line number +/* to distinguish MMD from HCF asserts by means of line number */ #undef FILE_NAME_OFFSET #define FILE_NAME_OFFSET MMD_FILE_NAME_OFFSET /*----------------------------------------------------------------------------- @@ -106,23 +106,9 @@ * *---------------------------------------------------------------------------*/ -// 12345678901234 +/* 12345678901234 */ char signature[14] = "FUPU7D37dhfwci"; -//The binary download function "relocates" the image using constructions like: -// fw->identity = (CFG_IDENTITY_STRCT FAR *)((char FAR *)fw->identity + (hcf_32)fw ); -//under some of the memory models under MSVC 1.52 these constructions degrade to 16-bits pointer arithmetic. -//fw->identity is limited, such that adding it to fw, does not need to carry over from offset to segment. -//However the segment is not set at all. -//As a workaround the PSEUDO_CHARP macro is introduced which is a char pointer except for MSVC 1.52, in -//which case we know that a 32-bit quantity is adequate as a pointer. -//Note that other platforms may experience comparable problems when using the binary download feature. -#if defined(_MSC_VER) && _MSC_VER == 800 // Visual C++ 1.5 -#define PSEUDO_CHARP hcf_32 -#else -#define PSEUDO_CHARP hcf_8* -#endif - /*----------------------------------------------------------------------------- * * LTV-records retrieved from the NIC to: @@ -132,12 +118,12 @@ char signature[14] = "FUPU7D37dhfwci"; * *---------------------------------------------------------------------------*/ -// for USB/H1 we needed a smaller value than the CFG_DL_BUF_STRCT reported 8192 -// for the time being it seems simpler to always use 2000 for USB/H1 as well as all other cases rather than -// using the "fixed anyway" CFG_DL_BUF_STRCT. +/* for USB/H1 we needed a smaller value than the CFG_DL_BUF_STRCT reported 8192 + for the time being it seems simpler to always use 2000 for USB/H1 as well as all other cases rather than + using the "fixed anyway" CFG_DL_BUF_STRCT. */ #define DL_SIZE 2000 -//CFG_IDENTITY_STRCT pri_identity = { LOF(CFG_IDENTITY_STRCT), CFG_PRI_IDENTITY }; +/* CFG_IDENTITY_STRCT pri_identity = { LOF(CFG_IDENTITY_STRCT), CFG_PRI_IDENTITY }; */ CFG_SUP_RANGE_STRCT mfi_sup = { LOF(CFG_SUP_RANGE_STRCT), CFG_NIC_MFI_SUP_RANGE }; CFG_SUP_RANGE_STRCT cfi_sup = { LOF(CFG_SUP_RANGE_STRCT), CFG_NIC_CFI_SUP_RANGE }; /* Note: could be used rather than the above explained and defined DL_SIZE if need arises @@ -164,7 +150,7 @@ LTV_INFO_STRUCT ltv_info[] = { /***********************************************************************************************************/ /*************************************** PROTOTYPES ******************************************************/ /***********************************************************************************************************/ -static int check_comp_fw( memimage *fw ); +static int check_comp_fw(memimage *fw); /************************************************************************************************************ @@ -185,18 +171,18 @@ static int check_comp_fw( memimage *fw ); *.ENDDOC END DOCUMENTATION *************************************************************************************************************/ int -check_comp_fw( memimage *fw ) +check_comp_fw(memimage *fw) { CFG_RANGE20_STRCT *p; int rc = HCF_SUCCESS; -CFG_RANGE_SPEC_STRCT* i; +CFG_RANGE_SPEC_STRCT *i; - switch( fw->identity->typ ) { - case CFG_FW_IDENTITY: //Station F/W - case COMP_ID_FW_AP_FAKE: //;?is this useful (used to be: CFG_AP_IDENTITY) + switch (fw->identity->typ) { + case CFG_FW_IDENTITY: /* Station F/W */ + case COMP_ID_FW_AP_FAKE: /* ;?is this useful (used to be: CFG_AP_IDENTITY) */ break; - default: - MMDASSERT( DO_ASSERT, fw->identity->typ ) //unknown/unsupported firmware_type: + default: + MMDASSERT(DO_ASSERT, fw->identity->typ) /* unknown/unsupported firmware_type: */ rc = DHF_ERR_INCOMP_FW; return rc; /* ;? how useful is this anyway, * till that is sorted out might as well violate my own single exit principle @@ -204,29 +190,29 @@ CFG_RANGE_SPEC_STRCT* i; } p = fw->compat; i = NULL; - while( p->len && i == NULL ) { // check the MFI ranges - if ( p->typ == CFG_MFI_ACT_RANGES_STA ) { - i = mmd_check_comp( (void*)p, &mfi_sup ); + while (p->len && i == NULL) { /* check the MFI ranges */ + if (p->typ == CFG_MFI_ACT_RANGES_STA) { + i = mmd_check_comp((void *)p, &mfi_sup); } p++; } - MMDASSERT( i, 0 ) //MFI: NIC Supplier not compatible with F/W image Actor - if ( i ) { + MMDASSERT(i, 0) /* MFI: NIC Supplier not compatible with F/W image Actor */ + if (i) { p = fw->compat; i = NULL; - while ( p->len && i == NULL ) { // check the CFI ranges - if ( p->typ == CFG_CFI_ACT_RANGES_STA ) { - i = mmd_check_comp( (void*)p, &cfi_sup ); + while (p->len && i == NULL) { /* check the CFI ranges */ + if (p->typ == CFG_CFI_ACT_RANGES_STA) { + i = mmd_check_comp((void *)p, &cfi_sup); } p++; } - MMDASSERT( i, 0 ) //CFI: NIC Supplier not compatible with F/W image Actor + MMDASSERT(i, 0) /* CFI: NIC Supplier not compatible with F/W image Actor */ } - if ( i == NULL ) { + if (i == NULL) { rc = DHF_ERR_INCOMP_FW; } return rc; -} // check_comp_fw +} /* check_comp_fw */ @@ -271,31 +257,34 @@ CFG_RANGE_SPEC_STRCT* i; *.ENDDOC END DOCUMENTATION *************************************************************************************************************/ int -dhf_download_binary( memimage *fw ) +dhf_download_binary(memimage *fw) { int rc = HCF_SUCCESS; CFG_PROG_STRCT *p; int i; - //validate the image - for ( i = 0; i < sizeof(signature) && fw->signature[i] == signature[i]; i++ ) /*NOP*/; - if ( i != sizeof(signature) || + /* validate the image */ + for (i = 0; i < sizeof(signature) && fw->signature[i] == signature[i]; i++) + ; /* NOP */ + if (i != sizeof(signature) || fw->signature[i] != 0x01 || - //test for Little/Big Endian Binary flag - fw->signature[i+1] != ( /*HCF_BIG_ENDIAN ? 'B' : */ 'L' ) ) rc = DHF_ERR_INCOMP_FW; - else { //Little Endian Binary format - fw->codep = (CFG_PROG_STRCT FAR *)((PSEUDO_CHARP)fw->codep + (hcf_32)fw ); - fw->identity = (CFG_IDENTITY_STRCT FAR *)((PSEUDO_CHARP)fw->identity + (hcf_32)fw ); - fw->compat = (CFG_RANGE20_STRCT FAR *)((PSEUDO_CHARP)fw->compat + (hcf_32)fw ); - for ( i = 0; fw->p[i]; i++ ) fw->p[i] = ((PSEUDO_CHARP)fw->p[i] + (hcf_32)fw ); + /* test for Little/Big Endian Binary flag */ + fw->signature[i+1] != (/* HCF_BIG_ENDIAN ? 'B' : */ 'L')) + rc = DHF_ERR_INCOMP_FW; + else { /* Little Endian Binary format */ + fw->codep = (CFG_PROG_STRCT FAR*)((char *)fw->codep + (hcf_32)fw); + fw->identity = (CFG_IDENTITY_STRCT FAR*)((char *)fw->identity + (hcf_32)fw); + fw->compat = (CFG_RANGE20_STRCT FAR*)((char *)fw->compat + (hcf_32)fw); + for (i = 0; fw->p[i]; i++) + fw->p[i] = ((char *)fw->p[i] + (hcf_32)fw); p = fw->codep; - while ( p->len ) { - p->host_addr = (PSEUDO_CHARP)p->host_addr + (hcf_32)fw; + while (p->len) { + p->host_addr = (char *)p->host_addr + (hcf_32)fw; p++; } } return rc; -} // dhf_download_binary +} /* dhf_download_binary */ /************************************************************************************************************* @@ -351,7 +340,7 @@ int i; *.ENDDOC END DOCUMENTATION *************************************************************************************************************/ int -dhf_download_fw( void *ifbp, memimage *fw ) +dhf_download_fw(void *ifbp, memimage *fw) { int rc = HCF_SUCCESS; LTV_INFO_STRUCT_PTR pp = ltv_info; @@ -359,32 +348,34 @@ CFG_PROG_STRCT *p = fw->codep; LTVP ltvp; int i; - MMDASSERT( fw != NULL, 0 ) - //validate the image - for ( i = 0; i < sizeof(signature) && fw->signature[i] == signature[i]; i++ ) /*NOP*/; - if ( i != sizeof(signature) || + MMDASSERT(fw != NULL, 0) + /* validate the image */ + for (i = 0; i < sizeof(signature) && fw->signature[i] == signature[i]; i++) + ; /* NOP */ + if (i != sizeof(signature) || fw->signature[i] != 0x01 || - //check for binary image - ( fw->signature[i+1] != 'C' && fw->signature[i+1] != ( /*HCF_BIG_ENDIAN ? 'B' : */ 'L' ) ) ) + /* check for binary image */ + (fw->signature[i+1] != 'C' && fw->signature[i+1] != (/*HCF_BIG_ENDIAN ? 'B' : */ 'L'))) rc = DHF_ERR_INCOMP_FW; -// Retrieve all information needed for download from the NIC - while ( ( rc == HCF_SUCCESS ) && ( ( ltvp = pp->ltvp) != NULL ) ) { - ltvp->len = pp++->len; // Set len to original len. This len is changed to real len by GET_INFO() - rc = GET_INFO( ltvp ); - MMDASSERT( rc == HCF_SUCCESS, rc ) - MMDASSERT( rc == HCF_SUCCESS, ltvp->typ ) - MMDASSERT( rc == HCF_SUCCESS, ltvp->len ) +/* Retrieve all information needed for download from the NIC */ + while ((rc == HCF_SUCCESS) && ((ltvp = pp->ltvp) != NULL)) { + ltvp->len = pp++->len; /* Set len to original len. This len is changed to real len by GET_INFO() */ + rc = GET_INFO(ltvp); + MMDASSERT(rc == HCF_SUCCESS, rc) + MMDASSERT(rc == HCF_SUCCESS, ltvp->typ) + MMDASSERT(rc == HCF_SUCCESS, ltvp->len) } - if ( rc == HCF_SUCCESS ) rc = check_comp_fw( fw ); - if ( rc == HCF_SUCCESS ) { - while ( rc == HCF_SUCCESS && p->len ) { - rc = PUT_INFO( p ); + if (rc == HCF_SUCCESS) + rc = check_comp_fw(fw); + if (rc == HCF_SUCCESS) { + while (rc == HCF_SUCCESS && p->len) { + rc = PUT_INFO(p); p++; } } - MMDASSERT( rc == HCF_SUCCESS, rc ) + MMDASSERT(rc == HCF_SUCCESS, rc) return rc; -} // dhf_download_fw +} /* dhf_download_fw */ diff --git a/drivers/staging/wlags49_h2/dhf.h b/drivers/staging/wlags49_h2/dhf.h index c071f342a655..dbe0611fd032 100644 --- a/drivers/staging/wlags49_h2/dhf.h +++ b/drivers/staging/wlags49_h2/dhf.h @@ -1,5 +1,5 @@ -// vim:tw=110:ts=4: +/* vim:tw=110:ts=4: */ #ifndef DHF_H #define DHF_H @@ -38,9 +38,9 @@ * software indicates your acceptance of these terms and conditions. If you do * not agree with these terms and conditions, do not use the software. * -* COPYRIGHT © 1994 - 1995 by AT&T. All Rights Reserved -* COPYRIGHT © 1999 - 2000 by Lucent Technologies. All Rights Reserved -* COPYRIGHT © 2001 - 2004 by Agere Systems Inc. All Rights Reserved +* COPYRIGHT (C) 1994 - 1995 by AT&T. All Rights Reserved +* COPYRIGHT (C) 1999 - 2000 by Lucent Technologies. All Rights Reserved +* COPYRIGHT (C) 2001 - 2004 by Agere Systems Inc. All Rights Reserved * All rights reserved. * * Redistribution and use in source or binary forms, with or without @@ -82,27 +82,27 @@ #include <windef.h> #endif -#include "hcf.h" // includes HCFCFG.H too +#include "hcf.h" /* includes HCFCFG.H too */ #ifdef DHF_UIL -#define GET_INFO( pp ) uil_get_info( (LTVP)pp ) -#define PUT_INFO( pp ) uil_put_info( (LTVP)pp ) +#define GET_INFO(pp) uil_get_info((LTVP)pp) +#define PUT_INFO(pp) uil_put_info((LTVP)pp) #else -#define GET_INFO( pp ) hcf_get_info( ifbp, (LTVP)pp ) -#define PUT_INFO( pp ) hcf_put_info( ifbp, (LTVP)pp ) +#define GET_INFO(pp) hcf_get_info(ifbp, (LTVP)pp) +#define PUT_INFO(pp) hcf_put_info(ifbp, (LTVP)pp) #endif /*---- Defines --------------------------------------------------------------*/ -#define CODEMASK 0x0000FFFFL // Codemask for plug records +#define CODEMASK 0x0000FFFFL /* Codemask for plug records */ /*---- Error numbers --------------------------------------------------------*/ -#define DHF_ERR_INCOMP_FW 0x40 //Image not compatible with NIC +#define DHF_ERR_INCOMP_FW 0x40 /* Image not compatible with NIC */ /*---- Type definitions -----------------------------------------------------*/ -//* needed by dhf_wrap.c -// +/* needed by dhf_wrap.c */ + typedef struct { LTVP ltvp; hcf_16 len; @@ -119,9 +119,9 @@ typedef struct { */ typedef struct { - hcf_32 code; // Code to plug - hcf_32 addr; // Address within the memory image to plug it in - hcf_32 len; // The # of bytes which are available to store it + hcf_32 code; /* Code to plug */ + hcf_32 addr; /* Address within the memory image to plug it in */ + hcf_32 len; /* The # of bytes which are available to store it */ } plugrecord; /* @@ -159,7 +159,7 @@ typedef struct { char str[MAX_DEBUGEXPORT_LEN]; } exportrecord; -// Offsets in memimage array p[] +/* Offsets in memimage array p[] */ #define FWSTRINGS_FUNCTION 0 #define FWEXPORTS_FUNCTION 1 @@ -188,13 +188,13 @@ typedef struct { * The end of the array is indicated by a plug record of which all fields are zero. */ typedef struct { - char signature[14+1+1]; // signature (see DHF.C) + C/LE-Bin/BE-Bin-flag + format version - CFG_PROG_STRCT FAR *codep; // - hcf_32 execution; // Execution address of the firmware - void FAR *place_holder_1; + char signature[14+1+1]; /* signature (see DHF.C) + C/LE-Bin/BE-Bin-flag + format version */ + CFG_PROG_STRCT FAR *codep; /* */ + hcf_32 execution; /* Execution address of the firmware */ + void FAR *place_holder_1; void FAR *place_holder_2; - CFG_RANGE20_STRCT FAR *compat; // Pointer to the compatibility info records - CFG_IDENTITY_STRCT FAR *identity; // Pointer to the identity info records + CFG_RANGE20_STRCT FAR *compat; /* Pointer to the compatibility info records */ + CFG_IDENTITY_STRCT FAR *identity; /* Pointer to the identity info records */ void FAR *p[2]; /* (Up to 9) pointers for (future) expansion * currently in use: * - F/W printf information @@ -209,8 +209,8 @@ typedef struct { * *---------------------------------------------------------------------------*/ -EXTERN_C int dhf_download_fw( void *ifbp, memimage *fw ); // ifbp, ignored when using the UIL -EXTERN_C int dhf_download_binary( memimage *fw ); +EXTERN_C int dhf_download_fw(void *ifbp, memimage *fw); /* ifbp, ignored when using the UIL */ +EXTERN_C int dhf_download_binary(memimage *fw); /*----------------------------------------------------------------------------- @@ -219,8 +219,8 @@ EXTERN_C int dhf_download_binary( memimage *fw ); * *---------------------------------------------------------------------------*/ -// defined in DHF.C; see there for comments -EXTERN_C hcf_16 *find_record_in_pda( hcf_16 *pdap, hcf_16 code ); +/* defined in DHF.C; see there for comments */ +EXTERN_C hcf_16 *find_record_in_pda(hcf_16 *pdap, hcf_16 code); -#endif // DHF_H +#endif /* DHF_H */ diff --git a/drivers/staging/wlags49_h2/dhfcfg.h b/drivers/staging/wlags49_h2/dhfcfg.h index a0c26c678c59..75c279f268ae 100644 --- a/drivers/staging/wlags49_h2/dhfcfg.h +++ b/drivers/staging/wlags49_h2/dhfcfg.h @@ -22,7 +22,7 @@ * software indicates your acceptance of these terms and conditions. If you do * not agree with these terms and conditions, do not use the software. * - * Copyright © 2003 Agere Systems Inc. + * Copyright (c) 2003 Agere Systems Inc. * All rights reserved. * * Redistribution and use in source or binary forms, with or without @@ -77,82 +77,82 @@ *---------------------------------------------------------------------------*/ -// Define DHF_WCI if you want to use the WCI to access the ORiNOCO card. -// Define DHF_UIL if you want to use the UIL to access the ORiNOCO card. -// You must define either DHF_WCI or DHF_UIL. If neither of the two is defined -// or both a compile error is generated. +/* Define DHF_WCI if you want to use the WCI to access the ORiNOCO card. + Define DHF_UIL if you want to use the UIL to access the ORiNOCO card. + You must define either DHF_WCI or DHF_UIL. If neither of the two is defined + or both a compile error is generated. */ #define DHF_WCI -//!!!#define DHF_UIL +/* !!!#define DHF_UIL */ -// Define DHF_BIG_ENDIAN if you are working on a big endian platform. -// Define DHF_LITTLE_ENDIAN if you are working on a little endian platform. -// You must define either DHF_BIG_ENDIAN or DHF_LITTLE_ENDIAN. If neither of -// the two is defined or both a compile error is generated. +/* Define DHF_BIG_ENDIAN if you are working on a big endian platform. + Define DHF_LITTLE_ENDIAN if you are working on a little endian platform. + You must define either DHF_BIG_ENDIAN or DHF_LITTLE_ENDIAN. If neither of + the two is defined or both a compile error is generated. */ #ifdef USE_BIG_ENDIAN #define DHF_BIG_ENDIAN #else #define DHF_LITTLE_ENDIAN #endif /* USE_BIG_ENDIAN */ -// Define DHF_WIN if you are working on Windows platform. -// Define DHF_DOS if you are working on DOS. -// You must define either DHF_WIN or DHF_DOS. If neither of -// the two is defined or both a compile error is generated. -//!!!#define DHF_WIN -//!!!#define DHF_DOS +/* Define DHF_WIN if you are working on Windows platform. + Define DHF_DOS if you are working on DOS. + You must define either DHF_WIN or DHF_DOS. If neither of + the two is defined or both a compile error is generated. + !!!#define DHF_WIN + !!!#define DHF_DOS */ -// Define if you want the DHF to users. Not defining DHF_GET_RES_MSG -// leads to a decrease in code size as message strings are not included. -//!!!#define DHF_GET_RES_MSG +/* Define if you want the DHF to users. Not defining DHF_GET_RES_MSG + leads to a decrease in code size as message strings are not included. + !!!#define DHF_GET_RES_MSG */ -// Linux driver specific -// Prevent inclusion of stdlib.h and string.h +/* Linux driver specific + Prevent inclusion of stdlib.h and string.h */ #define _INC_STDLIB #define _INC_STRING -//----------------------------------------------------------------------------- -// Define one or more of the following DSF #defines if you want to implement -// the related DSF-function. Function dsf_callback must allways be implemented. -// See file DHF.H for prototypes of the functions. - -// Define DSF_ALLOC if you want to manage memory allocation and de-allocation -// for the DHF. If DSF_ALLOC is defined you must implement dsf_alloc and dsf_free. -//!!!#define DSF_ALLOC - -// Define DSF_CONFIRM if you want the DHF to ask the user for confirmation in a -// number of situations. If DSF_CONFIRM is defined you must implement dsf_confirm. -// Not defining DSF_CONFIRM leads to a decrease in code size as confirmation -// strings are not included. -//!!!#define DSF_CONFIRM - -// Define DSF_DEBUG_MESSAGE if you want debug messages added to your output. -// If you define DSF_DEBUG_MESSAGE then you must implement function -// dsf_debug_message. -//#define DSF_DEBUG_MESSAGE - -// Define DSF_ASSERT if you want asserts to be activated. -// If you define DSF_ASSERT then you must implement function dsf_assert. -//#define DBG 1 -//#define DSF_ASSERT - -// Define DSF_DBWIN if you want asserts and debug messages to be send to a debug -// window like SOFTICE or DebugView from SysInternals. -//!!!#define DSF_DBWIN -//!!! Not implemented yet! - -// Define DSF_VOLATILE_ONLY if you only wants to use valatile functions -// This is a typical setting for a AP and a driver. +/*----------------------------------------------------------------------------- + Define one or more of the following DSF #defines if you want to implement + the related DSF-function. Function dsf_callback must allways be implemented. + See file DHF.H for prototypes of the functions. */ + +/* Define DSF_ALLOC if you want to manage memory allocation and de-allocation + for the DHF. If DSF_ALLOC is defined you must implement dsf_alloc and dsf_free. + !!!#define DSF_ALLOC */ + +/* Define DSF_CONFIRM if you want the DHF to ask the user for confirmation in a + number of situations. If DSF_CONFIRM is defined you must implement dsf_confirm. + Not defining DSF_CONFIRM leads to a decrease in code size as confirmation + strings are not included. + !!!#define DSF_CONFIRM */ + +/* Define DSF_DEBUG_MESSAGE if you want debug messages added to your output. + If you define DSF_DEBUG_MESSAGE then you must implement function + dsf_debug_message. + #define DSF_DEBUG_MESSAGE */ + +/* Define DSF_ASSERT if you want asserts to be activated. + If you define DSF_ASSERT then you must implement function dsf_assert. + #define DBG 1 + #define DSF_ASSERT */ + +/* Define DSF_DBWIN if you want asserts and debug messages to be send to a debug + window like SOFTICE or DebugView from SysInternals. + !!!#define DSF_DBWIN + !!! Not implemented yet! */ + +/* Define DSF_VOLATILE_ONLY if you only wants to use valatile functions + This is a typical setting for a AP and a driver. */ #define DSF_VOLATILE_ONLY -// Define DSF_HERMESII if you want to use the DHF for the Hermes-II +/* Define DSF_HERMESII if you want to use the DHF for the Hermes-II */ #ifdef HERMES2 #define DSF_HERMESII #else #undef DSF_HERMESII -#endif // HERMES2 +#endif /* HERMES2 */ -// Define DSF_BINARY_FILE if you want to use the DHF in combination with -// reading the Firmware from a separate binary file. -//!!!#define DSF_BINARY_FILE +/* Define DSF_BINARY_FILE if you want to use the DHF in combination with + reading the Firmware from a separate binary file. + !!!#define DSF_BINARY_FILE */ -#endif // DHFCFG_H +#endif /* DHFCFG_H */ diff --git a/drivers/staging/wlags49_h2/hcf.c b/drivers/staging/wlags49_h2/hcf.c index 6e39f5081e27..390628c6c1eb 100644 --- a/drivers/staging/wlags49_h2/hcf.c +++ b/drivers/staging/wlags49_h2/hcf.c @@ -990,7 +990,8 @@ int rc = HCF_ERR_INCOMP_FW; ifbp->IFB_CntlOpt |= DMA_ENABLED; HCFASSERT( NT_ASSERT, NEVER_TESTED ) // make the entire rx descriptor chain DMA-owned, so the DMA engine can (re-)use it. - if ( ( p = ifbp->IFB_FirstDesc[DMA_RX] ) != NULL ) { //;? Think this over again in the light of the new chaining strategy + p = ifbp->IFB_FirstDesc[DMA_RX]; + if (p != NULL) { //;? Think this over again in the light of the new chaining strategy if ( 1 ) { //begin alternative HCFASSERT( NT_ASSERT, NEVER_TESTED ) put_frame_lst( ifbp, ifbp->IFB_FirstDesc[DMA_RX], DMA_RX ); @@ -2087,7 +2088,8 @@ wci_bufp pt; //pointer with the "right" type, just to help ease writing macr OPW( HREG_AUX_OFFSET, (hcf_16)(PLUG_DATA_OFFSET & 0x7E) ); io_port = ifbp->IFB_IOBase + HREG_AUX_DATA; //to prevent side effects of the MSF-defined macro p = ltvp->val; //destination char pointer (in LTV record) - if ( ( i = len - 1 ) > 0 ) { + i = len - 1; + if (i > 0 ) { pt = (wci_bufp)p; //just to help ease writing macros with embedded assembly IN_PORT_STRING_8_16( io_port, pt, i ); //space used by T: -1 } @@ -2674,7 +2676,8 @@ hcf_16 fid = 0; #if (HCF_EXT) & HCF_EXT_TX_CONT // Continuous transmit test if ( tx_cntl == HFS_TX_CNTL_TX_CONT ) { - if ( ( fid = get_fid( ifbp ) ) != 0 ) { + fid = get_fid(ifbp); + if (fid != 0 ) { //setup BAP to begin of TxFS (void)setup_bap( ifbp, fid, 0, IO_OUT ); //copy all the fragments in a transparent fashion @@ -2700,7 +2703,8 @@ hcf_16 fid = 0; #if (HCF_TYPE) & HCF_TYPE_WPA tx_cntl |= ifbp->IFB_MICTxCntl; #endif // HCF_TYPE_WPA - if ( (fid = ifbp->IFB_TxFID) == 0 && ( fid = get_fid( ifbp ) ) != 0 ) /* 4 */ + fid = ifbp->IFB_TxFID; + if (fid == 0 && ( fid = get_fid( ifbp ) ) != 0 ) /* 4 */ /* skip the next compound statement if: - pre-put message or - no fid available (which should never occur if the MSF adheres to the WCI) @@ -4860,7 +4864,8 @@ PROT_CNT_INI int rc; HCFTRACE( ifbp, HCF_TRACE_STRIO ); - if ( ( rc = ifbp->IFB_DefunctStat ) == HCF_SUCCESS ) { /*2*/ + rc = ifbp->IFB_DefunctStat; + if (rc == HCF_SUCCESS) { /*2*/ OPW( HREG_SELECT_1, fid ); /*4*/ OPW( HREG_OFFSET_1, offset ); if ( type == IO_IN ) { diff --git a/drivers/staging/wlags49_h2/wl_cs.c b/drivers/staging/wlags49_h2/wl_cs.c index c9d99d88b786..10abd406b09b 100644 --- a/drivers/staging/wlags49_h2/wl_cs.c +++ b/drivers/staging/wlags49_h2/wl_cs.c @@ -105,13 +105,6 @@ /******************************************************************************* - * macro definitions - ******************************************************************************/ -#define CS_CHECK(fn, ret) do { \ - last_fn = (fn); if ((last_ret = (ret)) != 0) goto cs_failed; \ - } while (0) - -/******************************************************************************* * global definitions ******************************************************************************/ #if DBG @@ -302,7 +295,7 @@ void wl_adapter_insert( struct pcmcia_device *link ) { struct net_device *dev; int i; - int last_fn, last_ret; + int ret; /*------------------------------------------------------------------------*/ DBG_FUNC( "wl_adapter_insert" ); @@ -314,21 +307,27 @@ void wl_adapter_insert( struct pcmcia_device *link ) /* Do we need to allocate an interrupt? */ link->conf.Attributes |= CONF_ENABLE_IRQ; - CS_CHECK(RequestIO, pcmcia_request_io(link, &link->io)); - CS_CHECK(RequestIRQ, pcmcia_request_irq(link, wl_isr)); - CS_CHECK(RequestConfiguration, pcmcia_request_configuration(link, &link->conf)); + ret = pcmcia_request_io(link, &link->io); + if (ret != 0) + goto failed; + + ret = pcmcia_request_irq(link, (void *) wl_isr); + if (ret != 0) + goto failed; + ret = pcmcia_request_configuration(link, &link->conf); + if (ret != 0) + goto failed; dev->irq = link->irq; dev->base_addr = link->io.BasePort1; - SET_NETDEV_DEV(dev, &handle_to_dev(link)); + SET_NETDEV_DEV(dev, &link->dev); if (register_netdev(dev) != 0) { printk("%s: register_netdev() failed\n", MODULE_NAME); goto failed; } - link->dev_node = &( wl_priv(dev) )->node; - strcpy(( wl_priv(dev) )->node.dev_name, dev->name); + register_wlags_sysfs(dev); printk(KERN_INFO "%s: Wireless, io_addr %#03lx, irq %d, ""mac_address ", @@ -340,11 +339,6 @@ void wl_adapter_insert( struct pcmcia_device *link ) DBG_LEAVE( DbgInfo ); return; - -cs_failed: - cs_error( link, last_fn, last_ret ); - - failed: wl_adapter_release( link ); diff --git a/drivers/staging/wlags49_h2/wl_cs.h b/drivers/staging/wlags49_h2/wl_cs.h index 2a0e67450fbe..a9b8828a1a27 100644 --- a/drivers/staging/wlags49_h2/wl_cs.h +++ b/drivers/staging/wlags49_h2/wl_cs.h @@ -84,10 +84,6 @@ int wl_adapter_close(struct net_device *dev); int wl_adapter_is_open(struct net_device *dev); -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) -void cs_error(client_handle_t handle, int func, int ret); -#endif - const char *DbgEvent( int mask ); diff --git a/drivers/staging/wlags49_h2/wl_internal.h b/drivers/staging/wlags49_h2/wl_internal.h index 466fb6215acd..d9a0ad039c19 100644 --- a/drivers/staging/wlags49_h2/wl_internal.h +++ b/drivers/staging/wlags49_h2/wl_internal.h @@ -69,9 +69,6 @@ ******************************************************************************/ #include <linux/version.h> #ifdef BUS_PCMCIA -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) -#include <pcmcia/version.h> -#endif #include <pcmcia/cs_types.h> #include <pcmcia/cs.h> #include <pcmcia/cistpl.h> @@ -866,7 +863,6 @@ struct wl_private { #ifdef BUS_PCMCIA - dev_node_t node; struct pcmcia_device *link; #endif // BUS_PCMCIA @@ -1013,13 +1009,13 @@ extern inline struct wl_private *wl_priv(struct net_device *dev) * SPARC, due to its weird semantics for save/restore flags. extern * inline should prevent the kernel from linking or module from * loading if they are not inlined. */ -extern inline void wl_lock(struct wl_private *lp, +static inline void wl_lock(struct wl_private *lp, unsigned long *flags) { spin_lock_irqsave(&lp->slock, *flags); } -extern inline void wl_unlock(struct wl_private *lp, +static inline void wl_unlock(struct wl_private *lp, unsigned long *flags) { spin_unlock_irqrestore(&lp->slock, *flags); diff --git a/drivers/staging/wlags49_h2/wl_main.c b/drivers/staging/wlags49_h2/wl_main.c index cf0c38468b20..88d0d472142f 100644 --- a/drivers/staging/wlags49_h2/wl_main.c +++ b/drivers/staging/wlags49_h2/wl_main.c @@ -3591,7 +3591,8 @@ int scull_read_procmem(char *buf, char **start, off_t offset, int len, int *eof, len=0; - if ( ( lp = ((struct net_device *)data)->priv ) == NULL ) { + lp = ((struct net_device *)data)->priv; + if (lp == NULL) { len += sprintf(buf+len,"No wl_private in scull_read_procmem\n" ); } else if ( lp->wlags49_type == 0 ){ ifbp = &lp->hcfCtx; diff --git a/drivers/staging/wlags49_h2/wl_netdev.c b/drivers/staging/wlags49_h2/wl_netdev.c index ca8c8b134c4e..1aa61dbdb79f 100644 --- a/drivers/staging/wlags49_h2/wl_netdev.c +++ b/drivers/staging/wlags49_h2/wl_netdev.c @@ -463,15 +463,10 @@ static void wl_get_drvinfo(struct net_device *dev, struct ethtool_drvinfo *info) // strncpy(info.fw_version, priv->fw_name, // sizeof(info.fw_version) - 1); -#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,20)) if (dev->dev.parent) { dev_set_name(dev->dev.parent, "%s", info->bus_info); //strncpy(info->bus_info, dev->dev.parent->bus_id, // sizeof(info->bus_info) - 1); -#else - if (dev->class_dev.parent) { - sizeof(info->bus_info) - 1); -#endif } else { snprintf(info->bus_info, sizeof(info->bus_info) - 1, "PCMCIA FIXME"); @@ -930,8 +925,10 @@ int wl_rx(struct net_device *dev) port = ( hfs_stat >> 8 ) & 0x0007; DBG_RX( DbgInfo, "Rx frame for port %d\n", port ); - if(( pktlen = lp->hcfCtx.IFB_RxLen ) != 0 ) { - if(( skb = ALLOC_SKB( pktlen )) != NULL ) { + pktlen = lp->hcfCtx.IFB_RxLen; + if (pktlen != 0) { + skb = ALLOC_SKB(pktlen); + if (skb != NULL) { /* Set the netdev based on the port */ switch( port ) { #ifdef USE_WDS @@ -1177,7 +1174,6 @@ void wl_multicast( struct net_device *dev, int num_addrs, void *addrs ) #endif /* NEW_MULTICAST */ -#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,30)) static const struct net_device_ops wl_netdev_ops = { .ndo_start_xmit = &wl_tx_port0, @@ -1197,7 +1193,6 @@ static const struct net_device_ops wl_netdev_ops = .ndo_poll_controller = wl_poll, #endif }; -#endif // (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,30)) /******************************************************************************* * wl_device_alloc() @@ -1251,27 +1246,7 @@ struct net_device * wl_device_alloc( void ) lp->wireless_data.spy_data = &lp->spy_data; dev->wireless_data = &lp->wireless_data; -#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,30)) dev->netdev_ops = &wl_netdev_ops; -#else - dev->hard_start_xmit = &wl_tx_port0; - - dev->set_config = &wl_config; - dev->get_stats = &wl_stats; - dev->set_multicast_list = &wl_multicast; - - dev->init = &wl_insert; - dev->open = &wl_adapter_open; - dev->stop = &wl_adapter_close; - dev->do_ioctl = &wl_ioctl; - - dev->tx_timeout = &wl_tx_timeout; - -#ifdef CONFIG_NET_POLL_CONTROLLER - dev->poll_controller = wl_poll; -#endif - -#endif // (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,30)) dev->watchdog_timeo = TX_TIMEOUT; @@ -1995,8 +1970,10 @@ int wl_rx_dma( struct net_device *dev ) port = ( hfs_stat >> 8 ) & 0x0007; DBG_RX( DbgInfo, "Rx frame for port %d\n", port ); - if(( pktlen = GET_BUF_CNT( desc_next )) != 0 ) { - if(( skb = ALLOC_SKB( pktlen )) != NULL ) { + pktlen = GET_BUF_CNT(desc_next); + if (pktlen != 0) { + skb = ALLOC_SKB(pktlen); + if (skb != NULL) { switch( port ) { #ifdef USE_WDS case 1: diff --git a/drivers/staging/wlags49_h2/wl_priv.c b/drivers/staging/wlags49_h2/wl_priv.c index 727ea8a483af..260d4f0d47b4 100644 --- a/drivers/staging/wlags49_h2/wl_priv.c +++ b/drivers/staging/wlags49_h2/wl_priv.c @@ -503,7 +503,8 @@ int wvlan_uil_send_diag_msg( struct uilreq *urq, struct wl_private *lp ) return result; } - if ((data = kmalloc(urq->len, GFP_KERNEL)) != NULL) { + data = kmalloc(urq->len, GFP_KERNEL); + if (data != NULL) { memset( Descp, 0, sizeof( DESC_STRCT )); memcpy( data, urq->data, urq->len ); @@ -617,7 +618,8 @@ int wvlan_uil_put_info( struct uilreq *urq, struct wl_private *lp ) LTV record, try to allocate it from the kernel stack. Otherwise, we just use our local LTV record. */ if( urq->len > sizeof( lp->ltvRecord )) { - if(( pLtv = (ltv_t *)kmalloc( urq->len, GFP_KERNEL )) != NULL ) { + pLtv = kmalloc(urq->len, GFP_KERNEL); + if (pLtv != NULL) { ltvAllocated = TRUE; } else { DBG_ERROR( DbgInfo, "Alloc FAILED\n" ); @@ -652,7 +654,7 @@ int wvlan_uil_put_info( struct uilreq *urq, struct wl_private *lp ) pLtv->u.u16[0] = CNV_INT_TO_LITTLE( pLtv->u.u16[0] ); break; /* CFG_CNF_OWN_SSID currently same as CNF_DESIRED_SSID. Do we - need seperate storage for this? */ + need separate storage for this? */ //case CFG_CNF_OWN_SSID: case CFG_CNF_OWN_ATIM_WINDOW: lp->atimWindow = pLtv->u.u16[0]; @@ -1296,7 +1298,8 @@ int wvlan_uil_get_info( struct uilreq *urq, struct wl_private *lp ) LTV record, try to allocate it from the kernel stack. Otherwise, we just use our local LTV record. */ if( urq->len > sizeof( lp->ltvRecord )) { - if(( pLtv = (ltv_t *)kmalloc( urq->len, GFP_KERNEL )) != NULL ) { + pLtv = kmalloc(urq->len, GFP_KERNEL); + if (pLtv != NULL) { ltvAllocated = TRUE; /* Copy the command/length information into the new buffer. */ diff --git a/drivers/staging/wlags49_h2/wl_profile.c b/drivers/staging/wlags49_h2/wl_profile.c index 1e0c75f28557..292d5792dd75 100644 --- a/drivers/staging/wlags49_h2/wl_profile.c +++ b/drivers/staging/wlags49_h2/wl_profile.c @@ -91,7 +91,7 @@ #include <debug.h> #include <hcf.h> -//#include <hcfdef.h> +/* #include <hcfdef.h> */ #include <wl_if.h> #include <wl_internal.h> @@ -113,20 +113,22 @@ extern p_u32 DebugFlag; extern dbg_info_t *DbgInfo; #endif -int parse_yes_no( char* value ); +int parse_yes_no(char *value); -int parse_yes_no( char* value ) { -int rc = 0; //default to NO for invalid parameters +int parse_yes_no(char *value) +{ +int rc = 0; /* default to NO for invalid parameters */ - if ( strlen( value ) == 1 ) { - if ( ( value[0] | ('Y'^'y') ) == 'y' ) rc = 1; -// } else { -// this should not be debug time info, it is an enduser data entry error ;? -// DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_MICROWAVE_ROBUSTNESS ); + if (strlen(value) == 1) { + if ((value[0] | ('Y'^'y')) == 'y') + rc = 1; + /* } else { */ + /* this should not be debug time info, it is an enduser data entry error ;? */ + /* DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_MICROWAVE_ROBUSTNESS); */ } return rc; -} // parse_yes_no +} /* parse_yes_no */ /******************************************************************************* @@ -149,13 +151,13 @@ int rc = 0; //default to NO for invalid parameters * N/A * ******************************************************************************/ -void parse_config( struct net_device *dev ) +void parse_config(struct net_device *dev) { int file_desc; -#if 0 // BIN_DL - int rc; +#if 0 /* BIN_DL */ + int rc; char *cp = NULL; -#endif // BIN_DL +#endif /* BIN_DL */ char buffer[MAX_LINE_SIZE]; char filename[MAX_LINE_SIZE]; mm_segment_t fs; @@ -163,48 +165,47 @@ void parse_config( struct net_device *dev ) ENCSTRCT sEncryption; /*------------------------------------------------------------------------*/ - DBG_FUNC( "parse_config" ); - DBG_ENTER( DbgInfo ); + DBG_FUNC("parse_config"); + DBG_ENTER(DbgInfo); /* Get the wavelan specific info for this device */ wvlan_config = (struct wl_private *)dev->priv; - if ( wvlan_config == NULL ) { - DBG_ERROR( DbgInfo, "Wavelan specific info struct not present?\n" ); + if (wvlan_config == NULL) { + DBG_ERROR(DbgInfo, "Wavelan specific info struct not present?\n"); return; } /* setup the default encryption string */ - strcpy( wvlan_config->szEncryption, DEF_CRYPT_STR ); + strcpy(wvlan_config->szEncryption, DEF_CRYPT_STR); /* Obtain a user-space process context, storing the original context */ - fs = get_fs( ); - set_fs( get_ds( )); + fs = get_fs(); + set_fs(get_ds()); /* Determine the filename for this device and attempt to open it */ - sprintf( filename, "%s%s", ROOT_CONFIG_FILENAME, dev->name ); - file_desc = open( filename, O_RDONLY, 0 ); - if ( file_desc != -1 ) { - DBG_TRACE( DbgInfo, "Wireless config file found. Parsing options...\n" ); + sprintf(filename, "%s%s", ROOT_CONFIG_FILENAME, dev->name); + file_desc = open(filename, O_RDONLY, 0); + if (file_desc != -1) { + DBG_TRACE(DbgInfo, "Wireless config file found. Parsing options...\n"); /* Read out the options */ - while( readline( file_desc, buffer )) { - translate_option( buffer, wvlan_config ); - } + while (readline(file_desc, buffer)) + translate_option(buffer, wvlan_config); /* Close the file */ - close( file_desc ); //;?even if file_desc == -1 ??? + close(file_desc); /* ;?even if file_desc == -1 ??? */ } else { - DBG_TRACE( DbgInfo, "No iwconfig file found for this device; " - "config.opts or wireless.opts will be used\n" ); + DBG_TRACE(DbgInfo, "No iwconfig file found for this device; " + "config.opts or wireless.opts will be used\n"); } /* Return to the original context */ - set_fs( fs ); + set_fs(fs); /* convert the WEP keys, if read in as key1, key2, type of data */ - if ( wvlan_config->EnableEncryption ) { - memset( &sEncryption, 0, sizeof( sEncryption )); + if (wvlan_config->EnableEncryption) { + memset(&sEncryption, 0, sizeof(sEncryption)); - wl_wep_decode( CRYPT_CODE, &sEncryption, - wvlan_config->szEncryption ); + wl_wep_decode(CRYPT_CODE, &sEncryption, + wvlan_config->szEncryption); /* the Linux driver likes to use 1-4 for the key IDs, and then convert to 0-3 when sending to the card. The Windows code @@ -216,65 +217,64 @@ void parse_config( struct net_device *dev ) sEncryption.wEnabled = wvlan_config->EnableEncryption; sEncryption.wTxKeyID = wvlan_config->TransmitKeyID - 1; - memcpy( &sEncryption.EncStr, &wvlan_config->DefaultKeys, - sizeof( CFG_DEFAULT_KEYS_STRCT )); + memcpy(&sEncryption.EncStr, &wvlan_config->DefaultKeys, + sizeof(CFG_DEFAULT_KEYS_STRCT)); - memset( wvlan_config->szEncryption, 0, sizeof( wvlan_config->szEncryption )); + memset(wvlan_config->szEncryption, 0, sizeof(wvlan_config->szEncryption)); - wl_wep_code( CRYPT_CODE, wvlan_config->szEncryption, &sEncryption, - sizeof( sEncryption )); + wl_wep_code(CRYPT_CODE, wvlan_config->szEncryption, &sEncryption, + sizeof(sEncryption)); } /* decode the encryption string for the call to wl_commit() */ - wl_wep_decode( CRYPT_CODE, &sEncryption, wvlan_config->szEncryption ); + wl_wep_decode(CRYPT_CODE, &sEncryption, wvlan_config->szEncryption); wvlan_config->TransmitKeyID = sEncryption.wTxKeyID + 1; wvlan_config->EnableEncryption = sEncryption.wEnabled; - memcpy( &wvlan_config->DefaultKeys, &sEncryption.EncStr, - sizeof( CFG_DEFAULT_KEYS_STRCT )); + memcpy(&wvlan_config->DefaultKeys, &sEncryption.EncStr, + sizeof(CFG_DEFAULT_KEYS_STRCT)); -#if 0 //BIN_DL +#if 0 /* BIN_DL */ /* Obtain a user-space process context, storing the original context */ - fs = get_fs( ); - set_fs( get_ds( )); - - //;?just to fake something - strcpy(/*wvlan_config->fw_image_*/filename, "/etc/agere/fw.bin" ); - file_desc = open( /*wvlan_config->fw_image_*/filename, 0, 0 ); - if ( file_desc == -1 ) { - DBG_ERROR( DbgInfo, "No image file found\n" ); + fs = get_fs(); + set_fs(get_ds()); + + /* ;?just to fake something */ + strcpy(/*wvlan_config->fw_image_*/filename, "/etc/agere/fw.bin"); + file_desc = open(/*wvlan_config->fw_image_*/filename, 0, 0); + if (file_desc == -1) { + DBG_ERROR(DbgInfo, "No image file found\n"); } else { - DBG_TRACE( DbgInfo, "F/W image file found\n" ); -#define DHF_ALLOC_SIZE 96000 //just below 96K, let's hope it suffices for now and for the future - cp = (char*)vmalloc( DHF_ALLOC_SIZE ); - if ( cp == NULL ) { - DBG_ERROR( DbgInfo, "error in vmalloc\n" ); + DBG_TRACE(DbgInfo, "F/W image file found\n"); +#define DHF_ALLOC_SIZE 96000 /* just below 96K, let's hope it suffices for now and for the future */ + cp = (char *)vmalloc(DHF_ALLOC_SIZE); + if (cp == NULL) { + DBG_ERROR(DbgInfo, "error in vmalloc\n"); } else { - rc = read( file_desc, cp, DHF_ALLOC_SIZE ); - if ( rc == DHF_ALLOC_SIZE ) { - DBG_ERROR( DbgInfo, "buffer too small, %d\n", DHF_ALLOC_SIZE ); - } else if ( rc > 0 ) { - DBG_TRACE( DbgInfo, "read O.K.: %d bytes %.12s\n", rc, cp ); - rc = read( file_desc, &cp[rc], 1 ); - if ( rc == 0 ) { - DBG_TRACE( DbgInfo, "no more to read\n" ); - } + rc = read(file_desc, cp, DHF_ALLOC_SIZE); + if (rc == DHF_ALLOC_SIZE) { + DBG_ERROR(DbgInfo, "buffer too small, %d\n", DHF_ALLOC_SIZE); + } else if (rc > 0) { + DBG_TRACE(DbgInfo, "read O.K.: %d bytes %.12s\n", rc, cp); + rc = read(file_desc, &cp[rc], 1); + if (rc == 0) + DBG_TRACE(DbgInfo, "no more to read\n"); } - if ( rc != 0 ) { - DBG_ERROR( DbgInfo, "file not read in one swoop or other error"\ - ", give up, too complicated, rc = %0X\n", rc ); + if (rc != 0) { + DBG_ERROR(DbgInfo, "file not read in one swoop or other error"\ + ", give up, too complicated, rc = %0X\n", rc); } - vfree( cp ); + vfree(cp); } - close( file_desc ); + close(file_desc); } - set_fs( fs ); /* Return to the original context */ -#endif // BIN_DL + set_fs(fs); /* Return to the original context */ +#endif /* BIN_DL */ - DBG_LEAVE( DbgInfo ); + DBG_LEAVE(DbgInfo); return; -} // parse_config +} /* parse_config */ /******************************************************************************* * readline() @@ -298,17 +298,17 @@ void parse_config( struct net_device *dev ) * -1 on error * ******************************************************************************/ -int readline( int filedesc, char *buffer ) +int readline(int filedesc, char *buffer) { int result = -1; int bytes_read = 0; /*------------------------------------------------------------------------*/ /* Make sure the file descriptor is good */ - if ( filedesc != -1 ) { + if (filedesc != -1) { /* Read in from the file byte by byte until a newline is reached */ - while(( result = read( filedesc, &buffer[bytes_read], 1 )) == 1 ) { - if ( buffer[bytes_read] == '\n' ) { + while ((result = read(filedesc, &buffer[bytes_read], 1)) == 1) { + if (buffer[bytes_read] == '\n') { buffer[bytes_read] = '\0'; bytes_read++; break; @@ -318,12 +318,11 @@ int readline( int filedesc, char *buffer ) } /* Return the number of bytes read */ - if ( result == -1 ) { + if (result == -1) return result; - } else { + else return bytes_read; - } -} // readline +} /* readline */ /*============================================================================*/ /******************************************************************************* @@ -346,7 +345,7 @@ int readline( int filedesc, char *buffer ) * N/A * ******************************************************************************/ -void translate_option( char *buffer, struct wl_private *lp ) +void translate_option(char *buffer, struct wl_private *lp) { unsigned int value_convert = 0; int string_length = 0; @@ -355,18 +354,17 @@ void translate_option( char *buffer, struct wl_private *lp ) u_char mac_value[ETH_ALEN]; /*------------------------------------------------------------------------*/ - DBG_FUNC( "translate_option" ); + DBG_FUNC("translate_option"); - if ( buffer == NULL || lp == NULL ) { - DBG_ERROR( DbgInfo, "Config file buffer and/or wavelan buffer ptr NULL\n" ); + if (buffer == NULL || lp == NULL) { + DBG_ERROR(DbgInfo, "Config file buffer and/or wavelan buffer ptr NULL\n"); return; } - ParseConfigLine( buffer, &key, &value ); + ParseConfigLine(buffer, &key, &value); - if ( key == NULL || value == NULL ) { + if (key == NULL || value == NULL) return; - } /* Determine which key it is and perform the appropriate action */ @@ -375,367 +373,316 @@ void translate_option( char *buffer, struct wl_private *lp ) /* handle DebugFlag as early as possible so it starts its influence as early * as possible */ - if ( strcmp( key, PARM_NAME_DEBUG_FLAG ) == 0 ) { - if ( DebugFlag == ~0 ) { //if DebugFlag is not specified on the command line - if ( DbgInfo->DebugFlag == 0 ) { /* if pc_debug did not set DebugFlag (i.e.pc_debug is + if (strcmp(key, PARM_NAME_DEBUG_FLAG) == 0) { + if (DebugFlag == ~0) { /* if DebugFlag is not specified on the command line */ + if (DbgInfo->DebugFlag == 0) { /* if pc_debug did not set DebugFlag (i.e.pc_debug is * not specified or specified outside the 4-8 range */ DbgInfo->DebugFlag |= DBG_DEFAULTS; } } else { - DbgInfo->DebugFlag = simple_strtoul(value, NULL, 0); //;?DebugFlag; + DbgInfo->DebugFlag = simple_strtoul(value, NULL, 0); /* ;?DebugFlag; */ } - DbgInfo->DebugFlag = simple_strtoul(value, NULL, 0); //;?Delete ASAP + DbgInfo->DebugFlag = simple_strtoul(value, NULL, 0); /* ;?Delete ASAP */ } #endif /* DBG */ - if ( strcmp( key, PARM_NAME_AUTH_KEY_MGMT_SUITE ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_AUTH_KEY_MGMT_SUITE, value ); + if (strcmp(key, PARM_NAME_AUTH_KEY_MGMT_SUITE) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_AUTH_KEY_MGMT_SUITE, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_AUTH_KEY_MGMT_SUITE ) || ( value_convert <= PARM_MAX_AUTH_KEY_MGMT_SUITE )) { + if ((value_convert >= PARM_MIN_AUTH_KEY_MGMT_SUITE) || (value_convert <= PARM_MAX_AUTH_KEY_MGMT_SUITE)) lp->AuthKeyMgmtSuite = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_AUTH_KEY_MGMT_SUITE ); - } - } - else if ( strcmp( key, PARM_NAME_BRSC_2GHZ ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_BRSC_2GHZ, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_AUTH_KEY_MGMT_SUITE); + } else if (strcmp(key, PARM_NAME_BRSC_2GHZ) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_BRSC_2GHZ, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_BRSC ) || ( value_convert <= PARM_MAX_BRSC )) { + if ((value_convert >= PARM_MIN_BRSC) || (value_convert <= PARM_MAX_BRSC)) lp->brsc[0] = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invaid; will be ignored\n", PARM_NAME_BRSC_2GHZ ); - } - } - else if ( strcmp( key, PARM_NAME_BRSC_5GHZ ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_BRSC_5GHZ, value ); + else + DBG_WARNING(DbgInfo, "%s invaid; will be ignored\n", PARM_NAME_BRSC_2GHZ); + } else if (strcmp(key, PARM_NAME_BRSC_5GHZ) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_BRSC_5GHZ, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_BRSC ) || ( value_convert <= PARM_MAX_BRSC )) { + if ((value_convert >= PARM_MIN_BRSC) || (value_convert <= PARM_MAX_BRSC)) lp->brsc[1] = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invaid; will be ignored\n", PARM_NAME_BRSC_5GHZ ); - } - } - else if (( strcmp( key, PARM_NAME_DESIRED_SSID ) == 0 ) || ( strcmp( key, PARM_NAME_OWN_SSID ) == 0 )) { - DBG_TRACE( DbgInfo, "SSID, value: %s\n", value ); + else + DBG_WARNING(DbgInfo, "%s invaid; will be ignored\n", PARM_NAME_BRSC_5GHZ); + } else if ((strcmp(key, PARM_NAME_DESIRED_SSID) == 0) || (strcmp(key, PARM_NAME_OWN_SSID) == 0)) { + DBG_TRACE(DbgInfo, "SSID, value: %s\n", value); - memset( lp->NetworkName, 0, ( PARM_MAX_NAME_LEN + 1 )); + memset(lp->NetworkName, 0, (PARM_MAX_NAME_LEN + 1)); /* Make sure the value isn't too long */ - string_length = strlen( value ); - if ( string_length > PARM_MAX_NAME_LEN ) { - DBG_WARNING( DbgInfo, "SSID too long; will be truncated\n" ); + string_length = strlen(value); + if (string_length > PARM_MAX_NAME_LEN) { + DBG_WARNING(DbgInfo, "SSID too long; will be truncated\n"); string_length = PARM_MAX_NAME_LEN; } - memcpy( lp->NetworkName, value, string_length ); + memcpy(lp->NetworkName, value, string_length); } #if 0 - else if ( strcmp( key, PARM_NAME_DOWNLOAD_FIRMWARE ) == 0 ) { - DBG_TRACE( DbgInfo, "DOWNLOAD_FIRMWARE, value: %s\n", value ); - memset( lp->fw_image_filename, 0, ( MAX_LINE_SIZE + 1 )); + else if (strcmp(key, PARM_NAME_DOWNLOAD_FIRMWARE) == 0) { + DBG_TRACE(DbgInfo, "DOWNLOAD_FIRMWARE, value: %s\n", value); + memset(lp->fw_image_filename, 0, (MAX_LINE_SIZE + 1)); /* Make sure the value isn't too long */ - string_length = strlen( value ); - if ( string_length > MAX_LINE_SIZE ) { - DBG_WARNING( DbgInfo, "F/W image file name too long; will be ignored\n" ); - } else { - memcpy( lp->fw_image_filename, value, string_length ); - } + string_length = strlen(value); + if (string_length > MAX_LINE_SIZE) + DBG_WARNING(DbgInfo, "F/W image file name too long; will be ignored\n"); + else + memcpy(lp->fw_image_filename, value, string_length); } #endif - else if ( strcmp( key, PARM_NAME_ENABLE_ENCRYPTION ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_ENABLE_ENCRYPTION, value ); + else if (strcmp(key, PARM_NAME_ENABLE_ENCRYPTION) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_ENABLE_ENCRYPTION, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_ENABLE_ENCRYPTION ) && ( value_convert <= PARM_MAX_ENABLE_ENCRYPTION )) { + if ((value_convert >= PARM_MIN_ENABLE_ENCRYPTION) && (value_convert <= PARM_MAX_ENABLE_ENCRYPTION)) lp->EnableEncryption = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_ENABLE_ENCRYPTION ); - } - } - else if ( strcmp( key, PARM_NAME_ENCRYPTION ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_ENCRYPTION, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_ENABLE_ENCRYPTION); + } else if (strcmp(key, PARM_NAME_ENCRYPTION) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_ENCRYPTION, value); - memset( lp->szEncryption, 0, sizeof( lp->szEncryption )); + memset(lp->szEncryption, 0, sizeof(lp->szEncryption)); /* Make sure the value isn't too long */ - string_length = strlen( value ); - if ( string_length > sizeof( lp->szEncryption ) ) { - DBG_WARNING( DbgInfo, "%s too long; will be truncated\n", PARM_NAME_ENCRYPTION ); - string_length = sizeof( lp->szEncryption ); + string_length = strlen(value); + if (string_length > sizeof(lp->szEncryption)) { + DBG_WARNING(DbgInfo, "%s too long; will be truncated\n", PARM_NAME_ENCRYPTION); + string_length = sizeof(lp->szEncryption); } - memcpy( lp->szEncryption, value, string_length ); - } - else if ( strcmp( key, PARM_NAME_KEY1 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_KEY1, value ); + memcpy(lp->szEncryption, value, string_length); + } else if (strcmp(key, PARM_NAME_KEY1) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_KEY1, value); - if ( is_valid_key_string( value )) { - memset( lp->DefaultKeys.key[0].key, 0, MAX_KEY_SIZE ); + if (is_valid_key_string(value)) { + memset(lp->DefaultKeys.key[0].key, 0, MAX_KEY_SIZE); - key_string2key( value, &lp->DefaultKeys.key[0] ); + key_string2key(value, &lp->DefaultKeys.key[0]); } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_KEY1 ); + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_KEY1); } - } - else if ( strcmp( key, PARM_NAME_KEY2 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_KEY2, value ); + } else if (strcmp(key, PARM_NAME_KEY2) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_KEY2, value); - if ( is_valid_key_string( value )) { - memset( lp->DefaultKeys.key[1].key, 0, MAX_KEY_SIZE ); + if (is_valid_key_string(value)) { + memset(lp->DefaultKeys.key[1].key, 0, MAX_KEY_SIZE); - key_string2key( value, &lp->DefaultKeys.key[1] ); + key_string2key(value, &lp->DefaultKeys.key[1]); } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_KEY2 ); + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_KEY2); } - } - else if ( strcmp( key, PARM_NAME_KEY3 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_KEY3, value ); + } else if (strcmp(key, PARM_NAME_KEY3) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_KEY3, value); - if ( is_valid_key_string( value )) { - memset( lp->DefaultKeys.key[2].key, 0, MAX_KEY_SIZE ); + if (is_valid_key_string(value)) { + memset(lp->DefaultKeys.key[2].key, 0, MAX_KEY_SIZE); - key_string2key( value, &lp->DefaultKeys.key[2] ); + key_string2key(value, &lp->DefaultKeys.key[2]); } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_KEY3 ); + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_KEY3); } - } - else if ( strcmp( key, PARM_NAME_KEY4 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_KEY4, value ); + } else if (strcmp(key, PARM_NAME_KEY4) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_KEY4, value); - if ( is_valid_key_string( value )) { - memset( lp->DefaultKeys.key[3].key, 0, MAX_KEY_SIZE ); + if (is_valid_key_string(value)) { + memset(lp->DefaultKeys.key[3].key, 0, MAX_KEY_SIZE); - key_string2key( value, &lp->DefaultKeys.key[3] ); + key_string2key(value, &lp->DefaultKeys.key[3]); } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_KEY4 ); + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_KEY4); } } /* New Parameters for WARP */ - else if ( strcmp( key, PARM_NAME_LOAD_BALANCING ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_LOAD_BALANCING, value ); + else if (strcmp(key, PARM_NAME_LOAD_BALANCING) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_LOAD_BALANCING, value); lp->loadBalancing = parse_yes_no(value); - } - else if ( strcmp( key, PARM_NAME_MEDIUM_DISTRIBUTION ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_MEDIUM_DISTRIBUTION, value ); + } else if (strcmp(key, PARM_NAME_MEDIUM_DISTRIBUTION) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_MEDIUM_DISTRIBUTION, value); lp->mediumDistribution = parse_yes_no(value); - } - else if ( strcmp( key, PARM_NAME_MICROWAVE_ROBUSTNESS) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_MICROWAVE_ROBUSTNESS, value ); + } else if (strcmp(key, PARM_NAME_MICROWAVE_ROBUSTNESS) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_MICROWAVE_ROBUSTNESS, value); lp->MicrowaveRobustness = parse_yes_no(value); - } - else if ( strcmp( key, PARM_NAME_MULTICAST_RATE ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_MULTICAST_RATE, value ); + } else if (strcmp(key, PARM_NAME_MULTICAST_RATE) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_MULTICAST_RATE, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_MULTICAST_RATE ) && ( value_convert <= PARM_MAX_MULTICAST_RATE )) { + if ((value_convert >= PARM_MIN_MULTICAST_RATE) && (value_convert <= PARM_MAX_MULTICAST_RATE)) lp->MulticastRate[0] = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_MULTICAST_RATE ); - } - } - else if ( strcmp( key, PARM_NAME_OWN_CHANNEL ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_OWN_CHANNEL, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_MULTICAST_RATE); + } else if (strcmp(key, PARM_NAME_OWN_CHANNEL) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_OWN_CHANNEL, value); value_convert = simple_strtoul(value, NULL, 0); - if ( wl_is_a_valid_chan( value_convert )) { - if ( value_convert > 14 ) { + if (wl_is_a_valid_chan(value_convert)) { + if (value_convert > 14) value_convert = value_convert | 0x100; - } lp->Channel = value_convert; } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_OWN_CHANNEL ); + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_OWN_CHANNEL); } - } - else if ( strcmp( key, PARM_NAME_OWN_NAME ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_OWN_NAME, value ); + } else if (strcmp(key, PARM_NAME_OWN_NAME) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_OWN_NAME, value); - memset( lp->StationName, 0, ( PARM_MAX_NAME_LEN + 1 )); + memset(lp->StationName, 0, (PARM_MAX_NAME_LEN + 1)); /* Make sure the value isn't too long */ - string_length = strlen( value ); - if ( string_length > PARM_MAX_NAME_LEN ) { - DBG_WARNING( DbgInfo, "%s too long; will be truncated\n", PARM_NAME_OWN_NAME ); + string_length = strlen(value); + if (string_length > PARM_MAX_NAME_LEN) { + DBG_WARNING(DbgInfo, "%s too long; will be truncated\n", PARM_NAME_OWN_NAME); string_length = PARM_MAX_NAME_LEN; } - memcpy( lp->StationName, value, string_length ); - } - else if ( strcmp( key, PARM_NAME_RTS_THRESHOLD ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD, value ); + memcpy(lp->StationName, value, string_length); + } else if (strcmp(key, PARM_NAME_RTS_THRESHOLD) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_RTS_THRESHOLD ) && ( value_convert <= PARM_MAX_RTS_THRESHOLD )) { + if ((value_convert >= PARM_MIN_RTS_THRESHOLD) && (value_convert <= PARM_MAX_RTS_THRESHOLD)) lp->RTSThreshold = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD ); - } - } - else if ( strcmp( key, PARM_NAME_SRSC_2GHZ ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_SRSC_2GHZ, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD); + } else if (strcmp(key, PARM_NAME_SRSC_2GHZ) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_SRSC_2GHZ, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_SRSC ) || ( value_convert <= PARM_MAX_SRSC )) { + if ((value_convert >= PARM_MIN_SRSC) || (value_convert <= PARM_MAX_SRSC)) lp->srsc[0] = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invaid; will be ignored\n", PARM_NAME_SRSC_2GHZ ); - } - } - else if ( strcmp( key, PARM_NAME_SRSC_5GHZ ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_SRSC_5GHZ, value ); + else + DBG_WARNING(DbgInfo, "%s invaid; will be ignored\n", PARM_NAME_SRSC_2GHZ); + } else if (strcmp(key, PARM_NAME_SRSC_5GHZ) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_SRSC_5GHZ, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_SRSC ) || ( value_convert <= PARM_MAX_SRSC )) { + if ((value_convert >= PARM_MIN_SRSC) || (value_convert <= PARM_MAX_SRSC)) lp->srsc[1] = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invaid; will be ignored\n", PARM_NAME_SRSC_5GHZ ); - } - } - else if ( strcmp( key, PARM_NAME_SYSTEM_SCALE ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_SYSTEM_SCALE, value ); + else + DBG_WARNING(DbgInfo, "%s invaid; will be ignored\n", PARM_NAME_SRSC_5GHZ); + } else if (strcmp(key, PARM_NAME_SYSTEM_SCALE) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_SYSTEM_SCALE, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_SYSTEM_SCALE ) && ( value_convert <= PARM_MAX_SYSTEM_SCALE )) { + if ((value_convert >= PARM_MIN_SYSTEM_SCALE) && (value_convert <= PARM_MAX_SYSTEM_SCALE)) lp->DistanceBetweenAPs = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_SYSTEM_SCALE ); - } - } - else if ( strcmp( key, PARM_NAME_TX_KEY ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_TX_KEY, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_SYSTEM_SCALE); + } else if (strcmp(key, PARM_NAME_TX_KEY) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_TX_KEY, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_TX_KEY ) && ( value_convert <= PARM_MAX_TX_KEY )) { + if ((value_convert >= PARM_MIN_TX_KEY) && (value_convert <= PARM_MAX_TX_KEY)) lp->TransmitKeyID = simple_strtoul(value, NULL, 0); - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_KEY ); - } - } - else if ( strcmp( key, PARM_NAME_TX_RATE ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_KEY); + } else if (strcmp(key, PARM_NAME_TX_RATE) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_TX_RATE ) && ( value_convert <= PARM_MAX_TX_RATE )) { + if ((value_convert >= PARM_MIN_TX_RATE) && (value_convert <= PARM_MAX_TX_RATE)) lp->TxRateControl[0] = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE ); - } - } - else if ( strcmp( key, PARM_NAME_TX_POW_LEVEL ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_TX_POW_LEVEL, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE); + } else if (strcmp(key, PARM_NAME_TX_POW_LEVEL) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_TX_POW_LEVEL, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_TX_POW_LEVEL ) || ( value_convert <= PARM_MAX_TX_POW_LEVEL )) { + if ((value_convert >= PARM_MIN_TX_POW_LEVEL) || (value_convert <= PARM_MAX_TX_POW_LEVEL)) lp->txPowLevel = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_POW_LEVEL ); - } + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_POW_LEVEL); } /* Need to add? : Country code, Short/Long retry */ /* Configuration parameters specific to STA mode */ -#if 1 //;? (HCF_TYPE) & HCF_TYPE_STA -//;?seems reasonable that even an AP-only driver could afford this small additional footprint - if ( CNV_INT_TO_LITTLE( lp->hcfCtx.IFB_FWIdentity.comp_id ) == COMP_ID_FW_STA ) { - //;?should we return an error status in AP mode - if ( strcmp( key, PARM_NAME_PORT_TYPE ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_PORT_TYPE, value ); +#if 1 /* ;? (HCF_TYPE) & HCF_TYPE_STA */ +/* ;?seems reasonable that even an AP-only driver could afford this small additional footprint */ + if (CNV_INT_TO_LITTLE(lp->hcfCtx.IFB_FWIdentity.comp_id) == COMP_ID_FW_STA) { + /* ;?should we return an error status in AP mode */ + if (strcmp(key, PARM_NAME_PORT_TYPE) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_PORT_TYPE, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert == PARM_MIN_PORT_TYPE ) || ( value_convert == PARM_MAX_PORT_TYPE )) { + if ((value_convert == PARM_MIN_PORT_TYPE) || (value_convert == PARM_MAX_PORT_TYPE)) lp->PortType = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_PORT_TYPE ); - } - } - else if ( strcmp( key, PARM_NAME_PM_ENABLED ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_PM_ENABLED, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_PORT_TYPE); + } else if (strcmp(key, PARM_NAME_PM_ENABLED) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_PM_ENABLED, value); value_convert = simple_strtoul(value, NULL, 0); /* ;? how about wl_main.c containing - * VALID_PARAM( PARM_PM_ENABLED <= WVLAN_PM_STATE_STANDARD || - * ( PARM_PM_ENABLED & 0x7FFF ) <= WVLAN_PM_STATE_STANDARD ); + * VALID_PARAM(PARM_PM_ENABLED <= WVLAN_PM_STATE_STANDARD || + * (PARM_PM_ENABLED & 0x7FFF) <= WVLAN_PM_STATE_STANDARD); */ - if ( ( value_convert & 0x7FFF ) <= PARM_MAX_PM_ENABLED) { + if ((value_convert & 0x7FFF) <= PARM_MAX_PM_ENABLED) { lp->PMEnabled = value_convert; } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_PM_ENABLED ); - //;?this is a data entry error, hence not a DBG_WARNING + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_PM_ENABLED); + /* ;?this is a data entry error, hence not a DBG_WARNING */ } - } - else if ( strcmp( key, PARM_NAME_CREATE_IBSS ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_CREATE_IBSS, value ); + } else if (strcmp(key, PARM_NAME_CREATE_IBSS) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_CREATE_IBSS, value); lp->CreateIBSS = parse_yes_no(value); - } - else if ( strcmp( key, PARM_NAME_MULTICAST_RX ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_MULTICAST_RX, value ); + } else if (strcmp(key, PARM_NAME_MULTICAST_RX) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_MULTICAST_RX, value); lp->MulticastReceive = parse_yes_no(value); - } - else if ( strcmp( key, PARM_NAME_MAX_SLEEP ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_MAX_SLEEP, value ); + } else if (strcmp(key, PARM_NAME_MAX_SLEEP) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_MAX_SLEEP, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= 0 ) && ( value_convert <= 65535 )) { + if ((value_convert >= 0) && (value_convert <= 65535)) lp->MaxSleepDuration = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_MAX_SLEEP ); - } - } - else if ( strcmp( key, PARM_NAME_NETWORK_ADDR ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_NETWORK_ADDR, value ); - - if ( parse_mac_address( value, mac_value ) == ETH_ALEN ) { - memcpy( lp->MACAddress, mac_value, ETH_ALEN ); - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_NETWORK_ADDR ); - } - } - else if ( strcmp( key, PARM_NAME_AUTHENTICATION ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_AUTHENTICATION, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_MAX_SLEEP); + } else if (strcmp(key, PARM_NAME_NETWORK_ADDR) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_NETWORK_ADDR, value); + + if (parse_mac_address(value, mac_value) == ETH_ALEN) + memcpy(lp->MACAddress, mac_value, ETH_ALEN); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_NETWORK_ADDR); + } else if (strcmp(key, PARM_NAME_AUTHENTICATION) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_AUTHENTICATION, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_AUTHENTICATION ) && ( value_convert <= PARM_MAX_AUTHENTICATION )) { + if ((value_convert >= PARM_MIN_AUTHENTICATION) && (value_convert <= PARM_MAX_AUTHENTICATION)) lp->authentication = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_AUTHENTICATION ); - } - } - else if ( strcmp( key, PARM_NAME_OWN_ATIM_WINDOW ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_OWN_ATIM_WINDOW, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_AUTHENTICATION); + } else if (strcmp(key, PARM_NAME_OWN_ATIM_WINDOW) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_OWN_ATIM_WINDOW, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_OWN_ATIM_WINDOW ) && ( value_convert <= PARM_MAX_OWN_ATIM_WINDOW )) { + if ((value_convert >= PARM_MIN_OWN_ATIM_WINDOW) && (value_convert <= PARM_MAX_OWN_ATIM_WINDOW)) lp->atimWindow = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_OWN_ATIM_WINDOW ); - } - } - else if ( strcmp( key, PARM_NAME_PM_HOLDOVER_DURATION ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_PM_HOLDOVER_DURATION, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_OWN_ATIM_WINDOW); + } else if (strcmp(key, PARM_NAME_PM_HOLDOVER_DURATION) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_PM_HOLDOVER_DURATION, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_PM_HOLDOVER_DURATION ) && ( value_convert <= PARM_MAX_PM_HOLDOVER_DURATION )) { + if ((value_convert >= PARM_MIN_PM_HOLDOVER_DURATION) && (value_convert <= PARM_MAX_PM_HOLDOVER_DURATION)) lp->holdoverDuration = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_PM_HOLDOVER_DURATION ); - } - } - else if ( strcmp( key, PARM_NAME_PROMISCUOUS_MODE ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_PROMISCUOUS_MODE, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_PM_HOLDOVER_DURATION); + } else if (strcmp(key, PARM_NAME_PROMISCUOUS_MODE) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_PROMISCUOUS_MODE, value); lp->promiscuousMode = parse_yes_no(value); - } - else if ( strcmp( key, PARM_NAME_CONNECTION_CONTROL ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_CONNECTION_CONTROL, value ); + } else if (strcmp(key, PARM_NAME_CONNECTION_CONTROL) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_CONNECTION_CONTROL, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_CONNECTION_CONTROL ) && ( value_convert <= PARM_MAX_CONNECTION_CONTROL )) { + if ((value_convert >= PARM_MIN_CONNECTION_CONTROL) && (value_convert <= PARM_MAX_CONNECTION_CONTROL)) lp->connectionControl = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_CONNECTION_CONTROL ); - } + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_CONNECTION_CONTROL); } /* Need to add? : Probe Data Rate */ @@ -743,237 +690,193 @@ void translate_option( char *buffer, struct wl_private *lp ) #endif /* (HCF_TYPE) & HCF_TYPE_STA */ /* Configuration parameters specific to AP mode */ -#if 1 //;? (HCF_TYPE) & HCF_TYPE_AP - //;?should we restore this to allow smaller memory footprint - if ( CNV_INT_TO_LITTLE( lp->hcfCtx.IFB_FWIdentity.comp_id ) == COMP_ID_FW_AP ) { - if ( strcmp( key, PARM_NAME_OWN_DTIM_PERIOD ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_OWN_DTIM_PERIOD, value ); +#if 1 /* ;? (HCF_TYPE) & HCF_TYPE_AP */ + /* ;?should we restore this to allow smaller memory footprint */ + if (CNV_INT_TO_LITTLE(lp->hcfCtx.IFB_FWIdentity.comp_id) == COMP_ID_FW_AP) { + if (strcmp(key, PARM_NAME_OWN_DTIM_PERIOD) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_OWN_DTIM_PERIOD, value); value_convert = simple_strtoul(value, NULL, 0); - if ( value_convert >= PARM_MIN_OWN_DTIM_PERIOD ) { + if (value_convert >= PARM_MIN_OWN_DTIM_PERIOD) lp->DTIMPeriod = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_OWN_DTIM_PERIOD ); - } - } - else if ( strcmp( key, PARM_NAME_REJECT_ANY ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_REJECT_ANY, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_OWN_DTIM_PERIOD); + } else if (strcmp(key, PARM_NAME_REJECT_ANY) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_REJECT_ANY, value); lp->RejectAny = parse_yes_no(value); - } - else if ( strcmp( key, PARM_NAME_EXCLUDE_UNENCRYPTED ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_EXCLUDE_UNENCRYPTED, value ); + } else if (strcmp(key, PARM_NAME_EXCLUDE_UNENCRYPTED) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_EXCLUDE_UNENCRYPTED, value); lp->ExcludeUnencrypted = parse_yes_no(value); - } - else if ( strcmp( key, PARM_NAME_MULTICAST_PM_BUFFERING ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_MULTICAST_PM_BUFFERING, value ); + } else if (strcmp(key, PARM_NAME_MULTICAST_PM_BUFFERING) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_MULTICAST_PM_BUFFERING, value); lp->ExcludeUnencrypted = parse_yes_no(value); - } - else if ( strcmp( key, PARM_NAME_INTRA_BSS_RELAY ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_INTRA_BSS_RELAY, value ); + } else if (strcmp(key, PARM_NAME_INTRA_BSS_RELAY) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_INTRA_BSS_RELAY, value); lp->ExcludeUnencrypted = parse_yes_no(value); - } - else if ( strcmp( key, PARM_NAME_OWN_BEACON_INTERVAL ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_OWN_BEACON_INTERVAL, value ); + } else if (strcmp(key, PARM_NAME_OWN_BEACON_INTERVAL) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_OWN_BEACON_INTERVAL, value); value_convert = simple_strtoul(value, NULL, 0); - if ( value_convert >= PARM_MIN_OWN_BEACON_INTERVAL ) { + if (value_convert >= PARM_MIN_OWN_BEACON_INTERVAL) lp->ownBeaconInterval = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_OWN_BEACON_INTERVAL ); - } - } - else if ( strcmp( key, PARM_NAME_COEXISTENCE ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_COEXISTENCE, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_OWN_BEACON_INTERVAL); + } else if (strcmp(key, PARM_NAME_COEXISTENCE) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_COEXISTENCE, value); value_convert = simple_strtoul(value, NULL, 0); - if ( value_convert >= PARM_MIN_COEXISTENCE ) { + if (value_convert >= PARM_MIN_COEXISTENCE) lp->coexistence = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_COEXISTENCE ); - } + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_COEXISTENCE); } #ifdef USE_WDS - else if ( strcmp( key, PARM_NAME_RTS_THRESHOLD1 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD1, value ); + else if (strcmp(key, PARM_NAME_RTS_THRESHOLD1) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD1, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_RTS_THRESHOLD ) && ( value_convert <= PARM_MAX_RTS_THRESHOLD )) { + if ((value_convert >= PARM_MIN_RTS_THRESHOLD) && (value_convert <= PARM_MAX_RTS_THRESHOLD)) lp->wds_port[0].rtsThreshold = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD1 ); - } - } - else if ( strcmp( key, PARM_NAME_RTS_THRESHOLD2 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD2, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD1); + } else if (strcmp(key, PARM_NAME_RTS_THRESHOLD2) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD2, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_RTS_THRESHOLD ) && ( value_convert <= PARM_MAX_RTS_THRESHOLD )) { + if ((value_convert >= PARM_MIN_RTS_THRESHOLD) && (value_convert <= PARM_MAX_RTS_THRESHOLD)) lp->wds_port[1].rtsThreshold = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD2 ); - } - } - else if ( strcmp( key, PARM_NAME_RTS_THRESHOLD3 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD3, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD2); + } else if (strcmp(key, PARM_NAME_RTS_THRESHOLD3) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD3, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_RTS_THRESHOLD ) && ( value_convert <= PARM_MAX_RTS_THRESHOLD )) { + if ((value_convert >= PARM_MIN_RTS_THRESHOLD) && (value_convert <= PARM_MAX_RTS_THRESHOLD)) lp->wds_port[2].rtsThreshold = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD3 ); - } - } - else if ( strcmp( key, PARM_NAME_RTS_THRESHOLD4 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD4, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD3); + } else if (strcmp(key, PARM_NAME_RTS_THRESHOLD4) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD4, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_RTS_THRESHOLD ) && ( value_convert <= PARM_MAX_RTS_THRESHOLD )) { + if ((value_convert >= PARM_MIN_RTS_THRESHOLD) && (value_convert <= PARM_MAX_RTS_THRESHOLD)) lp->wds_port[3].rtsThreshold = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD4 ); - } - } - else if ( strcmp( key, PARM_NAME_RTS_THRESHOLD5 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD5, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD4); + } else if (strcmp(key, PARM_NAME_RTS_THRESHOLD5) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD5, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_RTS_THRESHOLD ) && ( value_convert <= PARM_MAX_RTS_THRESHOLD )) { + if ((value_convert >= PARM_MIN_RTS_THRESHOLD) && (value_convert <= PARM_MAX_RTS_THRESHOLD)) lp->wds_port[4].rtsThreshold = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD5 ); - } - } - else if ( strcmp( key, PARM_NAME_RTS_THRESHOLD6 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD6, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD5); + } else if (strcmp(key, PARM_NAME_RTS_THRESHOLD6) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_RTS_THRESHOLD6, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_RTS_THRESHOLD ) && ( value_convert <= PARM_MAX_RTS_THRESHOLD )) { + if ((value_convert >= PARM_MIN_RTS_THRESHOLD) && (value_convert <= PARM_MAX_RTS_THRESHOLD)) lp->wds_port[5].rtsThreshold = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD6 ); - } - } - else if ( strcmp( key, PARM_NAME_TX_RATE1 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE1, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_RTS_THRESHOLD6); + } else if (strcmp(key, PARM_NAME_TX_RATE1) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE1, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_TX_RATE ) && ( value_convert <= PARM_MAX_TX_RATE )) { + if ((value_convert >= PARM_MIN_TX_RATE) && (value_convert <= PARM_MAX_TX_RATE)) lp->wds_port[0].txRateCntl = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE1 ); - } - } - else if ( strcmp( key, PARM_NAME_TX_RATE2 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE2, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE1); + } else if (strcmp(key, PARM_NAME_TX_RATE2) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE2, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_TX_RATE ) && ( value_convert <= PARM_MAX_TX_RATE )) { + if ((value_convert >= PARM_MIN_TX_RATE) && (value_convert <= PARM_MAX_TX_RATE)) lp->wds_port[1].txRateCntl = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE2 ); - } - } - else if ( strcmp( key, PARM_NAME_TX_RATE3 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE3, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE2); + } else if (strcmp(key, PARM_NAME_TX_RATE3) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE3, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_TX_RATE ) && ( value_convert <= PARM_MAX_TX_RATE )) { + if ((value_convert >= PARM_MIN_TX_RATE) && (value_convert <= PARM_MAX_TX_RATE)) lp->wds_port[2].txRateCntl = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE3 ); - } - } - else if ( strcmp( key, PARM_NAME_TX_RATE4 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE4, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE3); + } else if (strcmp(key, PARM_NAME_TX_RATE4) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE4, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_TX_RATE ) && ( value_convert <= PARM_MAX_TX_RATE )) { + if ((value_convert >= PARM_MIN_TX_RATE) && (value_convert <= PARM_MAX_TX_RATE)) lp->wds_port[3].txRateCntl = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE4 ); - } - } - else if ( strcmp( key, PARM_NAME_TX_RATE5 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE5, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE4); + } else if (strcmp(key, PARM_NAME_TX_RATE5) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE5, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_TX_RATE ) && ( value_convert <= PARM_MAX_TX_RATE )) { + if ((value_convert >= PARM_MIN_TX_RATE) && (value_convert <= PARM_MAX_TX_RATE)) lp->wds_port[4].txRateCntl = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE5 ); - } - } - else if ( strcmp( key, PARM_NAME_TX_RATE6 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE6, value ); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE5); + } else if (strcmp(key, PARM_NAME_TX_RATE6) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_TX_RATE6, value); value_convert = simple_strtoul(value, NULL, 0); - if (( value_convert >= PARM_MIN_TX_RATE ) && ( value_convert <= PARM_MAX_TX_RATE )) { + if ((value_convert >= PARM_MIN_TX_RATE) && (value_convert <= PARM_MAX_TX_RATE)) lp->wds_port[5].txRateCntl = value_convert; - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE6 ); - } - } - else if ( strcmp( key, PARM_NAME_WDS_ADDRESS1 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_WDS_ADDRESS1, value ); - - if ( parse_mac_address( value, mac_value ) == ETH_ALEN ) { - memcpy( lp->wds_port[0].wdsAddress, mac_value, ETH_ALEN ); - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_WDS_ADDRESS1 ); - } - } - else if ( strcmp( key, PARM_NAME_WDS_ADDRESS2 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_WDS_ADDRESS2, value ); - - if ( parse_mac_address( value, mac_value ) == ETH_ALEN ) { - memcpy( lp->wds_port[1].wdsAddress, mac_value, ETH_ALEN ); - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_WDS_ADDRESS2 ); - } - } - else if ( strcmp( key, PARM_NAME_WDS_ADDRESS3 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_WDS_ADDRESS3, value ); - - if ( parse_mac_address( value, mac_value ) == ETH_ALEN ) { - memcpy( lp->wds_port[2].wdsAddress, mac_value, ETH_ALEN ); - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_WDS_ADDRESS3 ); - } - } - else if ( strcmp( key, PARM_NAME_WDS_ADDRESS4 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_WDS_ADDRESS4, value ); - - if ( parse_mac_address( value, mac_value ) == ETH_ALEN ) { - memcpy( lp->wds_port[3].wdsAddress, mac_value, ETH_ALEN ); - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_WDS_ADDRESS4 ); - } - } - else if ( strcmp( key, PARM_NAME_WDS_ADDRESS5 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_WDS_ADDRESS5, value ); - - if ( parse_mac_address( value, mac_value ) == ETH_ALEN ) { - memcpy( lp->wds_port[4].wdsAddress, mac_value, ETH_ALEN ); - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_WDS_ADDRESS5 ); - } - } - else if ( strcmp( key, PARM_NAME_WDS_ADDRESS6 ) == 0 ) { - DBG_TRACE( DbgInfo, "%s, value: %s\n", PARM_NAME_WDS_ADDRESS6, value ); - - if ( parse_mac_address( value, mac_value ) == ETH_ALEN ) { - memcpy( lp->wds_port[5].wdsAddress, mac_value, ETH_ALEN ); - } else { - DBG_WARNING( DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_WDS_ADDRESS6 ); - } + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_TX_RATE6); + } else if (strcmp(key, PARM_NAME_WDS_ADDRESS1) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_WDS_ADDRESS1, value); + + if (parse_mac_address(value, mac_value) == ETH_ALEN) + memcpy(lp->wds_port[0].wdsAddress, mac_value, ETH_ALEN); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_WDS_ADDRESS1); + } else if (strcmp(key, PARM_NAME_WDS_ADDRESS2) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_WDS_ADDRESS2, value); + + if (parse_mac_address(value, mac_value) == ETH_ALEN) + memcpy(lp->wds_port[1].wdsAddress, mac_value, ETH_ALEN); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_WDS_ADDRESS2); + } else if (strcmp(key, PARM_NAME_WDS_ADDRESS3) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_WDS_ADDRESS3, value); + + if (parse_mac_address(value, mac_value) == ETH_ALEN) + memcpy(lp->wds_port[2].wdsAddress, mac_value, ETH_ALEN); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_WDS_ADDRESS3); + } else if (strcmp(key, PARM_NAME_WDS_ADDRESS4) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_WDS_ADDRESS4, value); + + if (parse_mac_address(value, mac_value) == ETH_ALEN) + memcpy(lp->wds_port[3].wdsAddress, mac_value, ETH_ALEN); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_WDS_ADDRESS4); + } else if (strcmp(key, PARM_NAME_WDS_ADDRESS5) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_WDS_ADDRESS5, value); + + if (parse_mac_address(value, mac_value) == ETH_ALEN) + memcpy(lp->wds_port[4].wdsAddress, mac_value, ETH_ALEN); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_WDS_ADDRESS5); + } else if (strcmp(key, PARM_NAME_WDS_ADDRESS6) == 0) { + DBG_TRACE(DbgInfo, "%s, value: %s\n", PARM_NAME_WDS_ADDRESS6, value); + + if (parse_mac_address(value, mac_value) == ETH_ALEN) + memcpy(lp->wds_port[5].wdsAddress, mac_value, ETH_ALEN); + else + DBG_WARNING(DbgInfo, "%s invalid; will be ignored\n", PARM_NAME_WDS_ADDRESS6); } #endif /* USE_WDS */ } #endif /* (HCF_TYPE) & HCF_TYPE_AP */ return; -} // translate_option +} /* translate_option */ /*============================================================================*/ /******************************************************************************* @@ -996,7 +899,7 @@ void translate_option( char *buffer, struct wl_private *lp ) * The number of bytes in the final MAC address, should equal to ETH_ALEN. * ******************************************************************************/ -int parse_mac_address( char *value, u_char *byte_array ) +int parse_mac_address(char *value, u_char *byte_array) { int value_offset = 0; int array_offset = 0; @@ -1004,11 +907,11 @@ int parse_mac_address( char *value, u_char *byte_array ) char byte_field[3]; /*------------------------------------------------------------------------*/ - memset( byte_field, '\0', 3 ); + memset(byte_field, '\0', 3); - while( value[value_offset] != '\0' ) { + while (value[value_offset] != '\0') { /* Skip over the colon chars seperating the bytes, if they exist */ - if ( value[value_offset] == ':' ) { + if (value[value_offset] == ':') { value_offset++; continue; } @@ -1018,9 +921,9 @@ int parse_mac_address( char *value, u_char *byte_array ) value_offset++; /* Once the byte_field is filled, convert it and store it */ - if ( field_offset == 2 ) { + if (field_offset == 2) { byte_field[field_offset] = '\0'; - byte_array[array_offset] = simple_strtoul( byte_field, NULL, 16 ); + byte_array[array_offset] = simple_strtoul(byte_field, NULL, 16); field_offset = 0; array_offset++; } @@ -1029,7 +932,7 @@ int parse_mac_address( char *value, u_char *byte_array ) /* Use the array_offset as a check; 6 bytes should be written to the byte_array */ return array_offset; -} // parse_mac_address +} /* parse_mac_address */ /*============================================================================*/ /******************************************************************************* @@ -1052,42 +955,42 @@ int parse_mac_address( char *value, u_char *byte_array ) * N/A * ******************************************************************************/ -void ParseConfigLine( char *pszLine, char **ppszLVal, char **ppszRVal ) +void ParseConfigLine(char *pszLine, char **ppszLVal, char **ppszRVal) { int i; int size; /*------------------------------------------------------------------------*/ - DBG_FUNC( "ParseConfigLine" ); - DBG_ENTER( DbgInfo ); + DBG_FUNC("ParseConfigLine"); + DBG_ENTER(DbgInfo); /* get a snapshot of our string size */ - size = strlen( pszLine ); + size = strlen(pszLine); *ppszLVal = NULL; *ppszRVal = NULL; - if ( pszLine[0] != '#' && /* skip the line if it is a comment */ - pszLine[0] != '\n'&& /* if it's an empty UNIX line, do nothing */ - !( pszLine[0] == '\r' && pszLine[1] == '\n' ) /* if it's an empty MS-DOS line, do nothing */ - ) { + if (pszLine[0] != '#' && /* skip the line if it is a comment */ + pszLine[0] != '\n' && /* if it's an empty UNIX line, do nothing */ + !(pszLine[0] == '\r' && pszLine[1] == '\n') /* if it's an empty MS-DOS line, do nothing */ + ) { /* advance past any whitespace, and assign the L-value */ - for( i = 0; i < size; i++ ) { - if ( pszLine[i] != ' ' ) { + for (i = 0; i < size; i++) { + if (pszLine[i] != ' ') { *ppszLVal = &pszLine[i]; break; } } /* advance to the end of the l-value*/ - for( i++; i < size; i++ ) { - if ( pszLine[i] == ' ' || pszLine[i] == '=' ) { + for (i++; i < size; i++) { + if (pszLine[i] == ' ' || pszLine[i] == '=') { pszLine[i] = '\0'; break; } } /* make any whitespace and the equal sign a NULL character, and advance to the R-Value */ - for( i++; i < size; i++ ) { - if ( pszLine[i] == ' ' || pszLine[i] == '=' ) { + for (i++; i < size; i++) { + if (pszLine[i] == ' ' || pszLine[i] == '=') { pszLine[i] = '\0'; continue; } @@ -1095,17 +998,15 @@ void ParseConfigLine( char *pszLine, char **ppszLVal, char **ppszRVal ) break; } /* make the line ending character(s) a NULL */ - for( i++; i < size; i++ ) { - if ( pszLine[i] == '\n' ) { + for (i++; i < size; i++) { + if (pszLine[i] == '\n') pszLine[i] = '\0'; - } - if (( pszLine[i] == '\r' ) && ( pszLine[i+1] == '\n' )) { + if ((pszLine[i] == '\r') && (pszLine[i+1] == '\n')) pszLine[i] = '\0'; - } } } - DBG_LEAVE( DbgInfo ); -} // ParseConfigLine + DBG_LEAVE(DbgInfo); +} /* ParseConfigLine */ /*============================================================================*/ -#endif // USE_PROFILE +#endif /* USE_PROFILE */ diff --git a/drivers/staging/wlags49_h2/wl_sysfs.c b/drivers/staging/wlags49_h2/wl_sysfs.c index 864e01a736c8..e4c8804ac37d 100644 --- a/drivers/staging/wlags49_h2/wl_sysfs.c +++ b/drivers/staging/wlags49_h2/wl_sysfs.c @@ -46,7 +46,8 @@ static ssize_t show_tallies(struct device *d, struct device_attribute *attr, if (dev_isalive(dev)) { wl_lock(lp, &flags); - if ((ret = wl_get_tallies(lp, &tallies)) == 0) { + ret = wl_get_tallies(lp, &tallies); + if (ret == 0) { wl_unlock(lp, &flags); ret = snprintf(buf, PAGE_SIZE, "TxUnicastFrames: %u\n" diff --git a/drivers/staging/wlags49_h2/wl_wext.c b/drivers/staging/wlags49_h2/wl_wext.c index 4434e0065488..06467f1bf901 100644 --- a/drivers/staging/wlags49_h2/wl_wext.c +++ b/drivers/staging/wlags49_h2/wl_wext.c @@ -82,17 +82,10 @@ in the build. */ #ifdef WIRELESS_EXT -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) -#define IWE_STREAM_ADD_EVENT(info, buf, end, iwe, len) \ - iwe_stream_add_event(buf, end, iwe, len) -#define IWE_STREAM_ADD_POINT(info, buf, end, iwe, msg) \ - iwe_stream_add_point(buf, end, iwe, msg) -#else #define IWE_STREAM_ADD_EVENT(info, buf, end, iwe, len) \ iwe_stream_add_event(info, buf, end, iwe, len) #define IWE_STREAM_ADD_POINT(info, buf, end, iwe, msg) \ iwe_stream_add_point(info, buf, end, iwe, msg) -#endif @@ -3940,7 +3933,7 @@ void wl_wext_event_mic_failed( struct net_device *dev ) MLME-MICHAELMICFAILURE.indication(keyid=# broadcast/unicast addr=addr2) */ - /* NOTE: Format of MAC address (using colons to seperate bytes) may cause + /* NOTE: Format of MAC address (using colons to separate bytes) may cause a problem in future versions of the supplicant, if they ever actually parse these parameters */ #if DBG |