Поддержка DVB S/S2 карты SB-540PCI [РЕШЕНО]

Купил год с лишним назад карту, думал есть нативная поддержка в линуксе, а у них только “своя разработка” оказалась…

Нужна помощь по доработке исходников ядра. Есть версия драйвера (взято отсюда ) работающего под ядро calculate-sources-3.0.75

Хочу переделать исходники для текущей версии ядра 3.13.7
Проблема в том, что я незанимался программированием, в универе только(дельфи, ассемблер, паскаль). Копаясь в исходниках выяснил:

  • поменялась структура каталогов драйверов медия
  • изменился код, в плане синтаксиса.

Сначала прошелся грепом с фильтром SB-540, а потом по товарищу который эту карту добавлял.

media_build-120812-sb $ grep -r -i "George Ivanov" ./
./linux/drivers/media/video/cx88/cx88-cards.c: * 2012/08/17 George Ivanov (gi)
./linux/drivers/media/video/cx88/cx88-input.c: * 2012/08/17 George Ivanov (gi)
./linux/drivers/media/video/cx88/cx88-dvb.c: * 2012/08/17 George Ivanov (gi)
./linux/drivers/media/video/cx88/cx88.h: * 2012/08/17 George Ivanov (gi)
./linux/drivers/media/dvb/dvb-usb/dw2102.c: * 2012/08/19 George Ivanov (gi)
./linux/drivers/media/dvb/frontends/ds3000.c: * 2012/08/18 George Ivanov (gi)

мне кажется, это все файлы которые надо обновить, в общем используя diff, Geany и копи-паст добрался до ds3000.c
Может кто посмотрит подскажет?

cd /usr/src/linux/drivers/media/dvb-frontends
dvb-frontends # diff ./ds3000.c ~/media_build-120812-sb/linux/drivers/media/dvb/frontends/ds3000.c

уж очень непонятный для меня код) надо перенести несколько функций

PS. В общем исправил сам. Так как карта близнец TeVii S464 DVB-S/S2, то вся доработка драйвера свелась к индентификации карты в системе. Можно попробовать сделать так:
В /etc/module.d/cx88xx.conf

options cx88xx card=86

Или, если драйвер cx88xx встроен в ядро, то в параметрах загрузчика указать:

cx88xx.card=86

Но я, знатно поковырявшись повторно в коде, изменил несколько файлов, кому интересно в см. архив.
Делать патчи к ядру пока не умею, ебилды тож еще не писал, может когда нибудь), а пока сделал копию исходников в /usr/src/newkernel заменил нужные с-файлы и собрал/установил ядро в ручную. Работает)

sb540pci.tar.gz (36 KB)