Project Home
Project Home
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - WLAN driver control?: (2 Items)
   
WLAN driver control?  
Hey all, 

Was wondering what kind of control these WLAN drivers give us, specifically in two main areas:

1) Roaming - What settings do I have to allow me to control how my device roams? Signal strength threshold? Configurable
 scan times? etc...

2) Regulatory type "stuff" - embedding a radio in a device means that we have to go through FCC regulatory testing, and 
we usually put our radios in a variety of "modes" to help the test folks (transmit at this level for this long, transmit
 on this channel for that long, etc)...

I haven't really dug into the io-pkt code much yet, and was windering if you guys could shed some light on this for me..
. 

Thanks!

Mike
RE: WLAN driver control?  
Hi Mike:

1) Roaming isn't something we've spent a lot of time looking into at this
stage.  There's definitely roaming support in there though if you take a
look in sys/net802211 and grep ROAM, you can see there's an ioctl for
automatic roaming and manual roaming.  The WiFi state machine also includes
information based on the roaming state that affects scanning.  What I can't
see right off is a mechanism for altering the WiFi state machine (e.g.
changing scanning interval or determining when hand-off between access
points occur).  Some of this is built into wpa_supplicant.  You can set the
"ap_scan" mode to 1 to let the supplicant control scanning and by adding in
network blocks for the BSSIDs.

The "choice" of which AP to use is inside of the NetBSD driver layer for the
wpa_supplicant

http://community.qnx.com/integration/viewcvs/viewcvs.cgi/trunk/services/wpa/
wpa_supplicant/driver_netbsd.c?root=core_networking&rev=170&system=exsy1001&
view=markup

(In the wpa_scan_result_compar function).  Let me know if you're looking for
more info.



2) Most of this stuff is likely to be embedded in (and specific to) the
driver, so your mileage may vary depending upon how well the driver has been
written.  The Atheros port is an example of a "full featured" driver that
has the capability of modifying a number of parameters (including some
regulatory things) through a sysctl interface in addition to the ifconfig
interface.

 (If you're on an x86 platform and have an Atheros based card, you can build
the NetBSD variant and get an idea about what's supported. Try a "sysctl -a"
to get all of the parameters.  You can't use the driver on other CPU
platforms unless you statically build it into the stack though...  Also take
a look here
http://community.qnx.com/sf/discussion/do/listPosts/projects.networking/disc
ussion.drivers.topc1801

for some more info).

The Atheros source kit included a low level driver tool that allowed you to
tweak and modify "magic" parameters that are specific to the hardware (low
level register settings, EEPROM values and so on) by using a driver specific
ioctl for access.  I suspect that this is something that you might need for
forcing certain modes of operation for regulatory testing.

	Robert.


-----Original Message-----
From: Mike Zinni [mailto:mzinni@zebra.com] 
Sent: Tuesday, May 06, 2008 11:42 AM
To: technology-networking
Subject: WLAN driver control?

Hey all, 

Was wondering what kind of control these WLAN drivers give us, specifically
in two main areas:

1) Roaming - What settings do I have to allow me to control how my device
roams? Signal strength threshold? Configurable scan times? etc...

2) Regulatory type "stuff" - embedding a radio in a device means that we
have to go through FCC regulatory testing, and we usually put our radios in
a variety of "modes" to help the test folks (transmit at this level for this
long, transmit on this channel for that long, etc)...

I haven't really dug into the io-pkt code much yet, and was windering if you
guys could shed some light on this for me... 

Thanks!

Mike

_______________________________________________
Technology
http://community.qnx.com/sf/go/post7738