Currently radar detection and corresponding channel switch is handled at the AP device. STA ignores these detected radar events since the radar signal can be seen mostly by the AP as well. But in scenarios where a radar signal is seen only at STA, notifying this event to the AP which can trigger a channel switch can be useful. Stations can report such radar events autonomously through Spectrum management (Measurement Report) action frame to its AP. The userspace on processing the report can notify the kernel with the use of the added NL80211_CMD_NOTIFY_RADAR to indicate the detected event and inturn adding the reported channel to NOL.
Showing the changes to include/uapi/linux (1 of 2 files). Show all
Unified · Split
| @@ -1060,6 +1060,11 @@ · 1059 unmodified lines | |||
| 1060 | * the measurement completed, using the measurement cookie | 1060 | * the measurement completed, using the measurement cookie |
| 1061 | * (%NL80211_ATTR_COOKIE). | 1061 | * (%NL80211_ATTR_COOKIE). |
| 1062 | * | 1062 | * |
| 1063 | * @NL80211_CMD_NOTIFY_RADAR: Notify the kernel that a radar signal was | ||
| 1064 | * detected and reported by a neighboring device on the channel | ||
| 1065 | * indicated by %NL80211_ATTR_WIPHY_FREQ and other attributes | ||
| 1066 | * determining the width and type. | ||
| 1067 | * | ||
| 1063 | * @NL80211_CMD_MAX: highest used command number | 1068 | * @NL80211_CMD_MAX: highest used command number |
| 1064 | * @__NL80211_CMD_AFTER_LAST: internal use | 1069 | * @__NL80211_CMD_AFTER_LAST: internal use |
| 1065 | */ | 1070 | */ |
| @@ -1278,6 +1283,8 @@ enum nl80211_commands { · 212 unmodified lines | |||
| 1278 | NL80211_CMD_PEER_MEASUREMENT_RESULT, | 1283 | NL80211_CMD_PEER_MEASUREMENT_RESULT, |
| 1279 | NL80211_CMD_PEER_MEASUREMENT_COMPLETE, | 1284 | NL80211_CMD_PEER_MEASUREMENT_COMPLETE, |
| 1280 | 1285 | ||
| 1286 | NL80211_CMD_NOTIFY_RADAR, | ||
| 1287 | |||
| 1281 | /* add new commands above here */ | 1288 | /* add new commands above here */ |
| 1282 | 1289 | ||
| 1283 | /* used to define NL80211_CMD_MAX below */ | 1290 | /* used to define NL80211_CMD_MAX below */ |