View Single Post
Posts: 567 | Thanked: 2,965 times | Joined on Oct 2009
#1
This post is doing to be a data dump of all my findings/research/etc on the N900 WiFi stack. I wont be covering anything in-kernel (since I am not a kernel guy), anything that's not N900/Maemo specific (e.g. wireless-tools) or that's not WiFi specific (e.g. icd2)

The following components are involved in the WiFi stack on the N900:
eapd (handles cryptographic stuff for connecting to secure
WiFi access points)
libicd_network_eap.so (provides EAP support in ICD2)
libicd_network_ipv4.so (provides ipv4 support in ICD2)
libicd_network_wlan.so (core ICD2 plugin for WiFi)
libicd_network_wps.so (provides WPS support in ICD2)
wlancond (main daemon that handles WiFi)
wl1251-cal (reads data from cal and sends it to the WiFi chip including MAC address and calibration data)

wlancond was made open source by Nokia.
wl1251-cal and libicd_network_wlan.so have since been cloned by the community and are now open source. The others (eapd, libicd_network_eap.so, libicd_network_ipv4.so and libicd_network_wps.so) remain closed source.

In the next post I will describe all the dbus interfaces that these components expose to the outside world (i.e. any method calls they expose for other components to call and any signals they sent to other components) as well as some stuff about who needs those dbus interfaces. After that I will describe any gconf keys or other things that these blobs deal with.
 

The Following 16 Users Say Thank You to jonwil For This Useful Post: