Lines Matching refs:module

2 \page p2p Wi-Fi Direct - P2P module
18 P2P module implements higher layer functionality for management P2P
21 information about neighboring P2P Devices. This module could be used
23 inside the driver/firmware component. P2P module API is defined in
29 wpa_supplicant includes code in interact with both the P2P module
41 communication paths from the P2P module to upper layer management
44 operations. Glue code is used to bind the P2P module API to the rest
50 An architecture where the P2P module resides inside the
55 \image html p2p_arch.png "P2P module within wpa_supplicant"
56 \image latex p2p_arch.eps "P2P module within wpa_supplicant" width=15cm
61 functionality in an architecture where the P2P module resides inside
64 \image html p2p_arch2.png "P2P module in kernel
65 \image latex p2p_arch2.eps "P2P module in kernel" width=15cm
68 \section p2p_module P2P module
70 P2P module manages discovery and group formation with a single state
80 \image html p2p_sm.png "P2P module state machine"
81 \image latex p2p_sm.eps "P2P module state machine" width=15cm
83 \subsection p2p_module_api P2P module API
85 P2P module API is defined in \ref src/p2p/p2p.h. The API consists of
88 struct p2p_config to provide callback functions that P2P module can
107 These are the main callback functions for P2P module to provide event
121 The P2P module uses following functions to request lower layer driver
132 module with following functions:
141 In addition to the per-device state, the P2P module maintains
152 The P2P module will use following callback function to update P2P IE
161 to the standard station/AP mode operations when the P2P module resides
171 the standard station/AP mode events when the P2P module resides within
183 calls are described based on the P2P module API. The exact design for
184 the glue code outside the P2P module depends on the architecture used
188 calling \ref p2p_find(). The P2P module start the discovery by requesting a
195 After the full scan, P2P module start alternating between Listen and
199 When going into the Listen state, the P2P module requests the driver
201 \ref p2p_config::start_listen(). The glue code using the P2P module may
206 Listen period are delivered to the P2P module by calling
207 \ref p2p_config::p2p_probe_req_rx() and P2P module request a response to
214 i.e., the P2P module will call \ref p2p_config::p2p_scan() just like in the
216 operation will be delivered to the P2P module using the
234 \ref p2p_config::prov_disc_req() callback. The P2P module will
240 The P2P module will use \ref p2p_config::send_action() callback to request
243 transmission. If the peer is not reachable, the P2P module will try to
250 upper layer management code or the glue code using the P2P module API
258 to \ref p2p_wps_success_cb(). The P2P module will clear its group formation
266 a call to \ref p2p_group_formation_failed(). The P2P module will clear its
280 The P2P module takes care of GAS encapsulation, fragmentation, and
282 service discovery. The user of the P2P module is responsible for
322 This section describes how P2P module can be used for managing
324 described based on the P2P module API. The exact design for the glue
325 code outside the P2P module depends on the architecture used in the
330 pointer to the per-device P2P module context and configures the
338 called. This will allow the P2P module to update the P2P IE for
342 needs to inform P2P module whenever a P2P client associates or
344 \ref p2p_group_notif_assoc() and \ref p2p_group_notif_disassoc(). The P2P module
359 \ref p2p_group_deinit() is used to deinitialize the per-group P2P module