Placa de Captura X Compilar kernel? [RESOLVIDO]

1. Placa de Captura X Compilar kernel? [RESOLVIDO]

Augusto André Souza
augustouser

(usa Linux Mint)

Enviado em 08/11/2009 - 15:21h

Comprei uma placa de captura Zogis Real Angel 220 chipset Philips saa7130, como pode ser visto na saída do comando lspci:

"Multimedia controller: Philips Semiconductors SAA7130 Video Broadcast Decoder (rev 01)"

Ocorre que o kernel que uso é o 2.6.26.8.tex3, e segundo esse camarada http://mstr.ueuo.com/saa/index.php a Real Angel está listada apenas a partir do kernel 2.6.28, e de fato é verdade, pois usei o configurador próprio da distro (PCLinuxOS) e ele não listou a placa. Além disso, vejam o resultado do comando: [root@pclinuxos ~]# dmesg | grep saa
saa7134: card=13 -> Typhoon TV+Radio 90031
saa7134: card=14 -> ELSA EX-VISION 300TV 1048:226b
saa7134: card=15 -> ELSA EX-VISION 500TV 1048:226a
saa7134: card=16 -> ASUS TV-FM 7134 1043:4842 1043:4830 1043:4840
saa7134: card=17 -> AOPEN VA1000 POWER 1131:7133
saa7134: card=18 -> BMK MPEX No Tuner
saa7134: card=19 -> Compro VideoMate TV 185b:c100
saa7134: card=20 -> Matrox CronosPlus 102b:48d0
saa7134: card=21 -> 10MOONS PCI TV CAPTURE CARD 1131:2001
saa7134: card=22 -> AverMedia M156 / Medion 2819 1461:a70b
saa7134: card=23 -> BMK MPEX Tuner
saa7134: card=24 -> KNC One TV-Station DVR 1894:a006
saa7134: card=25 -> ASUS TV-FM 7133 1043:4843
saa7134: card=26 -> Pinnacle PCTV Stereo (saa7134) 11bd:002b
saa7134: card=27 -> Manli MuchTV M-TV002
saa7134: card=28 -> Manli MuchTV M-TV001
saa7134: card=29 -> Nagase Sangyo TransGear 3000TV 1461:050c
saa7134: card=30 -> Elitegroup ECS TVP3XP FM1216 Tuner Card( 1019:4cb4
saa7134: card=31 -> Elitegroup ECS TVP3XP FM1236 Tuner Card 1019:4cb5
saa7134: card=32 -> AVACS SmartTV
saa7134: card=33 -> AVerMedia DVD EZMaker 1461:10ff
saa7134: card=34 -> Noval Prime TV 7133
saa7134: card=35 -> AverMedia AverTV Studio 305 1461:2115
saa7134: card=36 -> UPMOST PURPLE TV 12ab:0800
saa7134: card=37 -> Items MuchTV Plus / IT-005
saa7134: card=38 -> Terratec Cinergy 200 TV 153b:1152
saa7134: card=39 -> LifeView FlyTV Platinum Mini 5168:0212 4e42:0212
saa7134: card=40 -> Compro VideoMate TV PVR/FM 185b:c100
saa7134: card=41 -> Compro VideoMate TV Gold+ 185b:c100
saa7134: card=42 -> Sabrent SBT-TVFM (saa7130)
saa7134: card=43 -> :Zolid Xpert TV7134
saa7134: card=44 -> Empire PCI TV-Radio LE
saa7134: card=45 -> Avermedia AVerTV Studio 307 1461:9715
saa7134: card=46 -> AVerMedia Cardbus TV/Radio (E500) 1461:d6ee
saa7134: card=47 -> Terratec Cinergy 400 mobile 153b:1162
saa7134: card=48 -> Terratec Cinergy 600 TV MK3 153b:1158
saa7134: card=49 -> Compro VideoMate Gold+ Pal 185b:c200
saa7134: card=50 -> Pinnacle PCTV 300i DVB-T + PAL 11bd:002d
saa7134: card=51 -> ProVideo PV952 1540:9524
saa7134: card=52 -> AverMedia AverTV/305 1461:2108
saa7134: card=53 -> ASUS TV-FM 7135 1043:4845
saa7134: card=54 -> LifeView FlyTV Platinum FM / Gold 5168:0214 5168:5214 1489:0214 5168:0304
saa7134: card=55 -> LifeView FlyDVB-T DUO / MSI TV@nywhere D 5168:0306 4e42:0306
saa7134: card=56 -> Avermedia AVerTV 307 1461:a70a
saa7134: card=57 -> Avermedia AVerTV GO 007 FM 1461:f31f
saa7134: card=58 -> ADS Tech Instant TV (saa7135) 1421:0350 1421:0351 1421:0370 1421:1370
saa7134: card=59 -> Kworld/Tevion V-Stream Xpert TV PVR7134
saa7134: card=60 -> LifeView/Typhoon/Genius FlyDVB-T Duo Car 5168:0502 4e42:0502 1489:0502
saa7134: card=61 -> Philips TOUGH DVB-T reference design 1131:2004
saa7134: card=62 -> Compro VideoMate TV Gold+II
saa7134: card=63 -> Kworld Xpert TV PVR7134
saa7134: card=64 -> FlyTV mini Asus Digimatrix 1043:0210
saa7134: card=65 -> V-Stream Studio TV Terminator
saa7134: card=66 -> Yuan TUN-900 (saa7135)
saa7134: card=67 -> Beholder BeholdTV 409 FM 0000:4091
saa7134: card=68 -> GoTView 7135 PCI 5456:7135
saa7134: card=69 -> Philips EUROPA V3 reference design 1131:2004
saa7134: card=70 -> Compro Videomate DVB-T300 185b:c900
saa7134: card=71 -> Compro Videomate DVB-T200 185b:c901
saa7134: card=72 -> RTD Embedded Technologies VFG7350 1435:7350
saa7134: card=73 -> RTD Embedded Technologies VFG7330 1435:7330
saa7134: card=74 -> LifeView FlyTV Platinum Mini2 14c0:1212
saa7134: card=75 -> AVerMedia AVerTVHD MCE A180 1461:1044
saa7134: card=76 -> SKNet MonsterTV Mobile 1131:4ee9
saa7134: card=77 -> Pinnacle PCTV 40i/50i/110i (saa7133) 11bd:002e
saa7134: card=78 -> ASUSTeK P7131 Dual 1043:4862 1043:4857
saa7134: card=79 -> Sedna/MuchTV PC TV Cardbus TV/Radio (ITO
saa7134: card=80 -> ASUS Digimatrix TV 1043:0210
saa7134: card=81 -> Philips Tiger reference design 1131:2018
saa7134: card=82 -> MSI TV@Anywhere plus 1462:6231 1462:8624
saa7134: card=83 -> Terratec Cinergy 250 PCI TV 153b:1160
saa7134: card=84 -> LifeView FlyDVB Trio 5168:0319
saa7134: card=85 -> AverTV DVB-T 777 1461:2c05 1461:2c05
saa7134: card=86 -> LifeView FlyDVB-T / Genius VideoWonder D 5168:0301 1489:0301
saa7134: card=87 -> ADS Instant TV Duo Cardbus PTV331 0331:1421
saa7134: card=88 -> Tevion/KWorld DVB-T 220RF 17de:7201
saa7134: card=89 -> ELSA EX-VISION 700TV 1048:226c
saa7134: card=90 -> Kworld ATSC110/115 17de:7350 17de:7352
saa7134: card=91 -> AVerMedia A169 B 1461:7360
saa7134: card=92 -> AVerMedia A169 B1 1461:6360
saa7134: card=93 -> Medion 7134 Bridge #2 16be:0005
saa7134: card=94 -> LifeView FlyDVB-T Hybrid Cardbus/MSI TV 5168:3306 5168:3502 5168:3307 4e42:3502
saa7134: card=95 -> LifeView FlyVIDEO3000 (NTSC) 5169:0138
saa7134: card=96 -> Medion Md8800 Quadro 16be:0007 16be:0008 16be:000d
saa7134: card=97 -> LifeView FlyDVB-S /Acorp TV134DS 5168:0300 4e42:0300
saa7134: card=98 -> Proteus Pro 2309 0919:2003
saa7134: card=99 -> AVerMedia TV Hybrid A16AR 1461:2c00
saa7134: card=100 -> Asus Europa2 OEM 1043:4860
saa7134: card=101 -> Pinnacle PCTV 310i 11bd:002f
saa7134: card=102 -> Avermedia AVerTV Studio 507 1461:9715
saa7134: card=103 -> Compro Videomate DVB-T200A
saa7134: card=104 -> Hauppauge WinTV-HVR1110 DVB-T/Hybrid 0070:6700 0070:6701 0070:6702 0070:6703 0070:6704 0070:6705
saa7134: card=105 -> Terratec Cinergy HT PCMCIA 153b:1172
saa7134: card=106 -> Encore ENLTV 1131:2342 1131:2341 3016:2344
saa7134: card=107 -> Encore ENLTV-FM 1131:230f
saa7134: card=108 -> Terratec Cinergy HT PCI 153b:1175
saa7134: card=109 -> Philips Tiger - S Reference design
saa7134: card=110 -> Avermedia M102 1461:f31e
saa7134: card=111 -> ASUS P7131 4871 1043:4871
saa7134: card=112 -> ASUSTeK P7131 Hybrid 1043:4876
saa7134: card=113 -> Elitegroup ECS TVP3XP FM1246 Tuner Card 1019:4cb6
saa7134: card=114 -> KWorld DVB-T 210 17de:7250
saa7134: card=115 -> Sabrent PCMCIA TV-PCB05 0919:2003
saa7134: card=116 -> 10MOONS TM300 TV Card 1131:2304
saa7134: card=117 -> Avermedia Super 007 1461:f01d
saa7134: card=118 -> Beholder BeholdTV 401 0000:4016
saa7134: card=119 -> Beholder BeholdTV 403 0000:4036
saa7134: card=120 -> Beholder BeholdTV 403 FM 0000:4037
saa7134: card=121 -> Beholder BeholdTV 405 0000:4050
saa7134: card=122 -> Beholder BeholdTV 405 FM 0000:4051
saa7134: card=123 -> Beholder BeholdTV 407 0000:4070
saa7134: card=124 -> Beholder BeholdTV 407 FM 0000:4071
saa7134: card=125 -> Beholder BeholdTV 409 0000:4090
saa7134: card=126 -> Beholder BeholdTV 505 FM/RDS 0000:5051 0000:505b 5ace:5050
saa7134: card=127 -> Beholder BeholdTV 507 FM/RDS / BeholdTV 0000:5071 0000:507b 5ace:5070 5ace:5090
saa7134: card=128 -> Beholder BeholdTV Columbus TVFM 0000:5201
saa7134: card=129 -> Beholder BeholdTV 607 / BeholdTV 609 5ace:6070 5ace:6071 5ace:6072 5ace:6073 5ace:6090 5ace:6091 5ace:6092 5ace:6093
saa7134: card=130 -> Beholder BeholdTV M6 / BeholdTV M6 Extra 5ace:6190 5ace:6193 5ace:6191
saa7134: card=131 -> Twinhan Hybrid DTV-DVB 3056 PCI 1822:0022
saa7134: card=132 -> Genius TVGO AM11MCE
saa7134: card=133 -> NXP Snake DVB-S reference design
saa7134: card=134 -> Medion/Creatix CTX953 Hybrid 16be:0010
saa7134: card=135 -> MSI TV@nywhere A/D v1.1 1462:8625
saa7134: card=136 -> AVerMedia Cardbus TV/Radio (E506R) 1461:f436
saa7134: card=137 -> AVerMedia Hybrid TV/Radio (A16D) 1461:f936
saa7134: card=138 -> Avermedia M115 1461:a836
saa7134: card=139 -> Compro VideoMate T750 185b:c900
saa7134: card=140 -> Avermedia DVB-S Pro A700 1461:a7a1
saa7134: card=141 -> Avermedia DVB-S Hybrid+FM A700 1461:a7a2
saa7134: card=142 -> Beholder BeholdTV H6 5ace:6290
saa7130[0]: subsystem: 1131:0000, board: UNKNOWN/GENERIC [card=0,autodetected]
saa7130[0]: board init: gpio is 80c008
saa7130[0]: Huh, no eeprom present (err=-5)?
saa7130[0]: registered device video1 [v4l2]
saa7130[0]: registered device vbi0

Tentei ir nessa tal "genérica" por se tratar de "saa7130", tanto pelo script da distribuição quanto pelo script do link do camarada que passei, além de ter tentado aplicar os parâmetros manualmente. Usei o tvtime e o kdetv pra testar: no tvtime, mesmo setando o /dev/video1 (pois tenho uma webcam no video0) não rolou imagem; no kdetv aparentemente tive a opção gráfica de escolher entre a webcam e a tal "generic" pra captura, mas quando seleciono a genérica a tela fica preta e o programa trava.

Bem, minha ideia agora é tentar instalar o módulo da placa manualmente, ou então recompilar o kernel. Mas nunca mexi em kernel, e não quero ter de reconfigurar algumas coisas que penei pra fazerem funcionar (como o driver de minha placa de vídeo, por ser LEGACY). Queria sugestões... como se instala um módulo como esse de forma segura? É meus sistema de uso diário, não quero comprometê-lo numa "bobeada".

Desculpa o texto longo mas é preciso ser detalhado pra que vocês possam me ajudar. Agradeceria a contribuição.



  


2. MELHOR RESPOSTA

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 10/11/2009 - 00:19h

Vc baixa a última versão (http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.31.6.tar.bz2). Descompacte-o:

# tar xjvf linux-2.6.31.6.tar.bz2 -C /usr/src

Apague o link simbólico existente:

# rm -rf /usr/src/linux

E crie um novo:

# ln -sf /usr/src/linux-2.6.31.6 /usr/src/linux

Entre no diretório:

# cd /usr/src/linux

Copie o config da sua máquina para o novo kernel. Normalmente ele fica localizado dentro d /boot, ficando assim:

# cp /boot/config-2.6.27.alguma.coisa /usr/src/.config

Agora vem a parte mais chata! Escreva o próximo comando:

# make

Como o seu kernel antigo não tem as opções do novo kernel, o make vai fazer as adaptações, só q ele vai perguntar item por item. Basta apertar enter para escolher a opção padrão (é indicada para quem não sabe o q está fazendo) até acabar as opções, ae sim vai começar a compilar. Dae vai jogar por um bom tempo (guitar hero III é fera!). Depois d concluído, digite:

# make modules_install

Ele vai instalar os módulos necessários. Agora é só fazer as cópias dos arquivos criados:

# cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.6.31.6
# cp /usr/src/linux/System.map /boot/System.map-2.6.31.6
# ln -sf /boot/System.map-2.6.31.6 /boot/System.map
# cp /usr/src/linux/.config /boot/config-2.6.31.6

Agora vamos criar uma imagem d boot para q o computador carregue o mínimo necessário para bootar o sistema:

# mkinitrd -o /boot/initrd-2.6.31.img 2.6.31.6

Depois disso tudo, dae vc vai arrumar o seu grub e/ou o seu lilo (não sei qual vc usa). Se for grub, acrescente no /boot/grub/menu.lst:

title = PCLinuxOS-2.6.31.6
kernel = (hd0,1)/boot/vmlinuz-2.6.31.6 vga=791
root = (hd0,1)
initrd = (hd0,1)/boot/initrd-2.6.31.6.img

No lilo, vc acrescenta no /etc/lilo.conf:

image = /boot/vmlinuz-2.6.31.6
initrd = /boot/initrd-2.6.31.6.img
root = /dev/sda1 # não sei qual é a partição q tá instalado o seu linux
label = PCLinuxOS-2.6.31.6
read-only

Depois d editar o lilo.conf, não se esqueça d executar:

# lilo

Reinicie pra v se funfou legal...


3. Re: Placa de Captura X Compilar kernel? [RESOLVIDO]

Rodrigo Chaves
stilldre

(usa Funtoo)

Enviado em 08/11/2009 - 18:22h

atualiza apenas o linux-headers... ou da um jeito de atualizar o kenel usando o mesmo arquivo .config adicionando os modulos da sua placa corretamente...


4. Re: Placa de Captura X Compilar kernel? [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 08/11/2009 - 23:19h

Descarregue o módulo:

# modprobe -r saa7134

E carregue dessa forma:

# modprobe saa7134 card=150

Assim ele vai carregar a sua placa corretamente.


5. renato pacheco

Augusto André Souza
augustouser

(usa Linux Mint)

Enviado em 08/11/2009 - 23:46h

Mas o problema é que não tem o módulo no kernel. Veja qie só vai até o card 142...


6. Re: Placa de Captura X Compilar kernel? [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 09/11/2009 - 10:02h

Vc tá querendo dizer q esse módulo não existe? E como ele apareceu no dmesg? Com certeza deve t, mas pode não estar atualizado. Teste o comando q t passei e, se não for aceito, ae sim vc faz o download do código-fonte da última versão nesse link abaixo:

http://dl.bytesex.org/releases/video4linux/saa7134-0.2.12.tar.gz

Compile-o:

# ./configure && make && make install

E depois carregue-o como t falei.


7. Re: Placa de Captura X Compilar kernel? [RESOLVIDO]

Augusto André Souza
augustouser

(usa Linux Mint)

Enviado em 09/11/2009 - 13:06h

Não amigo Renato, veja que ele não apareceu no dmesg. Vai até o card 142 apenas...

Olha só, ontem antes de dormir resolvi arriscar a instalação na minha distro principal que é o Arch e pra minha surpresa deu certo. Ta funcionando que é uma beleza no tvtime, melhor até que no Windows que tem um delay de 1 seg entre vídeo e audio =]

Então deve ser mesmo a falta do módulo. Obrigado pela dica, mais tarde irei tentar compilar através dos fontes que vc postou e ver se dá certo tbm no PCLinuxOS. Posto o resultado em breve.

[]'


8. Re: Placa de Captura X Compilar kernel? [RESOLVIDO]

Augusto André Souza
augustouser

(usa Linux Mint)

Enviado em 09/11/2009 - 14:47h

Acho que não tenho todos os pacotes pra compilar... e não sei quais são os necessários. Sei que instalei o automake e tem o gcc tbm. O que mais precisa?

Pq o comando ./configure dentro da pasta do saa7134-0.2.12/ retorna "arquivo ou diretório não encontrado". Li o README.ssa7134 mas não entendi, e olhei os cards também e não encontrei a opção "real angel 220". Ta certo mesmo isso?

Daí se dou um "make" direto, surge isso:

make -C /lib/modules/2.6.26.8.tex3/build SUBDIRS=/root/Desktop/saa7134-0.2.12 modules
make[1]: Entering directory `/usr/src/linux-2.6.26.8.tex3'
CC [M] /root/Desktop/saa7134-0.2.12/video-buf.o
In file included from /root/Desktop/saa7134-0.2.12/media/video-buf.h:19,
from /root/Desktop/saa7134-0.2.12/video-buf.c:33:
/root/Desktop/saa7134-0.2.12/linux/videodev.h:68: error: field 'class_dev' has incomplete type
/root/Desktop/saa7134-0.2.12/linux/videodev.h:87: warning: 'struct class_device_attribute' declared inside parameter list
/root/Desktop/saa7134-0.2.12/linux/videodev.h:87: warning: its scope is only this definition or declaration, which is probably not what you want
/root/Desktop/saa7134-0.2.12/linux/videodev.h: In function 'video_device_create_file':
/root/Desktop/saa7134-0.2.12/linux/videodev.h:89: error: implicit declaration of function 'class_device_create_file'
/root/Desktop/saa7134-0.2.12/linux/videodev.h: At top level:
/root/Desktop/saa7134-0.2.12/linux/videodev.h:93: warning: 'struct class_device_attribute' declared inside parameter list
/root/Desktop/saa7134-0.2.12/linux/videodev.h: In function 'video_device_remove_file':
/root/Desktop/saa7134-0.2.12/linux/videodev.h:95: error: implicit declaration of function 'class_device_remove_file'
/root/Desktop/saa7134-0.2.12/video-buf.c: At top level:
/root/Desktop/saa7134-0.2.12/video-buf.c:46: error: expected %<)%> before string constant
/root/Desktop/saa7134-0.2.12/video-buf.c: In function 'videobuf_vmalloc_to_sg':
/root/Desktop/saa7134-0.2.12/video-buf.c:68: error: 'struct scatterlist' has no member named 'page'
/root/Desktop/saa7134-0.2.12/video-buf.c: In function 'videobuf_pages_to_sg':
/root/Desktop/saa7134-0.2.12/video-buf.c:96: error: 'struct scatterlist' has no member named 'page'
/root/Desktop/saa7134-0.2.12/video-buf.c:104: error: 'struct scatterlist' has no member named 'page'
/root/Desktop/saa7134-0.2.12/video-buf.c: In function 'videobuf_vm_nopage':
/root/Desktop/saa7134-0.2.12/video-buf.c:1099: error: 'NOPAGE_SIGBUS' undeclared (first use in this function)
/root/Desktop/saa7134-0.2.12/video-buf.c:1099: error: (Each undeclared identifier is reported only once
/root/Desktop/saa7134-0.2.12/video-buf.c:1099: error: for each function it appears in.)
/root/Desktop/saa7134-0.2.12/video-buf.c:1102: error: 'NOPAGE_OOM' undeclared (first use in this function)
/root/Desktop/saa7134-0.2.12/video-buf.c: At top level:
/root/Desktop/saa7134-0.2.12/video-buf.c:1119: error: unknown field 'nopage' specified in initializer
/root/Desktop/saa7134-0.2.12/video-buf.c:1119: warning: initialization from incompatible pointer type
make[2]: *** [/root/Desktop/saa7134-0.2.12/video-buf.o] Error 1
make[1]: *** [_module_/root/Desktop/saa7134-0.2.12] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.26.8.tex3'
make: *** [default] Error 2


Agradeço a paciência em querer me ajudar amigo Renato...


9. Re: Placa de Captura X Compilar kernel? [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 09/11/2009 - 15:04h

Tenho q t dar duas notícias: uma ruim e uma boa. A ruim primeiro pq depois a boa compensa: vc tem q compilar o kernel (ou instalar os binários do kernel se a sua distro possuir uma versão mais recente) e a boa notícia é q vai resolver seu problema. Eu andei pesquisando para adicionar o patch do kernel ao seu, mas é um saco e arriscado, é preferível vc instalar "do zero" um novo kernel. Se vc tiver disposto, eu mando um passo-a-passo pra vc, ok?

T+!


10. Re: Placa de Captura X Compilar kernel? [RESOLVIDO]

Augusto André Souza
augustouser

(usa Linux Mint)

Enviado em 09/11/2009 - 15:22h

Estou disposto sim! Ainda mais com um passo-a-passo...
Pelo menos aprendo de vez como funciona esses esquemas de compilação.


11. Re: Placa de Captura X Compilar kernel? [RESOLVIDO]

Augusto André Souza
augustouser

(usa Linux Mint)

Enviado em 09/11/2009 - 16:02h

Agora só um detalhe: achei nos repositórios o kernel-devel 2.6.27.31.tex5 e resolvi instalar. Depois de reiniciar no "novo kernel", abri o tvtime pra testar e o som dos canais apareceu. Daí então fui variando as opções em busca da imagem, e pra minha surpresa surgiu imagem quando selecionei a opção "compositing2" no lugar de "television". Só que o curioso é que os canais não mudam, pra mudar de canal é preciso escolher televisor de novo, mudar e canal e voltar pra compositing :o

Daí abri o módulo pra ver como estava configurado, constatando que não tem o card correto. Deve ser por isso, né? Algum tipo de interferência fez funcionar, mas como o módulo é um módulo digamos "falso genérico", a placa não funciona como deveria.


12. Re: Placa de Captura X Compilar kernel? [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 09/11/2009 - 16:39h

Agora é o momento d vc descarregar o módulo e carregá-lo d forma correta, como expliquei acima. Faça isso e tente d novo...



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts