diff options
Diffstat (limited to 'drivers/net/wireless/bcmdhd/include')
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/bcmsdh.h | 4 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h | 3 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h | 74 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/bcmutils.h | 2 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/dhdioctl.h | 4 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/epivers.h | 10 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/proto/802.11.h | 23 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/proto/bcmevent.h | 1 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/proto/p2p.h | 2 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/sbchipc.h | 16 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/sbpcmcia.h | 2 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/wlfc_proto.h | 10 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/include/wlioctl.h | 101 |
13 files changed, 178 insertions, 74 deletions
diff --git a/drivers/net/wireless/bcmdhd/include/bcmsdh.h b/drivers/net/wireless/bcmdhd/include/bcmsdh.h index 4c62dba18f8..b1d9355f8bc 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmsdh.h +++ b/drivers/net/wireless/bcmdhd/include/bcmsdh.h @@ -23,7 +23,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: bcmsdh.h 326276 2012-04-06 23:16:42Z $ + * $Id: bcmsdh.h 327460 2012-04-13 18:38:41Z $ */ /** @@ -56,7 +56,7 @@ typedef void (*bcmsdh_cb_fn_t)(void *); * most recent one) to enable single-instance implementations to pass NULL. */ -#if defined(NDISVER) && (NDISVER >= 0x0630) && 1 +#if 0 && (NDISVER >= 0x0630) && 1 extern bcmsdh_info_t *bcmsdh_attach(osl_t *osh, void *cfghdl, void **regsva, uint irq, shared_info_t *sh); #else diff --git a/drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h b/drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h index 074601f5ec0..f5246a56129 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h +++ b/drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h @@ -21,7 +21,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: bcmsrom_fmt.h 326494 2012-04-09 13:29:57Z $ + * $Id: bcmsrom_fmt.h 327439 2012-04-13 17:44:48Z $ */ #ifndef _bcmsrom_fmt_h_ @@ -482,6 +482,7 @@ #define SROM11_2G_MAXP 0 #define SROM11_2G_PA 1 +#define SROM11_RXGAINS1 4 #define SROM11_RXGAINS 5 #define SROM11_5GB1B0_MAXP 6 #define SROM11_5GB3B2_MAXP 7 diff --git a/drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h b/drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h index 682b187f92b..040ae6a44b0 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h +++ b/drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h @@ -21,7 +21,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: bcmsrom_tbl.h 326655 2012-04-10 05:23:43Z $ + * $Id: bcmsrom_tbl.h 327694 2012-04-16 13:22:24Z $ */ #ifndef _bcmsrom_tbl_h_ @@ -495,6 +495,12 @@ static const sromvar_t pci_sromvars[] = { {"temps_hysteresis", 0xfffff800, 0, SROM11_PHYCAL_TEMPDELTA, 0xf000}, {"measpower1", 0xfffff800, SRFL_PRHEX, SROM11_MPWR_1_AND_2, 0x007f}, {"measpower2", 0xfffff800, SRFL_PRHEX, SROM11_MPWR_1_AND_2, 0x3f80}, + {"pdoffset40ma0", 0xfffff800, 0, SROM11_PDOFF_40M_A0, 0xffff}, + {"pdoffset40ma1", 0xfffff800, 0, SROM11_PDOFF_40M_A1, 0xffff}, + {"pdoffset40ma2", 0xfffff800, 0, SROM11_PDOFF_40M_A2, 0xffff}, + {"pdoffset80ma0", 0xfffff800, 0, SROM11_PDOFF_80M_A0, 0xffff}, + {"pdoffset80ma1", 0xfffff800, 0, SROM11_PDOFF_80M_A1, 0xffff}, + {"pdoffset80ma2", 0xfffff800, 0, SROM11_PDOFF_80M_A2, 0xffff}, {"subband5gver", 0xfffff800, SRFL_PRHEX, SROM11_SUBBAND5GVER, 0xffff}, @@ -555,26 +561,39 @@ static const sromvar_t pci_sromvars[] = { {"pcieingress_war", 0xfffff800, 0, SROM11_PCIEINGRESS_WAR, 0xf}, {"sar2g", 0xfffff800, 0, SROM11_SAR, 0x00ff}, {"sar5g", 0xfffff800, 0, SROM11_SAR, 0xff00}, - {"noiselvl2ga0", 0xfffff800, 0, SROM11_NOISELVL_2G, 0x001f}, - {"noiselvl2ga1", 0xfffff800, 0, SROM11_NOISELVL_2G, 0x03e0}, - {"noiselvl2ga2", 0xfffff800, 0, SROM11_NOISELVL_2G, 0x7c00}, - {"noiselvl5gla0", 0xfffff800, 0, SROM11_NOISELVL_5GL, 0x001f}, - {"noiselvl5gla1", 0xfffff800, 0, SROM11_NOISELVL_5GL, 0x03e0}, - {"noiselvl5gla2", 0xfffff800, 0, SROM11_NOISELVL_5GL, 0x7c00}, - {"noiselvl5gma0", 0xfffff800, 0, SROM11_NOISELVL_5GM, 0x001f}, - {"noiselvl5gma1", 0xfffff800, 0, SROM11_NOISELVL_5GM, 0x03e0}, - {"noiselvl5gma2", 0xfffff800, 0, SROM11_NOISELVL_5GM, 0x7c00}, - {"noiselvl5gha0", 0xfffff800, 0, SROM11_NOISELVL_5GH, 0x001f}, - {"noiselvl5gha1", 0xfffff800, 0, SROM11_NOISELVL_5GH, 0x03e0}, - {"noiselvl5gha2", 0xfffff800, 0, SROM11_NOISELVL_5GH, 0x7c00}, - {"noiselvl5gua0", 0xfffff800, 0, SROM11_NOISELVL_5GU, 0x001f}, - {"noiselvl5gua1", 0xfffff800, 0, SROM11_NOISELVL_5GU, 0x03e0}, - {"noiselvl5gua2", 0xfffff800, 0, SROM11_NOISELVL_5GU, 0x7c00}, - {"rxgainerr2g", 0xfffff800, SRFL_PRHEX, SROM11_RXGAINERR_2G, 0xffff}, - {"rxgainerr5g", 0xfffff800, SRFL_PRHEX|SRFL_ARRAY, SROM11_RXGAINERR_5GL, 0xffff}, - {"", 0xfffff800, SRFL_PRHEX|SRFL_ARRAY, SROM11_RXGAINERR_5GM, 0xffff}, - {"", 0xfffff800, SRFL_PRHEX|SRFL_ARRAY, SROM11_RXGAINERR_5GH, 0xffff}, - {"", 0xfffff800, SRFL_PRHEX, SROM11_RXGAINERR_5GU, 0xffff}, + + {"noiselvl2ga0", 0xfffff800, 0, SROM11_NOISELVL_2G, 0x001f}, + {"noiselvl2ga1", 0xfffff800, 0, SROM11_NOISELVL_2G, 0x03e0}, + {"noiselvl2ga2", 0xfffff800, 0, SROM11_NOISELVL_2G, 0x7c00}, + {"noiselvl5ga0", 0xfffff800, SRFL_ARRAY, SROM11_NOISELVL_5GL, 0x001f}, + {"", 0xfffff800, SRFL_ARRAY, SROM11_NOISELVL_5GM, 0x001f}, + {"", 0xfffff800, SRFL_ARRAY, SROM11_NOISELVL_5GH, 0x001f}, + {"", 0xfffff800, 0, SROM11_NOISELVL_5GU, 0x001f}, + {"noiselvl5ga1", 0xfffff800, SRFL_ARRAY, SROM11_NOISELVL_5GL, 0x03e0}, + {"", 0xfffff800, SRFL_ARRAY, SROM11_NOISELVL_5GM, 0x03e0}, + {"", 0xfffff800, SRFL_ARRAY, SROM11_NOISELVL_5GH, 0x03e0}, + {"", 0xfffff800, 0, SROM11_NOISELVL_5GU, 0x03e0}, + {"noiselvl5ga2", 0xfffff800, SRFL_ARRAY, SROM11_NOISELVL_5GL, 0x7c00}, + {"", 0xfffff800, SRFL_ARRAY, SROM11_NOISELVL_5GM, 0x7c00}, + {"", 0xfffff800, SRFL_ARRAY, SROM11_NOISELVL_5GH, 0x7c00}, + {"", 0xfffff800, 0, SROM11_NOISELVL_5GU, 0x7c00}, + + {"rxgainerr2ga0", 0xfffff800, 0, SROM11_RXGAINERR_2G, 0x003f}, + {"rxgainerr2ga1", 0xfffff800, 0, SROM11_RXGAINERR_2G, 0x07c0}, + {"rxgainerr2ga2", 0xfffff800, 0, SROM11_RXGAINERR_2G, 0xf800}, + {"rxgainerr5ga0", 0xfffff800, SRFL_ARRAY, SROM11_RXGAINERR_5GL, 0x003f}, + {"", 0xfffff800, SRFL_ARRAY, SROM11_RXGAINERR_5GM, 0x003f}, + {"", 0xfffff800, SRFL_ARRAY, SROM11_RXGAINERR_5GH, 0x003f}, + {"", 0xfffff800, 0, SROM11_RXGAINERR_5GU, 0x003f}, + {"rxgainerr5ga1", 0xfffff800, SRFL_ARRAY, SROM11_RXGAINERR_5GL, 0x07c0}, + {"", 0xfffff800, SRFL_ARRAY, SROM11_RXGAINERR_5GM, 0x07c0}, + {"", 0xfffff800, SRFL_ARRAY, SROM11_RXGAINERR_5GH, 0x07c0}, + {"", 0xfffff800, 0, SROM11_RXGAINERR_5GU, 0x07c0}, + {"rxgainerr5ga2", 0xfffff800, SRFL_ARRAY, SROM11_RXGAINERR_5GL, 0xf800}, + {"", 0xfffff800, SRFL_ARRAY, SROM11_RXGAINERR_5GM, 0xf800}, + {"", 0xfffff800, SRFL_ARRAY, SROM11_RXGAINERR_5GH, 0xf800}, + {"", 0xfffff800, 0, SROM11_RXGAINERR_5GU, 0xf800}, + {NULL, 0, 0, 0, 0} }; @@ -625,6 +644,12 @@ static const sromvar_t perpath_pci_sromvars[] = { {"pa2ga", 0xfffff800, SRFL_PRHEX | SRFL_ARRAY, SROM11_2G_PA, 0xffff}, {"", 0xfffff800, SRFL_PRHEX | SRFL_ARRAY, SROM11_2G_PA + 1, 0xffff}, {"", 0xfffff800, SRFL_PRHEX, SROM11_2G_PA + 2, 0xffff}, + {"rxgains5gmelnagaina", 0xfffff800, 0, SROM11_RXGAINS1, 0x0007}, + {"rxgains5gmtrisoa", 0xfffff800, 0, SROM11_RXGAINS1, 0x0078}, + {"rxgains5gmtrelnabypa", 0xfffff800, 0, SROM11_RXGAINS1, 0x0080}, + {"rxgains5ghelnagaina", 0xfffff800, 0, SROM11_RXGAINS1, 0x0700}, + {"rxgains5ghtrisoa", 0xfffff800, 0, SROM11_RXGAINS1, 0x7800}, + {"rxgains5ghtrelnabypa", 0xfffff800, 0, SROM11_RXGAINS1, 0x8000}, {"rxgains2gelnagaina", 0xfffff800, 0, SROM11_RXGAINS, 0x0007}, {"rxgains2gtrisoa", 0xfffff800, 0, SROM11_RXGAINS, 0x0078}, {"rxgains2gtrelnabypa", 0xfffff800, 0, SROM11_RXGAINS, 0x0080}, @@ -850,9 +875,10 @@ static const cis_tuple_t cis_hnbuvars[] = { "2sb40and80hr5ghpo 2sb20in40lrpo 2sb20in80and160lr5glpo 2sb40and80lr5glpo " "2sb20in80and160lr5gmpo 2sb40and80lr5gmpo 2sb20in80and160lr5ghpo 2sb40and80lr5ghpo " "2dot11agduphrpo 2dot11agduplrpo"}, - {HNBU_NOISELVL, 0xfffff800, 11, "2noiselvl2g 2noiselvl5gl 2noiselvl5gm " - "2noiselvl5gh 2noiselvl5gu"}, - {HNBU_RXGAIN_ERR, 0xfffff800, 11, "2rxgainerr2g 2*4rxgainerr5g"}, + {HNBU_NOISELVL, 0xfffff800, 16, "1noiselvl2ga0 1noiselvl2ga1 1noiselvl2ga2 " + "1*4noiselvl5ga0 1*4noiselvl5ga1 1*4noiselvl5ga2"}, + {HNBU_RXGAIN_ERR, 0xfffff800, 16, "1rxgainerr2ga0 1rxgainerr2ga1 1rxgainerr2ga2 " + "1*4rxgainerr5ga0 1*4rxgainerr5ga1 1*4rxgainerr5ga2"}, {HNBU_AGBGA, 0xfffff800, 7, "1agbg0 1agbg1 1agbg2 1aga0 1aga1 1aga2"}, {HNBU_UUID, 0xffffffff, 17, "16uuid"}, {HNBU_WOWLGPIO, 0xffffffff, 2, "1wowl_gpio"}, diff --git a/drivers/net/wireless/bcmdhd/include/bcmutils.h b/drivers/net/wireless/bcmdhd/include/bcmutils.h index 0225124d75e..29f8dd7f9bd 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmutils.h +++ b/drivers/net/wireless/bcmdhd/include/bcmutils.h @@ -21,7 +21,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: bcmutils.h 315959 2012-02-20 18:04:48Z $ + * $Id: bcmutils.h 328848 2012-04-21 00:43:57Z $ */ #ifndef _bcmutils_h_ diff --git a/drivers/net/wireless/bcmdhd/include/dhdioctl.h b/drivers/net/wireless/bcmdhd/include/dhdioctl.h index 21a5ecb86da..03c44ad867d 100644 --- a/drivers/net/wireless/bcmdhd/include/dhdioctl.h +++ b/drivers/net/wireless/bcmdhd/include/dhdioctl.h @@ -25,7 +25,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: dhdioctl.h 326276 2012-04-06 23:16:42Z $ + * $Id: dhdioctl.h 327460 2012-04-13 18:38:41Z $ */ #ifndef _dhdioctl_h_ @@ -85,7 +85,7 @@ enum { #define DHD_GLOM_VAL 0x0400 #define DHD_EVENT_VAL 0x0800 #define DHD_BTA_VAL 0x1000 -#if defined(NDISVER) && (NDISVER >= 0x0630) && 1 +#if 0 && (NDISVER >= 0x0630) && 1 #define DHD_SCAN_VAL 0x2000 #else #define DHD_ISCAN_VAL 0x2000 diff --git a/drivers/net/wireless/bcmdhd/include/epivers.h b/drivers/net/wireless/bcmdhd/include/epivers.h index 8141510e78a..8fcf87cb9e0 100644 --- a/drivers/net/wireless/bcmdhd/include/epivers.h +++ b/drivers/net/wireless/bcmdhd/include/epivers.h @@ -28,7 +28,7 @@ #define EPI_MAJOR_VERSION 1 -#define EPI_MINOR_VERSION 26 +#define EPI_MINOR_VERSION 27 #define EPI_RC_NUMBER 0 @@ -36,13 +36,13 @@ #define EPI_BUILD_NUMBER 0 -#define EPI_VERSION 1, 26, 0, 0 +#define EPI_VERSION 1, 27, 0, 0 -#define EPI_VERSION_NUM 0x011a0000 +#define EPI_VERSION_NUM 0x011b0000 -#define EPI_VERSION_DEV 1.26.0 +#define EPI_VERSION_DEV 1.27.0 -#define EPI_VERSION_STR "1.26 (r327295)" +#define EPI_VERSION_STR "1.27 (r329705)" #endif diff --git a/drivers/net/wireless/bcmdhd/include/proto/802.11.h b/drivers/net/wireless/bcmdhd/include/proto/802.11.h index 84f86671e16..bd0942eb964 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/802.11.h +++ b/drivers/net/wireless/bcmdhd/include/proto/802.11.h @@ -21,7 +21,7 @@ * * Fundamental types and constants relating to 802.11 * - * $Id: 802.11.h 320583 2012-03-12 15:09:36Z $ + * $Id: 802.11.h 328824 2012-04-20 22:51:46Z $ */ #ifndef _802_11_H_ @@ -1804,12 +1804,20 @@ typedef struct ht_prop_cap_ie ht_prop_cap_ie_t; #define HT_PARAMS_DENSITY_SHIFT 2 -#define AMPDU_MAX_MPDU_DENSITY 7 -#define AMPDU_RX_FACTOR_8K 0 -#define AMPDU_RX_FACTOR_16K 1 -#define AMPDU_RX_FACTOR_32K 2 -#define AMPDU_RX_FACTOR_64K 3 -#define AMPDU_RX_FACTOR_BASE 8*1024 +#define AMPDU_MAX_MPDU_DENSITY 7 +#define AMPDU_DENSITY_NONE 0 +#define AMPDU_DENSITY_1over4_US 1 +#define AMPDU_DENSITY_1over2_US 2 +#define AMPDU_DENSITY_1_US 3 +#define AMPDU_DENSITY_2_US 4 +#define AMPDU_DENSITY_4_US 5 +#define AMPDU_DENSITY_8_US 6 +#define AMPDU_DENSITY_16_US 7 +#define AMPDU_RX_FACTOR_8K 0 +#define AMPDU_RX_FACTOR_16K 1 +#define AMPDU_RX_FACTOR_32K 2 +#define AMPDU_RX_FACTOR_64K 3 +#define AMPDU_RX_FACTOR_BASE 8*1024 #define AMPDU_DELIMITER_LEN 4 #define AMPDU_DELIMITER_LEN_MAX 63 @@ -1959,6 +1967,7 @@ typedef struct vht_cap_ie vht_cap_ie_t; #define VHT_CAP_INFO_SUPP_CHAN_WIDTH_MASK 0x0000000c #define VHT_CAP_INFO_LDPC 0x00000010 #define VHT_CAP_INFO_SGI_80MHZ 0x00000020 + #define VHT_CAP_INFO_SGI_160MHZ 0x00000040 #define VHT_CAP_INFO_TX_STBC 0x00000080 diff --git a/drivers/net/wireless/bcmdhd/include/proto/bcmevent.h b/drivers/net/wireless/bcmdhd/include/proto/bcmevent.h index 3bbbbbc5b4b..0a337f6420c 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/bcmevent.h +++ b/drivers/net/wireless/bcmdhd/include/proto/bcmevent.h @@ -191,6 +191,7 @@ typedef BWL_PRE_PACKED_STRUCT struct bcm_event { #define WLC_E_LAST 94 + typedef struct { uint event; const char *name; diff --git a/drivers/net/wireless/bcmdhd/include/proto/p2p.h b/drivers/net/wireless/bcmdhd/include/proto/p2p.h index 6a0518b0c91..19493eb18b1 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/p2p.h +++ b/drivers/net/wireless/bcmdhd/include/proto/p2p.h @@ -21,7 +21,7 @@ * * Fundamental types and constants relating to WFA P2P (aka WiFi Direct) * - * $Id: p2p.h 311270 2012-01-28 00:11:54Z $ + * $Id: p2p.h 326276 2012-04-06 23:16:42Z $ */ #ifndef _P2P_H_ diff --git a/drivers/net/wireless/bcmdhd/include/sbchipc.h b/drivers/net/wireless/bcmdhd/include/sbchipc.h index f6e93df2c23..761bc887c94 100644 --- a/drivers/net/wireless/bcmdhd/include/sbchipc.h +++ b/drivers/net/wireless/bcmdhd/include/sbchipc.h @@ -5,7 +5,7 @@ * JTAG, 0/1/2 UARTs, clock frequency control, a watchdog interrupt timer, * GPIO interface, extbus, and support for serial and parallel flashes. * - * $Id: sbchipc.h 325465 2012-04-03 11:16:11Z $ + * $Id: sbchipc.h 328358 2012-04-18 23:14:31Z $ * * Copyright (C) 1999-2012, Broadcom Corporation * @@ -2128,14 +2128,12 @@ typedef volatile struct { #define RES4360_REGULATOR 0 #define RES4360_ILP_AVAIL 1 #define RES4360_ILP_REQ 2 -#define RES4360_XTAL_PU 3 -#define RES4360_ALP_AVAIL 4 -#define RES4360_BBPLLPWRSW_PU 5 -#define RES4360_HT_AVAIL 6 -#define RES4360_OTP_PU 7 -#define RES4360_USBLDO_PU 8 -#define RES4360_USBPLL_PWRSW_PU 9 -#define RES4360_LQ_AVAIL 10 +#define RES4360_XTAL_LDO_PU 3 +#define RES4360_XTAL_PU 4 +#define RES4360_ALP_AVAIL 5 +#define RES4360_BBPLLPWRSW_PU 6 +#define RES4360_HT_AVAIL 7 +#define RES4360_OTP_PU 8 #define CST4360_XTAL_40MZ 0x00000001 #define CST4360_SFLASH 0x00000002 diff --git a/drivers/net/wireless/bcmdhd/include/sbpcmcia.h b/drivers/net/wireless/bcmdhd/include/sbpcmcia.h index 36ef491beef..6ad98b521e7 100644 --- a/drivers/net/wireless/bcmdhd/include/sbpcmcia.h +++ b/drivers/net/wireless/bcmdhd/include/sbpcmcia.h @@ -21,7 +21,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: sbpcmcia.h 323197 2012-03-23 09:57:58Z $ + * $Id: sbpcmcia.h 326494 2012-04-09 13:29:57Z $ */ #ifndef _SBPCMCIA_H diff --git a/drivers/net/wireless/bcmdhd/include/wlfc_proto.h b/drivers/net/wireless/bcmdhd/include/wlfc_proto.h index 237c30786c6..82f29d1b14f 100644 --- a/drivers/net/wireless/bcmdhd/include/wlfc_proto.h +++ b/drivers/net/wireless/bcmdhd/include/wlfc_proto.h @@ -18,7 +18,7 @@ * Notwithstanding the above, under no circumstances may you combine this * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. -* $Id: wlfc_proto.h 322519 2012-03-21 01:15:45Z $ +* $Id: wlfc_proto.h 328114 2012-04-18 00:02:46Z $ * */ #ifndef __wlfc_proto_definitions_h__ @@ -64,7 +64,9 @@ --------------------------------------------------------------------------- | 15 | 1 | interface ID | NIC period start --------------------------------------------------------------------------- - | 16 | 7 | interface ID | NIC period end + | 16 | 1 | interface ID | NIC period end + --------------------------------------------------------------------------- + | 17 | 3 | (ifid, txs) | Action frame tx status --------------------------------------------------------------------------- | 255 | N/A | N/A | FILLER - This is a special type | | | | that has no length or value. @@ -93,6 +95,7 @@ #define WLFC_CTL_TYPE_NIC_PRD_START 15 #define WLFC_CTL_TYPE_NIC_PRD_END 16 +#define WLFC_CTL_TYPE_AF_TXS 17 #define WLFC_CTL_TYPE_FILLER 255 @@ -114,7 +117,8 @@ #define WLFC_CTL_VALUE_LEN_REQUEST_PACKET 3 /* credit, MAC-handle, prec_bitmap */ #define WLFC_CTL_VALUE_LEN_NIC_PRD_START 1 -#define WLFC_CTL_VALUE_LEN_NIC_PRD_END 7 +#define WLFC_CTL_VALUE_LEN_NIC_PRD_END 1 +#define WLFC_CTL_VALUE_LEN_AF_TXS 3 #define WLFC_PKTID_GEN_MASK 0x80000000 diff --git a/drivers/net/wireless/bcmdhd/include/wlioctl.h b/drivers/net/wireless/bcmdhd/include/wlioctl.h index 44cce45b4d9..c25f7944c0e 100644 --- a/drivers/net/wireless/bcmdhd/include/wlioctl.h +++ b/drivers/net/wireless/bcmdhd/include/wlioctl.h @@ -24,7 +24,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: wlioctl.h 326733 2012-04-10 18:54:41Z $ + * $Id: wlioctl.h 328096 2012-04-17 23:07:20Z $ */ #ifndef _wlioctl_h_ @@ -38,8 +38,18 @@ #include <bcmwifi_channels.h> #include <bcmwifi_rates.h> +#ifndef LINUX_POSTMOGRIFY_REMOVAL #include <bcm_mpool_pub.h> #include <bcmcdc.h> +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ + +/* LINUX_POSTMOGRIFY_REMOVAL: undefined during compile phase, so its + * a no-op for most cases. For hybrid and other open source releases, + * its defined during a second pass and mogrified out for distribution. + */ + + +#ifndef LINUX_POSTMOGRIFY_REMOVAL #ifndef INTF_NAME_SIZ #define INTF_NAME_SIZ 16 @@ -88,6 +98,7 @@ typedef struct wl_sa_query { struct ether_addr da; } wl_sa_query_t; +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ /* require default structure packing */ #define BWL_DEFAULT_PACKING @@ -121,7 +132,6 @@ typedef struct wl_bss_info_107 { uint32 ie_length; /* byte length of Information Elements */ /* variable length Information Elements */ } wl_bss_info_107_t; -#endif /* LINUX_POSTMOGRIFY_REMOVAL */ /* * Per-BSS information structure. @@ -167,6 +177,8 @@ typedef struct wl_bss_info_108 { /* variable length Information Elements */ } wl_bss_info_108_t; +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ + #define WL_BSS_INFO_VERSION 109 /* current version of wl_bss_info struct */ /* BSS info structure @@ -219,6 +231,8 @@ typedef struct wl_bss_info { /* bssinfo flag for nbss_cap */ #define VHT_BI_SGI_80MHZ 0x00000100 +#ifndef LINUX_POSTMOGRIFY_REMOVAL + typedef struct wl_bsscfg { uint32 wsec; uint32 WPA_auth; @@ -286,11 +300,15 @@ struct wl_clm_dload_info { }; typedef struct wl_clm_dload_info wl_clm_dload_info_t; +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ + typedef struct wlc_ssid { uint32 SSID_len; uchar SSID[32]; } wlc_ssid_t; +#ifndef LINUX_POSTMOGRIFY_REMOVAL + #define MAX_PREFERRED_AP_NUM 5 typedef struct wlc_fastssidinfo { uint32 SSID_channel[MAX_PREFERRED_AP_NUM]; @@ -302,7 +320,6 @@ typedef BWL_PRE_PACKED_STRUCT struct wnm_url { uint8 data[1]; } BWL_POST_PACKED_STRUCT wnm_url_t; -#ifndef LINUX_POSTMOGRIFY_REMOVAL typedef struct chan_scandata { uint8 txpower; uint8 pad; @@ -332,7 +349,6 @@ typedef struct wl_extdscan_params { } wl_extdscan_params_t; #define WL_EXTDSCAN_PARAMS_FIXED_SIZE (sizeof(wl_extdscan_params_t) - sizeof(chan_scandata_t)) -#endif /* LINUX_POSTMOGRIFY_REMOVAL */ #define WL_BSSTYPE_INFRA 1 #define WL_BSSTYPE_INDEP 0 @@ -402,6 +418,7 @@ typedef struct wl_iscan_params { /* 3 fields + size of wl_scan_params, not including variable length array */ #define WL_ISCAN_PARAMS_FIXED_SIZE (OFFSETOF(wl_iscan_params_t, params) + sizeof(wlc_ssid_t)) +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ typedef struct wl_scan_results { uint32 buflen; @@ -410,6 +427,7 @@ typedef struct wl_scan_results { wl_bss_info_t bss_info[1]; } wl_scan_results_t; +#ifndef LINUX_POSTMOGRIFY_REMOVAL /* size of wl_scan_results not including variable length array */ #define WL_SCAN_RESULTS_FIXED_SIZE (sizeof(wl_scan_results_t) - sizeof(wl_bss_info_t)) @@ -473,6 +491,7 @@ typedef struct wl_probe_params { struct ether_addr bssid; struct ether_addr mac; } wl_probe_params_t; +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ #define WL_MAXRATES_IN_SET 16 /* max # of rates in a rateset */ typedef struct wl_rateset { @@ -519,6 +538,8 @@ typedef struct wl_join_params { * of the wl_assoc_params_t struct when it does present. */ } wl_join_params_t; + +#ifndef LINUX_POSTMOGRIFY_REMOVAL #define WL_JOIN_PARAMS_FIXED_SIZE (OFFSETOF(wl_join_params_t, params) + \ WL_ASSOC_PARAMS_FIXED_SIZE) /* scan params for extended join */ @@ -708,8 +729,12 @@ typedef struct { #define ITFR_HOME_CHANNEL 2 /* home channel has interference */ #define ITFR_NOISY_ENVIRONMENT 4 /* noisy environemnt so feature stopped */ +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ + #define WLC_CNTRY_BUF_SZ 4 /* Country string is 3 bytes + NUL */ +#ifndef LINUX_POSTMOGRIFY_REMOVAL + typedef struct wl_country { char country_abbrev[WLC_CNTRY_BUF_SZ]; /* nul-terminated country code used in * the Country IE @@ -821,6 +846,7 @@ typedef enum sup_auth_status { WLC_SUP_KEYXCHANGE_WAIT_G1, /* Waiting to receive handshake msg G1 */ WLC_SUP_KEYXCHANGE_PREP_G2 /* Preparing to send handshake msg G2 */ } sup_auth_status_t; +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ /* Enumerate crypto algorithms */ #define CRYPTO_ALGO_OFF 0 @@ -957,6 +983,7 @@ typedef struct _pmkid_cand_list { pmkid_cand_t pmkid_cand[1]; } pmkid_cand_list_t; +#ifndef LINUX_POSTMOGRIFY_REMOVAL typedef struct wl_assoc_info { uint32 req_len; uint32 resp_len; @@ -969,7 +996,6 @@ typedef struct wl_assoc_info { /* flags */ #define WLC_ASSOC_REQ_IS_REASSOC 0x01 /* assoc req was actually a reassoc */ -#ifndef LINUX_POSTMOGRIFY_REMOVAL typedef struct wl_led_info { uint32 index; /* led index */ uint32 behavior; @@ -1051,7 +1077,6 @@ typedef struct { } link_val_t; #define BCM_MAC_STATUS_INDICATION (0x40010200L) -#endif /* LINUX_POSTMOGRIFY_REMOVAL */ typedef struct { uint16 ver; /* version of this struct */ @@ -1100,6 +1125,8 @@ typedef struct { #define WLC_TXFILTER_OVERRIDE_DISABLED 0 #define WLC_TXFILTER_OVERRIDE_ENABLED 1 +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ + /* Used to get specific STA parameters */ typedef struct { uint32 val; @@ -1125,6 +1152,7 @@ struct maclist { struct ether_addr ea[1]; /* variable length array of MAC addresses */ }; +#ifndef LINUX_POSTMOGRIFY_REMOVAL /* get pkt count struct passed through ioctl */ typedef struct get_pktcnt { uint rx_good_pkt; @@ -1193,6 +1221,8 @@ typedef struct { #define WL_IOCTL_ACTION_MASK 0x7e #define WL_IOCTL_ACTION_OVL_SHIFT 1 +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ + /* Linux network driver ioctl encoding */ typedef struct wl_ioctl { uint cmd; /* common ioctl definition */ @@ -1203,6 +1233,8 @@ typedef struct wl_ioctl { uint needed; /* bytes needed (optional) */ } wl_ioctl_t; +#ifndef LINUX_POSTMOGRIFY_REMOVAL + /* reference to wl_ioctl_t struct used by usermode driver */ #define ioctl_subtype set /* subtype param */ #define ioctl_pid used /* pid param */ @@ -1267,6 +1299,7 @@ typedef struct wlc_iov_trx_s { #else #define WLC_IOCTL_VERSION 1 #endif /* D11AC_IOTYPES */ +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ #define WLC_IOCTL_MAXLEN 8192 /* max length ioctl buffer required */ #define WLC_IOCTL_SMLEN 256 /* "small" length ioctl buffer required */ @@ -1422,6 +1455,8 @@ typedef struct wlc_iov_trx_s { #define WLC_GET_LAZYWDS 138 #define WLC_SET_LAZYWDS 139 #define WLC_GET_BANDLIST 140 + +#ifndef LINUX_POSTMOGRIFY_REMOVAL #define WLC_GET_BAND 141 #define WLC_SET_BAND 142 #define WLC_SCB_DEAUTHENTICATE 143 @@ -1461,7 +1496,9 @@ typedef struct wlc_iov_trx_s { /* #define WLC_DUMP_PHYREGS 177 */ /* no longer supported */ #define WLC_GET_PROTECTION_CONTROL 178 #define WLC_SET_PROTECTION_CONTROL 179 +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ #define WLC_GET_PHYLIST 180 +#ifndef LINUX_POSTMOGRIFY_REMOVAL #define WLC_ENCRYPT_STRENGTH 181 /* ndis only */ #define WLC_DECRYPT_STATUS 182 /* ndis only */ #define WLC_GET_KEY_SEQ 183 @@ -1482,7 +1519,9 @@ typedef struct wlc_iov_trx_s { /* #define WLC_GET_GMODE_PROTECTION_CTS 198 */ /* no longer supported */ /* #define WLC_SET_GMODE_PROTECTION_CTS 199 */ /* no longer supported */ #define WLC_SET_WSEC_TEST 200 +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ #define WLC_SCB_DEAUTHENTICATE_FOR_REASON 201 +#ifndef LINUX_POSTMOGRIFY_REMOVAL #define WLC_TKIP_COUNTERMEASURES 202 #define WLC_GET_PIOMODE 203 #define WLC_SET_PIOMODE 204 @@ -1498,6 +1537,7 @@ typedef struct wlc_iov_trx_s { #define WLC_START_CHANNEL_QA 214 #define WLC_GET_CHANNEL_SEL 215 #define WLC_START_CHANNEL_SEL 216 +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ #define WLC_GET_VALID_CHANNELS 217 #define WLC_GET_FAKEFRAG 218 #define WLC_SET_FAKEFRAG 219 @@ -1518,6 +1558,9 @@ typedef struct wlc_iov_trx_s { /* #define WLC_GET_GLACIAL_TIMER 234 */ /* no longer supported */ #define WLC_GET_KEY_PRIMARY 235 #define WLC_SET_KEY_PRIMARY 236 + +#ifndef LINUX_POSTMOGRIFY_REMOVAL + /* #define WLC_DUMP_RADIOREGS 237 */ /* no longer supported */ #define WLC_GET_ACI_ARGS 238 #define WLC_SET_ACI_ARGS 239 @@ -1543,8 +1586,10 @@ typedef struct wlc_iov_trx_s { #define WLC_LEGACY_LINK_BEHAVIOR 259 #define WLC_GET_CHANNELS_IN_COUNTRY 260 #define WLC_GET_COUNTRY_LIST 261 +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ #define WLC_GET_VAR 262 /* get value of named variable */ #define WLC_SET_VAR 263 /* set named variable to value */ +#ifndef LINUX_POSTMOGRIFY_REMOVAL #define WLC_NVRAM_GET 264 /* deprecated */ #define WLC_NVRAM_SET 265 #define WLC_NVRAM_DUMP 266 @@ -1671,6 +1716,7 @@ typedef struct { #define WL_AUTH_OPEN_SYSTEM 0 /* d11 open authentication */ #define WL_AUTH_SHARED_KEY 1 /* d11 shared authentication */ #define WL_AUTH_OPEN_SHARED 2 /* try open, then shared if open failed w/rc 13 */ +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ /* Bit masks for radio disabled status - returned by WL_GET_RADIO */ #define WL_RADIO_SW_DISABLE (1<<0) @@ -1686,6 +1732,7 @@ typedef struct { #define WL_TXPWR_OVERRIDE (1U<<31) #define WL_TXPWR_NEG (1U<<30) +#ifndef LINUX_POSTMOGRIFY_REMOVAL #define WL_PHY_PAVARS_LEN 32 /* Phy type, Band range, chain, a1[0], b0[0], b1[0] ... */ #define WL_PHY_PAVAR_VER 1 /* pavars version */ @@ -1746,6 +1793,7 @@ typedef struct wl_po { #define WL_CHAN_FREQ_RANGE_5G_BAND3 4 #define WL_CHAN_FREQ_RANGE_5G_4BAND 5 +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ /* phy types (returned by WLC_GET_PHYTPE) */ #define WLC_PHY_TYPE_A 0 @@ -1760,6 +1808,13 @@ typedef struct wl_po { #define WLC_PHY_TYPE_AC 11 #define WLC_PHY_TYPE_NULL 0xf +/* Values for PM */ +#define PM_OFF 0 +#define PM_MAX 1 +#define PM_FAST 2 +#define PM_FORCE_OFF 3 /* use this bit to force PM off even bt is active */ + +#ifndef LINUX_POSTMOGRIFY_REMOVAL /* MAC list modes */ #define WLC_MACMODE_DISABLED 0 /* MAC list disabled */ #define WLC_MACMODE_DENY 1 /* Deny specified (i.e. allow unspecified) */ @@ -1858,12 +1913,6 @@ typedef struct wl_po { /* when sgi_tx==WLC_SGI_ALL, bypass rate selection, enable sgi for all mcs */ #define WLC_SGI_ALL 0x02 -/* Values for PM */ -#define PM_OFF 0 -#define PM_MAX 1 -#define PM_FAST 2 -#define PM_FORCE_OFF 3 /* use this bit to force PM off even bt is active */ - #define LISTEN_INTERVAL 10 /* interference mitigation options */ #define INTERFERE_OVRRIDE_OFF -1 /* interference override off */ @@ -1951,7 +2000,6 @@ typedef struct wl_sampledata { uint32 flag; /* bit def */ } wl_sampledata_t; -#ifndef LINUX_POSTMOGRIFY_REMOVAL /* wl_radar_args_t */ typedef struct { int npulses; /* required number of pulses at n * t_int */ @@ -2629,7 +2677,6 @@ typedef struct wl_txchain_pwr_offsets { #define WL_BTC_FLAG_ECI (1 << 6) #define WL_BTC_FLAG_LIGHT (1 << 7) #define WL_BTC_FLAG_PARALLEL (1 << 8) -#endif /* !defined(LINUX_POSTMOGRIFY_REMOVAL) */ /* Message levels */ #define WL_ERROR_VAL 0x00000001 @@ -2796,6 +2843,7 @@ typedef struct wl_txchain_pwr_offsets { struct tsinfo_arg { uint8 octets[3]; }; +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ #define NFIFO 6 /* # tx/rx fifopairs */ @@ -3042,6 +3090,7 @@ typedef struct { uint32 cso_passthrough; /* hw cso required but passthrough */ } wl_cnt_t; +#ifndef LINUX_POSTMOGRIFY_REMOVAL typedef struct { uint16 version; /* see definition of WL_CNT_T_VERSION */ uint16 length; /* length of entire structure */ @@ -3271,8 +3320,6 @@ typedef struct { uint32 rxmpdu_stbc; /* count for stbc received */ } wl_cnt_ver_six_t; - -#ifndef LINUX_POSTMOGRIFY_REMOVAL #define WL_DELTA_STATS_T_VERSION 1 /* current version of wl_delta_stats_t struct */ typedef struct { @@ -3336,6 +3383,7 @@ typedef struct { } wl_wme_cnt_t; +#ifndef LINUX_POSTMOGRIFY_REMOVAL struct wl_msglevel2 { uint32 low; uint32 high; @@ -3354,7 +3402,6 @@ typedef struct wl_mkeep_alive_pkt { #define WL_MKEEP_ALIVE_FIXED_LEN OFFSETOF(wl_mkeep_alive_pkt_t, data) #define WL_MKEEP_ALIVE_PRECISION 500 -#ifndef LINUX_POSTMOGRIFY_REMOVAL #ifdef WLBA #define WLC_BA_CNT_VERSION 1 /* current version of wlc_ba_cnt_t */ @@ -3590,7 +3637,6 @@ typedef struct wl_chan_switch { chanspec_t chspec; /* chanspec */ uint8 reg; /* regulatory class */ } wl_chan_switch_t; -#endif /* LINUX_POSTMOGRIFY_REMOVAL */ /* Roaming trigger definitions for WLC_SET_ROAM_TRIGGER. * @@ -3739,10 +3785,13 @@ typedef struct wl_pfn { #define PNO_SCAN_MIN_FW_SEC 10 /* min time scan time in SEC */ #define WL_PFN_HIDDEN_MASK 0x4 +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ + /* TCP Checksum Offload defines */ #define TOE_TX_CSUM_OL 0x00000001 #define TOE_RX_CSUM_OL 0x00000002 +#ifndef LINUX_POSTMOGRIFY_REMOVAL /* TCP Checksum Offload error injection for testing */ #define TOE_ERRTEST_TX_CSUM 0x00000001 #define TOE_ERRTEST_RX_CSUM 0x00000002 @@ -4259,11 +4308,16 @@ typedef struct { #define OVERLAY_DOWNLOAD_CHUNKSIZE 1024 #endif /* DONGLEOVERLAYS */ +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ + /* no default structure packing */ #include <packed_section_end.h> /* require strict packing */ #include <packed_section_start.h> + +#ifndef LINUX_POSTMOGRIFY_REMOVAL + /* Structures and constants used for "vndr_ie" IOVar interface */ #define VNDR_IE_CMD_LEN 4 /* length of the set command string: * "add", "del" (+ NUL) @@ -4353,9 +4407,12 @@ typedef BWL_PRE_PACKED_STRUCT struct { } BWL_POST_PACKED_STRUCT txfailinfo_t; #endif /* WLMEDIA_TXFAILEVENT */ +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ + /* no strict structure packing */ #include <packed_section_end.h> +#ifndef LINUX_POSTMOGRIFY_REMOVAL /* Global ASSERT Logging */ #define ASSERTLOG_CUR_VER 0x0100 #define MAX_ASSRTSTR_LEN 64 @@ -4730,6 +4787,13 @@ typedef struct wl_nic_ifq { uint bsscfgidx; char ifname[BCM_MSG_IFNAME_MAX]; } wl_nic_ifq_t; + +/* data mode */ +/* nic_dm iovar */ +typedef struct wl_nic_dm { + uint8 enab; + chanspec_t chspec; +} wl_nic_dm_t; #endif /* WLNIC */ /* RFAWARE def */ @@ -4999,4 +5063,5 @@ typedef struct powersel_params { uint8 pwr_sel_exp_time; /* Time lapse for expiry of database */ } powersel_params_t; +#endif /* LINUX_POSTMOGRIFY_REMOVAL */ #endif /* _wlioctl_h_ */ |