Firmware: Difference between revisions

From LinuxTVWiki
Jump to navigation Jump to search
m (add link)
m (some edits)
Line 3: Line 3:
Drawbacks are that this solution may consume more power than an optimized fixed-function design and that different firmware revisions can cause completely different behaviour of the chips.
Drawbacks are that this solution may consume more power than an optimized fixed-function design and that different firmware revisions can cause completely different behaviour of the chips.


The fact that the Firmware can 'fix' bugs later has at some vendors the effect that early firmware revisions are rarely useable -- fixed-function hardware is usually more carefully designed.
The fact that the firmware can 'fix' bugs later has, in the case of some vendors, the effect that early firmware revisions are rarely usable. In contrast, fixed-function hardware is usually more carefully designed.


==Firmware auto-loading==
==Firmware Auto-loading==
Most people would like their system to load their DVB firmware at boot time/when the module is loaded. This can be done easily using [http://linux-hotplug.sourceforge.net hotplug].


First, do the following, where xxxxx is one of sp8870/sp887x/tda10045/tda10046/av7110/dec2000t/dec2540t/dec3000s/vp7041/dibusb etc etc supported by the get_dvb_firmware script (which is distributed along with kernel source):
Most people would like their system to load their DVB firmware at boot time/when the module is loaded.<BR>
This can be done easily using [http://linux-hotplug.sourceforge.net hotplug]


:<code>perl /usr/src/linux/Documentation/dvb/get_dvb_firmware xxxxx</code>
First, do the following where xxxxx is one of sp8870/sp887x/tda10045/tda10046/av7110/dec2000t/dec2540t/dec3000s/vp7041/dibusb :<BR>
<code>perl /usr/src/linux/Documentation/dvb/get_dvb_firmware xxxxx</code><BR> (script distributed along with kernel source)


That will download to current directory a file and then extract the desired firmware. Copy the generated firmware file to <code>/lib/firmware</code> or <code>/usr/lib/hotplug/firmware/</code> (the location will depend of your distro / hotplug version).
It would download the wanted firmware to current directory.<BR>
Then, copy the firmware file to <code>/lib/firmware</code> or <code>/usr/lib/hotplug/firmware/</code> (depends of your hotplug version)


When the appropriate module is loaded, it would automatically load the firmware.
Now, when the appropriate driver module is loaded, the firmware file should be automatically loaded as well.


''Gentoo users'': A fresh minimal install of Gentoo installs the <code>sys-apps/hotplug-base</code> package. However to actually get the firmware loading, you will need to install <code>sys-apps/hotplug</code>, as well.
''Gentoo users'': A fresh minimal install of Gentoo installs the <code>sys-apps/hotplug-base</code> package. However to actually get the firmware loading, you will need to install <code>sys-apps/hotplug</code>, as well.
Line 22: Line 20:
''' ''it would be nice to have some words explaining the linux firmware loader stuff. contributors?'' '''
''' ''it would be nice to have some words explaining the linux firmware loader stuff. contributors?'' '''


==Firmware repository==
==Some Firmware Repositories==
The following sites host various device firmware files:

* http://linuxtv.org/downloads/firmware/
The following site can used searching the firwmare needed by your device:
* http://thadathil.net:8000/dvb/fw/
* http://thadathil.net:8000/dvb/fw/ ... link is likely dead; see next link instead
* http://linuxtv.org/downloads/firmware/
* http://abraham.manu.googlepages.com/fw.tar.bz2
* http://www.chandlerfamily.org.uk/files/firmware/
* http://www.chandlerfamily.org.uk/files/firmware/


==Also See==
==Also See==

Revision as of 14:58, 4 February 2008

Modern chipsets move more and more functionality from fixed-function implementations in silicon to firmware or software. The chip becomes a more generic microcontroller or DSP that executes the Firmware and does the same jobs.

Drawbacks are that this solution may consume more power than an optimized fixed-function design and that different firmware revisions can cause completely different behaviour of the chips.

The fact that the firmware can 'fix' bugs later has, in the case of some vendors, the effect that early firmware revisions are rarely usable. In contrast, fixed-function hardware is usually more carefully designed.

Firmware Auto-loading

Most people would like their system to load their DVB firmware at boot time/when the module is loaded. This can be done easily using hotplug.

First, do the following, where xxxxx is one of sp8870/sp887x/tda10045/tda10046/av7110/dec2000t/dec2540t/dec3000s/vp7041/dibusb etc etc supported by the get_dvb_firmware script (which is distributed along with kernel source):

perl /usr/src/linux/Documentation/dvb/get_dvb_firmware xxxxx

That will download to current directory a file and then extract the desired firmware. Copy the generated firmware file to /lib/firmware or /usr/lib/hotplug/firmware/ (the location will depend of your distro / hotplug version).

Now, when the appropriate driver module is loaded, the firmware file should be automatically loaded as well.

Gentoo users: A fresh minimal install of Gentoo installs the sys-apps/hotplug-base package. However to actually get the firmware loading, you will need to install sys-apps/hotplug, as well.

it would be nice to have some words explaining the linux firmware loader stuff. contributors?

Some Firmware Repositories

The following sites host various device firmware files:

Also See