1. Many little bits n pieces of news

    QUICK UPDATE: 18 May — I was totally off the net as my phone line went dead. It’s just come back to life and so have I. Work resumes!

    Old content follows:

    Past week or so I’ve been trying to decipher the 2nd stage working of the card in more and more depth, reading the Linux driver sources and IOKit documentation. I’m somewhat stuck trying to understand the whole IOCommandQueue and IOCommandGate business and how it maps to the way FreeBSD iwi driver is written. Basically the commands we send to the card have to be put in a queue and protected properly so that they occur in a FIFO sequence without getting interleaved. Now, IOKit supposedly has a nice canned way of doing it, but this is taking way longer for me to understand than I had expected, so if some IOKit or wifi driver gurus are reading this, please help :-\

    Currently we’ve crossed 100 hours logged in total. Last source code commit was about a week ago. Yes I know 100 hours is ridiculously low for 4 months, let’s just say 3 months out of those I wasn’t coding full-time.

    Some slightly different news which will turn out to be either really good for the project or really bad: From the end of May until late August I have a full time job for the FreeBSD project. So I’ll try to finish off this driver before May, which means getting back into the marathon coding like we did back in January. Let’s see.

    Now for some slightly better news: I finally got a standalone wireless router which frees up my Ralink USB wifi adapter. It means I can now stay online via the Ralink adapter while coding, instead of having to reboot every time I wanted to look something up online and then test our driver again (because iwidarwin cannot unload! :-\). In related ‘good’ news, from around late May I’ll also have access to a laptop running OS X which has Intel 3945 card. This card is also much better documented than 2200 (!), so I expect to get 3945 working pretty soon after 2200 is done!

    In other news, Michael seems to be pretty busy at the moment. Anyway, conditions are now getting more favorable compared to the past few months so let’s hope we manage to finally get enough time and finish the driver sooooon.

    EDIT: Almost forgot to mention, I have still not figured out the whole “locale” thing and how to supply it to OS X. If anyone of you has any links to information on the various locale codes defined in 802.11, please post. If anyone has any hints on how to supply this information to Airport interface, that would be great too.

    If any of you want to help with reverse engineering airport interface, you can install Xcode, then look at Kernel.framework/iokit/apple80211 folder where you can find the header files.