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."

34 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. Best Buy loves Linux by slummy · · Score: 3, Informative

    I recently purchased a Dynex DX-WGDTC PCI card from Best Buy for 35 bucks, the chipset had some sort of aluminum heat sink over it. I took a gamble and bought it anyway with a feeling that it was manufactured by D-Link. Turns out I was right, it has an Atheros 5212 chipset and I was ecstatic. The madwifi drivers work spectacular with this card. A patched madwifi-ng driver will allow you to crack WEP using ARP injection *wink* I recommend you go out and buy one immediately.

  3. Re:Vote with your wallet by fishbowl · · Score: 3, Interesting

    I've asked a thousand times and never had answered very well:

    List wireless cards, vendors, and prices that I can obtain today, which do work with Linux.

    The compatability lists on the linux wireless sites are useless -- sure there are lots of cards that work, but many of them
    have been discontinued for years, some were only available in certain locales, and some, if you found the model, have had their
    chipsets changes.

    I know of no resource that would allow me to successfully pursue wither of the following use cases:

    1. I want to purchase an 802.11g device guaranteed by the vendor to work with some version of Linux.

    2. I want to make a purchase order for a wireless device by vendor and part number, for a corpoarte deployment.

    I consider my wireless cards to be rare and treasured artifacts. I didn't upgrade my notebook because I knew I was extremely
    lucky to get a laptop with a built-in Prysm2. The situation *sucks* far worse than the winmodem situation ever did.

    --
    -fb Everything not expressly forbidden is now mandatory.
  4. Is it a hardware hacker's paradise? by autophile · · Score: 2, Insightful

    Correct me if I'm wrong -- the problem is that the firmware doesn't come preloaded on the hardware. So basically you have a hardware platform with no driving software -- essentially one big, blank programmable ASIC with specialty hardware depending on what the card is.

    One of the major complaints seems to be that the loadable firmware is not redistributable, and anyway it's full of bugs and other crazy stuff. It occurs to me that maybe these cards are like CPU platforms -- lots of hardware, no driving software. For one particular piece of hardware -- Intel CPU's -- some bright guy named Linus wrote some "firmware" to make that platform run.

    So couldn't some bright people get together, use the programmable hardware as a starting point, and develop their own firmware? I guess you wouldn't have to develop firmware for every blank hardware platform that was manufactured. Just the ones with the neatest hardware features.

    --Rob

    --
    Towards the Singularity.
    1. Re:Is it a hardware hacker's paradise? by forkazoo · · Score: 4, Informative


      Correct me if I'm wrong -- the problem is that the firmware doesn't come preloaded on the hardware. So basically you have a hardware platform with no driving software -- essentially one big, blank programmable ASIC with specialty hardware depending on what the card is.

      One of the major complaints seems to be that the loadable firmware is not redistributable, and anyway it's full of bugs and other crazy stuff. It occurs to me that maybe these cards are like CPU platforms -- lots of hardware, no driving software. For one particular piece of hardware -- Intel CPU's -- some bright guy named Linus wrote some "firmware" to make that platform run.

      So couldn't some bright people get together, use the programmable hardware as a starting point, and develop their own firmware? I guess you wouldn't have to develop firmware for every blank hardware platform that was manufactured. Just the ones with the neatest hardware features.

      --Rob


      Well, it's certainly a nice idea, and in an ideal world, it would be a good plan. Unfortunately, Linus couldn't have written Linux in a vacuum. He had access to an architecture reference manual or similar information about PC's and IA32. He had access to a compiler which would allow him to program in a standard language, which would automatically generate the machine code for IA32. He had access to book on how to write operating systems, and he had access to Minix to get some ideas of how it could be done.

      And it still took a few years before it was really a decent operating system.

      Now, imagine if he had access to only DOS. He didn't have any documentation about the hardware, he didn't have a compiler for it. He just had a copy of DOS. It was all he knew about PC's. It was his only example of how to do an OS. It probably would have taken more than just a few years to turn Linux into a decent OS.

      That's basically all you have when you want to write a firmware. No functional specs. No hardware documentation. Is it possible to make a working irmware for a wireless card? Sure, I don't see why it wouldn't be possible. But, when you have a variety of manufacturers making a variety of cards, and you want to support them all before they stop being relevant to the market, and it takes probably several years of tinkering for any given card, then "hackers GO!" isn't really a viable hardware support plan.

      The US FCC seems to be in no hurry to do anything that would support community efforts to write firmware, given their apparent hostility toward HAMs, and I expect it will be a good many years before the FCC is completely realigned. It isn't really a hot button issue, so I wouldn't even expect a hardcore Democrat president to bother with it just for the sake of being different from Bush. If it won't happen in this or the next administration, then it will be a minimum of six to ten years before we can even dream about regulations causing us to just be handed hardware documentation. Consequently, folks like Theo have made firmware a personal issue. I applaud them, and really hope that he is able to make some headway with this.
    2. Re:Is it a hardware hacker's paradise? by setagllib · · Score: 2, Informative

      There's no good way to look at it. The "problem" that you missed is not that the hardware requires firmware (which is perfectly fine), but that the firmware is extremely restricted and virtually impossible to replace. Theo wants at least the freedom to distribute the firmware blobs with free operating systems without additional restrictions on the users, and even that is being denied by many vendors, continuing to require accepting a license on a web page and forbidding redistributing the blob you receive. The common situation is that to use your wireless card, you need to go to the vendor website and accept a license agreement to download it (very, very few distributions accept restrictions to bundle even the "more" liberal firmware like Intel PRO Wireless blobs, and those that do are frequently beaten up for doing so). You can't do this without your wireless card working, so you try to find the driver CD (if there is one at all) and then tear off the firmware which is not guaranteed to match the kernel driver's expected interface anyway. If the dark lords have mercy on you, you may proceed to accept the license and install the newer, less broken firmware. Maybe.

      --
      Sam ty sig.
  5. FHF by Anonymous Coward · · Score: 2, Interesting

    Simple. Start a Free Hardware Foundation.

    Now don't say it's not possible, since there's really difference in producing SW or HW for free from the economical point of view.
    If you think there is, you are wrong.

  6. Let's look at this another way ... by ScrewMaster · · Score: 5, Interesting

    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.

    Let's take this from a slightly different perspective:

    In general American hardware manufacturers were far more pigheaded and close-mouthed about firmware than Asian manufacturers (Intel especially.) Look for more firmware issues in the future, as Asian corporations continue to take over the remnants of the U.S. manufacturing sector, with U.S. companies stubbornly trying to hang on to their "intellectual property".

    Maybe if these idiots stopped listening their legal teams (and Microsoft!) so much, started worrying less about developers using their oh-so-precious "intellectual property" to make their own products useful to even more customers we wouldn't be in this fix. American tech companies are shooting themselves in the foot, having forgotten that continuous innovation and fresh ideas, not hordes of attorneys, are what drive a tech sector to competitiveness. Meanwhile, China is walking off with the the entire candy store.

    There are only two ways to beat your competition in the modern world: out-lawyer them or out-think them. We used to be in the latter camp (Yankee ingenuity, and all that) but not any more.

    Rather depressing, really.

    --
    The higher the technology, the sharper that two-edged sword.
  7. 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.

  8. Re:Vote with your wallet by c0l0 · · Score: 5, Informative

    Basically everything powered by ZyDas and RaLink-Chipsets works flawlessly with GNU/Linux and the Free/OpenBSD. You can grab those off of EBay dirt cheap in large quantities, mostly from Power Sellers/commercial shops. Big-brand vendors with "the good stuff" on their boards I've personally seen yet were GigaByte (for MiniPCI), ASUS (PCI), and a crapload of others with ZyDas and Prism (for USB - including, for instance, NetGear).
    There's also an emerging (well, maybe they exist for ages, but I've not known the company up until recently) manufacturer for networking gear called "TP-LINK" which sells virtually everything from RaLink. I happen to have a "TP-LINK TL-WN321G" (usb2 full speed) adapter which features a RaLink chip supported by the rt73-usb driver just perfectly. Cost me 9 Euro in germany.

    Hth.

    --
    :%s/Open Source/Free Software/g

    YTARY!
  9. 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.

  10. The problem with not using the search facility by Tim+C · · Score: 2, Insightful
  11. not a new problem by fermion · · Score: 2, Insightful
    This is just another issue with standards, and lack of consumer demand to conform to standards. Today it is wireless cards, yesterday it was printers and cameras.

    Building a standards compliant intelligent machine is often more expensive than building an ad hoc machine, if for no other reason than the cheapest parts can always be used, and there is no need to support all users. The flip side is that a specific driver must be created for each device.

    I had an incident that nicely illustrated this point. I bought a very cheap digital camera a few couple years ago. Now, any standard camera with a USB port should work with my Mac with no additional drivers. Perhaps not all the bells and whistles, but the PTP should work. As it turned out, this camera was not standards based, and, even worse, had undergone a revision so, even thought the model number was the same, it did not work with the drivers I did have. There only way to determine that this camera was not in fact the same camera was to open the hermetically sealed bomb proof packaging, open the camera, and use a magnifying glass to inspect the product code.

    Which just shows that if one wants the cheapest products, then MS Windows is the way to go. Manufacturers can design to the platform, write a few drivers, and sell to the masses. So the point of *nix, and perhaps the Mac,is not to provide the cheapest product, but instead long term stability. I have every reason to believe that Canon camera will work with my computer for a long time, because I am not going to lose connectivity when the next OS upgrade comes around. The standards will still be supported. I have SCSI devices from the OS 9 days that still work perfectly with OS X. I have no idea if those same devices, which required a special driver for MS Window, have continued support for current MS products.

    So really all that can be said is don't buy the cheap products. If one has a choice between the standard printer and generic printer, pay the extra money for the generic printer. Support the standards that will allow *nix to prosper.

    To specifically address the wireless thing, the standard is certainly in flux, and no one can be expected to support a standard that does not necessarily exist. That said, it should still be possible to assemble a standard compliant box that is not targeted towards the MS Windows OS, perhaps at additional costs.

    --
    "She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
  12. Re:THERE IS NO PROBLEM! by c0l0 · · Score: 2, Insightful

    Madwifi drivers are not free, as they require a binary-only, proprietary Hardware Abstraction Layer (HAL, not to be confused with freedesktop.org HAL/hald) running, which is in fact even worse than platform-agnostic firmware which is just shoved over the bus to the device and running on an ASIC there. The HAL needs to be present and compiled for every Platform you're going to run the Atheros-powered card on.

    The OpenBSD-folks have developed a free as in speech replacement for the binary-only HAL provided by Atheros, but madwifi did not care to adopt it at all - which leaves their true intentions somewhat dubious to me (and a few concerned others).

    Bottom line is: I would not buy Atheros-based cards, and rather go for RaLink or ZyDas. Though watch out, as the latter company recently has been bought by Atheros, therefore suggesting that either their future devices will come with equally dumb restrictions/dependencies applied on their drivers, or their excellent product line vanish completely.

    --
    :%s/Open Source/Free Software/g

    YTARY!
  13. Re:THERE IS NO PROBLEM! by kruhft · · Score: 2, Informative
    Bottom line is: I would not buy Atheros-based cards, and rather go for RaLink or ZyDas.
    Atheros Communications to Acquire ZyDAS Technology Corporation - Date: April 24, 2006

    Looks like RaLink might be the only player on the block soon enough...

  14. Re:Free firmware a solution? by kune · · Score: 2, Interesting

    This sounds well in theory, but in practice it will not work. There is a lot of very specific information required to implement firmware, which is not even available from the open-source-friendly vendors. If you think, this shouldn't stop smart people, then try it on your own.

    I write together with others the ZD1211 WLAN driver for the Linux kernel and though we have a lot of useful information from the vendor, we have huge trouble to match the performance of the Windows driver. If you think that is our fault, try to do better. Keep in mind that the developers of the Windows driver, have access to the hardware engineers, know all the registers on the chips and have access to test labs and equipment. All the information we have about the hardware registers is the open-source driver of the vendor, but you have to reverse engineer the semantics of the vendor driver.

    From my perspective the PC becomes more and more a closed platform, which makes it more and more difficult to compete with Windows. The reverse-engineering effort required becomes larger and larger, which should be spend on performance optimizations or feature requests. I personally believe that closed source drivers should be banned from the Linux kernels, because they support this trend to the closed PC platform.

  15. Just look at RealTek.... by Svartalf · · Score: 2, Insightful

    The odds are extremely good that you have a RealTek NIC on your machine if it's an integrated part.

    There's several reasons for this.

    It's cheap.
    It works VERY well, though not the best that money can buy.
    It's completely open in it's documentation and relatively easy to design with.

    Those three things make me think of using their part first- especially the open information part.
    It's no different for any other engineer. I can assure you, they're about to get a batch of people
    on the scene that are customers that will insist on this stuff being the case. Customers that are
    are going to be big enough to not ignore and won't take "NO" for an answer as they'll find someone
    else if they get it.

    --
    I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
  16. Not exactly by QuasiEvil · · Score: 2, Interesting

    Different creatures, these and winmodems. These are drivers that load firmware to chips on the cards that actually *do* something. A winmodem was really just a lousy sound card integrated with a DAA and thus could be plugged into a phone line. Nearly *all* of the signal processing was done by the host processor. No firmware was downloaded to winmodems, because nothing (or very little) was being done on the card itself.

    With these, the cards actually still do processing for themselves, but the manufacturer decided to spare themselves the cost of the EEPROM/flash to store the firmware image, so they make the host download it to them.

    Either solution is craptastic if you ask me, but winmodems were a different critter. At least with a winmodem, it would be possible to write your own drivers (in theory), since all you need is a good solid background in signal processing theory, some reasonably cool telco test gear, and all of the modem modulation specs. The hardware was relatively simple to figure out. With these, the hardware is a black box, likely riddled with bugs and gotchas, that would be almost impossible to reverse engineer without spending a good deal of time/money (possibly down to reverse-engineering the silicon itself).

  17. I was that scum by Anne+Thwacks · · Score: 3, Interesting
    I have personally designed hardware that has driver-loaded firmware, and I'd do it again. It is a wonderful solution to the issue of upgradability, not to mention bug-fix-ability.

    Not only that, I have written OS/2 and FreeBSD drivers for it outside of work hours (but with permission).

    There is ABSOLUTELY NO REASON why a FOSS driver cannot install the firmware. This is NOT the problem. There MAY be a problem with distribution rights, or with documenting how to load the firmware, but these are NOT what TFA described.

    While one might like to have the spec for writing one's own GPL firmware, and I dont see prob;lems with that, I do see a problem with expecting $100,000 worth of firmware development for free, when the hardware can be replicat4ed for a $10, and the combination normally sells for $100. Ie there are products on the market where the majority of the value is in the firmware. and Yes, it does sometimes take more than three man-years of $100/day consultants to write firmware for a product with a predicted lifetime of 8-months. (Graphics card, anyone?)

    --
    Sent from my ASR33 using ASCII
    1. Re:I was that scum by gregorio · · Score: 2, Interesting
      You may think your network card firmware is worth $100,000, but it's not. Hardware people think their software is valuable because they see other people selling three man-years of software for huge amounts. Here's what they miss: those other people are good at writing software, while hardware people and poorly supervised contractors are horrible at it. In those three man-years, they'll produce code that's bad in every way you can imagine - filled with magic numbers, race conditions, deadlocks, spaghetti code, massive duplication, inefficiencies, and bizarre workarounds for bugs both in the hardware and the firmware. It's entirely free of comments or documentation. It's not even indented right. It's a miracle it ever works. Be thankful this software does not require sophisticated algorithms, or it would be entirely hopeless. It's nearly worthless - it certainly isn't well-written enough to be useful on a competitor's chipset. But for some reason, hardware people think their software is the secret sauce, so they're afraid to let anyone even distribute the binary, much less see their awful code.
      You're wrong, sorry. You're just being arrogant, nothing more. You don't have any proof or whatsoever that firmware development is "spaghetti code with bad identation". That's B/S.

      Hardware development teams are not "cursed" with a "bad coding virus". In fact, a lot of hardware people are much better programmers than basement-living nerds. If you really think that Open Source programming is the heaven of code quality, I guess you never looked at OSS source code.

      While you're probably going to "prove" your dumb generalisation using some lame-ass anecdote, I also have mine: I worked with a lot of embedded development people (I'm also one of them) and most people I met are extremely good programmers, that can not only code well but they can hand-optimize their software without making a mess out of it. After all, we work with 30-200 MIPS processors that sometimes need to execute data-processing tasks that would bring a multitasked P4 to its knees. We know A LOT about optimization and we're far better coders than any basement rat you can find.

      If there's a market where you're going to find good programming skills and culture, it's the embedded development market.
  18. Looking for a wireless card right about now... by MMC+Monster · · Score: 2, Interesting

    I'm actually in the market for a wireless card for a desktop PC running Ubuntu Edgy right about now, actually.

    Any clear winners? Does it matter which router I will be using? For that matter, I need to get a router as well.

    (I figure I might as well ask here, since the topic is here. I would otherwise have just gone to the Ubuntu forum.)

    --
    Help! I'm a slashdot refugee.
    1. Re:Looking for a wireless card right about now... by WilliamTS99 · · Score: 3, Informative

      Yes, there are some clear winners, the forums are great, and the compatibility list is: https://help.ubuntu.com/community/WifiDocs/Wireles sCardsSupported As far as the router, I tend to stick with anything that is supported by DD-WRT http://www.dd-wrt.com/ The best is to find the wireless cards that work perfectly with network-manager right out of the box on the recent version(s) of Ubuntu.

  19. Yep by bogie · · Score: 2, Insightful

    Hardware makers have done a huge disservice to their customers by not producing stable chipsets. They'll have several revisions of say the "Linksys USB11" and each one using a different chipset. You go to Amazon and buy it and yet have no idea which version you'll be getting. To be fair there have been some new standards like WPA etc that possibly would have required a new chipset, but the vendors just went way overboard in their lack of regard for stability in their product lines.

    I must have half a dozen wirless nics from PC Cards, to PCI cards, to USB versions and I think one of them is detected automatically without major problems in linux. And of course the one that is detected won't do WPA in linux so it is 100% worthless. Good thing I don't use Linux as my main desktop OS anymore. While things have gotten better, support for hardware on linux still sucks just as bad now as it did many years ago.

    --
    If you wanna get rich, you know that payback is a bitch
  20. MOD PARENT DOWN, PLAGIARIZED COMMENT! by Anonymous Coward · · Score: 2, Informative

    Original comment from five days ago

    Parent is stealing comments to salvage his poor karma. Notice his extensive "Score: 0" comment history.

  21. Firmware != Drivers by itsdapead · · Score: 4, Informative

    Quick clarification, seeing some of the posts here about "winmodems" and junkware-infested drivers:

    Drivers run on your computer and let it talk to the device.

    Firmware is "software" that runs on the device - typically code for on-board microcontrollers, Field Programmamble Gate Arrays (FPGA) and other "soft hardware".

    There is nothing wrong with the idea of using driver-loaded firmware - it simplifies the device (no need for on-board flash memory) and makes it easier to fix "hardware" issues with an updated driver (with less risk of "bricking" a device by muffing a firmware update). Linux can actually cope with it quite happily - A lot of digital TV cards rely on driver-loaded firmware and its all fine and dandy provided that either (a) the manufacturer offers a download of the firmware or (b) it can be extracted from the windows driver CD or (c) some evil pirate has selfishly conspired to increase the manufacturer's customer base by posting an iffy copy.

    There is an interesting question as to the status of such a "firmware blob" vis. the GPL (especialy the anti-TiVOization clauses of V3). Is it part of the software (thus tainting the free-ness of any drivers that require it) or part of the hardware (FPGA "software" is more like a circuit diagram than a program - and the "source code" might be useless without proprietary software from the FPGA manufacturer - and tweaking it might void the FCC/CE certification of the device)?

    --
    In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
  22. More votes for the wealthy is not a good goal. by jbn-o · · Score: 2, Informative
    Vote with your money, folks.

    I'm all for letting cooperative organizations know why I'm purchasing their equipment and not their uncooperative competitors (and notifying their uncooperative competitors to the contrary), but I don't expect it to mean that I'm in any way "voting" or leveraging some kind of democratic control over what is essentially a private tyranny.

    However, if you read Theo de Raadt's informative talk slides, you'd see another reason why "voting" with your money isn't what it is made out to be (slides 24 and 25—"The OEM problem"). Maybe if customers in the US were organized to a scale never before seen and all demanding chips with complete and unrestricted documentation, we'd have more control as a group. This is worth pursuing, and if you are calling for this I would gladly join such an effort.

    I say this is another reason because the general problem with the concept of voting by spending money means that rich people have more "votes" than poor people, so this saying tries to cast a egalitarian pall on an inequity. de Raadt addresses how much consumer power you have with regard to computer hardware by pointing out how OEMs leverage competition to insulate themselves from customer's wishes for chips we can operate without proprietary software. I mentioned this before but I didn't think it would come up as a repeat so soon.

  23. Re:big problem for EVERYBODY by faragon · · Score: 2, Interesting

    Embedded systems have both space and boot time constraints, the more bloat you have to load after a reset (e.g. due to Watch-Dog reset) the worse boot times.

  24. You've miss-understood the article. by Vellmont · · Score: 2, Informative

    The article is pretty clearly saying that the problem isn't that firmware makers aren't releasing source code to expensively developed firmware (though obviously that would solve the problem). The problem is that many chipset makers aren't providing rights to freely re-distribute firmware, and aren't providing documentation for that firmware so drivers can be written.

    --
    AccountKiller
  25. 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

  26. Re:Vote with your wallet by fishbowl · · Score: 2, Insightful

    >all are ralink, and I own one of each of these devices, unless some kind of version-bump has changed the chipset

    That is exactly the problem. Our organization has found compatable devices in the past, only to reorder by exact model number to receive incompatable units. It has happened twice with two manufacturers, and it contributed to linux being abandoned for a project.

    --
    -fb Everything not expressly forbidden is now mandatory.
  27. Re:Vote with your wallet by urbanradar · · Score: 2, Informative

    But this is exactly the problem! When people ask this question, they get details, and perhaps a link to a list or two. But there is no single up-to-date reliable hardware list that a Linux-user can really rely on. This should be a simple URL of a website that answers all hardware questions: enter a chipset or a product name, and get a list of distros on which it works. Sounds obvious, and necessary, but we still don't have it. Even such a website for a specific distro doesn't exist, to my knowledge - for example the Ubuntu wiki has lists of compatible hardware, but it isn't very convenient or accessible, I've spent a lot of wasted time on it. Also, if a particular model isn't listed, I don't know if that means it wasn't tested, or doesn't work (although some models are marked as not working). And the basic problem is that the Ubuntu wiki could be wrong - I am not aware of anyone doing serious quality control there.

    I guess for most people knowledgeable about Linux, this isn't a big issue - they know the answers or know where to get them. Still, a better solution would make things more convenient for them. And newcomers would certainly be much happier.


    You know, I'm involved with a reasonably young project that aims to do exactly that - provide a community-powered, up-to-date, comprehensive central Linux hardware compatibility listing. It was launched in autumn, but for various reason, no work was done on it for several months, and we're only just picking up on it again now. So it still needs a whole lot of work, and it could do with more contributors, too. We tried to submit it to Slashdot, but the story was refused.

    In case anyone is interested in taking a look, the URL is http://www.tuxpatible.info.

    If you think this project has potential and is worthwhile supporting, spread the link, contribute to the website, or if you have mod points and feel like it, mod this post up so that more people may see this!

  28. Re:Vote with your wallet by urbanradar · · Score: 2, Informative

    You're going about this incorrectly. If a piece of hardware works in one distribution, it will theoretically work in all. Granted, it will probably be easier in Ubuntu or Fedora, but just because you may have to work a little harder in Slackware doesn't mean the hardware isn't compatible. The OS is still GNU/Linux, and there are very few hardware-related tools that are propriety among any one of the big distros.

    I think you're missing the point about what exactly tuxpatible.info is meant to be.

    Yes, theoretically, something that works in one distro will indeed work in all of them. Practically, however, this is often not the case. Are you seriously claiming that all Linux distros have identical hardware support / recognition? If that was really so, hardware recognition wouldn't be such a major point in Linux distro reviews. Fact is: Not every distro includes every driver, not every distro includes the same version of every driver, not every distro is perfectly bug-free, and so on, and so on.

    Tuxpatible isn't just meant to answer the question, "Is there a Linux driver available for $HARDWARE". It's meant to answer more specific questions, like: "What distros will $HARDWARE work well with?" or "Will $HARDWARE work with my distro of choice?", or "What do I have to do to get $HARDWARE working on my distro of choice?", or "How do I fix this common problem with $HARDWARE under my distro of choice?"

  29. Re:Vote with your wallet by Lumpy · · Score: 2, Insightful

    And there you have it. As it always has been in linux land. if you go to the big box computer wearhouse and buy crap willy-nilly you cant expect it to work when you get home. Linux works great if you buy supported hardware and make informed purchasing deciciosn like you just mentioned. It avoids the problems with the crap-level broadcom and other wifi hardware that is lower grade than a $3.95 winmodem.

    It blows my mind how the linux community continues to make the low grade hardware work instead of universally blackballing it Broadcom would actually pay attention if the linux community as a whole said "buy nothing with broadcom chipsets, it is low grade dog food"... But that is the problem, the linux community cant get congealed on a topic except for MS hate... hardware that is supported by the vendor get's some allocades but flamed to a crisp by "purists" becuse they dare to release a binary only driver to honor some silly legal agreements they signed.

    The biggest thing holding back linux from taking over the desktop like wildfire is that our diversity looks like a huge group of never happy children. we bitch about everything and everyone while some like the challenge of reverse engineering a piece of hardware the maker tried hard to make linux resistant.

    Every single linux PC I built for relatives to switch them to linux from windows is 100% functional and perfect. I tellthem it's like a MAC, if the software and hardware does not say for linux on the box , then do not buy it. This tactic works great, I get the initial question about software, point them at the add new software on the ubuntu start menu and never get a call again except for thanks or who to send money to to pay for the new software they just installed from that menu. (I tell them to donate $10.00 for each app to the ubuntu org.) Linux on linux supported hardware just works.

    --
    Do not look at laser with remaining good eye.