From: Larry Finger <Larry.Finger@lwfinger.net>
To: b43-dev@lists.infradead.org
Subject: Need to match driver to microcode?
Date: Thu, 06 Feb 2014 10:54:10 -0600 [thread overview]
Message-ID: <52F3BE32.9030303@lwfinger.net> (raw)
In-Reply-To: <CAD2Ti2-W97qW40LoXFBNqcPXQ+vA7V7sAnZ_ZerxiknRNuF5Dg@mail.gmail.com>
On 02/06/2014 03:01 AM, grarpamp wrote:
> On Thu, Feb 6, 2014 at 2:22 AM, Larry Finger <Larry.Finger@lwfinger.net> wrote:
>
>> There is no one to one relationship. Both are internal Broadcom
>> designations.
>
> ... got it thx.
>
>> No. The firmware is just a black box.
>
> Hopefully these makers will someday stop software
> secrets. They sell primary hardware, not sw.
The firmware source would reveal trade secrets about the chip construction that
a competitor could use. For that reason, I don't expect many of the vendors to
publish those sources.
Most vendors license their binary firmware files for redistribution, and they
are available in the linux-firmware git repo. That is where the distros get
firmware. Broadcom does the same for devices driven by brcmsmac and brcmfmac.
For the b43-driven devices, the rules are different. Broadcom will not allow
their firmware files to be redistributed under any circumstances. Any web site
that contains files such as ucodeN, etc. is illegal and the operator of that
site could be sued for illegally distributing proprietary material!
To get the firmware we have, we take advantage of a loophole. Because Broadcom
uses Linux for the OS in their routers, the GPL requires them to make their
contributions available for redistribution. Of course, they only provide binary
blobs for their driver, but the firmware is contained within those binaries.
Thus we need to find a binary driver that is redistributable, determine where
the firmware is contained within that binary, and modify fwcutter to extract the
firmware files from that blob.
Not all of Broadcom's drivers are suitable. For example, it has never seemed
fruitful to download 300-500 MB of stuff to extract approximately 1 MB of
firmware. My repository contains files that are no larger than ~10 MB. Windows
drivers are stripped to the point that the firmware locations are not easily
determined, thus I avoid them.
Larry
next prev parent reply other threads:[~2014-02-06 16:54 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-05 22:58 Need to match driver to microcode? grarpamp
2014-02-05 23:57 ` Larry Finger
2014-02-06 0:54 ` grarpamp
2014-02-06 1:50 ` Larry Finger
2014-02-06 4:34 ` grarpamp
2014-02-06 6:10 ` Rafał Miłecki
2014-02-06 8:19 ` grarpamp
2014-02-06 8:47 ` Rafał Miłecki
2014-02-06 7:22 ` Larry Finger
2014-02-06 9:01 ` grarpamp
2014-02-06 16:54 ` Larry Finger [this message]
2014-02-06 20:02 ` grarpamp
2014-02-06 20:19 ` Chris Adams
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52F3BE32.9030303@lwfinger.net \
--to=larry.finger@lwfinger.net \
--cc=b43-dev@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.