diff options
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/nl80211.h | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/include/linux/nl80211.h b/include/linux/nl80211.h index 2f3878806403..458416279347 100644 --- a/include/linux/nl80211.h +++ b/include/linux/nl80211.h | |||
| @@ -565,6 +565,14 @@ | |||
| 565 | * %NL80211_ATTR_IFINDEX is now on %NL80211_ATTR_WIPHY_FREQ with | 565 | * %NL80211_ATTR_IFINDEX is now on %NL80211_ATTR_WIPHY_FREQ with |
| 566 | * %NL80211_ATTR_WIPHY_CHANNEL_TYPE. | 566 | * %NL80211_ATTR_WIPHY_CHANNEL_TYPE. |
| 567 | * | 567 | * |
| 568 | * @NL80211_CMD_START_P2P_DEVICE: Start the given P2P Device, identified by | ||
| 569 | * its %NL80211_ATTR_WDEV identifier. It must have been created with | ||
| 570 | * %NL80211_CMD_NEW_INTERFACE previously. After it has been started, the | ||
| 571 | * P2P Device can be used for P2P operations, e.g. remain-on-channel and | ||
| 572 | * public action frame TX. | ||
| 573 | * @NL80211_CMD_STOP_P2P_DEVICE: Stop the given P2P Device, identified by | ||
| 574 | * its %NL80211_ATTR_WDEV identifier. | ||
| 575 | * | ||
| 568 | * @NL80211_CMD_MAX: highest used command number | 576 | * @NL80211_CMD_MAX: highest used command number |
| 569 | * @__NL80211_CMD_AFTER_LAST: internal use | 577 | * @__NL80211_CMD_AFTER_LAST: internal use |
| 570 | */ | 578 | */ |
| @@ -708,6 +716,9 @@ enum nl80211_commands { | |||
| 708 | 716 | ||
| 709 | NL80211_CMD_CH_SWITCH_NOTIFY, | 717 | NL80211_CMD_CH_SWITCH_NOTIFY, |
| 710 | 718 | ||
| 719 | NL80211_CMD_START_P2P_DEVICE, | ||
| 720 | NL80211_CMD_STOP_P2P_DEVICE, | ||
| 721 | |||
| 711 | /* add new commands above here */ | 722 | /* add new commands above here */ |
| 712 | 723 | ||
| 713 | /* used to define NL80211_CMD_MAX below */ | 724 | /* used to define NL80211_CMD_MAX below */ |
| @@ -1575,6 +1586,10 @@ enum nl80211_attrs { | |||
| 1575 | * @NL80211_IFTYPE_MESH_POINT: mesh point | 1586 | * @NL80211_IFTYPE_MESH_POINT: mesh point |
| 1576 | * @NL80211_IFTYPE_P2P_CLIENT: P2P client | 1587 | * @NL80211_IFTYPE_P2P_CLIENT: P2P client |
| 1577 | * @NL80211_IFTYPE_P2P_GO: P2P group owner | 1588 | * @NL80211_IFTYPE_P2P_GO: P2P group owner |
| 1589 | * @NL80211_IFTYPE_P2P_DEVICE: P2P device interface type, this is not a netdev | ||
| 1590 | * and therefore can't be created in the normal ways, use the | ||
| 1591 | * %NL80211_CMD_START_P2P_DEVICE and %NL80211_CMD_STOP_P2P_DEVICE | ||
| 1592 | * commands to create and destroy one | ||
| 1578 | * @NL80211_IFTYPE_MAX: highest interface type number currently defined | 1593 | * @NL80211_IFTYPE_MAX: highest interface type number currently defined |
| 1579 | * @NUM_NL80211_IFTYPES: number of defined interface types | 1594 | * @NUM_NL80211_IFTYPES: number of defined interface types |
| 1580 | * | 1595 | * |
| @@ -1593,6 +1608,7 @@ enum nl80211_iftype { | |||
| 1593 | NL80211_IFTYPE_MESH_POINT, | 1608 | NL80211_IFTYPE_MESH_POINT, |
| 1594 | NL80211_IFTYPE_P2P_CLIENT, | 1609 | NL80211_IFTYPE_P2P_CLIENT, |
| 1595 | NL80211_IFTYPE_P2P_GO, | 1610 | NL80211_IFTYPE_P2P_GO, |
| 1611 | NL80211_IFTYPE_P2P_DEVICE, | ||
| 1596 | 1612 | ||
| 1597 | /* keep last */ | 1613 | /* keep last */ |
| 1598 | NUM_NL80211_IFTYPES, | 1614 | NUM_NL80211_IFTYPES, |
| @@ -2994,12 +3010,18 @@ enum nl80211_ap_sme_features { | |||
| 2994 | * @NL80211_FEATURE_CELL_BASE_REG_HINTS: This driver has been tested | 3010 | * @NL80211_FEATURE_CELL_BASE_REG_HINTS: This driver has been tested |
| 2995 | * to work properly to suppport receiving regulatory hints from | 3011 | * to work properly to suppport receiving regulatory hints from |
| 2996 | * cellular base stations. | 3012 | * cellular base stations. |
| 3013 | * @NL80211_FEATURE_P2P_DEVICE_NEEDS_CHANNEL: If this is set, an active | ||
| 3014 | * P2P Device (%NL80211_IFTYPE_P2P_DEVICE) requires its own channel | ||
| 3015 | * in the interface combinations, even when it's only used for scan | ||
| 3016 | * and remain-on-channel. This could be due to, for example, the | ||
| 3017 | * remain-on-channel implementation requiring a channel context. | ||
| 2997 | */ | 3018 | */ |
| 2998 | enum nl80211_feature_flags { | 3019 | enum nl80211_feature_flags { |
| 2999 | NL80211_FEATURE_SK_TX_STATUS = 1 << 0, | 3020 | NL80211_FEATURE_SK_TX_STATUS = 1 << 0, |
| 3000 | NL80211_FEATURE_HT_IBSS = 1 << 1, | 3021 | NL80211_FEATURE_HT_IBSS = 1 << 1, |
| 3001 | NL80211_FEATURE_INACTIVITY_TIMER = 1 << 2, | 3022 | NL80211_FEATURE_INACTIVITY_TIMER = 1 << 2, |
| 3002 | NL80211_FEATURE_CELL_BASE_REG_HINTS = 1 << 3, | 3023 | NL80211_FEATURE_CELL_BASE_REG_HINTS = 1 << 3, |
| 3024 | NL80211_FEATURE_P2P_DEVICE_NEEDS_CHANNEL = 1 << 4, | ||
| 3003 | }; | 3025 | }; |
| 3004 | 3026 | ||
| 3005 | /** | 3027 | /** |
