On Thu, 2008-09-25 at 12:57 -0400, Dan Williams wrote: > channel <-> frequency conversion have that in cfg80211 > common regulatory domains and their restrictions that too > common BSS structure for scan results > common scan result translation handlers > > Two options for scan result handling: Can you look at the RFC patch I posted? > -------------------------------------------------------------------------- > 1) common GIWSCAN processing function that takes a callback. This > callback would be executed until it returns FALSE to signify no further > scan results. Callback prototype: > > bool scan_res_hook(struct common_bss *bss, void *user_data); > > 'bss' would simply be a _single_ common bss structure allocated at the > start of iteration, and zeroed each time before calling the hook. The > scan hook then fills that common BSS structure with information from its > own internal scan list. The GIWSCAN processor then handles translation > into the actual WEXT event stream or nl80211 formats. > > -------------------------------------------------------------------------- > 2) common GIWSCAN processing function that takes a list of common BSS > structures that the driver stores internally. The common BSS structure > would have a "void *driver_data" pointer in which the driver could keep > driver-specific data items, but the driver would be responsible for > setting all available information in the common BSS structure when the > firmware provides scan results. lib80211 provides common allocation, > deallocation, bss entry aging, ref/unref, and free-list fetching. I had something like this option 2 in mind when I wrote my patch, can you take a look at it? The only thing missing now is quality/signal/noise handling. Here's the most recent version: http://johannes.sipsolutions.net/patches/kernel/all/2008-09-26-11%3a08/020-cfg80211-scan.patch johannes
Attachment:
signature.asc
Description: This is a digitally signed message part