<> = cfg80211 = * allow advertising the supported interface type combinations, e.g. as {{{ /* * Each of this struct denotes a combination, e.g. * 1 AP + 1 STA. "Pseudo-combinations" containing * just a single interface type of count 1 should * not be listed as they are implied by supporting * a certain interface type. */ struct interface_combination { u16 number[NL80211_IFTYPE_NUM]; }; struct interface_combinations { struct interface_combination *combinations; int n_combinations; }; struct wiphy { ... struct interface_combinations combinations }; }}} and then of course export this information via nl80211 * Implement new regulatory interpretation rules as discussed in [[http://marc.info/?t=123771257500005&r=1&w=2|this thread]]. In summary, using the notation outlined for [[http://en.wikipedia.org/wiki/Interval_(mathematics)#Notations_for_intervals|mathematical intervals]]: {{{ 0) for all 1 <= k < n : MAX_k <= MIN_{k+1} 1) each rule in the regdomain covers the frequency range (MIN_1, MAX_1] 2) given C = union (over all k = 1 .. n) of (MIN_k, MAX_k] it must be true that (CENTER - BW/2, CENTER + BW/2) is a subset of C 3) it must be true for all 1 <= k <= n: if CENTER in (MIN_k, MAX_k] : BW <= BW_k 4) This is easier to formulate algorithmically: USE_FLAGS = 0 for k = 1 .. n if (CENTER - BW/2, CENTER + BW/2) intersects (MIN_k, MAX_k]: USE_FLAGS |= FLAGS_k }}} = mac80211 = == AP support == * fix the PS filtering code, need to think about how to re-enable it * reply with nullfunc to PS-poll when nothing is buffered? * injected frames need to be tied to another virtual interface to get the software sequence number and keys (only relevant for 11w) right * internal bridge setting (separated STAs in the BSS) * Radar detection (AP DFS or 802.11h) == Issues == * Need to stop TX/RX when a radar is detected for the duration of scan for a new channel. * implement TX flush before going off-channel == power saving == * u-APSD support. Intel has [[http://kernel.org/pub/linux/kernel/people/chuyee/wireless/iwl4965_ap/patches/|old AP u-APSD patches]] but there's no AP support in iwlwifi now * 11v support (eventually) == Roaming == * mac80211 drivers use userspace (wpa_supplicant) for roaming (in wpa_supplicant specify ap_scan=1) * better roaming without needing to poll the BSS information needs signal strength triggers so userspace can react to changing conditions * need to export roaming capabilities of device (mac80211 has none, but fullmac cards might be able to autonomously select the best BSS) so that we don't need to configure wpa_supplicant and it can do the right thing automatically * maybe look at deucescan: http://www.csie.ntpu.edu.tw/~yschen/mypapers/IEEE-TVT-2007-1.pdf for wpa_supplicant bg scan algorithm == Wishlist == * keep track of stations per virtual interface, required for p2p/AP interop (WIP) == Janitorial == * remove struct ieee80211_if_init_conf and pass the vif pointer instead (after the patch that puts the address into the vif) = drivers = * [[/cfg80211-conversion|convert drivers to cfg80211]] = wireless.kernel.org site = * fix CSS colours, for example link colours (if you want to start, look at the files in [[http:/moin/linuxwireless/css/]] and send diffs to <>) * fix print view to include a black&white logo * the whole testing thing... * q/a procedure for stack * winlab * info on test coverage * tests itself need to be documented * instructions how to run tests