This affects Lucid as well. Since this is a long-term release it would
be nice if we could figure out a way forward for users of firewire
cameras (and Kino).

I have a  Sony DSR-PDX10P. In Karmic I was able to use Kino to capture
DV, it worked reasonably well.

I upgraded to Lucid a couple of months ago and tried capturing video
today.


First I tried with the old firewire stack.
$ uname -a
Linux ubuntu 2.6.32-25-generic #44-Ubuntu SMP Fri Sep 17 20:26:08 UTC 2010 i686 
GNU/Linux

$ cat /etc/modprobe.d/blacklist-firewire.conf
# Select the legacy firewire stack over the new CONFIG_FIREWIRE one.

#blacklist ohci1394
#blacklist sbp2
#blacklist dv1394
#blacklist raw1394
#blacklist video1394

blacklist firewire-ohci
blacklist firewire-sbp2

Probe in the raw1394 module since it doesn't happen automatically for some 
reason.
$ modprobe raw1394

In dmesg I get
[  226.909428] ieee1394: raw1394: /dev/raw1394 device initialized

When I plug the camera in using the firewire interface and then turn it on I 
get messages like this spewing in dmesg:
[  241.256574] ohci1394: fw-host0: isochronous cycle too long
[  241.260572] ohci1394: fw-host0: isochronous cycle too long
[  241.264571] ohci1394: fw-host0: isochronous cycle too long
[  241.268571] ohci1394: fw-host0: isochronous cycle too long
[  241.269946] ohci1394: fw-host0: isochronous cycle too long
[  241.272571] ohci1394: fw-host0: isochronous cycle too long
[  241.273946] ohci1394: fw-host0: isochronous cycle too long

The /dev/raw1394 file has the wrong ownerships as well, group owner is
root, not video.

I hacked /lib/udev/rules.d/50-udev-default.rules, guided by LP300239#4:
  KERNEL=="video1394-[0-9]*",     NAME="video1394/%n", GROUP="video"
+KERNEL=="raw1394", GROUP="video"

and rebooted.

Try again - plug in firewire cable, turn on camera. Same spew in dmesg.

I started up Kino, and clicked on the 'Capture' icon.
The interface prints two sets of messages, alternating every second or less;
one about being unable to address /dev/raw1394 and the other about not being
able to find an AV/C compliant camera. The spew in dmesg continues.


Second test - I changed to the new stack as per 
https://ieee1394.wiki.kernel.org/index.php/Juju_Migration
$ uname -a
Linux ubuntu 2.6.32-25-generic #44-Ubuntu SMP Fri Sep 17 20:26:08 UTC 2010 i686 
GNU/Linux

$ cat /etc/modprobe.d/blacklist-firewire.conf

# comment these out to use the old stack
blacklist ohci1394
blacklist sbp2
blacklist dv1394
blacklist raw1394
blacklist video1394

# comment these out to use the new stack
#blacklist firewire-ohci
#blacklist firewire-sbp2


Update initramfs
$ sudo update-initramfs -k all -u

Edit /lib/udev/rules.d/50-udev-default.rules to force the group ownership
  SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x010001*", GROUP="video"
+ SUBSYSTEM=="firewire", GROUP="video"

Check library versions
$ apt-show-versions |grep libdc1394
libdc1394-22/lucid uptodate 2.1.2-2
$ apt-show-versions |grep libraw
libraw1394-11/lucid uptodate 2.0.4-1ubuntu2

$ sudo reboot
$ uname -a
Linux ubuntu 2.6.32-25-generic #44-Ubuntu SMP Fri Sep 17 20:26:08 UTC 2010 i686 
GNU/Linux

$ lsmod |grep fire
firewire_ohci          21002  0 
firewire_core          44510  1 firewire_ohci
crc_itu_t               1371  1 firewire_core

$ lsmod |grep 1394
$

So far so good. Plug in camera, turn it on. Pretty much the same result
in dmesg:

[   67.171233] firewire_core: phy config: card 0, new root=ffc1, gap_count=5
[   67.173285] firewire_ohci: isochronous cycle too long
[   67.179910] firewire_ohci: isochronous cycle too long
[   67.182534] firewire_ohci: isochronous cycle too long
[   67.191784] firewire_ohci: isochronous cycle too long
[   67.195784] firewire_ohci: isochronous cycle too long
[   67.198409] firewire_ohci: isochronous cycle too long
[   67.201034] firewire_ohci: isochronous cycle too long
[   67.203659] firewire_ohci: isochronous cycle too long
[   67.207659] firewire_ohci: isochronous cycle too long
[   70.768046] firewire_core: Unsolicited response (source ffc0, tlabel 2f)
[   72.178124] __ratelimit: 1294 callbacks suppressed
[   72.178128] firewire_ohci: isochronous cycle too long
[   72.182121] firewire_ohci: isochronous cycle too long
[   72.184746] firewire_ohci: isochronous cycle too long
[   72.193996] firewire_ohci: isochronous cycle too long
[   72.196621] firewire_ohci: isochronous cycle too long
[   72.200620] firewire_ohci: isochronous cycle too long
[   72.203245] firewire_ohci: isochronous cycle too long
[   72.205870] firewire_ohci: isochronous cycle too long
[   72.209870] firewire_ohci: isochronous cycle too long
[   72.212495] firewire_ohci: isochronous cycle too long
[   73.768147] firewire_core: Unsolicited response (source ffc0, tlabel 32)
[   76.768047] firewire_core: Unsolicited response (source ffc0, tlabel 33)
[   77.187585] __ratelimit: 1320 callbacks suppressed
[   77.187589] firewire_ohci: isochronous cycle too long
[   77.194208] firewire_ohci: isochronous cycle too long
[   77.196832] firewire_ohci: isochronous cycle too long
[   77.203457] firewire_ohci: isochronous cycle too long
[   77.206082] firewire_ohci: isochronous cycle too long
[   77.208706] firewire_ohci: isochronous cycle too long
[   77.212706] firewire_ohci: isochronous cycle too long
[   77.215331] firewire_ohci: isochronous cycle too long
[   77.217956] firewire_ohci: isochronous cycle too long
[   77.221956] firewire_ohci: isochronous cycle too long
[   78.904010] firewire_core: phy config: card 0, new root=ffc1, gap_count=5
[   79.768045] firewire_core: Unsolicited response (source ffc0, tlabel 3a)
[   82.196671] __ratelimit: 1295 callbacks suppressed

In /dev/ there exists /dev/fw0
$ ls -l /dev/fw0
0 crw-rw---- 1 root video 250, 0 2010-09-28 20:52 /dev/fw0

Try kino. Again it complains about /dev/raw1394 missing and is unable to
capture.

The firewire card is:

$ sudo  lspci -kvvv -s 04:00.0
04:00.0 FireWire (IEEE 1394): VIA Technologies, Inc. VT6306/7/8 [Fire II(M)] 
IEEE 1394 OHCI Controller (rev 46) (prog-if 10)
        Subsystem: VIA Technologies, Inc. VT6306/7/8 [Fire II(M)] IEEE 1394 
OHCI Controller
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- 
Stepping- SERR+ FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- 
<TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 64 (8000ns max), Cache Line Size: 64 bytes
        Interrupt: pin A routed to IRQ 16
        Region 0: Memory at dcdef800 (32-bit, non-prefetchable) [size=2K]
        Region 1: I/O ports at dc80 [size=128]
        Capabilities: [50] Power Management version 2
                Flags: PMEClk- DSI- D1- D2+ AuxCurrent=0mA 
PME(D0-,D1-,D2+,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
        Kernel driver in use: firewire_ohci
        Kernel modules: firewire-ohci, ohci1394

This card was working in Karmic, on the same host computer, but with the
old firewire stack.


The third attempt - install a Mainline Kernel 
(http://kernel.ubuntu.com/~kernel-ppa/mainline/daily/current/linux-image-2.6.36-999-generic_2.6.36-999.201009261124_i386.deb)
 and try again.
Same results in dmesg:
[    0.000000] Linux version 2.6.36-999-generic (r...@zinc) (gcc version 4.2.3 (
Ubuntu 4.2.3-2ubuntu7)) #201009261124 SMP Sun Sep 26 12:31:32 UTC 2010
...
[  107.955237] firewire_core: phy config: card 0, new root=ffc1, gap_count=5
[  107.958448] firewire_ohci: isochronous cycle too long
[  107.958786] firewire_core: phy config: card 0, new root=ffc1, gap_count=5
[  107.961072] firewire_ohci: isochronous cycle too long
[  107.961410] firewire_core: phy config: card 0, new root=ffc1, gap_count=5
[  107.965072] firewire_ohci: isochronous cycle too long
[  107.967696] firewire_ohci: isochronous cycle too long
[  107.976947] firewire_ohci: isochronous cycle too long
[  107.983571] firewire_ohci: isochronous cycle too long
[  107.986196] firewire_ohci: isochronous cycle too long
[  107.990196] firewire_ohci: isochronous cycle too long
[  107.992820] firewire_ohci: isochronous cycle too long
[  107.995445] firewire_ohci: isochronous cycle too long
[  112.966227] irq_handler: 1311 callbacks suppressed
[  112.966231] firewire_ohci: isochronous cycle too long
[  112.972852] firewire_ohci: isochronous cycle too long
[  112.975474] firewire_ohci: isochronous cycle too long
[  112.979475] firewire_ohci: isochronous cycle too long
[  112.982099] firewire_ohci: isochronous cycle too long
[  112.984724] firewire_ohci: isochronous cycle too long
[  112.991349] firewire_ohci: isochronous cycle too long
[  112.993973] firewire_ohci: isochronous cycle too long
[  112.996599] firewire_ohci: isochronous cycle too long



** Tags added: lucid
** Tags removed: needs-upstream-testing

** Changed in: linux (Ubuntu)
       Status: Expired => New

-- 
Unable to transfer digital video content from SONY camcorder to PC
https://bugs.launchpad.net/bugs/550010
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to