Slashdot Mirror


The Problem With Driver-Loaded Firmware

Kadin2048 writes "If you've gone to a big-box store and purchased a wireless card recently, you might have had some trouble getting it to work under Linux, or any non-Windows OS for that matter. One reason for this is that more and more manufacturers are producing hardware that are useless without proprietary firmware. While these new designs allow for lower parts counts and thus lower cost, it presents a serious problem for F/OSS software because it can sometimes guarantee no out-of-the-box compatibility. Jem Matzan has produced a detailed article, "The battle for wireless network drivers," on the subject, including interviews with manufacturers' representatives and OS developers, including Theo de Raadt. The bottom line? In general, Asian hardware manufacturers were far more responsive and liberal about firmware than U.S. manufacturers (Intel included). Look for more firmware issues in the future, as not only wireless hardware, but regular wired Ethernet cards, take the driver-loaded firmware approach."

5 of 229 comments (clear)

  1. firmware by chinaguy · · Score: 4, Insightful

    I have always wondered if part of the reason this sort of thing is so popular might be because it curries favor with MS. I'm certain MS is NOT displeased with this sort of thing. Can we say "winmodem"?

  2. The good list by jrobinson5 · · Score: 3, Insightful

    According to the article, there are three companies that have actually worked with the free software community on drivers. Here is the list:

    Ralink Technology

    Atmel Corporation

    Realtek Linux drivers here

    Vote with your money, folks. If you would like to see companies cooperate with the free software community, reward the companies that do so by buying their products.

    If you know of a particular piece of WiFi hardware that works particularly well in Linux or BSD, please follow up here so we all know what to buy. (See also this list.)

    1. Re:The good list by miskatonic+alumnus · · Score: 3, Insightful

      The goal isn't to put the bad company out of business, but to keep the good company in business.

  3. Which card? by astrashe · · Score: 5, Insightful

    These articles are always frustrating to me, because I can read about chipsets that work, but not about which cards support them. It's hard to go to newegg and buy a card, because many of the cards that have the good chipsets come in different versions with bad chipsets.

    My ancient orinoco silver pcmcia card stopped working with ubuntu as of edgy. I don't know why. It works with other distros. But it's not 802.11g, and it doesn't do WPA, and although it's not important to me, it's not great for scanning.

    So I want to buy a card. I'd order one today, but I don't know what to get.

    I know our buying power as a community is small, but I'd think that some no-name card manufacturer would find it worthwhile to make a card that has a picture of a penguin on it, and that is fully supported by free software. I'd pay a little more for a card that I know will just work, and that will continue to work.

  4. Another example of Driver-Loaded Firmware: M-Audio by azzurro · · Score: 3, Insightful
    M-Audio audio interfaces also use driver-loaded firmware.

    From http://www.theory.physics.ubc.ca/transit.html:

    This card [M-Audio Transit] needs to have firmware downloaded to the card on the USB bus to work. It uses a non-standard "DFU" method which seems to have some problems with Linux. It also mixes its Type I and Type III endpoints to confuse the software. I have found (with the help of and software written by Clement Ladisch and Takashi Iwai.) a way to make this card useable.

    The card requires firmware to be downloaded to the card first for it to work as a soundcard. While it appears on the usb bus with Vendor/ProductID of 0763/2806 this is a very primative usb device that does nothing except wait for firmware.

    A firmware loader for M-Audio audio devices is available at http://usb-midi-fw.sourceforge.net/. Interestingly enough, the set-up procedure involves copying the firmware bin file from the Windows driver installation, which is subsequently used by the firmware loader.

    Anyways, TFA makes some interesting points:

    Unrestricted redistribution of firmware files is satisfactory for some open source operating system projects like OpenBSD, FreeBSD, and many varieties of GNU/Linux, but others like Fedora Core and Debian demand an entirely free software environment, so redistribution of the firmware without the ability to modify and distribute the source code is prohibited.

    The firmware, although its being loaded to the device, is still firmware. Do distributions that demand an entirely free sofware environment ship drivers for devices with proprietary firmware? Of course they do. I'm not convinced that this should be any different.

    I think that Theo de Raadt, of OpenBSD, has it right:

    So instead of lobbying for documentation to write open source firmware, de Raadt would prefer to simply have the right to freely distribute necessary proprietary firmware files with his operating system, along with correct firmware interface documentation so that a driver can be created, and information from the manufacturer regarding bug workarounds.

    -azzurro