diff options
| author | David S. Miller <davem@davemloft.net> | 2013-04-24 16:27:02 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2013-04-24 16:27:02 -0400 |
| commit | 8bfadc32b7ef56ac6245b7ae0a06f5ece193004b (patch) | |
| tree | 571c0c29cee15aa59088cf9a66f798b20005c1f5 /include/linux | |
| parent | 1bf9310a1336c26873dc3eb5fa188d4263897929 (diff) | |
| parent | 6ed0e321a0aef14a894e26658108bf7e895c36a6 (diff) | |
Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next
John W. Linville says:
====================
Here is one last(?) big wireless bits pull request before the merge window...
Regarding the mac80211 bits, Johannes says:
"Here's another big pull request for the -next stream. This one has a ton
of driver updates, which hopefully addresses all drivers, but maybe you
have more new drivers than I have in my tree? Not entirely sure, let me
know if this is the case and then I can merge wireless-next.
I'm including a large number of small changes, see the shortlog. The two
bigger things are making VHT compatible with not using channel contexts
(from Karl) and the stop-while-suspended fixes I developed together with
Stanislaw."
...and...
"This time I have a relatively large number of fixes and small
improvements, the most important one being Bob's RCU fix. The two big
things are Felix's work on rate scaling tables (with a big thanks to
Karl too) and my own work on CSA handling to finally properly handle HT
(and some VHT.)"
As for the iwlwifi bits, Johannes says:
"The biggest work here is Bluetooth coexistence and power saving. Other
than that, I have a few small fixes that weren't really needed for 3.9
and a new PCI ID."
About the NFC bits, Samuel says:
"With this one we have:
- A major pn533 update. The pn533 framing support has been changed in order to
easily support all pn533 derivatives. For example we now support the ACR122
USB dongle.
- An NFC MEI physical layer code factorization through the mei_phy NFC API.
Both the microread and the pn544 drivers now use it.
- LLCP aggregation support. This allows NFC p2p devices to send aggregated
frames containing all sort of LLCP frames except SYMM and aggregation
frames.
- More LLCP socket options for getting the remote device link parameters.
- Fixes for the LLCP socket option code added with the first pull request for
3.10.
- Some support for LLCP corner cases like 0 length SDUs and general DISC
(tagged with a 0,0 dsap ssap couple) handling.
- RFKILL support for NFC."
For the b43 bits, RafaĆ says:
"Let me remind the changes for b43:
> Changes include:
> 1) Minor improvements for HT-PHY code (BCM4331)
> 2) Code cleaning for HT-PHY and N-PHY"
Concerning the bluetooth bits, Gustavo says:
"A set of changes intended for 3.10. The biggest changes here are from David
Herrmann, he rewrote most of the HIDP layer making it more reliable. Marcel
added a driver setup stage for device that need special handling on their
early initialization. Other than that we have the usual clean ups, bugfixes
and small improvements."
Along with all that, there is the usual collection of random/various
updates to ath9k, mwifiex, brcmfmac, brcmsmac, rt2x00, and wil6210.
I also included a pull of the wireless tree to resolve a merge conflict.
Please let me know if there are problems!
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/bcma/bcma.h | 1 | ||||
| -rw-r--r-- | include/linux/bcma/bcma_driver_chipcommon.h | 3 | ||||
| -rw-r--r-- | include/linux/bcma/bcma_regs.h | 1 | ||||
| -rw-r--r-- | include/linux/ieee80211.h | 73 | ||||
| -rw-r--r-- | include/linux/platform_data/brcmfmac-sdio.h | 124 |
5 files changed, 199 insertions, 3 deletions
diff --git a/include/linux/bcma/bcma.h b/include/linux/bcma/bcma.h index 0ab6712fd76b..f14a98a79c9d 100644 --- a/include/linux/bcma/bcma.h +++ b/include/linux/bcma/bcma.h | |||
| @@ -134,6 +134,7 @@ struct bcma_host_ops { | |||
| 134 | #define BCMA_CORE_I2S 0x834 | 134 | #define BCMA_CORE_I2S 0x834 |
| 135 | #define BCMA_CORE_SDR_DDR1_MEM_CTL 0x835 /* SDR/DDR1 memory controller core */ | 135 | #define BCMA_CORE_SDR_DDR1_MEM_CTL 0x835 /* SDR/DDR1 memory controller core */ |
| 136 | #define BCMA_CORE_SHIM 0x837 /* SHIM component in ubus/6362 */ | 136 | #define BCMA_CORE_SHIM 0x837 /* SHIM component in ubus/6362 */ |
| 137 | #define BCMA_CORE_ARM_CR4 0x83e | ||
| 137 | #define BCMA_CORE_DEFAULT 0xFFF | 138 | #define BCMA_CORE_DEFAULT 0xFFF |
| 138 | 139 | ||
| 139 | #define BCMA_MAX_NR_CORES 16 | 140 | #define BCMA_MAX_NR_CORES 16 |
diff --git a/include/linux/bcma/bcma_driver_chipcommon.h b/include/linux/bcma/bcma_driver_chipcommon.h index 453fcc914683..b8b09eac60a4 100644 --- a/include/linux/bcma/bcma_driver_chipcommon.h +++ b/include/linux/bcma/bcma_driver_chipcommon.h | |||
| @@ -316,6 +316,9 @@ | |||
| 316 | #define BCMA_CC_PMU_CTL 0x0600 /* PMU control */ | 316 | #define BCMA_CC_PMU_CTL 0x0600 /* PMU control */ |
| 317 | #define BCMA_CC_PMU_CTL_ILP_DIV 0xFFFF0000 /* ILP div mask */ | 317 | #define BCMA_CC_PMU_CTL_ILP_DIV 0xFFFF0000 /* ILP div mask */ |
| 318 | #define BCMA_CC_PMU_CTL_ILP_DIV_SHIFT 16 | 318 | #define BCMA_CC_PMU_CTL_ILP_DIV_SHIFT 16 |
| 319 | #define BCMA_CC_PMU_CTL_RES 0x00006000 /* reset control mask */ | ||
| 320 | #define BCMA_CC_PMU_CTL_RES_SHIFT 13 | ||
| 321 | #define BCMA_CC_PMU_CTL_RES_RELOAD 0x2 /* reload POR values */ | ||
| 319 | #define BCMA_CC_PMU_CTL_PLL_UPD 0x00000400 | 322 | #define BCMA_CC_PMU_CTL_PLL_UPD 0x00000400 |
| 320 | #define BCMA_CC_PMU_CTL_NOILPONW 0x00000200 /* No ILP on wait */ | 323 | #define BCMA_CC_PMU_CTL_NOILPONW 0x00000200 /* No ILP on wait */ |
| 321 | #define BCMA_CC_PMU_CTL_HTREQEN 0x00000100 /* HT req enable */ | 324 | #define BCMA_CC_PMU_CTL_HTREQEN 0x00000100 /* HT req enable */ |
diff --git a/include/linux/bcma/bcma_regs.h b/include/linux/bcma/bcma_regs.h index 7e8104bb7a7e..917dcd7965e7 100644 --- a/include/linux/bcma/bcma_regs.h +++ b/include/linux/bcma/bcma_regs.h | |||
| @@ -37,6 +37,7 @@ | |||
| 37 | #define BCMA_IOST_BIST_DONE 0x8000 | 37 | #define BCMA_IOST_BIST_DONE 0x8000 |
| 38 | #define BCMA_RESET_CTL 0x0800 | 38 | #define BCMA_RESET_CTL 0x0800 |
| 39 | #define BCMA_RESET_CTL_RESET 0x0001 | 39 | #define BCMA_RESET_CTL_RESET 0x0001 |
| 40 | #define BCMA_RESET_ST 0x0804 | ||
| 40 | 41 | ||
| 41 | /* BCMA PCI config space registers. */ | 42 | /* BCMA PCI config space registers. */ |
| 42 | #define BCMA_PCI_PMCSR 0x44 | 43 | #define BCMA_PCI_PMCSR 0x44 |
diff --git a/include/linux/ieee80211.h b/include/linux/ieee80211.h index 4cf0c9e4dd99..06b0ed0154a4 100644 --- a/include/linux/ieee80211.h +++ b/include/linux/ieee80211.h | |||
| @@ -673,6 +673,36 @@ struct ieee80211_channel_sw_ie { | |||
| 673 | } __packed; | 673 | } __packed; |
| 674 | 674 | ||
| 675 | /** | 675 | /** |
| 676 | * struct ieee80211_ext_chansw_ie | ||
| 677 | * | ||
| 678 | * This structure represents the "Extended Channel Switch Announcement element" | ||
| 679 | */ | ||
| 680 | struct ieee80211_ext_chansw_ie { | ||
| 681 | u8 mode; | ||
| 682 | u8 new_operating_class; | ||
| 683 | u8 new_ch_num; | ||
| 684 | u8 count; | ||
| 685 | } __packed; | ||
| 686 | |||
| 687 | /** | ||
| 688 | * struct ieee80211_sec_chan_offs_ie - secondary channel offset IE | ||
| 689 | * @sec_chan_offs: secondary channel offset, uses IEEE80211_HT_PARAM_CHA_SEC_* | ||
| 690 | * values here | ||
| 691 | * This structure represents the "Secondary Channel Offset element" | ||
| 692 | */ | ||
| 693 | struct ieee80211_sec_chan_offs_ie { | ||
| 694 | u8 sec_chan_offs; | ||
| 695 | } __packed; | ||
| 696 | |||
| 697 | /** | ||
| 698 | * struct ieee80211_wide_bw_chansw_ie - wide bandwidth channel switch IE | ||
| 699 | */ | ||
| 700 | struct ieee80211_wide_bw_chansw_ie { | ||
| 701 | u8 new_channel_width; | ||
| 702 | u8 new_center_freq_seg0, new_center_freq_seg1; | ||
| 703 | } __packed; | ||
| 704 | |||
| 705 | /** | ||
| 676 | * struct ieee80211_tim | 706 | * struct ieee80211_tim |
| 677 | * | 707 | * |
| 678 | * This structure refers to "Traffic Indication Map information element" | 708 | * This structure refers to "Traffic Indication Map information element" |
| @@ -840,12 +870,15 @@ struct ieee80211_mgmt { | |||
| 840 | } __packed wme_action; | 870 | } __packed wme_action; |
| 841 | struct{ | 871 | struct{ |
| 842 | u8 action_code; | 872 | u8 action_code; |
| 843 | u8 element_id; | 873 | u8 variable[0]; |
| 844 | u8 length; | ||
| 845 | struct ieee80211_channel_sw_ie sw_elem; | ||
| 846 | } __packed chan_switch; | 874 | } __packed chan_switch; |
| 847 | struct{ | 875 | struct{ |
| 848 | u8 action_code; | 876 | u8 action_code; |
| 877 | struct ieee80211_ext_chansw_ie data; | ||
| 878 | u8 variable[0]; | ||
| 879 | } __packed ext_chan_switch; | ||
| 880 | struct{ | ||
| 881 | u8 action_code; | ||
| 849 | u8 dialog_token; | 882 | u8 dialog_token; |
| 850 | u8 element_id; | 883 | u8 element_id; |
| 851 | u8 length; | 884 | u8 length; |
| @@ -1027,6 +1060,26 @@ enum ieee80211_p2p_attr_id { | |||
| 1027 | IEEE80211_P2P_ATTR_MAX | 1060 | IEEE80211_P2P_ATTR_MAX |
| 1028 | }; | 1061 | }; |
| 1029 | 1062 | ||
| 1063 | /* Notice of Absence attribute - described in P2P spec 4.1.14 */ | ||
| 1064 | /* Typical max value used here */ | ||
| 1065 | #define IEEE80211_P2P_NOA_DESC_MAX 4 | ||
| 1066 | |||
| 1067 | struct ieee80211_p2p_noa_desc { | ||
| 1068 | u8 count; | ||
| 1069 | __le32 duration; | ||
| 1070 | __le32 interval; | ||
| 1071 | __le32 start_time; | ||
| 1072 | } __packed; | ||
| 1073 | |||
| 1074 | struct ieee80211_p2p_noa_attr { | ||
| 1075 | u8 index; | ||
| 1076 | u8 oppps_ctwindow; | ||
| 1077 | struct ieee80211_p2p_noa_desc desc[IEEE80211_P2P_NOA_DESC_MAX]; | ||
| 1078 | } __packed; | ||
| 1079 | |||
| 1080 | #define IEEE80211_P2P_OPPPS_ENABLE_BIT BIT(7) | ||
| 1081 | #define IEEE80211_P2P_OPPPS_CTWINDOW_MASK 0x7F | ||
| 1082 | |||
| 1030 | /** | 1083 | /** |
| 1031 | * struct ieee80211_bar - HT Block Ack Request | 1084 | * struct ieee80211_bar - HT Block Ack Request |
| 1032 | * | 1085 | * |
| @@ -1618,6 +1671,7 @@ enum ieee80211_eid { | |||
| 1618 | 1671 | ||
| 1619 | WLAN_EID_HT_CAPABILITY = 45, | 1672 | WLAN_EID_HT_CAPABILITY = 45, |
| 1620 | WLAN_EID_HT_OPERATION = 61, | 1673 | WLAN_EID_HT_OPERATION = 61, |
| 1674 | WLAN_EID_SECONDARY_CHANNEL_OFFSET = 62, | ||
| 1621 | 1675 | ||
| 1622 | WLAN_EID_RSN = 48, | 1676 | WLAN_EID_RSN = 48, |
| 1623 | WLAN_EID_MMIE = 76, | 1677 | WLAN_EID_MMIE = 76, |
| @@ -1652,6 +1706,8 @@ enum ieee80211_eid { | |||
| 1652 | WLAN_EID_VHT_CAPABILITY = 191, | 1706 | WLAN_EID_VHT_CAPABILITY = 191, |
| 1653 | WLAN_EID_VHT_OPERATION = 192, | 1707 | WLAN_EID_VHT_OPERATION = 192, |
| 1654 | WLAN_EID_OPMODE_NOTIF = 199, | 1708 | WLAN_EID_OPMODE_NOTIF = 199, |
| 1709 | WLAN_EID_WIDE_BW_CHANNEL_SWITCH = 194, | ||
| 1710 | WLAN_EID_CHANNEL_SWITCH_WRAPPER = 196, | ||
| 1655 | 1711 | ||
| 1656 | /* 802.11ad */ | 1712 | /* 802.11ad */ |
| 1657 | WLAN_EID_NON_TX_BSSID_CAP = 83, | 1713 | WLAN_EID_NON_TX_BSSID_CAP = 83, |
| @@ -1775,6 +1831,7 @@ enum ieee80211_key_len { | |||
| 1775 | 1831 | ||
| 1776 | /* Public action codes */ | 1832 | /* Public action codes */ |
| 1777 | enum ieee80211_pub_actioncode { | 1833 | enum ieee80211_pub_actioncode { |
| 1834 | WLAN_PUB_ACTION_EXT_CHANSW_ANN = 4, | ||
| 1778 | WLAN_PUB_ACTION_TDLS_DISCOVER_RES = 14, | 1835 | WLAN_PUB_ACTION_TDLS_DISCOVER_RES = 14, |
| 1779 | }; | 1836 | }; |
| 1780 | 1837 | ||
| @@ -1935,6 +1992,16 @@ enum ieee80211_timeout_interval_type { | |||
| 1935 | WLAN_TIMEOUT_ASSOC_COMEBACK = 3 /* 802.11w */, | 1992 | WLAN_TIMEOUT_ASSOC_COMEBACK = 3 /* 802.11w */, |
| 1936 | }; | 1993 | }; |
| 1937 | 1994 | ||
| 1995 | /** | ||
| 1996 | * struct ieee80211_timeout_interval_ie - Timeout Interval element | ||
