summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/bcmdhd/include
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/bcmdhd/include')
-rw-r--r--drivers/net/wireless/bcmdhd/include/bcmsdh.h4
-rw-r--r--drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h3
-rw-r--r--drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h74
-rw-r--r--drivers/net/wireless/bcmdhd/include/bcmutils.h2
-rw-r--r--drivers/net/wireless/bcmdhd/include/dhdioctl.h4
-rw-r--r--drivers/net/wireless/bcmdhd/include/epivers.h10
-rw-r--r--drivers/net/wireless/bcmdhd/include/proto/802.11.h23
-rw-r--r--drivers/net/wireless/bcmdhd/include/proto/bcmevent.h1
-rw-r--r--drivers/net/wireless/bcmdhd/include/proto/p2p.h2
-rw-r--r--drivers/net/wireless/bcmdhd/include/sbchipc.h16
-rw-r--r--drivers/net/wireless/bcmdhd/include/sbpcmcia.h2
-rw-r--r--drivers/net/wireless/bcmdhd/include/wlfc_proto.h10
-rw-r--r--drivers/net/wireless/bcmdhd/include/wlioctl.h101
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_ */