[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Compaq WL-200 802.11b card and CL-PD6729 controller with PCI interrupts


I recently decided to install OpenBSD 3.3 on a couple of PCs that are running as wireless routers so that I could take advantage of IPsec and ethernet bridging. The machines had Compaq WL-200 802.11b cards installed, and the chipset seemed to be supported by OpenBSD.

After some investigation into why the card didn't work with the default install, I discovered that OpenBSD only supports the CL-PD6729 PCMCIA controller in ISA IRQ mode while the Compaq WL-200 PCI card (for obvious reasons) only wires the PCI interrupt pins through to the bus. I then set about making the controller work in PCI interrupt mode by modifying the drivers.

I've made some changes to the i82365_pci code using the CardBus driver as an example, and managed to get it working properly with the Compaq card. I also had to modify the wi driver interrupt routine as it seemed to assume that it was always running on a unique ISA IRQ.

Since the WL-200 has the 802.11b chips physically soldered to the card (rather than being on a separate PCMCIA card) I couldn't test the card insert/remove interrupts on the PD6729 controller. There is also a "powerhook" function that I didn't look into too deeply since I assume that it is to do with powering PCMCIA cards up and down, again not relevant to the WL-200.

The machines have now been pressed back into service with their shiny new OpenBSD installations, so I have effectively lost my test platform as well.

I'm wondering firstly what the procedure is for submitting source code changes to OpenBSD for consideration for the next release, and secondly whether there is anyone who is interested in further developing the code to fully support the PD6729 on laptop hardware that uses it in PCI mode? Do any such machines exist? From my searches around the web it appears that most, if not all, hardware using the PD6729 uses it in IRQ interrupt mode.


Alan Wilkie