Showing the changes to include/uapi/linux (2 of 210 files). Show all
Unified · Split
| @@ -5,20 +5,17 @@ · 4 unmodified lines | ||
| 5 | 5 | * Lauro Ramos Venancio <lauro.venancio@openbossa.org> |
| 6 | 6 | * Aloisio Almeida Jr <aloisio.almeida@openbossa.org> |
| 7 | 7 | * |
| 8 | − * This program is free software; you can redistribute it and/or modify | |
| 9 | − * it under the terms of the GNU General Public License as published by | |
| 10 | − * the Free Software Foundation; either version 2 of the License, or | |
| 11 | − * (at your option) any later version. | |
| 8 | + * Permission to use, copy, modify, and/or distribute this software for any | |
| 9 | + * purpose with or without fee is hereby granted, provided that the above | |
| 10 | + * copyright notice and this permission notice appear in all copies. | |
| 12 | 11 | * |
| 13 | − * This program is distributed in the hope that it will be useful, | |
| 14 | − * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 15 | − * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 16 | − * GNU General Public License for more details. | |
| 17 | − * | |
| 18 | − * You should have received a copy of the GNU General Public License | |
| 19 | − * along with this program; if not, write to the | |
| 20 | − * Free Software Foundation, Inc., | |
| 21 | − * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | |
| 12 | + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | |
| 13 | + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | |
| 14 | + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | |
| 15 | + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |
| 16 | + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | |
| 17 | + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | |
| 18 | + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |
| 22 | 19 | */ |
| 23 | 20 | |
| 24 | 21 | #ifndef __LINUX_NFC_H |
| @@ -67,6 +64,11 @@ · 42 unmodified lines | ||
| 67 | 64 | * subsequent CONNECT and CC messages. |
| 68 | 65 | * If one of the passed parameters is wrong none is set and -EINVAL is |
| 69 | 66 | * returned. |
| 67 | + * @NFC_CMD_ENABLE_SE: Enable the physical link to a specific secure element. | |
| 68 | + * Once enabled a secure element will handle card emulation mode, i.e. | |
| 69 | + * starting a poll from a device which has a secure element enabled means | |
| 70 | + * we want to do SE based card emulation. | |
| 71 | + * @NFC_CMD_DISABLE_SE: Disable the physical link to a specific secure element. | |
| 70 | 72 | */ |
| 71 | 73 | enum nfc_commands { |
| 72 | 74 | NFC_CMD_UNSPEC, |
| @@ -86,6 +88,8 @@ enum nfc_commands { · 13 unmodified lines | ||
| 86 | 88 | NFC_EVENT_TM_DEACTIVATED, |
| 87 | 89 | NFC_CMD_LLC_GET_PARAMS, |
| 88 | 90 | NFC_CMD_LLC_SET_PARAMS, |
| 91 | + NFC_CMD_ENABLE_SE, | |
| 92 | + NFC_CMD_DISABLE_SE, | |
| 89 | 93 | /* private: internal use only */ |
| 90 | 94 | __NFC_CMD_AFTER_LAST |
| 91 | 95 | }; |
| @@ -114,6 +118,7 @@ enum nfc_commands { · 22 unmodified lines | ||
| 114 | 118 | * @NFC_ATTR_LLC_PARAM_LTO: Link TimeOut parameter |
| 115 | 119 | * @NFC_ATTR_LLC_PARAM_RW: Receive Window size parameter |
| 116 | 120 | * @NFC_ATTR_LLC_PARAM_MIUX: MIU eXtension parameter |
| 121 | + * @NFC_ATTR_SE: Available Secure Elements | |
| 117 | 122 | */ |
| 118 | 123 | enum nfc_attrs { |
| 119 | 124 | NFC_ATTR_UNSPEC, |
| @@ -134,6 +139,7 @@ enum nfc_attrs { · 14 unmodified lines | ||
| 134 | 139 | NFC_ATTR_LLC_PARAM_LTO, |
| 135 | 140 | NFC_ATTR_LLC_PARAM_RW, |
| 136 | 141 | NFC_ATTR_LLC_PARAM_MIUX, |
| 142 | + NFC_ATTR_SE, | |
| 137 | 143 | /* private: internal use only */ |
| 138 | 144 | __NFC_ATTR_AFTER_LAST |
| 139 | 145 | }; |
| @@ -172,6 +178,11 @@ enum nfc_attrs { · 32 unmodified lines | ||
| 172 | 178 | #define NFC_PROTO_NFC_DEP_MASK (1 << NFC_PROTO_NFC_DEP) |
| 173 | 179 | #define NFC_PROTO_ISO14443_B_MASK (1 << NFC_PROTO_ISO14443_B) |
| 174 | 180 | |
| 181 | +/* NFC Secure Elements */ | |
| 182 | +#define NFC_SE_NONE 0x0 | |
| 183 | +#define NFC_SE_UICC 0x1 | |
| 184 | +#define NFC_SE_EMBEDDED 0x2 | |
| 185 | + | |
| 175 | 186 | struct sockaddr_nfc { |
| 176 | 187 | sa_family_t sa_family; |
| 177 | 188 | __u32 dev_idx; |
| @@ -374,8 +374,8 @@ · 373 unmodified lines | ||
| 374 | 374 | * requests to connect to a specified network but without separating |
| 375 | 375 | * auth and assoc steps. For this, you need to specify the SSID in a |
| 376 | 376 | * %NL80211_ATTR_SSID attribute, and can optionally specify the association |
| 377 | − * IEs in %NL80211_ATTR_IE, %NL80211_ATTR_AUTH_TYPE, %NL80211_ATTR_MAC, | |
| 378 | − * %NL80211_ATTR_WIPHY_FREQ, %NL80211_ATTR_CONTROL_PORT, | |
| 377 | + * IEs in %NL80211_ATTR_IE, %NL80211_ATTR_AUTH_TYPE, %NL80211_ATTR_USE_MFP, | |
| 378 | + * %NL80211_ATTR_MAC, %NL80211_ATTR_WIPHY_FREQ, %NL80211_ATTR_CONTROL_PORT, | |
| 379 | 379 | * %NL80211_ATTR_CONTROL_PORT_ETHERTYPE and |
| 380 | 380 | * %NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT. |
| 381 | 381 | * Background scan period can optionally be |
| @@ -958,7 +958,7 @@ enum nl80211_commands { · 576 unmodified lines | ||
| 958 | 958 | * @NL80211_ATTR_USE_MFP: Whether management frame protection (IEEE 802.11w) is |
| 959 | 959 | * used for the association (&enum nl80211_mfp, represented as a u32); |
| 960 | 960 | * this attribute can be used |
| 961 | − * with %NL80211_CMD_ASSOCIATE request | |
| 961 | + * with %NL80211_CMD_ASSOCIATE and %NL80211_CMD_CONNECT requests | |
| 962 | 962 | * |
| 963 | 963 | * @NL80211_ATTR_STA_FLAGS2: Attribute containing a |
| 964 | 964 | * &struct nl80211_sta_flag_update. |
| @@ -1310,6 +1310,9 @@ enum nl80211_commands { · 345 unmodified lines | ||
| 1310 | 1310 | * if not given in START_AP 0 is assumed, if not given in SET_BSS |
| 1311 | 1311 | * no change is made. |
| 1312 | 1312 | * |
| 1313 | + * @NL80211_ATTR_LOCAL_MESH_POWER_MODE: local mesh STA link-specific power mode | |
| 1314 | + * defined in &enum nl80211_mesh_power_mode. | |
| 1315 | + * | |
| 1313 | 1316 | * @NL80211_ATTR_MAX: highest attribute number currently defined |
| 1314 | 1317 | * @__NL80211_ATTR_AFTER_LAST: internal use |
| 1315 | 1318 | */ |
| @@ -1580,6 +1583,8 @@ enum nl80211_attrs { · 264 unmodified lines | ||
| 1580 | 1583 | NL80211_ATTR_P2P_CTWINDOW, |
| 1581 | 1584 | NL80211_ATTR_P2P_OPPPS, |
| 1582 | 1585 | |
| 1586 | + NL80211_ATTR_LOCAL_MESH_POWER_MODE, | |
| 1587 | + | |
| 1583 | 1588 | /* add attributes here, update the policy in nl80211.c */ |
| 1584 | 1589 | |
| 1585 | 1590 | __NL80211_ATTR_AFTER_LAST, |
| @@ -1697,6 +1702,9 @@ enum nl80211_iftype { · 111 unmodified lines | ||
| 1697 | 1702 | * flag can't be changed, it is only valid while adding a station, and |
| 1698 | 1703 | * attempts to change it will silently be ignored (rather than rejected |
| 1699 | 1704 | * as errors.) |
| 1705 | + * @NL80211_STA_FLAG_ASSOCIATED: station is associated; used with drivers | |
| 1706 | + * that support %NL80211_FEATURE_FULL_AP_CLIENT_STATE to transition a | |
| 1707 | + * previously added station into associated state | |
| 1700 | 1708 | * @NL80211_STA_FLAG_MAX: highest station flag number currently defined |
| 1701 | 1709 | * @__NL80211_STA_FLAG_AFTER_LAST: internal use |
| 1702 | 1710 | */ |
| @@ -1708,6 +1716,7 @@ enum nl80211_sta_flags { · 5 unmodified lines | ||
| 1708 | 1716 | NL80211_STA_FLAG_MFP, |
| 1709 | 1717 | NL80211_STA_FLAG_AUTHENTICATED, |
| 1710 | 1718 | NL80211_STA_FLAG_TDLS_PEER, |
| 1719 | + NL80211_STA_FLAG_ASSOCIATED, | |
| 1711 | 1720 | |
| 1712 | 1721 | /* keep last */ |
| 1713 | 1722 | __NL80211_STA_FLAG_AFTER_LAST, |
| @@ -1834,6 +1843,10 @@ enum nl80211_sta_bss_param { · 120 unmodified lines | ||
| 1834 | 1843 | * @NL80211_STA_INFO_STA_FLAGS: Contains a struct nl80211_sta_flag_update. |
| 1835 | 1844 | * @NL80211_STA_INFO_BEACON_LOSS: count of times beacon loss was detected (u32) |
| 1836 | 1845 | * @NL80211_STA_INFO_T_OFFSET: timing offset with respect to this STA (s64) |
| 1846 | + * @NL80211_STA_INFO_LOCAL_PM: local mesh STA link-specific power mode | |
| 1847 | + * @NL80211_STA_INFO_PEER_PM: peer mesh STA link-specific power mode | |
| 1848 | + * @NL80211_STA_INFO_NONPEER_PM: neighbor mesh STA power save mode towards | |
| 1849 | + * non-peer STA | |
| 1837 | 1850 | * @__NL80211_STA_INFO_AFTER_LAST: internal |
| 1838 | 1851 | * @NL80211_STA_INFO_MAX: highest possible station info attribute |
| 1839 | 1852 | */ |
| @@ -1858,6 +1871,9 @@ enum nl80211_sta_info { · 18 unmodified lines | ||
| 1858 | 1871 | NL80211_STA_INFO_STA_FLAGS, |
| 1859 | 1872 | NL80211_STA_INFO_BEACON_LOSS, |
| 1860 | 1873 | NL80211_STA_INFO_T_OFFSET, |
| 1874 | + NL80211_STA_INFO_LOCAL_PM, | |
| 1875 | + NL80211_STA_INFO_PEER_PM, | |
| 1876 | + NL80211_STA_INFO_NONPEER_PM, | |
| 1861 | 1877 | |
| 1862 | 1878 | /* keep last */ |
| 1863 | 1879 | __NL80211_STA_INFO_AFTER_LAST, |
| @@ -2248,6 +2264,34 @@ enum nl80211_mntr_flags { · 384 unmodified lines | ||
| 2248 | 2264 | NL80211_MNTR_FLAG_MAX = __NL80211_MNTR_FLAG_AFTER_LAST - 1 |
| 2249 | 2265 | }; |
| 2250 | 2266 | |
| 2267 | +/** | |
| 2268 | + * enum nl80211_mesh_power_mode - mesh power save modes | |
| 2269 | + * | |
| 2270 | + * @NL80211_MESH_POWER_UNKNOWN: The mesh power mode of the mesh STA is | |
| 2271 | + * not known or has not been set yet. | |
| 2272 | + * @NL80211_MESH_POWER_ACTIVE: Active mesh power mode. The mesh STA is | |
| 2273 | + * in Awake state all the time. | |
| 2274 | + * @NL80211_MESH_POWER_LIGHT_SLEEP: Light sleep mode. The mesh STA will | |
| 2275 | + * alternate between Active and Doze states, but will wake up for | |
| 2276 | + * neighbor's beacons. | |
| 2277 | + * @NL80211_MESH_POWER_DEEP_SLEEP: Deep sleep mode. The mesh STA will | |
| 2278 | + * alternate between Active and Doze states, but may not wake up | |
| 2279 | + * for neighbor's beacons. | |
| 2280 | + * | |
| 2281 | + * @__NL80211_MESH_POWER_AFTER_LAST - internal use | |
| 2282 | + * @NL80211_MESH_POWER_MAX - highest possible power save level | |
| 2283 | + */ | |
| 2284 | + | |
| 2285 | +enum nl80211_mesh_power_mode { | |
| 2286 | + NL80211_MESH_POWER_UNKNOWN, | |
| 2287 | + NL80211_MESH_POWER_ACTIVE, | |
| 2288 | + NL80211_MESH_POWER_LIGHT_SLEEP, | |
| 2289 | + NL80211_MESH_POWER_DEEP_SLEEP, | |
| 2290 | + | |
| 2291 | + __NL80211_MESH_POWER_AFTER_LAST, | |
| 2292 | + NL80211_MESH_POWER_MAX = __NL80211_MESH_POWER_AFTER_LAST - 1 | |
| 2293 | +}; | |
| 2294 | + | |
| 2251 | 2295 | /** |
| 2252 | 2296 | * enum nl80211_meshconf_params - mesh configuration parameters |
| 2253 | 2297 | * |
| @@ -2342,6 +2386,11 @@ enum nl80211_mntr_flags { · 88 unmodified lines | ||
| 2342 | 2386 | * (in TUs) during which a mesh STA can send only one Action frame |
| 2343 | 2387 | * containing a PREQ element for root path confirmation. |
| 2344 | 2388 | * |
| 2389 | + * @NL80211_MESHCONF_POWER_MODE: Default mesh power mode for new peer links. | |
| 2390 | + * type &enum nl80211_mesh_power_mode (u32) | |
| 2391 | + * | |
| 2392 | + * @NL80211_MESHCONF_AWAKE_WINDOW: awake window duration (in TUs) | |
| 2393 | + * | |
| 2345 | 2394 | * @__NL80211_MESHCONF_ATTR_AFTER_LAST: internal use |
| 2346 | 2395 | */ |
| 2347 | 2396 | enum nl80211_meshconf_params { |
| @@ -2371,6 +2420,8 @@ enum nl80211_meshconf_params { · 23 unmodified lines | ||
| 2371 | 2420 | NL80211_MESHCONF_HWMP_PATH_TO_ROOT_TIMEOUT, |
| 2372 | 2421 | NL80211_MESHCONF_HWMP_ROOT_INTERVAL, |
| 2373 | 2422 | NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL, |
| 2423 | + NL80211_MESHCONF_POWER_MODE, | |
| 2424 | + NL80211_MESHCONF_AWAKE_WINDOW, | |
| 2374 | 2425 | |
| 2375 | 2426 | /* keep last */ |
| 2376 | 2427 | __NL80211_MESHCONF_ATTR_AFTER_LAST, |
| @@ -2933,6 +2984,8 @@ enum nl80211_iface_limit_attrs { · 556 unmodified lines | ||
| 2933 | 2984 | * the infrastructure network's beacon interval. |
| 2934 | 2985 | * @NL80211_IFACE_COMB_NUM_CHANNELS: u32 attribute specifying how many |
| 2935 | 2986 | * different channels may be used within this group. |
| 2987 | + * @NL80211_IFACE_COMB_RADAR_DETECT_WIDTHS: u32 attribute containing the bitmap | |
| 2988 | + * of supported channel widths for radar detection. | |
| 2936 | 2989 | * @NUM_NL80211_IFACE_COMB: number of attributes |
| 2937 | 2990 | * @MAX_NL80211_IFACE_COMB: highest attribute number |
| 2938 | 2991 | * |
| @@ -2965,6 +3018,7 @@ enum nl80211_if_combination_attrs { · 26 unmodified lines | ||
| 2965 | 3018 | NL80211_IFACE_COMB_MAXNUM, |
| 2966 | 3019 | NL80211_IFACE_COMB_STA_AP_BI_MATCH, |
| 2967 | 3020 | NL80211_IFACE_COMB_NUM_CHANNELS, |
| 3021 | + NL80211_IFACE_COMB_RADAR_DETECT_WIDTHS, | |
| 2968 | 3022 | |
| 2969 | 3023 | /* keep last */ |
| 2970 | 3024 | NUM_NL80211_IFACE_COMB, |
| @@ -3140,6 +3194,17 @@ enum nl80211_ap_sme_features { · 169 unmodified lines | ||
| 3140 | 3194 | * setting |
| 3141 | 3195 | * @NL80211_FEATURE_P2P_GO_OPPPS: P2P GO implementation supports opportunistic |
| 3142 | 3196 | * powersave |
| 3197 | + * @NL80211_FEATURE_FULL_AP_CLIENT_STATE: The driver supports full state | |
| 3198 | + * transitions for AP clients. Without this flag (and if the driver | |
| 3199 | + * doesn't have the AP SME in the device) the driver supports adding | |
| 3200 | + * stations only when they're associated and adds them in associated | |
| 3201 | + * state (to later be transitioned into authorized), with this flag | |
| 3202 | + * they should be added before even sending the authentication reply | |
| 3203 | + * and then transitioned into authenticated, associated and authorized | |
| 3204 | + * states using station flags. | |
| 3205 | + * Note that even for drivers that support this, the default is to add | |
| 3206 | + * stations in authenticated/associated state, so to add unauthenticated | |
| 3207 | + * stations the authenticated/associated bits have to be set in the mask. | |
| 3143 | 3208 | */ |
| 3144 | 3209 | enum nl80211_feature_flags { |
| 3145 | 3210 | NL80211_FEATURE_SK_TX_STATUS = 1 << 0, |
| @@ -3155,6 +3220,7 @@ enum nl80211_feature_flags { · 9 unmodified lines | ||
| 3155 | 3220 | NL80211_FEATURE_NEED_OBSS_SCAN = 1 << 10, |
| 3156 | 3221 | NL80211_FEATURE_P2P_GO_CTWIN = 1 << 11, |
| 3157 | 3222 | NL80211_FEATURE_P2P_GO_OPPPS = 1 << 12, |
| 3223 | + NL80211_FEATURE_FULL_AP_CLIENT_STATE = 1 << 13, | |
| 3158 | 3224 | }; |
| 3159 | 3225 | |
| 3160 | 3226 | /** |