About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / 80211 / mac80211-advanced.rst


Based on kernel version 4.9. Page generated on 2016-12-21 14:27 EST.

1	=============================
2	mac80211 subsystem (advanced)
3	=============================
4	
5	Information contained within this part of the book is of interest only
6	for advanced interaction of mac80211 with drivers to exploit more
7	hardware capabilities and improve performance.
8	
9	LED support
10	===========
11	
12	Mac80211 supports various ways of blinking LEDs. Wherever possible,
13	device LEDs should be exposed as LED class devices and hooked up to the
14	appropriate trigger, which will then be triggered appropriately by
15	mac80211.
16	
17	.. kernel-doc:: include/net/mac80211.h
18	   :functions: ieee80211_get_tx_led_name
19	
20	.. kernel-doc:: include/net/mac80211.h
21	   :functions: ieee80211_get_rx_led_name
22	
23	.. kernel-doc:: include/net/mac80211.h
24	   :functions: ieee80211_get_assoc_led_name
25	
26	.. kernel-doc:: include/net/mac80211.h
27	   :functions: ieee80211_get_radio_led_name
28	
29	.. kernel-doc:: include/net/mac80211.h
30	   :functions: ieee80211_tpt_blink
31	
32	.. kernel-doc:: include/net/mac80211.h
33	   :functions: ieee80211_tpt_led_trigger_flags
34	
35	.. kernel-doc:: include/net/mac80211.h
36	   :functions: ieee80211_create_tpt_led_trigger
37	
38	Hardware crypto acceleration
39	============================
40	
41	.. kernel-doc:: include/net/mac80211.h
42	   :doc: Hardware crypto acceleration
43	
44	.. kernel-doc:: include/net/mac80211.h
45	   :functions: set_key_cmd
46	
47	.. kernel-doc:: include/net/mac80211.h
48	   :functions: ieee80211_key_conf
49	
50	.. kernel-doc:: include/net/mac80211.h
51	   :functions: ieee80211_key_flags
52	
53	.. kernel-doc:: include/net/mac80211.h
54	   :functions: ieee80211_get_tkip_p1k
55	
56	.. kernel-doc:: include/net/mac80211.h
57	   :functions: ieee80211_get_tkip_p1k_iv
58	
59	.. kernel-doc:: include/net/mac80211.h
60	   :functions: ieee80211_get_tkip_p2k
61	
62	Powersave support
63	=================
64	
65	.. kernel-doc:: include/net/mac80211.h
66	   :doc: Powersave support
67	
68	Beacon filter support
69	=====================
70	
71	.. kernel-doc:: include/net/mac80211.h
72	   :doc: Beacon filter support
73	
74	.. kernel-doc:: include/net/mac80211.h
75	   :functions: ieee80211_beacon_loss
76	
77	Multiple queues and QoS support
78	===============================
79	
80	TBD
81	
82	.. kernel-doc:: include/net/mac80211.h
83	   :functions: ieee80211_tx_queue_params
84	
85	Access point mode support
86	=========================
87	
88	TBD
89	
90	Some parts of the if_conf should be discussed here instead
91	
92	Insert notes about VLAN interfaces with hw crypto here or in the hw
93	crypto chapter.
94	
95	support for powersaving clients
96	-------------------------------
97	
98	.. kernel-doc:: include/net/mac80211.h
99	   :doc: AP support for powersaving clients
100	
101	.. kernel-doc:: include/net/mac80211.h
102	   :functions: ieee80211_get_buffered_bc
103	
104	.. kernel-doc:: include/net/mac80211.h
105	   :functions: ieee80211_beacon_get
106	
107	.. kernel-doc:: include/net/mac80211.h
108	   :functions: ieee80211_sta_eosp
109	
110	.. kernel-doc:: include/net/mac80211.h
111	   :functions: ieee80211_frame_release_type
112	
113	.. kernel-doc:: include/net/mac80211.h
114	   :functions: ieee80211_sta_ps_transition
115	
116	.. kernel-doc:: include/net/mac80211.h
117	   :functions: ieee80211_sta_ps_transition_ni
118	
119	.. kernel-doc:: include/net/mac80211.h
120	   :functions: ieee80211_sta_set_buffered
121	
122	.. kernel-doc:: include/net/mac80211.h
123	   :functions: ieee80211_sta_block_awake
124	
125	Supporting multiple virtual interfaces
126	======================================
127	
128	TBD
129	
130	Note: WDS with identical MAC address should almost always be OK
131	
132	Insert notes about having multiple virtual interfaces with different MAC
133	addresses here, note which configurations are supported by mac80211, add
134	notes about supporting hw crypto with it.
135	
136	.. kernel-doc:: include/net/mac80211.h
137	   :functions: ieee80211_iterate_active_interfaces
138	
139	.. kernel-doc:: include/net/mac80211.h
140	   :functions: ieee80211_iterate_active_interfaces_atomic
141	
142	Station handling
143	================
144	
145	TODO
146	
147	.. kernel-doc:: include/net/mac80211.h
148	   :functions: ieee80211_sta
149	
150	.. kernel-doc:: include/net/mac80211.h
151	   :functions: sta_notify_cmd
152	
153	.. kernel-doc:: include/net/mac80211.h
154	   :functions: ieee80211_find_sta
155	
156	.. kernel-doc:: include/net/mac80211.h
157	   :functions: ieee80211_find_sta_by_ifaddr
158	
159	Hardware scan offload
160	=====================
161	
162	TBD
163	
164	.. kernel-doc:: include/net/mac80211.h
165	   :functions: ieee80211_scan_completed
166	
167	Aggregation
168	===========
169	
170	TX A-MPDU aggregation
171	---------------------
172	
173	.. kernel-doc:: net/mac80211/agg-tx.c
174	   :doc: TX A-MPDU aggregation
175	
176	.. WARNING: DOCPROC directive not supported: !Cnet/mac80211/agg-tx.c
177	
178	RX A-MPDU aggregation
179	---------------------
180	
181	.. kernel-doc:: net/mac80211/agg-rx.c
182	   :doc: RX A-MPDU aggregation
183	
184	.. WARNING: DOCPROC directive not supported: !Cnet/mac80211/agg-rx.c
185	
186	.. kernel-doc:: include/net/mac80211.h
187	   :functions: ieee80211_ampdu_mlme_action
188	
189	Spatial Multiplexing Powersave (SMPS)
190	=====================================
191	
192	.. kernel-doc:: include/net/mac80211.h
193	   :doc: Spatial multiplexing power save
194	
195	.. kernel-doc:: include/net/mac80211.h
196	   :functions: ieee80211_request_smps
197	
198	.. kernel-doc:: include/net/mac80211.h
199	   :functions: ieee80211_smps_mode
200	
201	TBD
202	
203	This part of the book describes the rate control algorithm interface and
204	how it relates to mac80211 and drivers.
205	
206	Rate Control API
207	================
208	
209	TBD
210	
211	.. kernel-doc:: include/net/mac80211.h
212	   :functions: ieee80211_start_tx_ba_session
213	
214	.. kernel-doc:: include/net/mac80211.h
215	   :functions: ieee80211_start_tx_ba_cb_irqsafe
216	
217	.. kernel-doc:: include/net/mac80211.h
218	   :functions: ieee80211_stop_tx_ba_session
219	
220	.. kernel-doc:: include/net/mac80211.h
221	   :functions: ieee80211_stop_tx_ba_cb_irqsafe
222	
223	.. kernel-doc:: include/net/mac80211.h
224	   :functions: ieee80211_rate_control_changed
225	
226	.. kernel-doc:: include/net/mac80211.h
227	   :functions: ieee80211_tx_rate_control
228	
229	.. kernel-doc:: include/net/mac80211.h
230	   :functions: rate_control_send_low
231	
232	TBD
233	
234	This part of the book describes mac80211 internals.
235	
236	Key handling
237	============
238	
239	Key handling basics
240	-------------------
241	
242	.. kernel-doc:: net/mac80211/key.c
243	   :doc: Key handling basics
244	
245	MORE TBD
246	--------
247	
248	TBD
249	
250	Receive processing
251	==================
252	
253	TBD
254	
255	Transmit processing
256	===================
257	
258	TBD
259	
260	Station info handling
261	=====================
262	
263	Programming information
264	-----------------------
265	
266	.. kernel-doc:: net/mac80211/sta_info.h
267	   :functions: sta_info
268	
269	.. kernel-doc:: net/mac80211/sta_info.h
270	   :functions: ieee80211_sta_info_flags
271	
272	STA information lifetime rules
273	------------------------------
274	
275	.. kernel-doc:: net/mac80211/sta_info.c
276	   :doc: STA information lifetime rules
277	
278	Aggregation
279	===========
280	
281	.. kernel-doc:: net/mac80211/sta_info.h
282	   :functions: sta_ampdu_mlme
283	
284	.. kernel-doc:: net/mac80211/sta_info.h
285	   :functions: tid_ampdu_tx
286	
287	.. kernel-doc:: net/mac80211/sta_info.h
288	   :functions: tid_ampdu_rx
289	
290	Synchronisation
291	===============
292	
293	TBD
294	
295	Locking, lots of RCU
Hide Line Numbers


About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog