From owner-freebsd-firewire@FreeBSD.ORG Thu Mar 22 15:45:33 2007 Return-Path: X-Original-To: freebsd-firewire@freebsd.org Delivered-To: freebsd-firewire@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 612C916A401 for ; Thu, 22 Mar 2007 15:45:33 +0000 (UTC) (envelope-from freebsd@gm.nunu.org) Received: from nf-out-0910.google.com (nf-out-0910.google.com [64.233.182.191]) by mx1.freebsd.org (Postfix) with ESMTP id 908D513C465 for ; Thu, 22 Mar 2007 15:45:32 +0000 (UTC) (envelope-from freebsd@gm.nunu.org) Received: by nf-out-0910.google.com with SMTP id k27so1443128nfc for ; Thu, 22 Mar 2007 08:45:31 -0700 (PDT) Received: by 10.78.204.20 with SMTP id b20mr1039530hug.1174578330571; Thu, 22 Mar 2007 08:45:30 -0700 (PDT) Received: by 10.78.130.6 with HTTP; Thu, 22 Mar 2007 08:45:30 -0700 (PDT) Message-ID: <626eb4530703220845qdedffbdod4bd9894dec51e6@mail.gmail.com> Date: Fri, 23 Mar 2007 00:45:30 +0900 From: "Hidetoshi Shimokawa" Sender: freebsd@gm.nunu.org To: "Eric Anderson" In-Reply-To: <46029A6E.9070000@centtech.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <46028460.5000004@centtech.com> <626eb4530703220718q4d293a16wfbb0a70cf21e624b@mail.gmail.com> <46029A6E.9070000@centtech.com> X-Google-Sender-Auth: c80ab8414c5f2590 Cc: hopet@ics.muni.cz, freebsd-firewire@freebsd.org Subject: Re: fwcontrol -R issues with several cameras X-BeenThere: freebsd-firewire@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Firewire support in FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Mar 2007 15:45:33 -0000 I found a trivial bug in fwcontrol.c for '-M' option. RCS file: /home/ncvs/src/usr.sbin/fwcontrol/fwcontrol.c,v retrieving revision 1.23 diff -u -r1.23 fwcontrol.c --- fwcontrol.c 26 Oct 2006 22:33:38 -0000 1.23 +++ fwcontrol.c 22 Mar 2007 15:37:25 -0000 @@ -764,7 +764,7 @@ errx(EX_USAGE, "unrecognized method: %s", optarg); } - break; + /* fall through */ case 'R': open_dev(&fd, devbase); if (recvfn == NULL) /* guess... */ Without this patch, 'fwcontrol -Md' will exit immediately. But I am not sure whether this fix your problem. On 3/23/07, Eric Anderson wrote: > 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 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. > ------------------------------------------------------------------------ > > -- /\ Hidetoshi Shimokawa \/ simokawa@FreeBSD.ORG