diff options
| author | John W. Linville <linville@tuxdriver.com> | 2013-02-18 13:47:13 -0500 |
|---|---|---|
| committer | John W. Linville <linville@tuxdriver.com> | 2013-02-18 13:47:13 -0500 |
| commit | 98d5fac2330779e6eea6431a90b44c7476260dcc (patch) | |
| tree | 99870656d835fc6c12093bc67517956cc7b3d6ec /include/linux | |
| parent | 4153577a8d318ae02b3791341e10e78416de402f (diff) | |
| parent | 9e97d14b4923da524d202f2e005d5d30b70db9d6 (diff) | |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem
Conflicts:
drivers/net/wireless/iwlwifi/dvm/tx.c
drivers/net/wireless/ti/wlcore/sdio.c
drivers/net/wireless/ti/wlcore/spi.c
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/ieee80211.h | 50 | ||||
| -rw-r--r-- | include/linux/platform_data/microread.h | 35 | ||||
| -rw-r--r-- | include/linux/wl12xx.h | 16 |
3 files changed, 95 insertions, 6 deletions
diff --git a/include/linux/ieee80211.h b/include/linux/ieee80211.h index 11c8bc87fdcb..7e24fe0cfbcd 100644 --- a/include/linux/ieee80211.h +++ b/include/linux/ieee80211.h | |||
| @@ -151,6 +151,11 @@ | |||
| 151 | /* Mesh Control 802.11s */ | 151 | /* Mesh Control 802.11s */ |
| 152 | #define IEEE80211_QOS_CTL_MESH_CONTROL_PRESENT 0x0100 | 152 | #define IEEE80211_QOS_CTL_MESH_CONTROL_PRESENT 0x0100 |
| 153 | 153 | ||
| 154 | /* Mesh Power Save Level */ | ||
| 155 | #define IEEE80211_QOS_CTL_MESH_PS_LEVEL 0x0200 | ||
| 156 | /* Mesh Receiver Service Period Initiated */ | ||
| 157 | #define IEEE80211_QOS_CTL_RSPI 0x0400 | ||
| 158 | |||
| 154 | /* U-APSD queue for WMM IEs sent by AP */ | 159 | /* U-APSD queue for WMM IEs sent by AP */ |
| 155 | #define IEEE80211_WMM_IE_AP_QOSINFO_UAPSD (1<<7) | 160 | #define IEEE80211_WMM_IE_AP_QOSINFO_UAPSD (1<<7) |
| 156 | #define IEEE80211_WMM_IE_AP_QOSINFO_PARAM_SET_CNT_MASK 0x0f | 161 | #define IEEE80211_WMM_IE_AP_QOSINFO_PARAM_SET_CNT_MASK 0x0f |
| @@ -675,11 +680,14 @@ struct ieee80211_meshconf_ie { | |||
| 675 | * @IEEE80211_MESHCONF_CAPAB_FORWARDING: the STA forwards MSDUs | 680 | * @IEEE80211_MESHCONF_CAPAB_FORWARDING: the STA forwards MSDUs |
| 676 | * @IEEE80211_MESHCONF_CAPAB_TBTT_ADJUSTING: TBTT adjustment procedure | 681 | * @IEEE80211_MESHCONF_CAPAB_TBTT_ADJUSTING: TBTT adjustment procedure |
| 677 | * is ongoing | 682 | * is ongoing |
| 683 | * @IEEE80211_MESHCONF_CAPAB_POWER_SAVE_LEVEL: STA is in deep sleep mode or has | ||
| 684 | * neighbors in deep sleep mode | ||
| 678 | */ | 685 | */ |
| 679 | enum mesh_config_capab_flags { | 686 | enum mesh_config_capab_flags { |
| 680 | IEEE80211_MESHCONF_CAPAB_ACCEPT_PLINKS = 0x01, | 687 | IEEE80211_MESHCONF_CAPAB_ACCEPT_PLINKS = 0x01, |
| 681 | IEEE80211_MESHCONF_CAPAB_FORWARDING = 0x08, | 688 | IEEE80211_MESHCONF_CAPAB_FORWARDING = 0x08, |
| 682 | IEEE80211_MESHCONF_CAPAB_TBTT_ADJUSTING = 0x20, | 689 | IEEE80211_MESHCONF_CAPAB_TBTT_ADJUSTING = 0x20, |
| 690 | IEEE80211_MESHCONF_CAPAB_POWER_SAVE_LEVEL = 0x40, | ||
| 683 | }; | 691 | }; |
| 684 | 692 | ||
| 685 | /** | 693 | /** |
| @@ -706,6 +714,30 @@ enum ieee80211_ht_chanwidth_values { | |||
| 706 | IEEE80211_HT_CHANWIDTH_ANY = 1, | 714 | IEEE80211_HT_CHANWIDTH_ANY = 1, |
| 707 | }; | 715 | }; |
| 708 | 716 | ||
| 717 | /** | ||
| 718 | * enum ieee80211_opmode_bits - VHT operating mode field bits | ||
| 719 | * @IEEE80211_OPMODE_NOTIF_CHANWIDTH_MASK: channel width mask | ||
| 720 | * @IEEE80211_OPMODE_NOTIF_CHANWIDTH_20MHZ: 20 MHz channel width | ||
| 721 | * @IEEE80211_OPMODE_NOTIF_CHANWIDTH_40MHZ: 40 MHz channel width | ||
| 722 | * @IEEE80211_OPMODE_NOTIF_CHANWIDTH_80MHZ: 80 MHz channel width | ||
| 723 | * @IEEE80211_OPMODE_NOTIF_CHANWIDTH_160MHZ: 160 MHz or 80+80 MHz channel width | ||
| 724 | * @IEEE80211_OPMODE_NOTIF_RX_NSS_MASK: number of spatial streams mask | ||
| 725 | * (the NSS value is the value of this field + 1) | ||
| 726 | * @IEEE80211_OPMODE_NOTIF_RX_NSS_SHIFT: number of spatial streams shift | ||
| 727 | * @IEEE80211_OPMODE_NOTIF_RX_NSS_TYPE_BF: indicates streams in SU-MIMO PPDU | ||
| 728 | * using a beamforming steering matrix | ||
| 729 | */ | ||
| 730 | enum ieee80211_vht_opmode_bits { | ||
| 731 | IEEE80211_OPMODE_NOTIF_CHANWIDTH_MASK = 3, | ||
| 732 | IEEE80211_OPMODE_NOTIF_CHANWIDTH_20MHZ = 0, | ||
| 733 | IEEE80211_OPMODE_NOTIF_CHANWIDTH_40MHZ = 1, | ||
| 734 | IEEE80211_OPMODE_NOTIF_CHANWIDTH_80MHZ = 2, | ||
| 735 | IEEE80211_OPMODE_NOTIF_CHANWIDTH_160MHZ = 3, | ||
| 736 | IEEE80211_OPMODE_NOTIF_RX_NSS_MASK = 0x70, | ||
| 737 | IEEE80211_OPMODE_NOTIF_RX_NSS_SHIFT = 4, | ||
| 738 | IEEE80211_OPMODE_NOTIF_RX_NSS_TYPE_BF = 0x80, | ||
| 739 | }; | ||
| 740 | |||
| 709 | #define WLAN_SA_QUERY_TR_ID_LEN 2 | 741 | #define WLAN_SA_QUERY_TR_ID_LEN 2 |
| 710 | 742 | ||
| 711 | struct ieee80211_mgmt { | 743 | struct ieee80211_mgmt { |
| @@ -836,6 +868,10 @@ struct ieee80211_mgmt { | |||
| 836 | __le16 capability; | 868 | __le16 capability; |
| 837 | u8 variable[0]; | 869 | u8 variable[0]; |
| 838 | } __packed tdls_discover_resp; | 870 | } __packed tdls_discover_resp; |
| 871 | struct { | ||
| 872 | u8 action_code; | ||
| 873 | u8 operating_mode; | ||
| 874 | } __packed vht_opmode_notif; | ||
| 839 | } u; | 875 | } u; |
| 840 | } __packed action; | 876 | } __packed action; |
| 841 | } u; | 877 | } u; |
| @@ -1265,6 +1301,7 @@ struct ieee80211_vht_operation { | |||
| 1265 | #define IEEE80211_VHT_CAP_MAX_MPDU_LENGTH_11454 0x00000002 | 1301 | #define IEEE80211_VHT_CAP_MAX_MPDU_LENGTH_11454 0x00000002 |
| 1266 | #define IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160MHZ 0x00000004 | 1302 | #define IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160MHZ 0x00000004 |
| 1267 | #define IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160_80PLUS80MHZ 0x00000008 | 1303 | #define IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160_80PLUS80MHZ 0x00000008 |
| 1304 | #define IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_MASK 0x0000000C | ||
| 1268 | #define IEEE80211_VHT_CAP_RXLDPC 0x00000010 | 1305 | #define IEEE80211_VHT_CAP_RXLDPC 0x00000010 |
| 1269 | #define IEEE80211_VHT_CAP_SHORT_GI_80 0x00000020 | 1306 | #define IEEE80211_VHT_CAP_SHORT_GI_80 0x00000020 |
| 1270 | #define IEEE80211_VHT_CAP_SHORT_GI_160 0x00000040 | 1307 | #define IEEE80211_VHT_CAP_SHORT_GI_160 0x00000040 |
| @@ -1590,6 +1627,7 @@ enum ieee80211_eid { | |||
| 1590 | 1627 | ||
| 1591 | WLAN_EID_VHT_CAPABILITY = 191, | 1628 | WLAN_EID_VHT_CAPABILITY = 191, |
| 1592 | WLAN_EID_VHT_OPERATION = 192, | 1629 | WLAN_EID_VHT_OPERATION = 192, |
| 1630 | WLAN_EID_OPMODE_NOTIF = 199, | ||
| 1593 | 1631 | ||
| 1594 | /* 802.11ad */ | 1632 | /* 802.11ad */ |
| 1595 | WLAN_EID_NON_TX_BSSID_CAP = 83, | 1633 | WLAN_EID_NON_TX_BSSID_CAP = 83, |
| @@ -1644,6 +1682,7 @@ enum ieee80211_category { | |||
| 1644 | WLAN_CATEGORY_WMM = 17, | 1682 | WLAN_CATEGORY_WMM = 17, |
| 1645 | WLAN_CATEGORY_FST = 18, | 1683 | WLAN_CATEGORY_FST = 18, |
| 1646 | WLAN_CATEGORY_UNPROT_DMG = 20, | 1684 | WLAN_CATEGORY_UNPROT_DMG = 20, |
| 1685 | WLAN_CATEGORY_VHT = 21, | ||
| 1647 | WLAN_CATEGORY_VENDOR_SPECIFIC_PROTECTED = 126, | 1686 | WLAN_CATEGORY_VENDOR_SPECIFIC_PROTECTED = 126, |
| 1648 | WLAN_CATEGORY_VENDOR_SPECIFIC = 127, | 1687 | WLAN_CATEGORY_VENDOR_SPECIFIC = 127, |
| 1649 | }; | 1688 | }; |
| @@ -1669,6 +1708,13 @@ enum ieee80211_ht_actioncode { | |||
| 1669 | WLAN_HT_ACTION_ASEL_IDX_FEEDBACK = 7, | 1708 | WLAN_HT_ACTION_ASEL_IDX_FEEDBACK = 7, |
| 1670 | }; | 1709 | }; |
| 1671 | 1710 | ||
| 1711 | /* VHT action codes */ | ||
| 1712 | enum ieee80211_vht_actioncode { | ||
| 1713 | WLAN_VHT_ACTION_COMPRESSED_BF = 0, | ||
| 1714 | WLAN_VHT_ACTION_GROUPID_MGMT = 1, | ||
| 1715 | WLAN_VHT_ACTION_OPMODE_NOTIF = 2, | ||
| 1716 | }; | ||
| 1717 | |||
| 1672 | /* Self Protected Action codes */ | 1718 | /* Self Protected Action codes */ |
| 1673 | enum ieee80211_self_protected_actioncode { | 1719 | enum ieee80211_self_protected_actioncode { |
| 1674 | WLAN_SP_RESERVED = 0, | 1720 | WLAN_SP_RESERVED = 0, |
| @@ -1730,6 +1776,8 @@ enum ieee80211_tdls_actioncode { | |||
| 1730 | #define WLAN_EXT_CAPA5_TDLS_ENABLED BIT(5) | 1776 | #define WLAN_EXT_CAPA5_TDLS_ENABLED BIT(5) |
| 1731 | #define WLAN_EXT_CAPA5_TDLS_PROHIBITED BIT(6) | 1777 | #define WLAN_EXT_CAPA5_TDLS_PROHIBITED BIT(6) |
| 1732 | 1778 | ||
| 1779 | #define WLAN_EXT_CAPA8_OPMODE_NOTIF BIT(6) | ||
| 1780 | |||
| 1733 | /* TDLS specific payload type in the LLC/SNAP header */ | 1781 | /* TDLS specific payload type in the LLC/SNAP header */ |
| 1734 | #define WLAN_TDLS_SNAP_RFTYPE 0x2 | 1782 | #define WLAN_TDLS_SNAP_RFTYPE 0x2 |
| 1735 | 1783 | ||
| @@ -2106,7 +2154,7 @@ static inline unsigned long ieee80211_tu_to_usec(unsigned long tu) | |||
| 2106 | * @tim_len: length of the TIM IE | 2154 | * @tim_len: length of the TIM IE |
| 2107 | * @aid: the AID to look for | 2155 | * @aid: the AID to look for |
| 2108 | */ | 2156 | */ |
| 2109 | static inline bool ieee80211_check_tim(struct ieee80211_tim_ie *tim, | 2157 | static inline bool ieee80211_check_tim(const struct ieee80211_tim_ie *tim, |
| 2110 | u8 tim_len, u16 aid) | 2158 | u8 tim_len, u16 aid) |
| 2111 | { | 2159 | { |
| 2112 | u8 mask; | 2160 | u8 mask; |
diff --git a/include/linux/platform_data/microread.h b/include/linux/platform_data/microread.h new file mode 100644 index 000000000000..cfda59b226ee --- /dev/null +++ b/include/linux/platform_data/microread.h | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | /* | ||
| 2 | * Driver include for the PN544 NFC chip. | ||
| 3 | * | ||
| 4 | * Copyright (C) 2011 Tieto Poland | ||
| 5 | * Copyright (C) 2012 Intel Corporation. All rights reserved. | ||
| 6 | * | ||
| 7 | * This program is free software; you can redistribute it and/or | ||
| 8 | * modify it under the terms of the GNU General Public License | ||
| 9 | * version 2 as published by the Free Software Foundation. | ||
| 10 | * | ||
| 11 | * This program is distributed in the hope that it will be useful, | ||
| 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 14 | * GNU General Public License for more details. | ||
| 15 | * | ||
| 16 | * You should have received a copy of the GNU General Public License | ||
| 17 | * along with this program; if not, write to the Free Software | ||
| 18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
| 19 | */ | ||
| 20 | |||
| 21 | #ifndef _MICROREAD_H | ||
| 22 | #define _MICROREAD_H | ||
| 23 | |||
| 24 | #include <linux/i2c.h> | ||
| 25 | |||
| 26 | #define MICROREAD_DRIVER_NAME "microread" | ||
| 27 | |||
| 28 | /* board config platform data for microread */ | ||
| 29 | struct microread_nfc_platform_data { | ||
| 30 | unsigned int rst_gpio; | ||
| 31 | unsigned int irq_gpio; | ||
| 32 | unsigned int ioh_gpio; | ||
| 33 | }; | ||
| 34 | |||
| 35 | #endif /* _MICROREAD_H */ | ||
diff --git a/include/linux/wl12xx.h b/include/linux/wl12xx.h index 0d6373195d32..a54fe82e704b 100644 --- a/include/linux/wl12xx.h +++ b/include/linux/wl12xx.h | |||
| @@ -24,6 +24,8 @@ | |||
| 24 | #ifndef _LINUX_WL12XX_H | 24 | #ifndef _LINUX_WL12XX_H |
| 25 | #define _LINUX_WL12XX_H | 25 | #define _LINUX_WL12XX_H |
| 26 | 26 | ||
| 27 | #include <linux/err.h> | ||
| 28 | |||
| 27 | /* Reference clock values */ | 29 | /* Reference clock values */ |
| 28 | enum { | 30 | enum { |
| 29 | WL12XX_REFCLOCK_19 = 0, /* 19.2 MHz */ | 31 | WL12XX_REFCLOCK_19 = 0, /* 19.2 MHz */ |
| @@ -55,17 +57,17 @@ struct wl12xx_platform_data { | |||
| 55 | int board_tcxo_clock; | 57 | int board_tcxo_clock; |
| 56 | unsigned long platform_quirks; | 58 | unsigned long platform_quirks; |
| 57 | bool pwr_in_suspend; | 59 | bool pwr_in_suspend; |
| 58 | |||
| 59 | struct wl1271_if_operations *ops; | ||
| 60 | }; | 60 | }; |
| 61 | 61 | ||
| 62 | /* Platform does not support level trigger interrupts */ | 62 | /* Platform does not support level trigger interrupts */ |
| 63 | #define WL12XX_PLATFORM_QUIRK_EDGE_IRQ BIT(0) | 63 | #define WL12XX_PLATFORM_QUIRK_EDGE_IRQ BIT(0) |
| 64 | 64 | ||
| 65 | #ifdef CONFIG_WL12XX_PLATFORM_DATA | 65 | #ifdef CONFIG_WILINK_PLATFORM_DATA |
| 66 | 66 | ||
| 67 | int wl12xx_set_platform_data(const struct wl12xx_platform_data *data); | 67 | int wl12xx_set_platform_data(const struct wl12xx_platform_data *data); |
| 68 | 68 | ||
| 69 | struct wl12xx_platform_data *wl12xx_get_platform_data(void); | ||
| 70 | |||
| 69 | #else | 71 | #else |
| 70 | 72 | ||
| 71 | static inline | 73 | static inline |
| @@ -74,8 +76,12 @@ int wl12xx_set_platform_data(const struct wl12xx_platform_data *data) | |||
| 74 | return -ENOSYS; | 76 | return -ENOSYS; |
| 75 | } | 77 | } |
| 76 | 78 | ||
| 77 | #endif | 79 | static inline |
| 80 | struct wl12xx_platform_data *wl12xx_get_platform_data(void) | ||
| 81 | { | ||
| 82 | return ERR_PTR(-ENODATA); | ||
| 83 | } | ||
| 78 | 84 | ||
| 79 | struct wl12xx_platform_data *wl12xx_get_platform_data(void); | 85 | #endif |
| 80 | 86 | ||
| 81 | #endif | 87 | #endif |
