Manu Abraham schreef:
Michel Verbraak wrote:
I have a Twinhan VP-1034 and I use the the latest hg, today, and http://jusst.de/manu/mantis-v4l-dvb.tar.bz2 with kernel 2.6.22.1.

When I do a 'modprobe mantis' my prompt never returns. The machine still is working.

[snip]

Address=[0x25] <W>[ 00 <3>mantis_ack_wait (0): Waiting for Slave RACK
Aug 25 17:53:33 recorder kernel: mantis_ack_wait (0): Waiting for Slave RACK
Aug 25 17:53:42 recorder last message repeated 499 times
Aug 25 17:53:42 recorder kernel: mantis_ack_wait (0): Slave RACK Fail !
Aug 25 17:53:42 recorder kernel: mantis_i2c_write (0): ACK failed<W>

I must say I also have a Hauppauge PVR-150 and a PVR-350 in this machine, using ivtv from hg, and when I remove both I do not have this problem. The modules load without any problems.


with ivtv modules loaded somebody else mentioned of issues with regards
to DMA transfers on the 878 based cards. I don't really understand why
ivtv modules causes those problems. (IIRC it was Sigmund, i think)

lspci -vv gives:
02:09.0 Multimedia controller: Twinhan Technology Co. Ltd Mantis DTV PCI Bridge Controller [Ver 1.0] (rev 01)
       Subsystem: Twinhan Technology Co. Ltd Unknown device 0014
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
       Latency: 64 (2000ns min, 63750ns max)
       Interrupt: pin A routed to IRQ 22
       Region 0: Memory at f7eff000 (32-bit, prefetchable) [size=4K]

02:0b.0 Multimedia video controller: Internext Compression Inc iTVC15 MPEG-2 Encoder (rev 01)
       Subsystem: Hauppauge computer works Inc. WinTV PVR-350
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
       Latency: 64 (32000ns min, 2000ns max), Cache Line Size: 16 bytes
       Interrupt: pin A routed to IRQ 19
       Region 0: Memory at f0000000 (32-bit, prefetchable) [size=64M]
       Capabilities: [44] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
               Status: D0 PME-Enable- DSel=0 DScale=0 PME-

02:0d.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01)
       Subsystem: Hauppauge computer works Inc. WinTV PVR 150
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
       Latency: 64 (32000ns min, 2000ns max), Cache Line Size: 16 bytes
       Interrupt: pin A routed to IRQ 5
       Region 0: Memory at ec000000 (32-bit, prefetchable) [size=64M]
       Capabilities: [44] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
               Status: D0 PME-Enable- DSel=0 DScale=0 PME-

If more verbose messages are needed from othe modules please let me know. I do not have this problem with kernel versions 2.6.20 and below. Something changed in 2.6.21 and I do not know what.

Without any any driver loaded for the ivtv hardware, do you still
experience the same problems ?

When I do not load the ivtv modules or any other modules needed bu ivtv, but the cards are still in the computer, and I load the mantis and mb86a16 module following is in the message log: Aug 26 09:47:30 recorder kernel: ACPI: PCI Interrupt 0000:02:09.0[A] -> GSI 21 (level, low) -> IRQ 22
Aug 26 09:47:30 recorder kernel:
Aug 26 09:47:30 recorder kernel: gpif status: 6000  irqcfg: 0000
Aug 26 09:47:30 recorder kernel: mantis_set_direction (0): TS direction setup
Aug 26 09:47:30 recorder kernel: irq: 22, latency: 64
Aug 26 09:47:30 recorder kernel:  memory: 0xf7eff000, mmio: 0xf88de000
Aug 26 09:47:30 recorder kernel: found a VP-1034 PCI DVB-S/DSS device on (02:09.0), Aug 26 09:47:30 recorder kernel: Mantis Rev 1 [1822:0014], irq: 22, latency: 64
Aug 26 09:47:30 recorder kernel:     memory: 0xf7eff000, mmio: 0xf88de000
Aug 26 09:47:30 recorder kernel: mantis_i2c_init (0): Initializing I2C ..
Aug 26 09:47:30 recorder kernel: mantis_i2c_init (0): [0x04000001/00000000]
Aug 26 09:47:30 recorder kernel: mantis_i2c_write: Address=[0x50] <W>[ 08 === Interrupts[4000001/0001]= [* I2C R-ACK ** I2C DONE *] ===
Aug 26 09:47:30 recorder kernel: ]
Aug 26 09:47:30 recorder kernel: mantis_i2c_read: Address=[0x50] <R>[ === Interrupts[4000001/0001]= [* I2C R-ACK ** I2C DONE *] === Aug 26 09:47:30 recorder kernel: 00 === Interrupts[4000001/0001]= [* I2C R-ACK ** I2C DONE *] === Aug 26 09:47:30 recorder kernel: 08 === Interrupts[4000001/0001]= [* I2C R-ACK ** I2C DONE *] === Aug 26 09:47:30 recorder kernel: ca === Interrupts[4000001/0001]= [* I2C R-ACK ** I2C DONE *] === Aug 26 09:47:30 recorder kernel: 19 === Interrupts[4000001/0001]= [* I2C R-ACK ** I2C DONE *] === Aug 26 09:47:30 recorder kernel: 9f === Interrupts[4000001/0001]= [* I2C R-ACK ** I2C DONE *] ===
Aug 26 09:47:30 recorder kernel: 0b ]
Aug 26 09:47:30 recorder kernel:     MAC Address=[00:08:ca:19:9f:0b]
Aug 26 09:47:30 recorder kernel: mantis_dma_init (0): Mantis DMA init
Aug 26 09:47:30 recorder kernel: mantis_alloc_buffers (0): DMA=0x2c9b0000 cpu=0xec9b0000 size=65536 Aug 26 09:47:30 recorder kernel: mantis_alloc_buffers (0): RISC=0x2c91e000 cpu=0xec91e000 size=1000 Aug 26 09:47:30 recorder kernel: mantis_calc_lines (0): Mantis RISC block bytes=[4096], line bytes=[2048], line count=[32]
Aug 26 09:47:30 recorder kernel: mantis_dvb_init (0): dvb_register_adapter
Aug 26 09:47:30 recorder kernel: DVB: registering new adapter (Mantis dvb adapter)
Aug 26 09:47:30 recorder kernel: mantis_dvb_init (0): dvb_dmx_init
Aug 26 09:47:30 recorder kernel: mantis_dvb_init (0): dvb_dmxdev_init
Aug 26 09:47:30 recorder kernel: mantis_frontend_init (0): Mantis frontend Init
Aug 26 09:47:30 recorder kernel: mantis_fe_powerup (0): Frontend Power ON
Aug 26 09:47:30 recorder kernel: mantis_frontend_reset (0): Frontend Reset
Aug 26 09:47:30 recorder kernel: mantis_frontend_init (0): Device ID=14
Aug 26 09:47:30 recorder kernel: mantis_frontend_init (0): Probing for MB86A16 (DVB-S/DSS) Aug 26 09:47:30 recorder kernel: mantis_i2c_write: Address=[0x08] <W>[ 7f === Interrupts[4000001/0001]= [* I2C R-ACK ** I2C DONE *] ===
Aug 26 09:47:30 recorder kernel: ]
Aug 26 09:47:30 recorder kernel: mantis_i2c_read: Address=[0x08] <R>[ === Interrupts[4000001/0001]= [* I2C R-ACK ** I2C DONE *] ===
Aug 26 09:47:30 recorder kernel: fe ]
Aug 26 09:47:30 recorder kernel: mantis_frontend_init (0): found MB86A16 DVB-S/DSS frontend @0x08 Aug 26 09:47:30 recorder kernel: DVB: registering frontend 2 (Fujitsu MB86A16 DVB-S)...

Loads normal and I get a prompt on return from the 'modprobe mantis' command:

When I do the command ' modprobe ivtv' next I get the following in my message log and the command hangs and I do not get a message promt, machine is still up and running.
Aug 26 11:08:31 recorder kernel: Linux video capture interface: v2.00
Aug 26 11:08:32 recorder kernel: ivtv:  Start initialization, version 1.1.0
Aug 26 11:08:32 recorder kernel: ivtv0: Initializing card #0
Aug 26 11:08:32 recorder kernel: ivtv0: Autodetected Hauppauge card (cx23415 based) Aug 26 11:08:32 recorder kernel: ACPI: PCI Interrupt 0000:02:0b.0[A] -> GSI 23 (level, low) -> IRQ 19
Aug 26 11:08:32 recorder kernel: ivtv0 i2c: i2c init
Aug 26 11:08:32 recorder kernel: ivtv0 i2c: setting scl and sda to 1
Aug 26 11:08:32 recorder kernel: ivtv0 i2c: i2c client attach
Aug 26 11:08:32 recorder kernel: tveeprom 2-0050: Hauppauge model 48134, rev I121, serial# 6182877 Aug 26 11:08:32 recorder kernel: tveeprom 2-0050: tuner model is Philips FM1216 (idx 21, type 5) Aug 26 11:08:32 recorder kernel: tveeprom 2-0050: TV standards PAL(B/G) (eeprom 0x04) Aug 26 11:08:32 recorder kernel: tveeprom 2-0050: audio processor is MSP4418 (idx 25) Aug 26 11:08:32 recorder kernel: tveeprom 2-0050: decoder processor is SAA7115 (idx 19) Aug 26 11:08:32 recorder kernel: tveeprom 2-0050: has radio, has IR receiver, has no IR transmitter
Aug 26 11:08:32 recorder kernel: ivtv0: Autodetected Hauppauge WinTV PVR-350
Aug 26 11:08:32 recorder kernel: tuner 2-0061: chip found @ 0xc2 (ivtv i2c driver #0)
Aug 26 11:08:32 recorder kernel: ivtv0 i2c: i2c client attach
Aug 26 11:08:32 recorder kernel: mantis_i2c_write: Address=[0x25] <W>[ ] Aug 26 11:08:32 recorder kernel: mantis_i2c_write: Address=[0x25] <W>[ 00 00 ] Aug 26 11:08:32 recorder kernel: mantis_i2c_write: Address=[0x25] <W>[ 00 ] Aug 26 11:08:32 recorder kernel: mantis_i2c_read: Address=[0x25] <R>[ 00 ] Aug 26 11:08:32 recorder kernel: mantis_i2c_write: Address=[0x25] <W>[ 00 01 === Interrupts[0001/0001]= [* I2C DONE *] ===
Aug 26 11:08:32 recorder kernel: ]
Aug 26 11:08:32 recorder kernel: mantis_i2c_write: Address=[0x25] <W>[ 00 <3>mantis_ack_wait (0): Waiting for Slave RACK Aug 26 11:08:32 recorder kernel: === Interrupts[0001/0001]= [* I2C DONE *] ===
Aug 26 11:08:32 recorder kernel: mantis_ack_wait (0): Waiting for Slave RACK
Aug 26 11:08:38 recorder last message repeated 499 times
Aug 26 11:08:38 recorder kernel: mantis_ack_wait (0): Slave RACK Fail !
Aug 26 11:08:38 recorder kernel: mantis_i2c_write (0): ACK failed<W>

following modules are active (lsmod):
saa7115                19231  1
tuner                  64808  0
ivtv                  130368  1
i2c_algo_bit           10116  1 ivtv
cx2341x                15492  1 ivtv
tveeprom               19088  1 ivtv
videodev               30976  1 ivtv
v4l2_common            20736  5 saa7115,tuner,ivtv,cx2341x,videodev
v4l1_compat            16644  2 ivtv,videodev
mantis                 28676  0
mb86a16                21376  1 mantis
cu1216                 11788  1 mantis
stv0299                13704  1 mantis
dvbloopback            23692  0
nfsd                  208880  17
exportfs                9856  1 nfsd
lockd                  65288  2 nfsd
nfs_acl                 7680  1 nfsd
autofs4                25220  2
sunrpc                163068  12 nfsd,lockd,nfs_acl
dm_multipath           22280  0
dock                   14452  0
button                 12176  0
ac                      9476  0
skge                   42768  0
i2c_i801               12688  0
dvb_usb_dtt200u        17796  0
dvb_usb                24972  1 dvb_usb_dtt200u
dvb_core               79912  4 mantis,stv0299,dvbloopback,dvb_usb
i2c_core 28032 11 saa7115,tuner,ivtv,i2c_algo_bit,tveeprom,mantis,mb86a16,cu1216,stv0299,i2c_i801,dvb_usb
dm_snapshot            20784  0
dm_zero                 6144  0
dm_mirror              25984  0
dm_mod                 57408  9 dm_multipath,dm_snapshot,dm_zero,dm_mirror
ext3                  125704  4
jbd                    60840  1 ext3
ehci_hcd               35468  0
ohci_hcd               24196  0
uhci_hcd               27280  0

The vp-1034 is unusable, scan does not work. IVTV is unusable.

Is the ivtv hardware sharing interrupts with the Mantis ? My guess would
be that the ivtv drivers grab a lot of IRQ time on the CPU leaving
little shared IRQ time for other devices. Can you verify this ?
I CCed the ivtv-devel list because it is something between the mantis and ivtv driver. When I first load the ivtv modules and then the mantis ivtv is still working and mantis is not working.

Regards,

Michel.
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

Reply via email to