Slashdot Mirror


Broadcom Releases Source Code For Drivers

I'm Not There (1956) writes "Broadcom, the world's largest manufacturer of Wi-Fi transceivers, open sources its Linux device drivers. This is a big win for Linux users, as there are a lot of users that face Wi-Fi problems when they use Linux on their laptops. With these device drivers now open source, distributions can ship them out-of-the-box, and that means no Linux Wi-Fi problems for new devices and upcoming distributions at all."

36 of 350 comments (clear)

  1. This is fantastic by Demanufacture · · Score: 5, Interesting

    Congratulations Broadcom, you have just made at least one geek very happy.

    While you're at it, any chance of releasing the source for your video decoders? I promise that you will own the HTPC market if you do.

    --
    --- "When you're strange"
    1. Re:This is fantastic by grub · · Score: 3, Funny


      I can partially blame the status of my hair on broadcom wireless cards.

      Broadcom wireless cards made you get a Brazilian wax? Weird.

      ...

      --
      Trolling is a art,
    2. Re:This is fantastic by BobNET · · Score: 4, Informative

      While you're at it, any chance of releasing the source for your video decoders?

      You mean like this, or something else?

    3. Re:This is fantastic by Andrew+Cooper · · Score: 3, Funny

      Well yeah. Getting a Brazilian was listed as an important step on the forum I was using to get my wireless card working. And I got it working so the wax job must have helped, right?

  2. The world just got a bit nicer. :) by h4rm0ny · · Score: 4, Informative

    Broadcom wirelss. Cause of a 100 page thread on the Ubuntu forums (and innumerable posts elsewhere) by people trying to get those bloody cards working under Linux.

    So speaking as one of the many sufferers, how long before I can just slap Linux on an old Acer laptop and expect the wireless to just work?

    --

    Aide-toi, le Ciel t'aidera - Jeanne D'Arc.
    1. Re:The world just got a bit nicer. :) by miknix · · Score: 3, Informative

      $ lspci
      (...)
      03:00.0 Network controller: Broadcom Corporation BCM4311 802.11b/g WLAN (rev 02)

      $ lsmod | grep b43
      b43 153329 0
      rng_core 3158 1 b43
      mac80211 128164 1 b43
      ssb 33383 1 b43

      My broadcom BCM5311 has been working just fine using the b43 drivers included in Linux; they are there for quite some time..
      Good news for everyone though. This means new broadcom hardware support and improvement of current GPLd drivers.

    2. Re:The world just got a bit nicer. :) by nine-times · · Score: 4, Interesting

      I've never really understood: why don't more hardware companies open the source for their drivers? Is there super-secret special source in the drivers that they're trying to prevent their competitors from learning? Is it an issue of patents?

      It seems to me that drivers are an instance where opening the source should be a no-brainer. It's not like an application, where you're trying to sell the software. People still need to buy your hardware to make use of the drivers, so it's not like your customers will be inclined to stop buying things from you. I would image you could drastically lower the cost of supporting the drivers by opening them, though. You'll probably increase quality at the same time.

      I'm sure I'm missing something, though. Would someone enlighten me?

    3. Re:The world just got a bit nicer. :) by FrankSchwab · · Score: 5, Informative

      My company manufactures devices for PCs. We do NOT open source our drivers; I'll give you my two cents as to why:

      1. Licensing. Our drivers include licensed code from at least two other companies - code that implements algorithms seen as proprietary and valuable by those companies. We don't have the right to publish that code, and couldn't conceivably convince them to do so.
      2. Competitive advantage. We have several competitors in our market. The specs that Marketing puts on our datasheets might be optimistic in some scenarios. If we open-sourced our drivers, our competitors could easily demonstrate that to potential customers - if their drivers were closed, we would not have the equivalent opportunity to prove that their liars were worse than our liars.
      3. Support. If we publish source, we will end up fielding all kinds of questions from all kinds of people about all kinds of aspects of our product. Even if we simply answer "Go away" to all those queries, there's a lot of time spent reading and replying (or simply ignoring) them. Considering that we sell our products to OEMs for a few dollars, there just isn't any margin for end user support.
      4. Security. Say what you will about "security through obscurity", it still has a huge following in the corporate world. Publishing all your source code provides all kinds of opportunities for the scoundrels of the world to take advantage, from the PHB point of view.
      5. Financial. There is no business case to be made to disclose this proprietary information. If I'm not going to make money from something, why should I spend the time/effort to open source it, and perhaps give away information that my competitor could use?

      In Broadcom's case, there are probably others also - for example, publishing source for a Wireless card could allow operating the RF section beyond regulatory limits - transmitting/receiving out of band, transmitting with too much power, etc. This could jeopardize certification (such as FCC certification in the US) or subject the company to unwanted regulatory scrutiny.

      Does this help?

      --
      And the worms ate into his brain.
    4. Re:The world just got a bit nicer. :) by Anonymous Coward · · Score: 4, Insightful

      If I had mod points I would have gladded modded you up, though only for your first point. I feel the rest are either washes (you mention bad potential problems without mentioning the potential good ones) or things that are borderline illegal (or should be).

      1. Great point, can't argue this one.
      2. Is the spirit of fraud, if commonplace and within the letter of the law, and should not be tolerated.
      3. Support, if your source is good enough, other people (the community) will actually do your support for you in many cases.
      4. Do I actually need to pick this point apart? While it is correct that many PHB believe it, it isn't actually true.
      5. There are plenty of business cases to be made for doing so. Free (unpaid by you at any rate) coders improving your device, and depending on license, being required to make those improvements available to you for starters.

    5. Re:The world just got a bit nicer. :) by Hatta · · Score: 4, Insightful

      1. Licensing. Our drivers include licensed code from at least two other companies - code that implements algorithms seen as proprietary and valuable by those companies.

      Release the rest, and provide descriptions of the missing algorithms. They'll be reimplemented in a week.

      if their drivers were closed, we would not have the equivalent opportunity to prove that their liars were worse than our liars.

      So don't lie.

      3. Support. If we publish source, we will end up fielding all kinds of questions from all kinds of people about all kinds of aspects of our product.

      Really? Do you think end users are really going to contact Broadcom? Or are they just going to go to the Ubuntu forums like they have been.

      4. Security.

      We all know that's bullshit.

      5. Financial. There is no business case to be made to disclose this proprietary information.

      But there is. Before today, if I wanted a wifi router I would only buy one with Atheros chips. Now I will seriously consider a Broadcom based product. I had never run ATI cards before they open sourced their drivers in 2007. Now I have an ATI card.

      --
      Give me Classic Slashdot or give me death!
    6. Re:The world just got a bit nicer. :) by rahvin112 · · Score: 4, Interesting

      5. Financial. There is no business case to be made to disclose this proprietary information. If I'm not going to make money from something, why should I spend the time/effort to open source it, and perhaps give away information that my competitor could use?

      You might find this hard to believe but the large OEM's (HP, Dell and all the others) are demanding Linux driver compliance in their OEM selection process. Linux is huge in the server market, particularly in visualization, is taking over the cell phone market and will one day be in the home. If you don't OSS your drivers you will lose OEM contracts and likely won't be told that you lost because you didn't have Linux drivers.

      Linux will one day be the dominant OS in all the backend servers, the dominant players in the largest percentage of Embedded devices (including cell phones) and in the future will dominate the desktop.

    7. Re:The world just got a bit nicer. :) by FrankSchwab · · Score: 5, Interesting

      1. I should spend a month or two of engineering time to write specifications for a block that isn't part of my core competency?
      2. Don't take "liar" literally. Marketing is always guilty of Puffery, and in the US this is acceptable. Datasheets always have specifications which, if taken out of context or tested outside the conditions in the tiny print, can be proven wrong. In the market, to remain a viable business, you have to "puff" as much as your competitors do - look at beer, cigarette, car, computer advertising. A company that lets the Engineering department write the marketing materials doesn't survive long. Frankly, our materials are a whole lot closer to reality than our competitors - we've never published wholesale lies, to the best of my knowledge, which isn't always true of those I've competed against.
      3. Yes, really.
      4. Yes, I know that's bullshit. Tell that to my CEO and CFO.
      5. OK, we'll lose your business - that's $3 worth of revenue that we won't receive, once. We hope that you'll see the value of our products in the future and be willing to consider us then.

      --
      And the worms ate into his brain.
    8. Re:The world just got a bit nicer. :) by Lord+Ender · · Score: 4, Informative

      There is no business case to be made to [release linux drivers]

      Before I buy personal hardware, I check to see if it works well in Linux. Before my organization buys hardware, it requires that it work in linux, as the vast majority of our datacenter runs RedHat.

      Do you sell to businesses or computing enthusiasts? There's your business case. If you're selling to soccer mom's, well, then you would have a point.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    9. Re:The world just got a bit nicer. :) by gknoy · · Score: 3, Informative

      1. I should spend a month or two of engineering time to write specifications for a block that isn't part of my core competency?

      Don't try to describe it all, just point out that function calls X/Y/Z are used, point them out, and talk about what they're expected to do.

      I don't believe the "implemented in a week" claim, but at least someone could build a black box that might meet your needs. If you said, "This sorts the $FLORBS", or "This needs to quickly calculate checksums for integrity" or "This needs to do ${COMPLICATED_MATH} quickly on ${STUFF}", people can at least try to implement it. An inefficient but working implementation will meet some people's needs, even if your proprietary drivers use code thich has been heavily optimized for speed, reliability, or correctness. Assuming anyone cares enough to write them.

    10. Re:The world just got a bit nicer. :) by Kjella · · Score: 4, Interesting

      1. Is usually not that easy, if it's licensed for use in the driver there might be bits of it many places. It'll take developer time and lawyer time to do, or you could risk a huge lawsuit.

      2. Being the honest loser of an OEM contract doesn't put food on the table.

      3. Common end users? No. But certainly some developers in the community will start asking hard questions and expect answers. If the driver isn't working well enough, the negative PR will hit the company, possibly worse than if they had no driver at all.

      4. It doesn't matter if we "know" it's bullshit, as long as PHBs believe it

      5. Invisible and unmeasurable sales. Nobody will know and can put in a business case that this is why you bought that router.

      I see a lot of these answers, that just say "well it's not a technical problem, so it's not real". Legal liability, losing contracts, bad PR, security concerns and no proven business case are problems even if they're just perceived to be problems. Unless you'd like to buy out some of these companies and bet your fortune on these problems not being real. Yes, I'm being overly pessimistic when I answered here, but it's too easy to think all they needed was a grocery list from slashdot. That's what everyone is looking for in a business case, what's the weaknesses you didn't include and is your downsides soberly assessed? Business cases that only deal with the sunshine scenarios don't usually get through.

      --
      Live today, because you never know what tomorrow brings
    11. Re:The world just got a bit nicer. :) by jejones · · Score: 3, Insightful

      >Does this help?

      If you would, please do one more thing: name the company, so I can make a point of avoiding its products.

    12. Re:The world just got a bit nicer. :) by Hatta · · Score: 4, Insightful

      1) True. The right thing to do is to go open source from day one.
      2) Being verifiably honest is a competitive advantage.
      3) Perhaps, but a little bit of support time is a small price to pay for free development. It's not going to cost you more than it would have to hire someone to write it. And concerning the 2nd part of your answer, do you have an example of that happening?
      4) I think the OP was asking for good reasons, otherwise we could have answered him simply with "Because PHBs are assholes". That is the only real reason.
      5) Nobody knows whether or not a given advertisement causes me to buy an item either, but we are still saturated with advertising. An open source driver is another bullet point marketing can use to sway people.

      --
      Give me Classic Slashdot or give me death!
  3. Re:FP by oldspewey · · Score: 3, Funny

    Take heart - you're still in the running for lamest post.

    --
    If libertarians are so opposed to effective government, why don't they all move to Somalia?
  4. Re:Hahahahahaha by C3c6e6 · · Score: 5, Interesting

    No one is saying that device drives will magically start working flawlessly because their source code is open, although it will make it easier to track down bugs (see Linus Torvalds' quote about the number of eyeballs).

    The main point, however, is that now Linux distributions can ship these drives out of the box, so wireless devices will work straight away. Until now the biggest (and dare I say only?) problem I've had with installing Linux on a laptop is finding and installing the right drivers for wireless network cards.

  5. DD-WRT by QuantumBeep · · Score: 5, Insightful

    Looking forward to much broader DD-WRT support for Broadcom hardware in the near future

  6. Re:Hahahahahaha by JonJ · · Score: 3, Insightful
    That's what the text says though, or do you have a problem reading the quote?

    and that means no Linux Wi-Fi problem for new devices and upcoming distributions at all.

    Just do a quick search for rt2x00 bugs, they've been open sourced a long time, and still has plenty of bugs and failures. It's not magic, it wont' make all problems go away. Yet, that's what the claim is.

    --
    -- Linux user #369862
  7. Re:Hahahahahaha by JonJ · · Score: 3, Informative

    They've had a binary driver out for some time, I'm using broadcom-sta on my IdeaPad.

    --
    -- Linux user #369862
  8. Re:Hahahahahaha by armanox · · Score: 3, Interesting

    Maybe I'm about a year behind on Broadcom on Linux, but last I looked you had to use NDISWrapper with the Windows driver to get it to work, and Broadcom had no actual driver (was using a 2007 era HP Laptop).

    --
    I'm starting to think GNU is the problem with "GNU/Linux" these days.
  9. That could be very nice for Tomato Firmware by Nimey · · Score: 3, Interesting

    Tomato Firmware is still stuck on Linux 2.4 because Broadcom's driver blob hasn't been ported to 2.6, Don't know how much of a difference it'd make for my WRT54GL, really, but it'd still be nice to be more modern than ~2.4.17.

    --
    Hail Eris, full of mischief...

    E pluribus sanguinem
    1. Re:That could be very nice for Tomato Firmware by LWATCDR · · Score: 3, Informative

      Yes and it opens up the option to use Broadcom chips on all sorts of embedded devices.
      Including those running on ARM, PPC, Mips, SH4 and goodness knows what else.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
  10. Re:Hahahahahaha by JonJ · · Score: 3, Insightful

    That's probably a couple of years behind, actually.

    --
    -- Linux user #369862
  11. Thanks by msclrhd · · Score: 4, Informative

    To the Broadcom team and everyone else who made this happen: you have my heartfelt thanks.

  12. Re:Holy overstatement by f3rret · · Score: 3, Insightful

    Well to be fair most open source "just works".
    It's whether it "just works" well that's the big question.-

    --
    Admit nothing. Deny Everything. Make Counter-accusations.
  13. Re:Where's the code? by NiteMair · · Score: 3, Informative
  14. Re:Hahahahahaha by ciggieposeur · · Score: 3, Informative

    See the b43 driver and b43-fwcutter utility.

  15. Best documentation for a reason... by Junta · · Score: 4, Interesting

    Speaking as one who routinely works on open and closed projects, believing the documentation would be tempting, but usually a mistake.

    The driver reflects the reality. If well commented (particularly if it has developers venting frustration), it really reflects the reality of how that doc got implemented in reality.

    Often documentation is first written, then parts fabricated/code developed. When the fabricated parts come in, often there are minor different and/or incorrect interpretations of the spec, major enough to make the doc unusable, often minor enough to work with a change to the driver. When this happens, the driver will get updated, but going back to the documentation... No, not so much.

    Particularly when it comes to the 'what it could do' part, at best it's not already done because they decided not to fund it and it is simply untested and may or may not work. Frequently it's because that capability was so fubared in testing that the feature was thrown over the fence to make a schedule.

    --
    XML is like violence. If it doesn't solve the problem, use more.
  16. Re:Sooo now I can give Linux a serious try? by Anonymous Coward · · Score: 3, Informative

    Ubuntu has been able to install the propietary drivers automatically for a long time now.

  17. Re:Hahahahahaha by sammyF70 · · Score: 5, Insightful

    hmm .. I still have to see a driver for any wireless card that crashes linux. Worst case scenario, it just doesn't work, which was incidentally the problem I had with my broadcom adapter on an Acer Aspire One D250. but crash the OS? not really, no.

    --
    "DRM is like the Ford Pinto: it's a smooth ride, right up the point at which it explodes and ruins your day."-C.Doctorow
  18. Re:Hahahahahaha by HermMunster · · Score: 4, Insightful

    Wireless, for the most part, works very well under Linux. If you were unable to get the linux version to work you could always use the windows version via ndiswrapper.

    In the past year alone I have seen a significantly reduced instance of wireless driver issues as the open source community has worked out so many of the problems. Though, you had to install them after you installed the distribution--you were told there were proprietary hardware drivers available (automatically). You needed only a couple clicks and a reboot to make them work.

    This provides a way to have wireless work without the need to be prompted for proprietary drivers and the reboot.

    If there was a reason to complain, and there was about 2 year ago, wireless is where it was at. Linux didn't bring joy all the time, especially in certain HP laptops. Even so, it seems every week I have to deal with issues with a customer's wireless device under Windows XP, Vista, or Win7 (though not as often under Win7). It isn't a joy to work with them under Windows either.

    --
    You can lead a man with reason but you can't make him think.
  19. Re:Bye-Bye Broadcom by Ogi_UnixNut · · Score: 4, Interesting

    If that was true then Atheros should have gone by now. They open sourced their drivers almost a decade ago, yet they are still around. In fact, due to the excellent Linux support, I've only been buying and recommending to others the Atheros chipset WiFi cards. Not to mention all the extra abilities it gained from the OS community (like the ability to simultaneously act as an AP and client, which brought about mesh networking and community wifi).

    They probably gained a lot indirectly in the form of higher sales of hardware due to this, plus the reduction in costs because they didn't have to pay a dev team all this time.

  20. Re:Firmware? by david.given · · Score: 3, Informative
    Right, I found the source (for some reason cut-and-paste isn't working into a Slashdot text box, but it's prominently linked by another story).

    Yes, these drivers require firmware. No, this release does not include source for the firmware. You still need to have the binary blob from Broadcom to make the drivers work.