fwcontrol -R issues with several cameras

Eric Anderson anderson at centtech.com
Thu Mar 22 15:02:12 UTC 2007


On 03/22/07 09:18, Hidetoshi Shimokawa wrote:
> I don't have no DV and MPEG TS camera now and I can't test
> by myself. I really appreciate hardware donation ;-)

I wish I could donate one to you.  Is there more I can do on my end to 
debug it?

> Anyway,  "fwohci0: Isochronous receive err 8402(long)" indicates
> that  packet is longer than receive buffer.
> How about increasing PSIZE in /usr/src/usr.sbin/fwcontrol/fwmpegts.c?
> Petr Holub may know better than me about MPEG TS.

I tried doubling it, and that did not help (same log error, different 
fwcontrol errors).  I then also tried making RBUFSIZE bigger, no help.

> Do you also have problem with DV(not MPEG) stream?

Yes, same messages in logs, but different error from fwcontrol:

# fwcontrol -R test
Detected DV format on input.
fwcontrol: read failed: Input/output error

Mar 22 09:52:56 neutrino kernel: fwohci0: BUS reset
Mar 22 09:52:56 neutrino kernel: fwohci0: node_id=0xc800ffc1, gen=2, 
CYCLEMASTER mode
Mar 22 09:52:56 neutrino kernel: firewire0: 2 nodes, maxhop <= 1, cable 
IRM = 1 (me)
Mar 22 09:52:56 neutrino kernel: firewire0: bus manager 1 (me)
Mar 22 09:52:56 neutrino kernel: firewire0: New S100 device 
ID:0000850001269c51
Mar 22 09:53:19 neutrino kernel: fwohci0: Isochronous receive err 8402(long)
Mar 22 09:53:23 neutrino last message repeated 3 times
Mar 22 09:53:26 neutrino kernel: fwohci0: Isochronous receive err 8402(long)
Mar 22 09:53:27 neutrino kernel: fwohci0: Isochronous receive err 8402(long)
Mar 22 09:53:51 neutrino kernel: fwohci0: BUS reset
Mar 22 09:53:51 neutrino kernel: fwohci0: node_id=0xc800ffc0, gen=3, 
CYCLEMASTER mode
Mar 22 09:53:51 neutrino kernel: firewire0: 1 nodes, maxhop <= 0, cable 
IRM = 0 (me)
Mar 22 09:53:51 neutrino kernel: firewire0: bus manager 0 (me)



> On 3/22/07, Eric Anderson <anderson at centtech.com> wrote:
>> For quite some time now, I (and many others) have had problems getting
>> fwcontrol -R to work successfully.  The recent commits in the firewire
>> area have inspired me to try it again.  It still does not function for
>> me (for at least one camera), but is more consistent now, and not giving
>> different errors randomly as was the case before.
>>
>> I'd really like to get this working, as it's one of the only reasons I
>> still boot into Windows these days.
>>
>> Any ideas?  I'm running -CURRENT as of a few days ago.
>>
>>
>> Eric
>>
>>
>> Here's what I did:
>>
>> # power on camera:
>> Mar 22 08:04:17 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:04:17 neutrino kernel: fwohci0: node_id=0xc800ffc1, gen=2,
>> CYCLEMASTER mode
>> Mar 22 08:04:17 neutrino kernel: firewire0: 2 nodes, maxhop <= 1, cable
>> IRM = 1 (me)
>> Mar 22 08:04:17 neutrino kernel: firewire0: bus manager 1 (me)
>> Mar 22 08:04:17 neutrino kernel: fwohci0: txd err= 3 miss Ack err
>> Mar 22 08:04:17 neutrino kernel: firewire0: bus_explore node=0
>> addr=0x400 resp=22
>> Mar 22 08:04:18 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:04:18 neutrino kernel: fwohci0: node_id=0xc800ffc0, gen=3,
>> CYCLEMASTER mode
>> Mar 22 08:04:18 neutrino kernel: firewire0: 1 nodes, maxhop <= 0, cable
>> IRM = 0 (me)
>> Mar 22 08:04:18 neutrino kernel: firewire0: bus manager 0 (me)
>> Mar 22 08:04:21 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:04:21 neutrino kernel: fwohci0: phy int
>> Mar 22 08:04:21 neutrino last message repeated 7 times
>> Mar 22 08:04:21 neutrino kernel: fwohci0: node_id=0xc800ffc1, gen=12,
>> CYCLEMASTER mode
>> Mar 22 08:04:21 neutrino kernel: firewire0: 2 nodes, maxhop <= 1, cable
>> IRM = 1 (me)
>> Mar 22 08:04:21 neutrino kernel: firewire0: bus manager 1 (me)
>> Mar 22 08:04:21 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:04:21 neutrino kernel: fwohci0: node_id=0xc800ffc0, gen=13,
>> CYCLEMASTER mode
>> Mar 22 08:04:21 neutrino kernel: firewire0: 1 nodes, maxhop <= 0, cable
>> IRM = 0 (me)
>> Mar 22 08:04:21 neutrino kernel: firewire0: bus manager 0 (me)
>> Mar 22 08:04:22 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:04:22 neutrino kernel: fwohci0: node_id=0xc800ffc1, gen=14,
>> CYCLEMASTER mode
>> Mar 22 08:04:22 neutrino kernel: firewire0: 2 nodes, maxhop <= 1, cable
>> IRM = 1 (me)
>> Mar 22 08:04:22 neutrino kernel: firewire0: bus manager 1 (me)
>> Mar 22 08:04:22 neutrino kernel: firewire0: New S100 device
>> ID:0000850001269c51
>>
>>
>> # fwcontrol -R test
>> Detected MPEG TS format on input.
>> fwcontrol: unknown format 0x1a
>>
>> Mar 22 08:05:37 neutrino kernel: fwohci0: Isochronous receive err 8402(long)
>>
>> # power off camera:
>>
>> Mar 22 08:06:41 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:06:41 neutrino kernel: fwohci0: node_id=0xc800ffc0, gen=15,
>> CYCLEMASTER mode
>> Mar 22 08:06:41 neutrino kernel: firewire0: 1 nodes, maxhop <= 0, cable
>> IRM = 0 (me)
>> Mar 22 08:06:41 neutrino kernel: firewire0: bus manager 0 (me)
>>
>>
>> # try #2:
>>
>> # power on camera:
>> Mar 22 08:10:23 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:10:23 neutrino kernel: fwohci0: node_id=0xc800ffc1, gen=16,
>> CYCLEMASTER mode
>> Mar 22 08:10:23 neutrino kernel: firewire0: 2 nodes, maxhop <= 1, cable
>> IRM = 1 (me)
>> Mar 22 08:10:23 neutrino kernel: firewire0: bus manager 1 (me)
>> Mar 22 08:10:24 neutrino kernel: fwohci0: txd err= 3 miss Ack err
>> Mar 22 08:10:24 neutrino kernel: firewire0: bus_explore node=0
>> addr=0x400 resp=22
>> Mar 22 08:10:24 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:10:24 neutrino kernel: fwohci0: node_id=0xc800ffc0, gen=17,
>> CYCLEMASTER mode
>> Mar 22 08:10:24 neutrino kernel: firewire0: 1 nodes, maxhop <= 0, cable
>> IRM = 0 (me)
>> Mar 22 08:10:24 neutrino kernel: firewire0: bus manager 0 (me)
>> Mar 22 08:10:27 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:10:27 neutrino kernel: fwohci0: node_id=0xc800ffc1, gen=18,
>> CYCLEMASTER mode
>> Mar 22 08:10:27 neutrino kernel: firewire0: 2 nodes, maxhop <= 1, cable
>> IRM = 1 (me)
>> Mar 22 08:10:27 neutrino kernel: firewire0: bus manager 1 (me)
>>
>> # using -M makes no difference
>> # try a bus reset:
>>
>> Mar 22 08:12:03 neutrino kernel: fwohci0: Initiate bus reset
>> Mar 22 08:12:03 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:12:03 neutrino kernel: fwohci0: node_id=0xc800ffc1, gen=19,
>> CYCLEMASTER mode
>> Mar 22 08:12:03 neutrino kernel: firewire0: 2 nodes, maxhop <= 1, cable
>> IRM = 1 (me)
>> Mar 22 08:12:03 neutrino kernel: firewire0: bus manager 1 (me)
>>
>> # same problem:
>>
>> Mar 22 08:12:21 neutrino kernel: fwohci0: Isochronous receive err 8402(long)
>>
>> # now tried the try_bmr=0, and a reset:
>>
>> Mar 22 08:13:18 neutrino kernel: fwohci0: Initiate bus reset
>> Mar 22 08:13:18 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:13:18 neutrino kernel: fwohci0: node_id=0xc800ffc1, gen=20,
>> CYCLEMASTER mode
>> Mar 22 08:13:18 neutrino kernel: firewire0: 2 nodes, maxhop <= 1, cable
>> IRM = 1 (me)
>> Mar 22 08:13:18 neutrino kernel: fw_rcv: unknown response RRESQ(6)
>> src=0xffc0 tl=0x32 rt=1 data=0xbbe70404
>> Mar 22 08:13:18 neutrino kernel: try ad-hoc work around!!
>> Mar 22 08:13:18 neutrino kernel: no use...
>>
>> # same errors.
>>
>> # with firewire_debug sysctl set to 1, doing a reset shows:
>>
>> Mar 22 08:16:23 neutrino kernel: fwohci0: Initiate bus reset
>> Mar 22 08:16:23 neutrino kernel: fwohci0: fwphy_rddata: 0x1 loop=1, retry=0
>> Mar 22 08:16:23 neutrino kernel: fwohci0: fwphy_rddata: 0x1 loop=1, retry=0
>> Mar 22 08:16:23 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:16:23 neutrino kernel: fwohci0: node_id=0xc800ffc1, gen=27,
>> CYCLEMASTER mode
>> Mar 22 08:16:23 neutrino kernel: firewire0: 2 nodes, maxhop <= 1, cable
>> IRM = 1 (me)
>> Mar 22 08:16:23 neutrino kernel: fwohci0: fw_set_bus_manager: 1->1 (loop=0)
>> Mar 22 08:16:23 neutrino kernel: firewire0: bus manager 1 (me)
>> Mar 22 08:16:23 neutrino kernel: send phy_config root_node=1 gap_count=5
>> Mar 22 08:16:23 neutrino kernel: fwohci0: start AT DMA status=14
>> Mar 22 08:16:23 neutrino kernel: node0: explore addr=0x400
>> Mar 22 08:16:23 neutrino kernel: node0: callback addr=0x400
>> Mar 22 08:16:23 neutrino kernel: node0: explore addr=0x40c
>> Mar 22 08:16:23 neutrino kernel: node0: callback addr=0x40c
>> Mar 22 08:16:23 neutrino kernel: node0: explore addr=0x410
>> Mar 22 08:16:23 neutrino kernel: node0: callback addr=0x410
>> Mar 22 08:16:23 neutrino kernel: node0: explore addr=0x400
>> Mar 22 08:16:23 neutrino kernel: node0: callback addr=0x400
>> Mar 22 08:16:23 neutrino kernel: bus_explore done
>>
>> # and doing the -R with fwcontrol results in:
>>
>> Detected MPEG TS format on input.
>> fwcontrol: unknown format 0x1a
>>
>> # and in dmesg:
>>
>> Mar 22 08:17:07 neutrino kernel: start IR DMA 0x40000011
>> Mar 22 08:17:07 neutrino kernel: fwohci0: Isochronous receive err 8402(long)
>> Mar 22 08:17:08 neutrino kernel: start IR DMA 0x40000002
>> Mar 22 08:17:08 neutrino kernel: fwohci0: Isochronous receive err 8402(long)
>> Mar 22 08:17:09 neutrino last message repeated 2 times
>> ^?
>>
>> # and shutting down:
>>
>> Mar 22 08:17:18 neutrino kernel: fwohci0: BUS reset
>> Mar 22 08:17:18 neutrino kernel: fwohci0: node_id=0xc800ffc0, gen=28,
>> CYCLEMASTER mode
>> Mar 22 08:17:18 neutrino kernel: firewire0: 1 nodes, maxhop <= 0, cable
>> IRM = 0 (me)
>> Mar 22 08:17:18 neutrino kernel: fwohci0: fw_set_bus_manager: 0->0 (loop=0)
>> Mar 22 08:17:18 neutrino kernel: firewire0: bus manager 0 (me)
>> Mar 22 08:17:18 neutrino kernel: send phy_config root_node=-1 gap_count=5
>> Mar 22 08:17:18 neutrino kernel: fwohci0: start AT DMA status=3
>> Mar 22 08:17:18 neutrino kernel: bus_explore done
>>
>>
>>
>> --
>> ------------------------------------------------------------------------
>> Eric Anderson        Sr. Systems Administrator        Centaur Technology
>> An undefined problem has an infinite number of solutions.
>> ------------------------------------------------------------------------
>>
>>
> 
> 


-- 
------------------------------------------------------------------------
Eric Anderson        Sr. Systems Administrator        Centaur Technology
An undefined problem has an infinite number of solutions.
------------------------------------------------------------------------


More information about the freebsd-firewire mailing list