[haiku-development] Re: gsoc 2008 : wifi support

  • From: Stephan Assmus <superstippi@xxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Thu, 27 Mar 2008 20:23:08 +0100

meetanshu gupta wrote:
> Hi friends!
> 
> I am a student of third year computer engineering! I want to take up the 
> task for adding the wifi stack to the OS. Can some of the mentore please 
> give me some more details of where to start from, as very little is given 
> on Ideas page.
> 
> i really want to take up this project as i have hands on experience on 
> building a wifi netework and hence know details about the wifi techniques 
> and protocols since my college campus was wi-fi ed few months back and i 
> was one of the active supervisors of the task.

This sounds pretty exciting! Before I start to describe any of my thoughts 
here, I do not see myself qualified at all to mentor this project. That 
said, I would approach it the following way: First of all you probably need 
a working network driver for a wireless device that you can test with. 
There is already a driver in the repository for a certain Centrino 
generation and a few more are available on BeBits. These drivers are all 
configured via settings files, so that makes me think the drivers themself 
do not need specific support in the network stack itself to work at all. 
Anyways, maybe you need to port another driver for your hardware, hopefully 
there is a modern FreeBSD driver for it, then this might turn out to be 
easy because of the FreeBSD compatibility layer we have for network 
drivers. The next step would be to look for the missing infrastructure in 
our network stack. Personally, I don't even have an idea of what could be 
missing / should be there. But I guess there needs to be a way to 
dynamically reconfigure the device for changing conditions, like networks 
becoming unavailable and new ones becoming avaialble. The driver would have 
to notify the stack that it needs a new configurtion. I guess userland 
applications, most importantly the Network preflet and status monitoring 
apps, will want to communicate with wireless specific features of the 
network stack. I imagine this is the infrastructure which is missing and an 
API will need to be defined. I would define a common ioctl protocol for 
drivers, or perhaps reuse the one from FreeBSD if is has a common one for 
Wireless drivers, and build this into the net_server. Then design a 
messaging API for communicating with the net_server for other apps which 
exposes this functionality in a more accessible way. Anyways, I guess Axel 
will have a lot more to add or correct. :-)

Best regards,
-Stephan



Other related posts: