kern/113785: [firewire] dropouts when playing DV on firewire

Dieter freebsd at sopwith.solgatos.com
Wed Mar 5 21:00:06 UTC 2008


The following reply was made to PR kern/113785; it has been noted by GNATS.

From: Dieter <freebsd at sopwith.solgatos.com>
To: bug-followup at FreeBSD.org, Hidetoshi Shimokawa <simokawa at ieee.org>
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)


More information about the freebsd-firewire mailing list