Older blog entries for bvermeul (starting at number 9)


The driver for the at76c503a is on hold until I get some legal issues resolved. I got some windows source code to peruse while writing the driver, and I'm not sure if I'm allowed to or not.

So this thing is on hold until I get written confirmation from the legal owner of the code that I am allowed to write a GPL'ed driver, while perusing the windows source code.


Asked Jean Tourrilhes to update the entry in the Wireless HOWTO with the newly supported 3Com card. I just love it when a driver works... :)


It's very annoying when a piece of code works with the linux usb-ohci driver on one laptop (a lowly Toshiba Satelite 230CX with a P133 MMX), but refuses to work with the uhci or usb-uhci driver on my new Dell Inspiron 8000. Same code, different controller, different results. I just hate when that happens.

But anyways. I got the firmware uploaded to my usb wireless adapter, and can start writing the actual driver. Which is good, since I've almost finished the poldhu_cs driver anyways.


Waiting for information from 3Com about the Power management features of the card. After those are implemented, and the various other statistics are in, I can try submitting it to alan or linus.

After that, maybe start a back-port to pcmcia-cs.


Got initialization working correctly, and hopefully 100% of the time for this 3Com card. Infrastructure is working in 40 and 128 bit encryption, Ad-Hoc (IBSS) is working in 40 bit encryption (which is the only thing the firmware supports at this point), and I've added some more Wireless extensions to the driver. In short, I released version 0.2.2 of the poldhu_cs driver, and it's working like a charm for me.

I still have to finish the implementation of all the Wireless extensions and handle a card reset state, but that's for the next version. Which should only be a couple of days. ;)


Got Ad-Hoc working for the 3Com card, with and without 40 bit encryption. If 3Com decides to add 128 bit encryption to their Ad-Hoc support, all I need is deleting a single line of code. Great fun.

I'm also trying to complete my wireless extensions support, and after that's finished I'll put out version 0.2.2 of poldhu_cs.


RSI sucks. Big time. I hate feeling my arms after a friggin day of hacking.


Finished adding support for the 3Com 11 Mbps Wireless LAN PC Card to my poldhu driver, and released version 0.2.1 of the driver. Version 0.2.2 is in the works, making the detection of the card a little more robust.

It still fails to detect the card some times (once every 20 insertions or so), but that needs a firmware upgrade to fix.


Working on a DFU module for the Linux kernel to get this thing it's firmware. Annoying, but necessary I guess. Brad Hards got some success with a slightly modified userspace version I wrote, so I'll be trying that as well. It's cool stuff, and although the userspace app should work, the kernel mode stuff is more generic and just plain clean. I like clean code.

I've found and fixed the bug that caused my driver to hang. It's generally a good idea to enable interrupts after you disable them in the close function. At this time I've removed the code that does that, since it looks like doing this in the open function isn't good enough. It doesn't seem to hurt leaving interrupts enabled, so that's the way it will stay for a while.
Released poldhu-0.1.3. :) I'll be working on adding complete Wireless Tools support to the driver (eg v11).

I seem to have found where my driver barfs when changing scheme's:

When changing scheme's, the cardctl utility brings the interface down, and up again, and this causes mayor headaches somewhere. I'm assuming this is because I use dev_queue_xmit to insert packets into the device's queue, but I can't be sure. It kinda goes into a eternal loop in qdisc_restart. At least that's what keeps turning up when I do a Ctrl-Alt-SysRQ-P. That and a pointer out of range.

at76c503a driver:

I've started writing the driver for the USB wireless device. It's recognized by the driver, but to actually use it I have to implement DFU for the USB stack. Looking into that.

RSI definately sucks.

24 Apr 2001 (updated 24 Apr 2001 at 14:11 UTC) »
Hacking: Today my USB 802.11 device is arriving. This means I'll be hacking up a new wireless linux driver for this thing.

As I have never written an USB driver before, this is going to be interesting.

Fun: I've received my copy of The Bastard Operator From Hell. This is definately going to be fun to read...

Got asked to write another 802.11 driver. This time for an USB device. The specs are clear, and the device should come in during next week. This will be fun to play with, and it means I get to get yet another device... *grin*

6 Apr 2001 (updated 6 Apr 2001 at 14:12 UTC) »

Just released version 0.1.2 of my poldhu_cs driver. Made it play nice with pcmcia-cs, and am still puzzled at what's causing it to hang my box when switching schemes with 'cardctl scheme something'. I'm suspecting my device_event function, or possibly a rogue timer that's screwing something up. I have to get someone else to look at it, because at this point I am not seeing what I'm doing wrong. Which is rather annoying.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!