[RFC 3/4] P2P: Handling single channel concurrency
Jouni Malinen
j
Sun Apr 8 11:36:46 PDT 2012
On Tue, Mar 06, 2012 at 10:34:12AM +0530, Jithu Jance wrote:
> Single channel concurrency patch [3/4]
>
> Hooks for implementing GO/AP channel switch. To be expanded later.
Cleaned up version below. Though, I would like to see an example
implementation for this in driver_nl80211.c, i.e., we need to get this
functionality reviewed on the linux-wireless mailing list and included
in the upstream kernel.
[PATCH 2/3] P2P: Add driver op for requesting GO/AP channel switch
Signed-hostap: Jithu Jance <jithu at broadcom.com>
---
src/drivers/driver.h | 12 ++++++++++++
wpa_supplicant/driver_i.h | 8 ++++++++
2 files changed, 20 insertions(+), 0 deletions(-)
diff --git a/src/drivers/driver.h b/src/drivers/driver.h
index 329f89a..7ff1b3d 100644
--- a/src/drivers/driver.h
+++ b/src/drivers/driver.h
@@ -2535,6 +2535,18 @@ struct wpa_driver_ops {
* conditions.
*/
int (*radio_disable)(void *priv, int disabled);
+
+ /**
+ * switch_channel - Announce channel switch and migrate the GO to the
+ * given frequency
+ * @priv: Private driver interface data
+ * @freq: Frequency in MHz
+ * Returns: 0 on success, -1 on failure
+ *
+ * This function is used to move the GO to the legacy STA channel to
+ * avoid frequency conflict in single channel concurrency.
+ */
+ int (*switch_channel)(void *priv, unsigned int freq);
};
diff --git a/wpa_supplicant/driver_i.h b/wpa_supplicant/driver_i.h
index e1e921d..2ab455b 100644
--- a/wpa_supplicant/driver_i.h
+++ b/wpa_supplicant/driver_i.h
@@ -672,4 +672,12 @@ static inline int wpa_drv_radio_disable(struct wpa_supplicant *wpa_s,
return wpa_s->driver->radio_disable(wpa_s->drv_priv, disabled);
}
+static inline int wpa_drv_switch_channel(struct wpa_supplicant *wpa_s,
+ unsigned int freq)
+{
+ if (!wpa_s->driver->switch_channel)
+ return -1;
+ return wpa_s->driver->switch_channel(wpa_s->drv_priv, freq);
+}
+
#endif /* DRIVER_I_H */
--
1.7.4.1
--
Jouni Malinen PGP id EFC895FA
More information about the Hostap
mailing list