Firmware

Материал из RuVDRWiki

Перейти к: навигация, поиск

Содержание

Введение

Firmware (Микропрограмма)-программное обеспечение, встроенное («зашитое») в аппаратное устройство. Часто представляется в виде микросхем флеш-ПЗУ или в виде файлов образов микропрограммы, которые могут быть загружены в аппаратное обеспечение.
В нашем случае Frimware используется для управления картой.

Fullfeatured DVB-S/-T/-C карты

Основной процессор всех TechnoTrend-карт базирующихся на AV7110 требует Firmware. Актуальную версию можно скачать с LinuxTV.

Установка Firmware

Ядра 2.6.Х используют каталог /usr/lib/hotplug/firmware или /lib/firmware в зависимости от настройки hotplug или udev.

wget http://www.linuxtv.org/downloads/firmware/dvb-ttpci-01.fw-<version> 
cp dvb-ttpci-01.<version> /usr/lib/hotplug/firmware/dvb-ttpci-01.fw

Этот каталог может также варьироваться в разных дистрибутивах.

Замена/обновление Firmware

Сначало нужно узнать уже установленную версию:

dmesg | grep firm

В ответ получим что то вроде:

dvb-ttpci: info @ card 1: firm f0240009, rtsl b0250018, vid 71010068, app 80f22623
dvb-ttpci: firmware @ card 1 supports CI link layer interface
dvb-ttpci: info @ card 0: firm f0240009, rtsl b0250018, vid 71010068, app 80f22623
dvb-ttpci: firmware @ card 0 supports CI link layer interface

Выделенное чёрным и есть версия вашего Firmware.

Перед заменой Firmware рекомендуется сохранить/переименовать уже установленную:

cd /usr/lib/hotplug/firmware/
mv dvb-ttpci-01.fw dvb-ttpci-01.fw.bak 

Теперь можно сохранить/переименовать новую версию Firmware в dvb-ttpci-01.fw или создать ссылку (ln -s):

cp dvb-ttpci-01.<version> /usr/lib/hotplug/firmware/dvb-ttpci-01.fw

Чтобы задействовать новую версию Firmware, необходимо перезагрузить модули (или сделать reboot системы):

 rmmod dvb-ttpci
 modprobe dvb-ttpci

DVB-T-карты

DVB-Т-карты базирующися на Technotrend Design как Nova-T, Lorenzen DVB-T PCI, TT1300, бюджетные и DVB-T Full Featured-карты требуют также Firmware для Frontend. Это Firmware есть только в родных драйверах производителя, которое нужно распаковать/вытащить из драйверов для Windows.

Dxr3

Dxr3-картам тоже нужна Firmware, только там это называется Microcode.

HauppaugePVR 350/250

По умолчанию находится в каталоге /lib/modules

#> ls /lib/modules/*.bin
/lib/modules/ivtv-fw-dec.bin
/lib/modules/ivtv-fw-enc.bin

MediaMVP

Здесь используется загрузчик Mvploader.

Проблемы

Не загружается Firmware

Обычно сам драйвер сообщает в сыстемных логах о не найденом Firmware. Просмотрите внимательно логи:

less /var/log/messages или dmesg

hotplug

В зависимости от дистрибутива и версии hotplug, Firmware ожидается в разных местах. Просмотрев содержание файла /etc/hotplug/firmware.agent можно узнать или добавить путь к Firmware:

#> grep -i -B1 ^FIRMWARE_DIR /etc/hotplug/firmware.agent
 directories with the firmware files
 FIRMWARE_DIRS="/lib/firmware /usr/local/lib/firmware /usr/lib/hotplug/firmware"

Извлечение Firmware

Существует скрипт get_dvb_firmware, который извлекает Firmware из драйверов для Windows:

#> ./get_dvb_firmware
Supported components:
        sp8870   # T Nexus-T Premium Rev1.2
        sp887x   # Avermedia DVB-T 761
        tda10045 # Hauppauge/TT Nova-T Budget
        tda10046 # Hauppauge/TT Nova-USB-T Budget
                 # Terratec Cinergy 1200 DVB-T/KNC1 DVB-T
        av7110   # FF => dvb-ttpci-01.fw-261x
        dec2000t # ?
        dec2540t # ?
        dec3000s # Hauppauge/TT DEC3000-s
        vp7041   # ?
        dibusb   # DiBcom DVB-T USB1.1 reference design (Twinhan, KWorld, Hama, Artec, Compro)
        nxt2002  # ?

Пример вызова скрипта для тюнера sp8870:

#> ./get_dvb_firmware sp8870
 Firmware dvb-fe-sp8870.fw extracted successfully.
 Now copy it to either /lib/firmware or /usr/lib/hotplug/firmware/ (depending on your hotplug version).

Ссылки

  1. Актуальная версия Firmware для Full-featured-DVB-карт
  2. Актуальная Devel версия Firmware для Full-featured-DVB-карт
  3. Projektseiten von Heise bieten eine grobe Zusammenstellung der Firmware-Dateien.
Личные инструменты
На других языках