|
我安装了gentoo, 声卡,网卡,显卡都正常,只是我的电视卡一直搞不定。
十分郁闷,希望高手可以指点。
我的linux是Gentoo 2006.0, kernel 2.6.15
电视卡: Leadtek Winfast TV 2000 XP RM (潮流版) 芯片:Fusion 878A
高频头应该是特纳(具体不清楚).
安装:
1.重新编译kernal,follow the gentoo tv tuner card wiki. 增加了
Video4linux, bt848 driver, I2C.
2.安装了xawtv, 配置了.xawtv
norm=PAL, freqtab=china-bcast, input=Television, capture=on
3.运行xawtv, 只看到雪花点。郁闷。
调试:
1. lspci -vn
03:01.0 0400: 109e:036e (rev 11)
Subsystem: 107d:6609
Flags: bus master, medium devsel, latency 64, IRQ 22
Memory at d0001000 (32-bit, prefetchable) [size=4K]
Capabilities: [44] Vital Product Data
Capabilities: [4c] Power Management version 2
03:01.1 0480: 109e:0878 (rev 11)
Subsystem: 107d:6609
Flags: bus master, medium devsel, latency 64, IRQ 5
Memory at d0000000 (32-bit, prefetchable) [size=4K]
Capabilities: [44] Vital Product Data
Capabilities: [4c] Power Management version 2
2. 改变bttv参数
rmmod bttv
modprobe bttv tuner=2/5/23/24/38, radio = 0/1, pll=0/1/2, remap=adr,
vidmem=base
参数枚举了很多,都不行,好象在买六合彩,只是一直没中。
下面是 modprobe bttv tuner=23 的message
bttv: driver version 0.9.16 loaded
bttv: using 8 buffers with 2080k (520 pages) each for capture
bttv: Bt8xx card found (0).
ACPI: PCI Interrupt 0000:03:01.0[A] -> GSI 17 (level, low) -> IRQ 22
bttv0: Bt878 (rev 17) at 0000:03:01.0, irq: 22, latency: 64, mmio:
0xd0001000
bttv0: detected: Leadtek TV 2000 XP [card=34], PCI subsystem ID is
107d:6609
bttv0: using: Leadtek WinFast 2000/ WinFast 2000 XP
[card=34,autodetected]
bttv0: gpio: en=00000000, out=00000000 in=003ff502 [init]
tuner 1-0061: chip found @ 0xc2 (bt878 #0 [sw])
bttv0: using tuner=23
tuner 1-0061: type set to 23 (Philips PAL_DK (FI1256 and compatibles))
bttv0: i2c: checking for MSP34xx @ 0x80... not found
bttv0: i2c: checking for TDA9875 @ 0xb0... not found
bttv0: i2c: checking for TDA7432 @ 0x8a... not found
bttv0: i2c: checking for TDA9887 @ 0x86... not found
bttv0: registered device video0
bttv0: registered device vbi0
bttv0: registered device radio0
bttv0: PLL: 28636363 => 35468950 . ok
bttv0: add subdevice "remote0"
3.关于source code.
source code 完全不懂,看别人说可以改就试试
这里/usr/src/linux/drivers/media/video/bttv-cards.c片段
[BTTV_BOARD_WINFAST2000] = {
.name = "Leadtek WinFast 2000/ WinFast 2000
XP",
.video_inputs = 4,
.audio_inputs = 1,
.tuner = 0,
.svhs = 2,
.muxsel = { 2, 3, 1, 1, 0}, /* TV, CVid, SVid,
CVid over SVid connector */
/* Alexander Varakin <avarakin@hotmail.com> [stereo
version] */
.gpiomask = 0xb33000,
.audiomux = {
0x122000,0x1000,0x0000,0x620000,0x800000 },
/* Audio Routing for "WinFast 2000 XP" (no tv stereo !)
gpio23 -- hef4052:nEnable (0x800000)
gpio12 -- hef4052:A1
gpio13 -- hef4052:A0
0x0000: external audio
0x1000: FM
0x2000: TV
0x3000: n.c.
Note: There exists another variant "Winfast 2000" with
tv stereo !?
Note: eeprom only contains FF and pci subsystem id
107d:6606
*/
.needs_tvaudio = 0,
.pll = PLL_28,
.has_radio = 1,
.tuner_type = 1, /* default for now, gpio reads
BFFF06 for Pal bg+dk */
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.audio_hook = winfast2000_audio,
.has_remote = 1,
},
不知道这个Alexander在说什么。
我把 .has_radio = 1 改成 .has_radio = 0
.tuner_type = 1 改成 .tuner_type = 23
试了一下,还是不行,其他的就不知道道怎么改了。
希望高手指点。 不然我的200块......
多谢 |
|