kern/113785: [firewire] dropouts when playing DV on firewire
Dieter
freebsd at sopwith.solgatos.com
Sun Nov 25 00:20:14 PST 2007
The following reply was made to PR kern/113785; it has been noted by GNATS.
From: Dieter <freebsd at sopwith.solgatos.com>
To: "Hidetoshi Shimokawa" <simokawa at freebsd.org>
Cc: bug-followup at freebsd.org
Subject: Re: kern/113785: [firewire] dropouts when playing DV on firewire
Date: Tue, 20 Nov 2007 23:40:44 +0000
> 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.
More information about the freebsd-firewire
mailing list