]> git.karo-electronics.de Git - karo-tx-linux.git/commit
firewire: core: fix unstable I/O with Canon camcorder
authorStefan Richter <stefanr@s5r6.in-berlin.de>
Sat, 15 Jan 2011 17:19:48 +0000 (18:19 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 17 Feb 2011 22:47:21 +0000 (14:47 -0800)
commit40688b6476e61cedd9d6ca5d2e1078c7e35cd7c0
tree4fdcaf2f924bcf1cc79db6924b357a6da27143db
parent1ad94a4f74fd33df13760c679e8edba1b77ab9ad
firewire: core: fix unstable I/O with Canon camcorder

commit 6044565af458e7fa6e748bff437ecc49dea88d79 upstream.

Regression since commit 10389536742c, "firewire: core: check for 1394a
compliant IRM, fix inaccessibility of Sony camcorder":

The camcorder Canon MV5i generates lots of bus resets when asynchronous
requests are sent to it (e.g. Config ROM read requests or FCP Command
write requests) if the camcorder is not root node.  This causes drop-
outs in videos or makes the camcorder entirely inaccessible.
https://bugzilla.redhat.com/show_bug.cgi?id=633260

Fix this by allowing any Canon device, even if it is a pre-1394a IRM
like MV5i are, to remain root node (if it is at least Cycle Master
capable).  With the FireWire controller cards that I tested, MV5i always
becomes root node when plugged in and left to its own devices.

Reported-by: Ralf Lange
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/firewire/core-card.c