Damn proprietary drivers...

I’ve got a nice Compaq Presario R3000Z here at my desk, with pretty much everything I need. It’s only downfall is the Broadcom wireless driver inside. For whatever reason, Broadcom absolutely refuses to create a Linux driver. I’ve actually spoken with them via e-mail, and they basically said to pound sand, and talk to HP (the manufacturer of the notebook).

<rant> I understand intellectual property, and I understand the reason why businesses want to keep much of it locked away. But an interface is an interface. I doubt Broadcom has done anything novel in their drivers. They interface via PCI, the same way most networking adapters do. The reason to keep the details all tied up behind closed doors is beyond me. Don’t get me wrong, if we were talking 10 gigabit drivers, I understand wanting to keep your competitors out of your territory. It takes a great deal of work to make a high-speed driver work well, and essentially providing a skeleton driver to your competition is probably not the best business decision. But we’re not talking about that here. We’re talking about a 54Mbit WLAN card, in which you can have a very poorly written driver but still get the job done. What’s most important is giving your customers opportunity. Opportunity to choose their OS. Opportunity to fix their issues. Opportunity to use their computer in the way they choose. Personally, I believe if you’re a hardware manufacturer, you should have to publish a datasheet with all the interface details. </rant>

I really don’t want to carry around this stupid PCMCIA card though. So I was a cop-out, and fired up ndiswrapper in SLED 10, and used the Windows driver. However, I will say this, my next laptop will be designed for Linux–even if I have to pay more for it. And I’m going to boycott just about anything made by Broadcom. At least Intel and Atheros have taken major strides to make sure most of their stuff is in the Linux code base. Broadcom should take a few lessons on that.

For those that are interested in knowing how I get it to work, I downloaded one of the 64-bit drivers from an Acer site. Take a look here for a list of them: http://ndiswrapper.sourceforge.net/mediawiki/index.php/List#B. After that, I modified the .inf file so that it would have the correct PCI id for my wlan card. Then I followed the installation instructions that came with ndiswrapper. It was actually pretty painless, despite the disappointment that there wasn’t a native Linux driver available.