diff options
Diffstat (limited to 'include/net/cfg80211.h')
-rw-r--r-- | include/net/cfg80211.h | 45 |
1 files changed, 41 insertions, 4 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index ff67865de231..21710fc17eaf 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h | |||
@@ -206,10 +206,12 @@ struct ieee80211_supported_band { | |||
206 | * struct vif_params - describes virtual interface parameters | 206 | * struct vif_params - describes virtual interface parameters |
207 | * @mesh_id: mesh ID to use | 207 | * @mesh_id: mesh ID to use |
208 | * @mesh_id_len: length of the mesh ID | 208 | * @mesh_id_len: length of the mesh ID |
209 | * @use_4addr: use 4-address frames | ||
209 | */ | 210 | */ |
210 | struct vif_params { | 211 | struct vif_params { |
211 | u8 *mesh_id; | 212 | u8 *mesh_id; |
212 | int mesh_id_len; | 213 | int mesh_id_len; |
214 | int use_4addr; | ||
213 | }; | 215 | }; |
214 | 216 | ||
215 | /** | 217 | /** |
@@ -233,6 +235,35 @@ struct key_params { | |||
233 | }; | 235 | }; |
234 | 236 | ||
235 | /** | 237 | /** |
238 | * enum survey_info_flags - survey information flags | ||
239 | * | ||
240 | * Used by the driver to indicate which info in &struct survey_info | ||
241 | * it has filled in during the get_survey(). | ||
242 | */ | ||
243 | enum survey_info_flags { | ||
244 | SURVEY_INFO_NOISE_DBM = 1<<0, | ||
245 | }; | ||
246 | |||
247 | /** | ||
248 | * struct survey_info - channel survey response | ||
249 | * | ||
250 | * Used by dump_survey() to report back per-channel survey information. | ||
251 | * | ||
252 | * @channel: the channel this survey record reports, mandatory | ||
253 | * @filled: bitflag of flags from &enum survey_info_flags | ||
254 | * @noise: channel noise in dBm. This and all following fields are | ||
255 | * optional | ||
256 | * | ||
257 | * This structure can later be expanded with things like | ||
258 | * channel duty cycle etc. | ||
259 | */ | ||
260 | struct survey_info { | ||
261 | struct ieee80211_channel *channel; | ||
262 | u32 filled; | ||
263 | s8 noise; | ||
264 | }; | ||
265 | |||
266 | /** | ||
236 | * struct beacon_parameters - beacon parameters | 267 | * struct beacon_parameters - beacon parameters |
237 | * | 268 | * |
238 | * Used to configure the beacon for an interface. | 269 | * Used to configure the beacon for an interface. |
@@ -418,7 +449,7 @@ enum monitor_flags { | |||
418 | * in during get_station() or dump_station(). | 449 | * in during get_station() or dump_station(). |
419 | * | 450 | * |
420 | * MPATH_INFO_FRAME_QLEN: @frame_qlen filled | 451 | * MPATH_INFO_FRAME_QLEN: @frame_qlen filled |
421 | * MPATH_INFO_DSN: @dsn filled | 452 | * MPATH_INFO_SN: @sn filled |
422 | * MPATH_INFO_METRIC: @metric filled | 453 | * MPATH_INFO_METRIC: @metric filled |
423 | * MPATH_INFO_EXPTIME: @exptime filled | 454 | * MPATH_INFO_EXPTIME: @exptime filled |
424 | * MPATH_INFO_DISCOVERY_TIMEOUT: @discovery_timeout filled | 455 | * MPATH_INFO_DISCOVERY_TIMEOUT: @discovery_timeout filled |
@@ -427,7 +458,7 @@ enum monitor_flags { | |||
427 | */ | 458 | */ |
428 | enum mpath_info_flags { | 459 | enum mpath_info_flags { |
429 | MPATH_INFO_FRAME_QLEN = BIT(0), | 460 | MPATH_INFO_FRAME_QLEN = BIT(0), |
430 | MPATH_INFO_DSN = BIT(1), | 461 | MPATH_INFO_SN = BIT(1), |
431 | MPATH_INFO_METRIC = BIT(2), | 462 | MPATH_INFO_METRIC = BIT(2), |
432 | MPATH_INFO_EXPTIME = BIT(3), | 463 | MPATH_INFO_EXPTIME = BIT(3), |
433 | MPATH_INFO_DISCOVERY_TIMEOUT = BIT(4), | 464 | MPATH_INFO_DISCOVERY_TIMEOUT = BIT(4), |
@@ -442,7 +473,7 @@ enum mpath_info_flags { | |||
442 | * | 473 | * |
443 | * @filled: bitfield of flags from &enum mpath_info_flags | 474 | * @filled: bitfield of flags from &enum mpath_info_flags |
444 | * @frame_qlen: number of queued frames for this destination | 475 | * @frame_qlen: number of queued frames for this destination |
445 | * @dsn: destination sequence number | 476 | * @sn: target sequence number |
446 | * @metric: metric (cost) of this mesh path | 477 | * @metric: metric (cost) of this mesh path |
447 | * @exptime: expiration time for the mesh path from now, in msecs | 478 | * @exptime: expiration time for the mesh path from now, in msecs |
448 | * @flags: mesh path flags | 479 | * @flags: mesh path flags |
@@ -456,7 +487,7 @@ enum mpath_info_flags { | |||
456 | struct mpath_info { | 487 | struct mpath_info { |
457 | u32 filled; | 488 | u32 filled; |
458 | u32 frame_qlen; | 489 | u32 frame_qlen; |
459 | u32 dsn; | 490 | u32 sn; |
460 | u32 metric; | 491 | u32 metric; |
461 | u32 exptime; | 492 | u32 exptime; |
462 | u32 discovery_timeout; | 493 | u32 discovery_timeout; |
@@ -506,6 +537,7 @@ struct mesh_config { | |||
506 | u32 dot11MeshHWMPactivePathTimeout; | 537 | u32 dot11MeshHWMPactivePathTimeout; |
507 | u16 dot11MeshHWMPpreqMinInterval; | 538 | u16 dot11MeshHWMPpreqMinInterval; |
508 | u16 dot11MeshHWMPnetDiameterTraversalTime; | 539 | u16 dot11MeshHWMPnetDiameterTraversalTime; |
540 | u8 dot11MeshHWMPRootMode; | ||
509 | }; | 541 | }; |
510 | 542 | ||
511 | /** | 543 | /** |
@@ -941,6 +973,8 @@ struct cfg80211_bitrate_mask { | |||
941 | * @rfkill_poll: polls the hw rfkill line, use cfg80211 reporting | 973 | * @rfkill_poll: polls the hw rfkill line, use cfg80211 reporting |
942 | * functions to adjust rfkill hw state | 974 | * functions to adjust rfkill hw state |
943 | * | 975 | * |
976 | * @dump_survey: get site survey information. | ||
977 | * | ||
944 | * @testmode_cmd: run a test mode command | 978 | * @testmode_cmd: run a test mode command |
945 | */ | 979 | */ |
946 | struct cfg80211_ops { | 980 | struct cfg80211_ops { |
@@ -1060,6 +1094,9 @@ struct cfg80211_ops { | |||
1060 | const u8 *peer, | 1094 | const u8 *peer, |
1061 | const struct cfg80211_bitrate_mask *mask); | 1095 | const struct cfg80211_bitrate_mask *mask); |
1062 | 1096 | ||
1097 | int (*dump_survey)(struct wiphy *wiphy, struct net_device *netdev, | ||
1098 | int idx, struct survey_info *info); | ||
1099 | |||
1063 | /* some temporary stuff to finish wext */ | 1100 | /* some temporary stuff to finish wext */ |
1064 | int (*set_power_mgmt)(struct wiphy *wiphy, struct net_device *dev, | 1101 | int (*set_power_mgmt)(struct wiphy *wiphy, struct net_device *dev, |
1065 | bool enabled, int timeout); | 1102 | bool enabled, int timeout); |