From owner-freebsd-firewire@FreeBSD.ORG Mon Mar 3 06:47:08 2008 Return-Path: Delivered-To: freebsd-firewire@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7D5241065671; Mon, 3 Mar 2008 06:47:08 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 552608FC17; Mon, 3 Mar 2008 06:47:08 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.2/8.14.2) with ESMTP id m236l8og097461; Mon, 3 Mar 2008 06:47:08 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.14.2/8.14.1/Submit) id m236l8Jd097456; Mon, 3 Mar 2008 06:47:08 GMT (envelope-from linimon) Date: Mon, 3 Mar 2008 06:47:08 GMT Message-Id: <200803030647.m236l8Jd097456@freefall.freebsd.org> To: freebsd@sopwith.solgatos.com, linimon@FreeBSD.org, freebsd-firewire@FreeBSD.org From: linimon@FreeBSD.org Cc: Subject: Re: kern/113785: [firewire] dropouts when playing DV on firewire 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: Mon, 03 Mar 2008 06:47:08 -0000 Synopsis: [firewire] dropouts when playing DV on firewire State-Changed-From-To: feedback->open State-Changed-By: linimon State-Changed-When: Mon Mar 3 06:46:40 UTC 2008 State-Changed-Why: Note that feedback was received some time ago. http://www.freebsd.org/cgi/query-pr.cgi?pr=113785 From owner-freebsd-firewire@FreeBSD.ORG Mon Mar 3 11:07:06 2008 Return-Path: Delivered-To: freebsd-firewire@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7AB3610656E0 for ; Mon, 3 Mar 2008 11:07:06 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 596088FC37 for ; Mon, 3 Mar 2008 11:07:06 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.2/8.14.2) with ESMTP id m23B76fw022018 for ; Mon, 3 Mar 2008 11:07:06 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.2/8.14.1/Submit) id m23B755f022014 for freebsd-firewire@FreeBSD.org; Mon, 3 Mar 2008 11:07:05 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 3 Mar 2008 11:07:05 GMT Message-Id: <200803031107.m23B755f022014@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: gnats set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: freebsd-firewire@FreeBSD.org Cc: Subject: Current problem reports assigned to freebsd-firewire@FreeBSD.org 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: Mon, 03 Mar 2008 11:07:06 -0000 Current FreeBSD problem reports Critical problems Serious problems S Tracker Resp. Description -------------------------------------------------------------------------------- o kern/74238 firewire [firewire] fw_rcv: unknown response; firewire ad-hoc w 1 problem total. Non-critical problems S Tracker Resp. Description -------------------------------------------------------------------------------- o kern/113785 firewire [firewire] dropouts when playing DV on firewire 1 problem total. From owner-freebsd-firewire@FreeBSD.ORG Wed Mar 5 02:12:43 2008 Return-Path: Delivered-To: freebsd-firewire@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6600F106566C for ; Wed, 5 Mar 2008 02:12:43 +0000 (UTC) (envelope-from simokawa@ieee.org) Received: from mail6.ecc.u-tokyo.ac.jp (mail6.ecc.u-tokyo.ac.jp [133.11.205.126]) by mx1.freebsd.org (Postfix) with ESMTP id 031F28FC19 for ; Wed, 5 Mar 2008 02:12:42 +0000 (UTC) (envelope-from simokawa@ieee.org) Received: from mhs001.ecc.u-tokyo.ac.jp (unknown [133.11.70.161]) by mail6.ecc.u-tokyo.ac.jp (Postfix) with ESMTP id E225620D8E7 for ; Wed, 5 Mar 2008 10:51:41 +0900 (JST) Received: from maru5.nunu.org (157.82.169.72 [157.82.169.72]) by mhs001.ecc.u-tokyo.ac.jp (SpamBlock.pstn.b 3.4.102) with ESMTP id <8663w2uedy.wl%simokawa@ieee.org> for ; Wed, 5 Mar 2008 10:51:38 +0900 Date: Wed, 05 Mar 2008 10:51:37 +0900 Message-ID: <8663w2uedy.wl%simokawa@ieee.org> From: Hidetoshi Shimokawa To: Dieter In-Reply-To: <200801101939.TAA05489@sopwith.solgatos.com> References: <200801101939.TAA05489@sopwith.solgatos.com> User-Agent: Wanderlust/2.15.2 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (=?ISO-8859-4?Q?Shij=F2?=) APEL/10.6 Emacs/22.0.50 (i386-unknown-freebsd5.4) MULE/5.0 (SAKAKI) MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII X-IP: 157.82.169.72 X-FROM-DOMAIN: ieee.org X-FROM-EMAIL: simokawa@ieee.org Cc: freebsd-firewire@freebsd.org, bug-followup@FreeBSD.org Subject: Re: kern/113785: [firewire] dropouts when playing DV on firewire (Re: Can I force "non CYCLEMASTER mode" ?) 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: Wed, 05 Mar 2008 02:12:43 -0000 Sorry for the late response. Yes, it is possible in some way. Usually, the root node becomes the cycle master and the root node is the node which has the maximum node id. Try the patch I have just committed to -current. ------ simokawa 2008-03-05 01:30:49 UTC FreeBSD src repository Modified files: usr.sbin/fwcontrol fwcontrol.8 fwcontrol.c Log: - add '-f' option to force root node. - fix byte order in read_write_quad() - show hostnames in the list - fix typo in manpage MFC after: 1 week Revision Changes Path 1.22 +6 -1 src/usr.sbin/fwcontrol/fwcontrol.8 http://cvsweb.FreeBSD.org/src/usr.sbin/fwcontrol/fwcontrol.8.diff?r1=1.21&r2=1.22&f=h 1.24 +17 -7 src/usr.sbin/fwcontrol/fwcontrol.c http://cvsweb.FreeBSD.org/src/usr.sbin/fwcontrol/fwcontrol.c.diff?r1=1.23&r2=1.24&f=h ------- Suppose your camcorder has node id 0 and your FreeBSD box has node id 1, run the followins commands. # fwcontrol -f 0 # fwcontrol -r Then, your camcorder should turn to be the cycle master. At Thu, 10 Jan 2008 11:39:00 +0000, Dieter wrote: > > Re: kern/113785 > > Could "CYCLEMASTER mode" vs. "non CYCLEMASTER mode" be > the source of my firewire problems? > > Is it possible to force FreeBSD to be in "non CYCLEMASTER mode" ? > > Thanks. > > ------- Forwarded Message > > > > There is no initialization packet to send streams; > > > > By initialization, I meant whatever conversation FreeBSD and the > > camcorder have once they are both up. > > > > > however, > > > it might be a problem who is the cycle/bus/IR manager. > > > Can you see some difference of the output of the fwcontrol(8) and demsg(8) > > > in node-id, cycle master and etc. between success and failed cases? > > > > Yes, we have a couple of new clues: > > > > When FreeBSD says "CYCLEMASTER mode" it does not work. > > When FreeBSD says "non CYCLEMASTER mode" it works. > > > > Also: > > > > The controller that works (if booted in correct order): > > > > just bsd: > > # fwcontrol -u 1 -t > > crc_len: 3 generation:2 node_count:1 sid_count:1 > > id link gap_cnt speed delay cIRM power port0 port1 port2 ini more > > 00 1 5 S400 0 1 -9W - - 1 0 > > > > now power up camcorder (does not work): > > > > # fwcontrol -u 1 -t > > crc_len: 4 generation:3 node_count:2 sid_count:2 > > id link gap_cnt speed delay cIRM power port0 port1 port2 ini more > > 00 1 63 S100 0 1 0W - P 1 0 > > 01 1 5 S400 0 1 -9W - C 0 0 > > > > Looks like the S400 & non-zero power device (BSD box) changed id from 00 to 01? > > > > after booting camcorder and FreeBSD in correct order (works): > > > > # fwcontrol -u 1 -t > > crc_len: 4 generation:1 node_count:2 sid_count:2 > > id link gap_cnt speed delay cIRM power port0 port1 port2 ini more > > 00 1 63 S400 0 1 -9W - P 1 0 > > 01 1 63 S100 0 1 0W - C 0 0 > > > > Note that the BSD box is id 00. > > > > The controller that never works: > > > > # fwcontrol -u 0 -t > > crc_len: 4 generation:2 node_count:2 sid_count:2 > > id link gap_cnt speed delay cIRM power port0 port1 port2 ini more > > 00 1 5 S100 0 1 0W - P 0 0 > > 01 1 5 S400 0 1 15W C - 1 0 > > > > The BSD box is id 01. > > Perhaps the "C" showing up under port0 instead of port1 is significant? > > > > So: if the BSD box is id 00, camcorder is id 01 -> works > > if the BSD box is id 01, camcorder is id 00 -> does not work > > > > > Thanks for a fix for the compiler warning. > > > > You're welcome. > > ------- End of Forwarded Message > > _______________________________________________ > freebsd-firewire@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-firewire > To unsubscribe, send any mail to "freebsd-firewire-unsubscribe@freebsd.org" > /\ Hidetoshi Shimokawa \/ simokawa@ieee.org From owner-freebsd-firewire@FreeBSD.ORG Wed Mar 5 02:13:36 2008 Return-Path: Delivered-To: freebsd-firewire@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2062D1065670 for ; Wed, 5 Mar 2008 02:13:36 +0000 (UTC) (envelope-from freebsd@gm.nunu.org) Received: from an-out-0708.google.com (an-out-0708.google.com [209.85.132.243]) by mx1.freebsd.org (Postfix) with ESMTP id D28D58FC14 for ; Wed, 5 Mar 2008 02:13:35 +0000 (UTC) (envelope-from freebsd@gm.nunu.org) Received: by an-out-0708.google.com with SMTP id c14so338380anc.13 for ; Tue, 04 Mar 2008 18:13:33 -0800 (PST) Received: by 10.100.215.5 with SMTP id n5mr5202109ang.32.1204683213096; Tue, 04 Mar 2008 18:13:33 -0800 (PST) Received: by 10.100.211.16 with HTTP; Tue, 4 Mar 2008 18:13:33 -0800 (PST) Message-ID: <626eb4530803041813h4fd52094g742a7394b3c25b46@mail.gmail.com> Date: Wed, 5 Mar 2008 11:13:33 +0900 From: "Hidetoshi Shimokawa" Sender: freebsd@gm.nunu.org To: "Sean Bruno" In-Reply-To: <47ACC44B.9090504@miralink.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <47A79E13.5040706@miralink.com> <626eb4530802042020n78001c00kddbdedb907902691@mail.gmail.com> <47A7E550.7060500@miralink.com> <626eb4530802042043t3e0ce8d1l83f64b2d3ea48b1c@mail.gmail.com> <47AA13FB.4080209@miralink.com> <47AA1C78.1080305@miralink.com> <47ACC44B.9090504@miralink.com> X-Google-Sender-Auth: 8812a37fa75dbe44 Cc: freebsd-firewire@freebsd.org Subject: Re: Implementation of the AGENT_STATE Register 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: Wed, 05 Mar 2008 02:13:36 -0000 Sorry for the late response. On Sat, Feb 9, 2008 at 6:06 AM, Sean Bruno wrote: > Hidetoshi: > > Can you review this and correct it where needed? I am sure that it is > wrong, but I haven't tested it yet. > > > struct agent_state { > uint32_t fetch_agent_state; > #define AGENT_STATE_RESET 0 > #define AGENT_STATE_ACTIVE 1 > #define AGENT_STATE_SUSPENDED 2 > #define AGENT_STATE_DEAD 3 > uint32_t bus_reset_command_reset_init_vals; > uint32_t read_vals; > uint32_t write_effects; > > }; > > static void > sbp_targ_send_agent_state(struct fw_xfer *xfer) > { > struct agent_state *current_state; > struct fw_pkt *rfp; /* response to request --> from target */ > > xfer->send.payload = malloc(sizeof(struct agent_state), > > M_SBP_TARG, M_NOWAIT | M_ZERO); > xfer->send.pay_len = ntohs(sizeof(struct agent_state)); I don't think you need ntohs() here. > xfer->send.spd = FWSPD_S400; > > current_state = (struct agent_state *)xfer->send.payload; > > current_state->fetch_agent_state = AGENT_STATE_ACTIVE; I'm not sure whether byteswapping is required here or not. > rfp = &xfer->recv.hdr; > > rfp->mode.rresb.tcode = FWTCODE_RRESB; > rfp->mode.rresb.rtcode = 0; > rfp->mode.rresb.extcode = 0; > xfer->send.hdr.mode.hdr.dst = ntohs(rfp->mode.hdr.src); > > > xfer->hand = fw_xfer_free_buf; > rfp->mode.hdr.pri = 0; > fw_asyreq(xfer->fc, -1, xfer); > > } > > > Sean > > -- /\ Hidetoshi Shimokawa \/ simokawa@FreeBSD.ORG From owner-freebsd-firewire@FreeBSD.ORG Wed Mar 5 02:20:03 2008 Return-Path: Delivered-To: freebsd-firewire@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C0A901065670 for ; Wed, 5 Mar 2008 02:20:03 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id AAFA88FC27 for ; Wed, 5 Mar 2008 02:20:03 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.2/8.14.2) with ESMTP id m252K3c7016187 for ; Wed, 5 Mar 2008 02:20:03 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.2/8.14.1/Submit) id m252K3bw016186; Wed, 5 Mar 2008 02:20:03 GMT (envelope-from gnats) Date: Wed, 5 Mar 2008 02:20:03 GMT Message-Id: <200803050220.m252K3bw016186@freefall.freebsd.org> To: freebsd-firewire@FreeBSD.org From: Hidetoshi Shimokawa Cc: Subject: Re: kern/113785: [firewire] dropouts when playing DV on firewire (Re: Can I force "non CYCLEMASTER mode" ?) X-BeenThere: freebsd-firewire@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Hidetoshi Shimokawa List-Id: Firewire support in FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Mar 2008 02:20:03 -0000 The following reply was made to PR kern/113785; it has been noted by GNATS. From: Hidetoshi Shimokawa To: Dieter Cc: freebsd-firewire@freebsd.org, bug-followup@FreeBSD.org Subject: Re: kern/113785: [firewire] dropouts when playing DV on firewire (Re: Can I force "non CYCLEMASTER mode" ?) Date: Wed, 05 Mar 2008 10:51:37 +0900 Sorry for the late response. Yes, it is possible in some way. Usually, the root node becomes the cycle master and the root node is the node which has the maximum node id. Try the patch I have just committed to -current. ------ simokawa 2008-03-05 01:30:49 UTC FreeBSD src repository Modified files: usr.sbin/fwcontrol fwcontrol.8 fwcontrol.c Log: - add '-f' option to force root node. - fix byte order in read_write_quad() - show hostnames in the list - fix typo in manpage MFC after: 1 week Revision Changes Path 1.22 +6 -1 src/usr.sbin/fwcontrol/fwcontrol.8 http://cvsweb.FreeBSD.org/src/usr.sbin/fwcontrol/fwcontrol.8.diff?r1=1.21&r2=1.22&f=h 1.24 +17 -7 src/usr.sbin/fwcontrol/fwcontrol.c http://cvsweb.FreeBSD.org/src/usr.sbin/fwcontrol/fwcontrol.c.diff?r1=1.23&r2=1.24&f=h ------- Suppose your camcorder has node id 0 and your FreeBSD box has node id 1, run the followins commands. # fwcontrol -f 0 # fwcontrol -r Then, your camcorder should turn to be the cycle master. At Thu, 10 Jan 2008 11:39:00 +0000, Dieter wrote: > > Re: kern/113785 > > Could "CYCLEMASTER mode" vs. "non CYCLEMASTER mode" be > the source of my firewire problems? > > Is it possible to force FreeBSD to be in "non CYCLEMASTER mode" ? > > Thanks. > > ------- Forwarded Message > > > > There is no initialization packet to send streams; > > > > By initialization, I meant whatever conversation FreeBSD and the > > camcorder have once they are both up. > > > > > however, > > > it might be a problem who is the cycle/bus/IR manager. > > > Can you see some difference of the output of the fwcontrol(8) and demsg(8) > > > in node-id, cycle master and etc. between success and failed cases? > > > > Yes, we have a couple of new clues: > > > > When FreeBSD says "CYCLEMASTER mode" it does not work. > > When FreeBSD says "non CYCLEMASTER mode" it works. > > > > Also: > > > > The controller that works (if booted in correct order): > > > > just bsd: > > # fwcontrol -u 1 -t > > crc_len: 3 generation:2 node_count:1 sid_count:1 > > id link gap_cnt speed delay cIRM power port0 port1 port2 ini more > > 00 1 5 S400 0 1 -9W - - 1 0 > > > > now power up camcorder (does not work): > > > > # fwcontrol -u 1 -t > > crc_len: 4 generation:3 node_count:2 sid_count:2 > > id link gap_cnt speed delay cIRM power port0 port1 port2 ini more > > 00 1 63 S100 0 1 0W - P 1 0 > > 01 1 5 S400 0 1 -9W - C 0 0 > > > > Looks like the S400 & non-zero power device (BSD box) changed id from 00 to 01? > > > > after booting camcorder and FreeBSD in correct order (works): > > > > # fwcontrol -u 1 -t > > crc_len: 4 generation:1 node_count:2 sid_count:2 > > id link gap_cnt speed delay cIRM power port0 port1 port2 ini more > > 00 1 63 S400 0 1 -9W - P 1 0 > > 01 1 63 S100 0 1 0W - C 0 0 > > > > Note that the BSD box is id 00. > > > > The controller that never works: > > > > # fwcontrol -u 0 -t > > crc_len: 4 generation:2 node_count:2 sid_count:2 > > id link gap_cnt speed delay cIRM power port0 port1 port2 ini more > > 00 1 5 S100 0 1 0W - P 0 0 > > 01 1 5 S400 0 1 15W C - 1 0 > > > > The BSD box is id 01. > > Perhaps the "C" showing up under port0 instead of port1 is significant? > > > > So: if the BSD box is id 00, camcorder is id 01 -> works > > if the BSD box is id 01, camcorder is id 00 -> does not work > > > > > Thanks for a fix for the compiler warning. > > > > You're welcome. > > ------- End of Forwarded Message > > _______________________________________________ > freebsd-firewire@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-firewire > To unsubscribe, send any mail to "freebsd-firewire-unsubscribe@freebsd.org" > /\ Hidetoshi Shimokawa \/ simokawa@ieee.org From owner-freebsd-firewire@FreeBSD.ORG Wed Mar 5 21:00:05 2008 Return-Path: Delivered-To: freebsd-firewire@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DC2271065671 for ; Wed, 5 Mar 2008 21:00:05 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id D14078FC16 for ; Wed, 5 Mar 2008 21:00:05 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.2/8.14.2) with ESMTP id m25L05l7006650 for ; Wed, 5 Mar 2008 21:00:05 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.2/8.14.1/Submit) id m25L05N9006649; Wed, 5 Mar 2008 21:00:05 GMT (envelope-from gnats) Date: Wed, 5 Mar 2008 21:00:05 GMT Message-Id: <200803052100.m25L05N9006649@freefall.freebsd.org> To: freebsd-firewire@FreeBSD.org From: Dieter Cc: Subject: Re: kern/113785: [firewire] dropouts when playing DV on firewire X-BeenThere: freebsd-firewire@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Dieter List-Id: Firewire support in FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Mar 2008 21:00:06 -0000 The following reply was made to PR kern/113785; it has been noted by GNATS. From: Dieter To: bug-followup@FreeBSD.org, Hidetoshi Shimokawa Cc: Subject: Re: kern/113785: [firewire] dropouts when playing DV on firewire Date: Wed, 05 Mar 2008 12:34:00 +0000 [ note I am still running 6.2 since 7.0 is taking forever to download ] > Suppose your camcorder has node id 0 and your FreeBSD box has node id 1, > run the followins commands. > # fwcontrol -f 0 > # fwcontrol -r > Then, your camcorder should turn to be the cycle master. This works for the NEC controller. THANK YOU !!! However, it does not work for the VIA 6307 controller. :-( FreeBSD remains in CYCLEMASTER mode. I tried it with and without "-u 0" ( VIA is bus 0 NEC is bus 1). I tried rebooting. Nothing helps. #!/bin/bash # # Fix firewire cyclemaster problem # -u 0 is for the onboard firewire VIA controller # echo Before cyclemaster fix /usr/src/usr.sbin/fwcontrol/fwcontrol -u 0 -t echo dmesg | tail -15 echo /usr/src/usr.sbin/fwcontrol/fwcontrol -u 0 -f 0 echo /usr/src/usr.sbin/fwcontrol/fwcontrol -u 0 -r echo After cyclemaster fix /usr/src/usr.sbin/fwcontrol/fwcontrol -u 0 -t echo dmesg | tail -15 Before cyclemaster fix crc_len: 4 generation:11 node_count:2 sid_count:2 id link gap_cnt speed delay cIRM power port0 port1 port2 ini more 00 1 63 S100 0 1 0W - P 1 0 01 1 5 S400 0 1 15W - C 0 0 firewire0: 2 nodes, maxhop <= 1, cable IRM = 1 (me) firewire0: bus manager 1 (me) fwohci0: Initiate bus reset fwohci0: BUS reset fwohci0: node_id=0xc800ffc1, gen=9, CYCLEMASTER mode firewire0: 2 nodes, maxhop <= 1, cable IRM = 1 (me) firewire0: bus manager 1 (me) fwohci0: BUS reset fwohci0: node_id=0xc800ffc0, gen=10, CYCLEMASTER mode firewire0: 1 nodes, maxhop <= 0, cable IRM = 0 (me) firewire0: bus manager 0 (me) fwohci0: BUS reset fwohci0: node_id=0xc800ffc1, gen=11, CYCLEMASTER mode firewire0: 2 nodes, maxhop <= 1, cable IRM = 1 (me) firewire0: bus manager 1 (me) send phy_config root_node=0 gap_count=-1 After cyclemaster fix crc_len: 4 generation:12 node_count:2 sid_count:2 id link gap_cnt speed delay cIRM power port0 port1 port2 ini more 00 1 5 S100 0 1 0W - P 0 0 01 1 5 S400 0 1 15W - C 1 0 firewire0: 2 nodes, maxhop <= 1, cable IRM = 1 (me) firewire0: bus manager 1 (me) fwohci0: BUS reset fwohci0: node_id=0xc800ffc0, gen=10, CYCLEMASTER mode firewire0: 1 nodes, maxhop <= 0, cable IRM = 0 (me) firewire0: bus manager 0 (me) fwohci0: BUS reset fwohci0: node_id=0xc800ffc1, gen=11, CYCLEMASTER mode firewire0: 2 nodes, maxhop <= 1, cable IRM = 1 (me) firewire0: bus manager 1 (me) fwohci0: Initiate bus reset fwohci0: BUS reset fwohci0: node_id=0xc800ffc1, gen=12, CYCLEMASTER mode firewire0: 2 nodes, maxhop <= 1, cable IRM = 1 (me) firewire0: bus manager 1 (me) From owner-freebsd-firewire@FreeBSD.ORG Thu Mar 6 04:50:03 2008 Return-Path: Delivered-To: freebsd-firewire@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BB6C6106566B for ; Thu, 6 Mar 2008 04:50:03 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id AA5FE8FC14 for ; Thu, 6 Mar 2008 04:50:03 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.2/8.14.2) with ESMTP id m264o3wp045045 for ; Thu, 6 Mar 2008 04:50:03 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.2/8.14.1/Submit) id m264o352045044; Thu, 6 Mar 2008 04:50:03 GMT (envelope-from gnats) Date: Thu, 6 Mar 2008 04:50:03 GMT Message-Id: <200803060450.m264o352045044@freefall.freebsd.org> To: freebsd-firewire@FreeBSD.org From: Hidetoshi Shimokawa Cc: Subject: Re: kern/113785: [firewire] dropouts when playing DV on firewire (Re: Can I force "non CYCLEMASTER mode" ?) X-BeenThere: freebsd-firewire@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Hidetoshi Shimokawa List-Id: Firewire support in FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Mar 2008 04:50:03 -0000 The following reply was made to PR kern/113785; it has been noted by GNATS. From: Hidetoshi Shimokawa To: Dieter Cc: freebsd-firewire@freebsd.org, bug-followup@FreeBSD.org Subject: Re: kern/113785: [firewire] dropouts when playing DV on firewire (Re: Can I force "non CYCLEMASTER mode" ?) Date: Wed, 05 Mar 2008 10:51:37 +0900 Sorry for the late response. Yes, it is possible in some way. Usually, the root node becomes the cycle master and the root node is the node which has the maximum node id. Try the patch I have just committed to -current. ------ simokawa 2008-03-05 01:30:49 UTC FreeBSD src repository Modified files: usr.sbin/fwcontrol fwcontrol.8 fwcontrol.c Log: - add '-f' option to force root node. - fix byte order in read_write_quad() - show hostnames in the list - fix typo in manpage MFC after: 1 week Revision Changes Path 1.22 +6 -1 src/usr.sbin/fwcontrol/fwcontrol.8 http://cvsweb.FreeBSD.org/src/usr.sbin/fwcontrol/fwcontrol.8.diff?r1=1.21&r2=1.22&f=h 1.24 +17 -7 src/usr.sbin/fwcontrol/fwcontrol.c http://cvsweb.FreeBSD.org/src/usr.sbin/fwcontrol/fwcontrol.c.diff?r1=1.23&r2=1.24&f=h ------- Suppose your camcorder has node id 0 and your FreeBSD box has node id 1, run the followins commands. # fwcontrol -f 0 # fwcontrol -r Then, your camcorder should turn to be the cycle master. At Thu, 10 Jan 2008 11:39:00 +0000, Dieter wrote: > > Re: kern/113785 > > Could "CYCLEMASTER mode" vs. "non CYCLEMASTER mode" be > the source of my firewire problems? > > Is it possible to force FreeBSD to be in "non CYCLEMASTER mode" ? > > Thanks. > > ------- Forwarded Message > > > > There is no initialization packet to send streams; > > > > By initialization, I meant whatever conversation FreeBSD and the > > camcorder have once they are both up. > > > > > however, > > > it might be a problem who is the cycle/bus/IR manager. > > > Can you see some difference of the output of the fwcontrol(8) and demsg(8) > > > in node-id, cycle master and etc. between success and failed cases? > > > > Yes, we have a couple of new clues: > > > > When FreeBSD says "CYCLEMASTER mode" it does not work. > > When FreeBSD says "non CYCLEMASTER mode" it works. > > > > Also: > > > > The controller that works (if booted in correct order): > > > > just bsd: > > # fwcontrol -u 1 -t > > crc_len: 3 generation:2 node_count:1 sid_count:1 > > id link gap_cnt speed delay cIRM power port0 port1 port2 ini more > > 00 1 5 S400 0 1 -9W - - 1 0 > > > > now power up camcorder (does not work): > > > > # fwcontrol -u 1 -t > > crc_len: 4 generation:3 node_count:2 sid_count:2 > > id link gap_cnt speed delay cIRM power port0 port1 port2 ini more > > 00 1 63 S100 0 1 0W - P 1 0 > > 01 1 5 S400 0 1 -9W - C 0 0 > > > > Looks like the S400 & non-zero power device (BSD box) changed id from 00 to 01? > > > > after booting camcorder and FreeBSD in correct order (works): > > > > # fwcontrol -u 1 -t > > crc_len: 4 generation:1 node_count:2 sid_count:2 > > id link gap_cnt speed delay cIRM power port0 port1 port2 ini more > > 00 1 63 S400 0 1 -9W - P 1 0 > > 01 1 63 S100 0 1 0W - C 0 0 > > > > Note that the BSD box is id 00. > > > > The controller that never works: > > > > # fwcontrol -u 0 -t > > crc_len: 4 generation:2 node_count:2 sid_count:2 > > id link gap_cnt speed delay cIRM power port0 port1 port2 ini more > > 00 1 5 S100 0 1 0W - P 0 0 > > 01 1 5 S400 0 1 15W C - 1 0 > > > > The BSD box is id 01. > > Perhaps the "C" showing up under port0 instead of port1 is significant? > > > > So: if the BSD box is id 00, camcorder is id 01 -> works > > if the BSD box is id 01, camcorder is id 00 -> does not work > > > > > Thanks for a fix for the compiler warning. > > > > You're welcome. > > ------- End of Forwarded Message > > _______________________________________________ > freebsd-firewire@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-firewire > To unsubscribe, send any mail to "freebsd-firewire-unsubscribe@freebsd.org" > /\ Hidetoshi Shimokawa \/ simokawa@ieee.org _______________________________________________ freebsd-firewire@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-firewire To unsubscribe, send any mail to "freebsd-firewire-unsubscribe@freebsd.org"