Portál AbcLinuxu, 7. června 2024 04:45

Jak jsem se dal na psaní ovladačů pro v4l2 zařízení

15.1.2012 23:05 | Přečteno: 1973× | Linux | Výběrový blog | poslední úprava: 15.1.2012 23:15

Při mé práci se mi do rukou dostaly Leadtek DVR3200H XC3028 a Leadtek DVR3200H XC4000 tunery, což jsou PCI-E karty, jde o poměrně schopné a relativně levné karty, které mají slušnou citlivost a spoustu funkcí, jenže jak je to u novějších "media" zařízení zvykem v Linuxu jede jen něco, nebo vůbec nic.

Už před půl rokem jsem si řekl že to tak nenechám, v té době jsem dopsal podporu pro DVB-T která je již v nových kernelech k dispozici, naštěstí nešlo o nic nadmíru složitého.

Protože bylo přes svátky celkem dost času a práce se taky zrovna nesypala, lze přirovnat množství placené práce k množství sněhu v okolí prahy za poslední 2 měsíce, tak jsem si řekl že zkusím něco trochu zajímavějšího.

Podrobnější popis karet

Řekl jsem si že doplním podporu ostatních funkcí těchto karet do Linuxu. Vzal jsem tedy poslední kernel a začal jsem si postupně pročítat kódy pro ovladač cx23885, časem se ukázalo že podpora TV bude celkem snadná, podpora rádia už tak moc ne a podpora HW encoderu nad moje síly.

Co vše jsem potřeboval:

Po cca 3 týdnech práce se mi podařilo doplnit funkční podporu pro Analogovou TV, S-Video, Composite, Component, FM rádio. Nejvíce práce mi asi přineslo zjištění že některé karty nepodporují autodetekci standardů a tak někdy nehrál zvuk, jindy nefungoval obraz. Patche nyní čekají na začlenění na patchwork.linuxtv.org a doufám že se dostanou do jádra 3.4

Rád bych napsal zápisek delší a trochu přiblížil jak jsem postupoval, ale nevěřím že by pak někdo dočetl konce :)

Důležité je že až si koupíte kartu Leadtek PXDVR3200H v nějakém tom IT obchodě, tak bude v Linuxu snad šlapat vše podstatné

TODO na další dlouhé zimní večery:

Jako třešničku na dortu jsem si tu pro některé další testery připravil upravený RegSpy.exe, kterým jsem používal pro získávání záznamů z registrů jak čipu cx23885, tak cx25840 včetně patche k aktuální verzi pro opravdové maniaky.

Zip soubor na www.2shared.com - RegSpy cx23885 a cx25840

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

15.1.2012 23:50 OFC | skóre: 2 | blog: OFCOFCOFC
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Odpovědět | Sbalit | Link | Blokovat | Admin
Zajimave. Myslim, ze bych zapisek o postupu docetl. Kazdopadne dobra prace. :)
pavlix avatar 16.1.2012 00:15 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Taky si myslím :). Udělej přednášku na nějaké konferenci, rád se podívám, a kdyby ti organizátoři nedali najíst, tak se přihlaš o oběd :).
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
Rezza avatar 16.1.2012 10:33 Rezza | skóre: 25 | blog: rezza | Brno
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
+1, ja platim vecu.
Limoto avatar 16.1.2012 08:44 Limoto | skóre: 32 | blog: Limotův blog
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení

Taky by mě to zajímalo.

Bedňa avatar 16.1.2012 10:36 Bedňa | skóre: 34 | blog: Žumpa | Horňany
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Tiež by som si to rád prečítal, to tu už dlho nebolo.
KERNEL ULTRAS video channel >>>
16.1.2012 14:10 kralyk z abclinuxu | skóre: 29 | blog:
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
+1, sice osobně žádnou tuner kartu nemám, ale problematika psaní driverů do kernelu a tahání dokumentace z výrobců je velmi zajímavá celkově.
16.1.2012 14:25 PetrHL | skóre: 17 | blog: petr_h | Neratovice
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Take se pripojuji. Nemam predstavu jak se to dela, popiste to, prosim.
"Do, or do not. There is no 'try.'" -- Jedi Master Yoda | CQRLOG | CQRPROP | HamQTH | Domů
Bystroushaak avatar 16.1.2012 17:30 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Přidávám se k zástupu těch, co by si to rádi přečetli. Dokonce o hodně radši než 90% ostatních blogů zde na abclinuxu.
16.1.2012 18:49 User682 | skóre: 38 | blog: aqarium | Praha
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
urcite jsem pro napsani zkusenosti z vyvoje. Toto je k nezaplaceni...

gf
Luboš Doležel (Doli) avatar 17.1.2012 17:36 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Také se přidávám, o články bych měl zájem. Tak trochu pesimisticky dodám, že většina lidí nebude číst víc než úvodní díl, ale tak to už chodí :-)
Bedňa avatar 17.1.2012 22:09 Bedňa | skóre: 34 | blog: Žumpa | Horňany
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Nemáš pravdu, toto zhltne technická časť toho portálu všetkými desiatimi a autorovi prinesie nehynúcu slávu :-) a určite aj nejaký džob. Ja sa na to už trasem ako drahý pes v zime. Pokiaľ narážaš na seriály ako teraz je o "D" to si prečíta naozaj len úzka skupina ľudí, hoci aj za to som vďačný. Keď tu bude viac takýchto kultových vecí, určite to pritiahne aj hackerov, toto sa len tak niekde nenájde.
KERNEL ULTRAS video channel >>>
17.1.2012 22:46 kralyk z abclinuxu | skóre: 29 | blog:
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Ten seriál o D je super, doufám, že autor vytrvá.

A o tom driveru bych 100% taky četl...
Luboš Doležel (Doli) avatar 16.1.2012 00:23 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Odpovědět | Sbalit | Link | Blokovat | Admin
Náhodou někdo nevíte něco o DAB+ na Linuxu?

Ono to teda zrovna moc nefrčí ani mimo počítačový svět - tam to začne frčet asi teprve kdyby začali vypínat analogové "FM" vysílače - ale mrzí mě, že je na Linuxu naprosté nic. Ani nevím, jestli je v jádře nějaká infrastruktura pro podporu DAB+ příjmu.
16.1.2012 01:24 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Odpovědět | Sbalit | Link | Blokovat | Admin
Wow, patří ti neutuchající dík. Kde jsi sehnal programovací datasheet k xc3028? Když jsem pred pár lety rozcházel kartu já, tak nikde k dispozici nebyly (nebo jsi je sehnal z nějakejch čínskejch hack stránek? :-D).

BTW Já bych potřeboval rozchodit kartu založenou na saa7131e (papírová podpora v linuxu je, ale v reálu se rozchodí tak každej 2.-3. reboot).
Intel meltdown a = arr[x[0]&1]; karma | 帮帮我,我被锁在中国房
16.1.2012 12:05 Thunder.m | skóre: 35 | blog: e17
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Příloha:
Napsal jsem do Xcieve o datasheet, bohužel je to jen základní verze, která neobsahuje složitější popis programování který používá firmware.

Ne že to budeš moc šířit.
16.1.2012 22:02 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Jo instrukční sadu a registry firmware nechce uvolnit spousta firem (řekl bych, že skoro všechny :-( ). Jinak já ten datasheet už nepotřebuju (osobně ), u kámoše nakonec stačilo přidat ID toho usb a přidat záznam o kombinaci čipů (leadtek winfast dongle H) - i když je pravda, že v tý době analog část byla bez podpory.
Ne že to budeš moc šířit.
Doufej, že to nezaindexuje google ;-). BTW musels podepisovat NDA?

Stejně ale nechápu, proč tyhle informace nemůžou dát volně na svý stránky. Minimálně i mě by se dostaly do skoro prázdné množiny výrobců IC, od kterých je možné něco koupit.
17.1.2012 00:19 Thunder.m | skóre: 35 | blog: e17
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Dnes už se XC2028 a XC3028 nevyrábí, takže nejde o nic extra tajmeného, NDA jsem podepisovat nemusel a taky jak jsem psal, tenhle datahsheet je reálně celkem málo hodnotný, protože nepopisuje některé interní fungování tuneru, naštěstí XC2028 ovladač je celkem funkční už velmi dlouhou dobu. Podle mě nechtějí dát ty informace ven kvůli možným žalobám na SW a HW patenty...

Například datasheet k cx25840 je volně ke stažení a je podstatně víc konkrétní.
17.1.2012 01:02 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Tak to mám možná u NXP šanci :-D (i když psali do 5 pracovních dnů :-/).

O cx25840 vím ten má tuším i kámoš, u něj byl stejně hlavní problém s řadičem (dib7700 nebo tak nějak).
Podle mě nechtějí dát ty informace ven kvůli možným žalobám na SW a HW patenty...
To je ovšem smutný. V opačném případě bych se ale stal jejich zákazníkem...
16.1.2012 07:17 xxxxxxxxxxx | skóre: 13 | blog: rhrtshrth
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Odpovědět | Sbalit | Link | Blokovat | Admin
Jseš boreeeec! :-)
16.1.2012 09:15 ike
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Odpovědět | Sbalit | Link | Blokovat | Admin
Komunita ti dekuje, bez lidi jako si ty by to slo to haje.
16.1.2012 10:06 Dusan | skóre: 23 | blog: Moje_trable_s_internetom
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Odpovědět | Sbalit | Link | Blokovat | Admin
+1

A určite si tvoj príspevok o podrobnom postupe prečítam.
16.1.2012 10:31 User682 | skóre: 38 | blog: aqarium | Praha
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Odpovědět | Sbalit | Link | Blokovat | Admin
zdravim,

velmi pekne.

Prispevkem jste mi take pripomel, ze si budu muset koupit nejakou DVB-T kompatibilni kartu. A ze mi tu take nejaky TV analogovy HW asi bude prebyvat.

Pokud mate zajem a cas a zajimaji Vas starsi kousky HW, tak bych tu mel nasledujici, pokud si je umite prevzit po Praze:

- Hauppage WinTV - tuto mohu darovat

-- zbytek je pouze k zapujceni - vesmes analogove TV/FM karty

- ATI TV Wonder 8MB

- Miro Video DC30

- stare ISA - Miro PCM (10 nebo 20) FM radio

gf
16.1.2012 15:51 Thunder.m | skóre: 35 | blog: e17
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Díky, ale zajímá mě reálně jen to co je ještě v prodeji, tohle jsou opravdu dost muzejní kousky :)
gtz avatar 16.1.2012 16:44 gtz | skóre: 27 | blog: gtz | Brno
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Zkoušel někdy něco na dual-tunerovém Pinnacle? na Linuxu ani za boha :-(
- nejhorší jsou trpaslíci ... Ti Vám vlezou úplně všude
herne the hunter avatar 16.1.2012 22:11 herne the hunter | skóre: 10 | tor lara
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Odpovědět | Sbalit | Link | Blokovat | Admin
RESTEKP! Jinak to sepsání postupu je výborný a originální návrh a dokonce ani nepotřebujeme tryskový raketový kaťata ;) Nevím, jestli to neotřese vaší duchovní silou, ale dokonce mě napadlo, že by to tu mohlo vyjít jako článek. Aspoň by tu o HW bylo něco zajímavějšího než další HW novinky…
i am herne the hunter and you are a leaf driven by the wind.
AsciiWolf avatar 16.1.2012 23:51 AsciiWolf | skóre: 40 | blog: Blog
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
dokonce mě napadlo, že by to tu mohlo vyjít jako článek. Aspoň by tu o HW bylo něco zajímavějšího než další HW novinky…
+1
17.1.2012 00:21 Thunder.m | skóre: 35 | blog: e17
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Odpovědět | Sbalit | Link | Blokovat | Admin
Vidím že by to dost lidí zajímalo, až bude ví času tak bych zkusil vytipovat nějakou aktuálně prodávanou nepodporovanou TV kartu a případně přes abclinuxu postupně dopisovat ovladač.
17.1.2012 07:31 Marv-CZ | skóre: 21
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Tak to ti do nového roku přeji spoustu času. Už se na to těším.
Frt avatar 17.1.2012 09:23 Frt | skóre: 13 | blog: Frtoviny | Ostrava
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Tak to by byla pecka :-)
17.1.2012 14:05 User682 | skóre: 38 | blog: aqarium | Praha
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
zdravim,

osobne bych mozna uvazoval o tomto modelu:

http://www.alza.cz/aver-tv-hybrid-aver3d-capture-hd-d199764.htm

Je tedy otazka, zda se na tuto rodinu chipu uz neco nepise. Ale nevim. A taky je to zatim otazka penez a behem par mesicu budu vedet vice. Co se tyce HW, tak mam zatim jine a bohuzel drazsi priority.

Asi by bylo taky zajimave udelat nejakou integraci HDMI vystupy na TV karte a ostatni subsystemy s video4linux.

Jeste me napadlo, co programovat.

Mozna jsou jeste nejake nenaimplenetovane vlastnosti pro UVC video. Zde ale nedovedu posoudit, co z toho by se hodilo a co by slo. Zatim mi bezi vse potrebne.

http://www.ideasonboard.org/uvc/

Jinak tu mam, co se tyce videa Logitech HD Webcam C910 a je mozno ji zapujcit, pokud by jste vedel, co kodit.

gf
17.1.2012 19:31 Thunder.m | skóre: 35 | blog: e17
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Tu mám taky a šlape parádně, Aver karty jsou dost tuhý oříšek, každá verze se hodně liší, Leadtek aspoň drží podobné vlastnosti, ale Aver si dělá vše podle sebe.
17.1.2012 10:16 radek
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Odpovědět | Sbalit | Link | Blokovat | Admin
+1 dík za praci pro komunitu
17.1.2012 15:50 Begleiter | skóre: 47 | blog: muj_blog | Doma
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Odpovědět | Sbalit | Link | Blokovat | Admin

Díky

Luboš Doležel (Doli) avatar 18.1.2012 21:49 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: Jak jsem se dal na psaní ovladačů pro v4l2 zařízení
Odpovědět | Sbalit | Link | Blokovat | Admin
Jinak osobně bych měl velkou radost, kdyby pod Linuxem začalo opět chodit USB ID 0ccd:0072 (TerraTec Cinergy Hybrid T USB XS FM - DVB-T, analogová TV a analogové FM rádio). Dřív to bylo podporováno out-of-kernel ovladačem "em28xx-new", jenže pak se jeho autor nějak s někým nepohodl, všechno smazal a pod aktuálními jádry už to nechodí :-(

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.